*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#fafafa;color:#333;line-height:1.6}.container{max-width:800px;margin:0 auto;padding:20px}nav{background:#fff;border-bottom:1px solid #eee;padding:16px 24px;display:flex;justify-content:space-between;align-items:center}nav .logo{font-family:Caveat,cursive;font-size:1.8rem;font-weight:700;color:#111;text-decoration:none}nav .logo.active{color:#111}nav .nav-links{display:flex;gap:20px;align-items:center}nav .nav-links a{color:#555;text-decoration:none;font-size:.95rem;padding:4px 0;border-bottom:2px solid transparent;transition:color .15s,border-color .15s}nav .nav-links a:hover{color:#6b8f71}nav .nav-links a.active{color:#6b8f71;border-bottom-color:#6b8f71}.card{background:#fff;border-radius:8px;padding:24px;margin-bottom:16px;box-shadow:0 1px 3px #00000014}.card-link{text-decoration:none;color:inherit;transition:box-shadow .15s}.card-link:hover{box-shadow:0 2px 8px #0000001f}.recipient-card{display:flex;justify-content:space-between;align-items:center}.btn{background:#6b8f71;color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:.95rem;transition:background .15s}.btn:hover{background:#5a7a60}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{background:#95a5a6}.btn-secondary:hover{background:#7f8c8d}.btn-chip{background:#fff;color:#333;border:1px solid #d8d8d8;border-radius:999px;padding:10px 18px;font-weight:500;transition:border-color .15s,background .15s}.btn-chip:hover{background:#f5f5f5;border-color:#6b8f71}.btn-chip:disabled{opacity:.6}.story-editor{position:relative;background:#fff;border-radius:8px;padding:20px 22px 16px;margin-bottom:16px;box-shadow:0 1px 3px #00000014}.story-editor__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.story-editor__label{font-size:.85rem;font-weight:600;color:#555;text-transform:uppercase;letter-spacing:.5px}.story-editor__savestate{font-size:.8rem;color:#aaa;transition:color .2s,opacity .2s}.story-editor__savestate--saving{color:#888}.story-editor__savestate--saved{color:#6b8f71}.story-editor__savestate--error{color:#e74c3c}.story-editor__textarea{width:100%;min-height:300px;padding:12px 14px;border:1px solid #e0e0e0;border-radius:6px;font-family:Georgia,Times New Roman,serif;font-size:1rem;line-height:1.7;color:#222;resize:vertical;margin-bottom:8px}.story-editor__textarea:focus{outline:none;border-color:#6b8f71}.story-editor__hint{font-size:.8rem;color:#999;margin:0}.polish-toolbar{position:absolute;transform:translate(-50%);background:#111;color:#fff;border-radius:8px;padding:4px;display:flex;gap:2px;box-shadow:0 4px 12px #00000040;z-index:20}.polish-toolbar:after{content:"";position:absolute;bottom:-5px;left:50%;transform:translate(-50%);width:10px;height:10px;background:#111;clip-path:polygon(0 0,100% 0,50% 100%)}.polish-toolbar__btn{background:transparent;color:#fff;border:none;padding:6px 12px;font-size:.82rem;border-radius:5px;cursor:pointer;transition:background .15s;white-space:nowrap}.polish-toolbar__btn:hover{background:#ffffff1f}.polish-toolbar__btn:disabled{opacity:.6;cursor:not-allowed}input,textarea,select{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:.95rem;margin-bottom:12px;font-family:inherit;transition:border-color .15s}input:focus,textarea:focus,select:focus{outline:none;border-color:#6b8f71}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:4px;font-weight:500;font-size:.9rem}.form-group-row{display:grid;grid-template-columns:2fr 1fr 1fr;gap:0 12px}h1,h2,h3{margin-bottom:16px}.phone-number{background:#f0f0f0;padding:12px 16px;border-radius:8px;font-size:1.2rem;font-weight:600;text-align:center;color:#6b8f71;margin:16px 0}.status-badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:.8rem;font-weight:600;text-transform:uppercase}.status-pending{background:#ffeaa7;color:#856404}.status-submitted{background:#dfe6e9;color:#555}.status-approved{background:#a8e6cf;color:#155724}.status-sent{background:#74b9ff;color:#004085}.status-completed{background:#a8e6cf;color:#155724}.status-failed{background:#ff7675;color:#721c24}.status-selected{background:#a8e6cf;color:#155724}.status-rejected{background:#dfe6e9;color:#666}.empty-state{text-align:center;padding:40px;color:#999}.loading-spinner{width:32px;height:32px;border:3px solid #eee;border-top-color:#6b8f71;border-radius:50%;animation:spin .6s linear infinite;margin:40px auto}@keyframes spin{to{transform:rotate(360deg)}}.toast-container{position:fixed;bottom:24px;right:24px;display:flex;flex-direction:column;gap:8px;z-index:1000;pointer-events:none}.toast{padding:12px 20px;border-radius:8px;font-size:.9rem;font-weight:500;color:#fff;box-shadow:0 4px 12px #00000026;animation:toast-in .3s ease-out;pointer-events:auto}.toast-success{background:#27ae60}.toast-error{background:#e74c3c}.toast-info{background:#3498db}@keyframes toast-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.landing{max-width:560px;margin:0 auto;padding:0 24px;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.landing section{padding:56px 0}.landing__divider{height:1px;background:#e8e8e8}.landing__hero{text-align:center;padding-top:80px;padding-bottom:56px}.landing__title{font-size:2.4rem;font-weight:600;line-height:1.2;margin-bottom:20px;color:#111;letter-spacing:-.02em}.landing__subtitle{font-size:1.05rem;color:#888;margin-bottom:36px;line-height:1.6}.landing__cta{display:inline-block;padding:12px 32px;font-size:.95rem;font-weight:500;text-decoration:none;background:#111;color:#fff;border-radius:6px;transition:background .15s}.landing__cta:hover{background:#333}.landing__login{margin-top:16px;font-size:.85rem;color:#aaa}.landing__login a{color:#111;text-decoration:underline;text-underline-offset:2px}.landing__how{display:flex;flex-direction:column;gap:32px}.landing__step{display:flex;gap:16px;align-items:flex-start}.landing__step-num{flex-shrink:0;width:28px;height:28px;border:1.5px solid #ccc;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.8rem;color:#999;margin-top:1px}.landing__step h3{font-size:1rem;font-weight:600;margin-bottom:4px;color:#111}.landing__step p{font-size:.9rem;color:#888;line-height:1.55}.landing__features ul{list-style:none;display:flex;flex-direction:column;gap:14px}.landing__features li{padding-left:20px;position:relative;font-size:.9rem;color:#555;line-height:1.55}.landing__features li:before{content:"";position:absolute;left:0;top:8px;width:6px;height:6px;background:#ccc;border-radius:50%}.landing__pricing{text-align:center}.landing__price-box{display:flex;align-items:baseline;justify-content:center;gap:4px;flex-wrap:wrap}.landing__price-box .landing__price{font-size:2.4rem;font-weight:700;color:#111}.landing__price-box .landing__price-label{font-size:1rem;color:#aaa;font-weight:400}.landing__price-box p{width:100%;font-size:.85rem;color:#aaa;margin-top:4px}.landing__bottom-cta{text-align:center;padding-bottom:80px}.landing__bottom-cta p{font-size:1.2rem;color:#888;margin-bottom:24px}.landing__divider-wide{height:1px;background:#e8e8e8;max-width:960px;margin:0 auto}.landing__example{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;padding:72px 24px;background:#fafafa}.landing__example-inner{max-width:960px;margin:0 auto}.landing__example-heading{font-size:1.6rem;font-weight:600;color:#111;text-align:center;letter-spacing:-.01em;margin-bottom:8px}.landing__example-subheading{font-size:1rem;color:#888;text-align:center;margin-bottom:40px;line-height:1.55}.landing__example-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}.landing__example-col{display:flex;flex-direction:column;gap:12px}.landing__example-label{font-size:.75rem;font-weight:600;letter-spacing:1.5px;color:#aaa;text-transform:uppercase;text-align:center}.landing__example-phone{background:#fff;border:1px solid #e8e8e8;border-radius:20px;padding:20px 16px;box-shadow:0 4px 16px #0000000a;display:flex;flex-direction:column;gap:10px;min-height:420px}.landing__chat-bubble{max-width:82%;padding:10px 14px;border-radius:16px;font-size:.88rem;line-height:1.45;word-wrap:break-word}.landing__chat-bubble--user{background:#111;color:#fff;align-self:flex-end;border-bottom-right-radius:4px}.landing__chat-bubble--ai{background:#eee;color:#333;align-self:flex-start;border-bottom-left-radius:4px}.landing__letter-preview{background:#fff;border:1px solid #e0e0e0;border-radius:6px;box-shadow:0 6px 20px #00000014;padding:28px 28px 32px;font-family:Georgia,Times New Roman,serif;color:#1a1a1a;position:relative;aspect-ratio:8.5 / 11;overflow:hidden}.landing__letter-brand{text-align:right;margin-bottom:56px}.landing__letter-brandname{font-family:Caveat,cursive;font-size:1.3rem;font-weight:700;color:#1a1a1a;line-height:1}.landing__letter-tagline{font-size:.55rem;color:#999;text-transform:uppercase;letter-spacing:1.5px;margin-top:2px}.landing__letter-divider{width:80px;height:1px;background:#ddd;margin-bottom:14px}.landing__letter-title{font-family:Georgia,serif;font-size:1.3rem;font-weight:700;color:#1a1a1a;margin-bottom:14px;line-height:1.2}.landing__letter-story{font-size:.72rem;line-height:1.7;color:#2a2a2a}.landing__letter-story p{margin:0 0 9px}.landing__letter-illustrations{display:flex;justify-content:center;gap:10px;margin:12px 0 14px}.landing__letter-illustration{width:42%;max-width:42%;height:auto;background:#faf7f1;border:1px solid #e6e1d6;border-radius:4px;padding:6px;box-sizing:border-box}.landing__letter-signoff{margin-top:14px;font-size:.75rem;color:#555;font-style:italic}@media (max-width: 768px){.landing__example{padding:48px 20px}.landing__example-heading{font-size:1.35rem}.landing__example-grid{grid-template-columns:1fr;gap:32px}.landing__example-phone{min-height:unset}.landing__letter-preview{padding:24px 22px 26px}.landing__letter-brand{margin-bottom:40px}}.onboarding{max-width:560px;margin:40px auto 0;padding:0 20px}.onboarding__stepper{display:flex;justify-content:center;align-items:center;gap:0;margin-bottom:40px}.onboarding__step-item{display:flex;flex-direction:column;align-items:center;gap:8px;position:relative;min-width:80px}.onboarding__step-dot{width:36px;height:36px;border-radius:50%;border:2px solid #ddd;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.85rem;color:#999;background:#fff;transition:all .2s}.onboarding__step-dot--active{border-color:#6b8f71;color:#6b8f71}.onboarding__step-dot--completed{background:#6b8f71;border-color:#6b8f71;color:#fff}.onboarding__step-label{font-size:.75rem;color:#aaa;text-align:center}.onboarding__step-label--active{color:#6b8f71;font-weight:500}.onboarding__step-line{flex:1;height:2px;background:#eee;min-width:40px;margin:0 8px 24px}.onboarding__step-line--completed{background:#6b8f71}.onboarding__content{text-align:center}.onboarding__content h2{font-size:1.4rem;font-weight:600;color:#111;margin-bottom:8px}.onboarding__content p{color:#888;font-size:.95rem;margin-bottom:24px}.onboarding__phone-display{background:#fff;border-radius:12px;padding:32px;box-shadow:0 2px 12px #0000000f;margin-bottom:24px}.onboarding__phone-number{font-size:2.2rem;font-weight:700;color:#111;letter-spacing:1px;margin:16px 0}.onboarding__phone-number a{color:inherit;text-decoration:none}.onboarding__phone-actions{display:flex;gap:12px;justify-content:center;margin-top:16px}.onboarding__form{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 12px #0000000f;text-align:left;margin-bottom:24px}.onboarding__form .form-group-row{display:grid;grid-template-columns:2fr 1fr 1fr;gap:0 12px}.onboarding__recipient-added{background:#f0f7f1;border-radius:8px;padding:16px 20px;color:#5a7a60;font-weight:500;margin-bottom:16px}.onboarding__actions{display:flex;justify-content:space-between;align-items:center;margin-top:32px}.onboarding__skip{color:#aaa;font-size:.9rem;cursor:pointer;background:none;border:none;padding:0}.onboarding__skip:hover{color:#888}.btn-copy{background:transparent;border:1px solid #ddd;border-radius:6px;padding:8px 16px;font-size:.85rem;cursor:pointer;color:#555;transition:border-color .15s,color .15s;font-family:inherit}.btn-copy:hover{border-color:#999;color:#333}.dashboard__phone-banner{background:#fff;border-radius:8px;padding:20px 24px;margin-bottom:20px;box-shadow:0 1px 3px #00000014;display:flex;align-items:center;justify-content:space-between;gap:16px}.dashboard__phone-banner-info{display:flex;flex-direction:column;gap:2px}.dashboard__phone-banner-label{font-size:.8rem;color:#aaa;text-transform:uppercase;letter-spacing:1px}.dashboard__phone-banner-number{font-size:1.4rem;font-weight:700;color:#111}.dashboard__phone-banner-number a{color:inherit;text-decoration:none}.dashboard__phone-banner-actions{display:flex;gap:8px;align-items:center}@media (max-width: 640px){.container{padding:12px}.card{padding:16px}.form-group-row{grid-template-columns:1fr}.recipient-card{flex-direction:column;align-items:flex-start;gap:12px}.toast-container{bottom:12px;right:12px;left:12px}.landing__hero{padding-top:48px}.landing__title{font-size:1.7rem}.landing__subtitle{font-size:.95rem}.landing section{padding:40px 0}.onboarding__phone-number{font-size:1.6rem}.onboarding__phone-display{padding:24px 16px}.onboarding__form .form-group-row{grid-template-columns:1fr}.dashboard__phone-banner{flex-direction:column;align-items:flex-start}.onboarding__stepper{gap:0}.onboarding__step-item{min-width:60px}.onboarding__step-line{min-width:20px}}@media (max-width: 480px){nav{flex-direction:column;gap:12px;padding:12px 16px}nav .nav-links{gap:12px;flex-wrap:wrap;justify-content:center}nav .nav-links a{font-size:.85rem}}.footer{border-top:1px solid #e8e8e8;background:#fafafa;margin-top:80px;padding:32px 24px 40px;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.footer__inner{max-width:800px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center}.footer .footer__links{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;gap:10px 20px;width:100%;max-width:640px;padding:0;border:none;background:transparent}.footer__links a{color:#555;text-decoration:none;font-size:.85rem;transition:color .15s}.footer__links a:hover{color:#111;text-decoration:underline;text-underline-offset:3px}.footer__copyright{font-size:.8rem;color:#999;margin:0}@media (max-width: 480px){.footer__links{gap:8px 14px}.footer__links a{font-size:.8rem}}.legal-page{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;color:#333;padding:40px 24px 80px;min-height:60vh}.legal-page__inner{max-width:720px;margin:0 auto}.legal-page__back{margin-bottom:24px;font-size:.9rem}.legal-page__back a{color:#666;text-decoration:none}.legal-page__back a:hover{color:#111}.legal-page h1{font-size:2rem;font-weight:600;color:#111;letter-spacing:-.02em;margin-bottom:8px;line-height:1.2}.legal-page__meta{font-size:.85rem;color:#999;margin-bottom:32px}.legal-page__body h2{font-size:1.1rem;font-weight:600;color:#111;margin-top:32px;margin-bottom:10px}.legal-page__body p{font-size:.95rem;line-height:1.7;color:#444;margin-bottom:16px}.legal-page__body ul{margin:0 0 16px;padding-left:20px}.legal-page__body li{font-size:.95rem;line-height:1.7;color:#444;margin-bottom:8px}.legal-page__body a{color:#111;text-decoration:underline;text-underline-offset:2px}.legal-page__body a:hover{color:#6b8f71}.legal-page__body strong{color:#111;font-weight:600}@media (max-width: 480px){.legal-page{padding:24px 20px 60px}.legal-page h1{font-size:1.6rem}}
