@import"https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,300;0,9..144,400;0,9..144,500;0,9..144,600;1,9..144,300;1,9..144,400&family=Inter:wght@300;400;500;600&display=swap";*,*:before,*:after{box-sizing:border-box}:root{--bg: #F2EDE4;--bg-alt: #E8E1D3;--bg-card: #FBF7F0;--bg-surface: #FFFFFF;--bg-pill: #E8E1D3;--text: #2B2520;--text-secondary: #8A8178;--text-tertiary: #B0A89E;--accent: #C9B896;--accent-deep: #A89F90;--accent-light: rgba(201, 184, 150, .22);--border: #D9D0C3;--border-soft: rgba(43, 37, 32, .08);--divider: rgba(43, 37, 32, .08);--danger: #B85A4A;--shadow-soft: 0 8px 24px rgba(62, 52, 40, .06);--shadow-lifted: 0 14px 40px rgba(62, 52, 40, .1);--shadow-press: 0 4px 14px rgba(62, 52, 40, .08);--serif: "Fraunces", "Cormorant Garamond", Georgia, serif;--sans: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;--ease: cubic-bezier(.4, 0, .2, 1);font-family:var(--sans);line-height:1.5;font-weight:400;color:var(--text);background-color:var(--bg);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html,body{margin:0;min-height:100vh;overflow-x:hidden;max-width:100vw;background:var(--bg)}#root{min-height:100vh;display:flex;justify-content:center;overflow:hidden;max-width:100vw;background:var(--bg)}button{font-family:inherit}.caps{font-family:var(--sans);font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.22em;color:var(--text-secondary)}.serif{font-family:var(--serif);font-weight:400}@keyframes screen-enter{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes item-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.screen-enter{animation:screen-enter .42s cubic-bezier(.32,.72,0,1) both;will-change:opacity,transform}.screen-enter>*{opacity:0;animation:item-rise .38s cubic-bezier(.32,.72,0,1) both}.screen-enter>*:nth-child(1){animation-delay:60ms}.screen-enter>*:nth-child(2){animation-delay:.11s}.screen-enter>*:nth-child(3){animation-delay:.16s}.screen-enter>*:nth-child(4){animation-delay:.21s}.screen-enter>*:nth-child(5){animation-delay:.26s}.screen-enter>*:nth-child(6){animation-delay:.3s}.screen-enter>*:nth-child(7){animation-delay:.34s}.screen-enter>*:nth-child(n+8){animation-delay:.38s}.landing-page.screen-enter>*{animation:none;opacity:1}.landing-page.screen-enter{animation:landing-fade .6s var(--ease) both;will-change:opacity;transform:none;filter:none}@keyframes landing-fade{0%{opacity:0}to{opacity:1}}.reveal-on-scroll{opacity:0;transform:translateY(28px);filter:blur(10px);transition:opacity .9s cubic-bezier(.22,1,.36,1),transform .9s cubic-bezier(.22,1,.36,1),filter .9s cubic-bezier(.22,1,.36,1);will-change:opacity,transform,filter}.reveal-on-scroll.revealed{opacity:1;transform:translateY(0);filter:blur(0)}@keyframes ring-in-left{0%{opacity:0;transform:translate(-90px)}to{opacity:1;transform:translate(0)}}@keyframes ring-in-right{0%{opacity:0;transform:translate(90px)}to{opacity:1;transform:translate(0)}}@keyframes weave-in{0%{opacity:0}to{opacity:1}}.hero-mark-pink{animation:ring-in-left 1.1s cubic-bezier(.22,1,.36,1) .5s both}.hero-mark-navy{animation:ring-in-right 1.1s cubic-bezier(.22,1,.36,1) .5s both}.hero-mark-weave{opacity:0;animation:weave-in .5s cubic-bezier(.22,1,.36,1) 1.5s both}@keyframes letter-rise{0%{opacity:0;transform:translateY(18px);filter:blur(5px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}.hero-letter{display:inline-block;opacity:0;animation:letter-rise .52s cubic-bezier(.22,1,.36,1) both}@media(prefers-reduced-motion:reduce){.screen-enter,.screen-enter>*,.reveal-on-scroll,.hero-mark-pink,.hero-mark-navy,.hero-mark-weave,.hero-letter{animation:none;transition:none;opacity:1;transform:none;filter:none;will-change:auto}}.status-bar{display:flex;align-items:center;justify-content:space-between;padding:12px 20px 8px;font-size:14px;font-weight:600;color:var(--text);position:relative;z-index:2;background:var(--bg)}.status-notch{width:100px;height:4px;background:var(--border);border-radius:4px}.status-icons{display:flex;align-items:center;gap:4px;color:var(--text-secondary)}.status-icon{opacity:.6}.status-time{min-width:50px}.splash-screen{position:absolute;inset:0;background:var(--bg);display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;z-index:1000;padding:48px 32px;overflow:hidden}.splash-screen:before{content:"";position:absolute;width:560px;height:560px;border-radius:50%;background:radial-gradient(circle,rgba(201,184,150,.18) 0%,transparent 65%);top:40%;left:50%;transform:translate(-50%,-50%);pointer-events:none}.splash-inner{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;max-width:320px}.splash-mark{width:120px;height:70px;display:block;margin-top:40px}.splash-eyebrow{font-family:var(--sans);font-size:10px;font-weight:500;letter-spacing:.32em;text-transform:uppercase;color:var(--text-secondary);margin-bottom:4px}.splash-eyebrow-en{font-family:var(--sans);font-size:10px;font-weight:400;letter-spacing:.32em;text-transform:uppercase;color:var(--text-tertiary);margin-bottom:36px}.splash-title{font-family:var(--serif);font-size:68px;font-weight:300;font-variation-settings:"opsz" 144;color:var(--text);line-height:.98;margin:0;letter-spacing:-.01em}.splash-title em{font-style:italic;font-weight:400}.splash-rule{width:38px;height:1px;background:var(--text-secondary);opacity:.5;margin:28px 0 22px}.splash-subtitle{font-family:var(--sans);font-weight:300;font-size:15px;color:var(--text-secondary);line-height:1.6;margin:0;letter-spacing:.01em}.splash-tap-hint{position:absolute;bottom:40px;font-family:var(--sans);font-size:10px;color:var(--text-tertiary);letter-spacing:.32em;text-transform:uppercase;animation:splash-fade 2.2s ease-in-out infinite}@keyframes splash-fade{0%,to{opacity:.35}50%{opacity:.8}}@media(max-width:500px){.splash-title{font-size:56px}}.subscription-select{padding:28px 24px 24px;display:flex;flex-direction:column;height:100%;overflow-y:auto;background:var(--bg)}.sub-crumbs{font-family:var(--sans);font-size:11px;color:var(--text-secondary);letter-spacing:.04em;display:flex;gap:6px;align-items:center;margin-bottom:24px}.sub-crumb-sep{color:var(--text-tertiary)}.sub-title{font-family:var(--serif);font-size:46px;font-weight:300;font-variation-settings:"opsz" 144;color:var(--text);line-height:1.02;letter-spacing:-.015em;margin:0 0 16px}.sub-title em{font-style:italic;font-weight:400}.sub-subtitle{font-family:var(--sans);font-size:14px;color:var(--text-secondary);line-height:1.55;font-weight:300;margin:0 0 36px;max-width:260px}.sub-label-row{display:flex;align-items:center;justify-content:space-between;padding:0 4px 10px;border-bottom:1px solid var(--border-soft);margin-bottom:4px}.sub-label{font-family:var(--sans);font-size:13px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--text)}.sub-list{display:flex;flex-direction:column}.sub-row{display:grid;grid-template-columns:1fr auto auto;grid-template-rows:auto auto;align-items:baseline;gap:2px 16px;padding:18px 4px;background:transparent;border:none;border-bottom:1px solid var(--border-soft);cursor:pointer;text-align:left;color:var(--text);font-family:inherit;transition:background .22s var(--ease),padding .22s var(--ease)}.sub-row:hover{background:var(--bg-card);padding-left:12px;padding-right:12px}.sub-row:active{background:var(--accent-light)}.sub-row-name{font-family:var(--serif);font-size:20px;font-weight:400;font-variation-settings:"opsz" 24;color:var(--text);letter-spacing:-.005em;grid-column:1;grid-row:1}.sub-row-meta{font-family:var(--sans);font-size:12px;color:var(--text-secondary);grid-column:1;grid-row:2;font-weight:300}.sub-row-price{font-family:var(--serif);font-size:20px;font-weight:400;color:var(--text);grid-column:2;grid-row:1 / span 2;align-self:center;letter-spacing:-.01em}.sub-row-period{font-family:var(--sans);font-size:11px;color:var(--text-secondary);font-weight:300;margin-left:2px}.sub-row-arrow{grid-column:3;grid-row:1 / span 2;align-self:center;color:var(--text-tertiary);transition:transform .22s var(--ease),color .22s var(--ease)}.sub-row:hover .sub-row-arrow{color:var(--text);transform:translate(3px)}.sub-note{text-align:center;font-family:var(--serif);font-style:italic;font-size:14px;color:var(--text-secondary);margin-top:28px;padding-bottom:4px}@media(max-width:500px){.subscription-select{padding:24px 20px 20px}.sub-title{font-size:40px}}.welcome{padding:28px 24px 24px;display:flex;flex-direction:column;height:100%;overflow-y:auto;background:var(--bg)}.welcome-crumbs{font-family:var(--sans);font-size:11px;color:var(--text-secondary);letter-spacing:.04em;display:flex;gap:6px;align-items:center;margin-bottom:24px}.welcome-crumb-sep{color:var(--text-tertiary)}.welcome-title{font-family:var(--serif);font-size:46px;font-weight:300;font-variation-settings:"opsz" 144;color:var(--text);line-height:1.02;letter-spacing:-.015em;margin:0 0 16px}.welcome-title em{font-style:italic;font-weight:400}.welcome-subtitle{font-family:var(--sans);font-size:14px;color:var(--text-secondary);font-weight:300;line-height:1.55;margin:0 0 36px;max-width:280px}.welcome-label-row{display:flex;padding:0 4px 10px;border-bottom:1px solid var(--border-soft);margin-bottom:4px}.welcome-label{font-family:var(--sans);font-size:13px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--text)}.welcome-list{display:flex;flex-direction:column}.welcome-row{display:grid;grid-template-columns:72px 1fr auto;grid-template-rows:auto auto;column-gap:14px;align-items:baseline;padding:18px 4px;background:transparent;border:none;border-bottom:1px solid var(--border-soft);cursor:pointer;text-align:left;color:var(--text);font-family:inherit;transition:background .22s var(--ease),padding .22s var(--ease)}.welcome-row:hover{background:var(--bg-card);padding-left:12px;padding-right:12px}.welcome-row:active{background:var(--accent-light)}.welcome-row-range{grid-column:1;grid-row:1 / span 2;align-self:center;font-family:var(--serif);font-size:22px;font-weight:400;font-variation-settings:"opsz" 24;letter-spacing:-.01em;color:var(--text)}.welcome-row-label{grid-column:2;grid-row:1;font-family:var(--serif);font-style:italic;font-size:16px;color:var(--text)}.welcome-row-desc{grid-column:2;grid-row:2;font-family:var(--sans);font-size:12px;color:var(--text-secondary);font-weight:300;margin-top:2px}.welcome-row-arrow{grid-column:3;grid-row:1 / span 2;align-self:center;color:var(--text-secondary);transition:transform .22s var(--ease),color .22s var(--ease)}.welcome-row:hover .welcome-row-arrow{color:var(--text);transform:translate(3px)}.welcome-note{margin-top:28px;font-family:var(--serif);font-style:italic;font-size:13px;color:var(--text-secondary);text-align:center}@media(max-width:500px){.welcome{padding:24px 20px 20px}.welcome-title{font-size:40px}}.suggestion-banner{display:flex;align-items:center;gap:12px;padding:12px 14px;margin:0 0 18px;background:var(--bg-card);border:1px solid var(--border-soft, var(--border));border-left:3px solid var(--accent, var(--text));border-radius:12px;cursor:pointer;text-align:left;width:100%;font-family:inherit;color:inherit;transition:transform .2s var(--ease),box-shadow .22s var(--ease),border-color .22s var(--ease)}.suggestion-banner:hover{transform:translateY(-1px);box-shadow:var(--shadow-soft);border-color:var(--text-secondary)}.suggestion-banner:active{transform:translateY(0)}.suggestion-icon{font-size:18px;line-height:1;flex-shrink:0}.suggestion-body{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.suggestion-headline{font-family:var(--sans);font-size:12px;color:var(--text);line-height:1.4}.suggestion-cta{font-family:var(--serif);font-style:italic;font-size:12px;color:var(--text-secondary);line-height:1.4}.suggestion-dismiss{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:6px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .2s var(--ease),color .2s var(--ease)}.suggestion-dismiss:hover{background:var(--bg-alt, var(--border-soft));color:var(--text)}.mode-switch{display:inline-flex;align-items:center;gap:4px;padding:4px;background:var(--surface, #E8E1D3);border-radius:999px;border:1px solid rgba(43,37,32,.08)}.mode-switch-pill{appearance:none;border:0;background:transparent;padding:6px 14px;font-family:var(--sans, "Inter", system-ui, sans-serif);font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted, #6B5F54);border-radius:999px;cursor:pointer;transition:background .12s ease,color .12s ease}.mode-switch-pill:hover{color:var(--text, #2B2520)}.mode-switch-pill.is-active{background:var(--bg, #F2EDE4);color:var(--text, #2B2520);box-shadow:0 1px 2px #2b252014}.mode-switch--compact .mode-switch-pill{padding:4px 10px;font-size:11px}.daily-goal{width:100%;background:var(--bg-card);border:1px solid var(--border-soft);border-radius:14px;padding:10px 14px;margin-bottom:14px;display:flex;flex-direction:column;gap:6px;transition:border-color .2s var(--ease),box-shadow .24s var(--ease)}.daily-goal.is-complete{border-color:var(--accent, #C9B896);box-shadow:0 0 0 1px #cc3b8614,0 6px 20px #2b25200d}.daily-goal-row{background:transparent;border:none;padding:0;display:flex;justify-content:space-between;align-items:baseline;cursor:pointer;font-family:inherit;color:var(--text)}.daily-goal-label{font-family:var(--sans);font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--text)}.daily-goal.is-complete .daily-goal-label{color:#cc3b86;text-transform:none;letter-spacing:0;font-family:var(--serif);font-style:italic;font-size:14px;font-weight:400}.daily-goal-figures{font-family:var(--serif);font-size:14px;color:var(--text);font-variation-settings:"opsz" 24}.daily-goal-used{font-weight:500;font-variant-numeric:tabular-nums}.daily-goal-sep{margin:0 6px;color:var(--text-secondary);font-weight:300}.daily-goal-total{font-weight:300;color:var(--text-secondary);font-variant-numeric:tabular-nums}.daily-goal-track{height:6px;width:100%;background:#2b252014;border-radius:999px;overflow:hidden}.daily-goal-fill{height:100%;background:linear-gradient(90deg,var(--bg) 0%,#C9B896 60%,#CC3B86 100%);border-radius:999px;transition:width .6s cubic-bezier(.4,0,.2,1)}.daily-goal-options{display:flex;flex-direction:column;gap:8px;padding-top:6px}.daily-goal-options-label{font-family:var(--sans);font-size:10px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--text-secondary)}.daily-goal-options-row{display:flex;gap:6px}.daily-goal-option{flex:1;appearance:none;border:1px solid var(--border-soft);background:transparent;border-radius:999px;padding:8px 10px;font-family:var(--sans);font-size:13px;font-weight:500;letter-spacing:.04em;color:var(--text);cursor:pointer;transition:background .16s var(--ease),color .16s var(--ease),border-color .16s var(--ease)}.daily-goal-option:hover{background:#2b25200a}.daily-goal-option.is-active{background:var(--text);color:var(--bg);border-color:var(--text)}.phonebook{padding:4px 20px 16px;background:var(--bg)}.phonebook-header{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:6px;margin-bottom:20px}.phonebook-mode-row{display:flex;justify-content:center;margin-bottom:14px}.topic-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}.topic-card{appearance:none;border:1px solid rgba(43,37,32,.12);background:var(--surface, #E8E1D3);text-align:left;padding:12px 10px;border-radius:10px;font-family:var(--sans);color:var(--text);cursor:pointer;display:flex;flex-direction:column;gap:4px;transition:background .12s ease,transform .12s ease}.topic-card:hover{background:#fff;transform:translateY(-1px)}.topic-card-label{font-family:var(--serif);font-size:15px;font-weight:600;line-height:1.15}.topic-card-cando{font-size:11px;color:var(--text-secondary, #6B5F54);font-style:italic;font-family:var(--serif)}.topic-card-sublevel{font-size:9px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--text-secondary, #6B5F54);margin-top:2px}.topic-card-progress{font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--text-secondary, #6B5F54);margin-top:4px}.topic-card.is-mastered{background:#fff;border-color:#2b252052}.topic-card.is-mastered .topic-card-progress{color:var(--text, #2B2520)}.topic-section{margin-bottom:18px}.topic-section-header{display:flex;align-items:center;justify-content:space-between;margin:6px 0 8px}.topic-section-label{font-family:var(--sans);font-size:10px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--text-secondary, #6B5F54)}.phonebook-title-row{display:flex;align-items:flex-end;gap:12px}.phonebook-mark{width:40px;height:23px;display:block;flex-shrink:0;margin-bottom:6px}.phonebook-title{font-family:var(--serif);font-size:38px;font-weight:300;font-variation-settings:"opsz" 144;margin:4px 0 0;color:var(--text);letter-spacing:-.015em;line-height:1}.phonebook-subtitle{font-family:var(--serif);font-style:italic;font-size:13px;color:var(--text-secondary);margin:4px 0 0;font-weight:400}.phonebook-settings{display:flex;flex-wrap:wrap;gap:5px;justify-content:flex-end;padding-top:8px}.settings-pill{padding:6px 12px;background:transparent;border:1px solid var(--border);border-radius:999px;cursor:pointer;transition:background .22s var(--ease),color .22s var(--ease),border-color .22s var(--ease);color:var(--text-secondary);font-family:var(--sans);font-size:10px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap}.settings-pill:hover,.settings-pill:active{background:var(--text);color:var(--bg);border-color:var(--text)}.featured-card{display:flex;align-items:center;gap:18px;width:100%;padding:32px 24px;background:var(--bg-card);border:1px solid var(--border);border-radius:26px;cursor:pointer;transition:transform .2s var(--ease),box-shadow .26s var(--ease),border-color .26s var(--ease);text-align:left;color:inherit;font-family:inherit;margin-bottom:40px;box-shadow:var(--shadow-soft)}.featured-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lifted);border-color:var(--text-secondary)}.featured-card:active{transform:translateY(0) scale(.99);box-shadow:var(--shadow-press)}.featured-avatar{width:96px;height:96px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:var(--text);border-radius:50%;padding:18px}.featured-avatar-img{width:100%;height:100%;object-fit:contain;filter:brightness(0) invert(1)}.featured-info{flex:1;display:flex;flex-direction:column;min-width:0}.featured-name{font-family:var(--serif);font-size:36px;font-weight:400;font-variation-settings:"opsz" 96;color:var(--text);letter-spacing:-.02em;line-height:1}.featured-subtitle{font-family:var(--serif);font-style:italic;font-size:13px;color:var(--text-secondary);font-weight:400;margin-top:4px}.featured-desc{font-family:var(--sans);font-size:11px;color:var(--text-secondary);margin-top:6px;line-height:1.5;font-weight:300}.featured-call-btn{width:60px;height:60px;border-radius:50%;background:var(--text);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--bg);transition:transform .22s var(--ease)}.featured-card:hover .featured-call-btn{transform:scale(1.06)}.featured-panel{width:100%;padding:28px 24px 22px;background:var(--bg-card);border:1px solid var(--border);border-radius:26px;margin-bottom:32px;box-shadow:var(--shadow-soft);display:flex;flex-direction:column;gap:18px}.featured-panel-head{display:flex;align-items:center;gap:18px}.featured-actions{display:flex;flex-direction:column;align-items:center;gap:6px}.featured-btn-primary{appearance:none;border:none;cursor:pointer;width:100%;padding:14px 20px;background:var(--text);color:var(--bg);border-radius:999px;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-family:var(--sans);font-size:14px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;transition:transform .16s var(--ease),background .2s var(--ease)}.featured-btn-primary:hover{background:#1a1410}.featured-btn-primary:active{transform:translateY(1px)}.featured-btn-secondary{appearance:none;background:transparent;border:none;cursor:pointer;padding:6px 12px;display:inline-flex;align-items:center;gap:8px;color:var(--text-secondary);font-family:var(--sans);font-size:12px;letter-spacing:.06em;text-transform:uppercase;font-weight:500;transition:color .16s var(--ease)}.featured-btn-secondary:hover{color:var(--text)}@media(max-width:380px){.featured-panel{padding:22px 18px 18px}.featured-name{font-size:30px}}.scenarios-divider{display:flex;align-items:center;gap:10px;margin-bottom:10px;padding-top:4px}.scenarios-label{font-family:var(--sans);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.2em;color:var(--text);white-space:nowrap}.scenarios-divider:after{content:"";flex:1;height:1px;background:var(--border-soft)}.scenarios-note{font-family:var(--serif);font-style:italic;font-size:11px;color:var(--text-secondary);margin:-2px 0 10px;opacity:.85}.phonebook-list{display:flex;flex-direction:column}.contact-card{display:flex;align-items:center;gap:10px;width:100%;padding:9px 4px;background:transparent;border:none;border-bottom:1px solid var(--border-soft);cursor:pointer;transition:background .22s var(--ease),padding .22s var(--ease);text-align:left;color:inherit;font-family:inherit}.contact-card:hover{background:var(--bg-card);padding-left:10px;padding-right:10px}.contact-card:active{background:var(--accent-light)}.contact-avatar{width:28px;height:28px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:var(--bg-alt);border-radius:50%;padding:5px}.contact-avatar-img{width:100%;height:100%;object-fit:contain;opacity:.85}.contact-info{flex:1;display:flex;flex-direction:column;min-width:0}.contact-name{font-family:var(--serif);font-style:italic;font-size:13px;font-weight:400;color:var(--text);line-height:1.1}.contact-subtitle{font-family:var(--sans);font-size:10px;color:var(--text-secondary);margin-top:1px;font-weight:300}.contact-call-btn{width:22px;height:22px;border-radius:50%;background:transparent;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--text-secondary);transition:background .22s var(--ease),color .22s var(--ease),border-color .22s var(--ease)}.contact-card:hover .contact-call-btn{background:var(--text);color:var(--bg);border-color:var(--text)}.contact-call-btn svg{fill:currentColor}.contact-topics{display:flex;gap:4px;margin-top:4px;flex-wrap:wrap}.topic-chip{display:inline-flex;align-items:center;padding:1px 7px;background:var(--bg-alt, var(--bg-card));border:1px solid var(--border-soft, var(--border));border-radius:999px;font-family:var(--sans);font-size:9px;font-weight:500;letter-spacing:.04em;color:var(--text-secondary);white-space:nowrap}.call-screen{display:flex;flex-direction:column;align-items:center;height:100%;padding:36px 24px 24px;position:relative;background:var(--bg);color:var(--text);font-family:var(--sans)}.offline-banner{position:absolute;top:12px;left:50%;transform:translate(-50%);background:var(--danger);color:var(--bg);padding:8px 16px;border-radius:999px;display:flex;align-items:center;gap:8px;font-size:11px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;z-index:100;animation:slide-down .3s ease-out;box-shadow:var(--shadow-soft)}@keyframes slide-down{0%{opacity:0;transform:translate(-50%) translateY(-10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.call-header{display:flex;flex-direction:column;align-items:center;text-align:center;margin-bottom:32px}.call-avatar{width:88px;height:88px;display:flex;align-items:center;justify-content:center;margin-bottom:20px;background:var(--bg-card);border:1px solid var(--border);border-radius:50%;padding:20px;box-shadow:var(--shadow-soft)}.call-avatar-img{width:100%;height:100%;object-fit:contain;opacity:.75}.call-name{font-family:var(--serif);font-size:40px;font-weight:300;font-variation-settings:"opsz" 144;color:var(--text);margin:0 0 6px;letter-spacing:-.015em;line-height:1}.call-status{font-family:var(--serif);font-style:italic;font-size:14px;color:var(--text-secondary);margin:0;font-weight:400}.call-timer{font-family:var(--sans);font-size:11px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--text-tertiary);margin:6px 0 0;font-variant-numeric:tabular-nums}.call-waveform{flex:1;display:flex;align-items:center;justify-content:center;min-height:96px}.waveform-bars{display:flex;align-items:center;gap:4px;height:56px}.waveform-bar{width:2px;background:var(--text);opacity:.75;border-radius:2px;animation:waveform .9s ease-in-out infinite alternate}@keyframes waveform{0%{height:6px;opacity:.3}to{height:40px;opacity:.8}}.listening-indicator{display:flex;align-items:center;justify-content:center;position:relative;width:72px;height:72px}.listening-ring{position:absolute;inset:0;border:1px solid var(--text);border-radius:50%;opacity:.35;animation:pulse-ring 1.6s ease-out infinite}.listening-indicator svg{fill:var(--text);opacity:.85}@keyframes pulse-ring{0%{transform:scale(.85);opacity:.45}to{transform:scale(1.5);opacity:0}}.noise-rejected{position:absolute;top:-6px;right:-6px;background:var(--bg-card);border:1px solid var(--border);border-radius:50%;padding:2px;animation:reject-flash .5s ease-out}.noise-rejected svg{fill:var(--danger)}@keyframes reject-flash{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.15)}}.processing-dots{display:flex;gap:8px}.dot{width:6px;height:6px;background:var(--text);border-radius:50%;opacity:.55;animation:dot-bounce 1.2s ease-in-out infinite}.dot:nth-child(2){animation-delay:.2s}.dot:nth-child(3){animation-delay:.4s}@keyframes dot-bounce{0%,80%,to{transform:scale(.6);opacity:.25}40%{transform:scale(1);opacity:.8}}.ringing-animation{position:relative;width:72px;height:72px}.ring{position:absolute;inset:0;border:1px solid var(--text);border-radius:50%;opacity:.5;animation:ring-expand 1.6s ease-out infinite}.ring-2{animation-delay:.3s}.ring-3{animation-delay:.6s}@keyframes ring-expand{0%{transform:scale(.5);opacity:.7}to{transform:scale(1.9);opacity:0}}.conversation-display{display:flex;flex-direction:column;width:100%;border-top:1px solid var(--border-soft);border-bottom:1px solid var(--border-soft);margin-bottom:20px}.call-response-bubble{padding:14px 4px;width:100%;border-bottom:1px solid var(--border-soft)}.response-label{font-family:var(--sans);font-size:11px;color:var(--text-secondary);margin:0 0 6px;text-transform:uppercase;letter-spacing:.22em;font-weight:600}.response-text{font-family:var(--serif);font-weight:400;font-size:16px;color:var(--text);margin:0;line-height:1.45;letter-spacing:-.005em}.call-transcript-preview{padding:14px 4px;width:100%}.transcript-label{font-family:var(--sans);font-size:11px;color:var(--text-secondary);margin:0 0 6px;text-transform:uppercase;letter-spacing:.22em;font-weight:600}.transcript-text{font-family:var(--serif);font-style:italic;font-size:15px;color:var(--text);margin:0;line-height:1.45}.call-helpers{display:flex;gap:6px;width:100%;margin-bottom:12px;flex-wrap:wrap;justify-content:center}.helper-pill{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;background:transparent;border:1px solid var(--border);border-radius:999px;color:var(--text-secondary);font-family:var(--sans);font-size:10px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:background .22s var(--ease),color .22s var(--ease),border-color .22s var(--ease)}.helper-pill:hover{background:var(--bg-card);color:var(--text);border-color:var(--text-secondary)}.helper-pill:active{transform:scale(.97)}.helper-pill--active{background:var(--text);border-color:var(--text);color:var(--bg)}.helper-pill--interrupt{background:var(--text);color:var(--bg);border-color:var(--text)}.call-actions{display:flex;align-items:center;gap:12px;padding-bottom:12px;flex-wrap:wrap;justify-content:center}.hang-up-btn{width:60px;height:60px;border-radius:50%;background:var(--danger);border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--bg);transition:transform .2s var(--ease),background .22s var(--ease);box-shadow:var(--shadow-soft)}.hang-up-btn svg{fill:currentColor}.hang-up-btn:hover{background:#a4503e;transform:translateY(-1px)}.hang-up-btn:active{transform:translateY(0) scale(.96)}.transcript-toggle,.speed-toggle,.help-btn{width:40px;height:40px;border-radius:50%;background:transparent;border:1px solid var(--border);color:var(--text-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer;font-family:var(--sans);font-size:11px;font-weight:500;letter-spacing:.06em;transition:background .22s var(--ease),color .22s var(--ease),border-color .22s var(--ease)}.transcript-toggle:hover,.speed-toggle:hover,.help-btn:hover{background:var(--text);color:var(--bg);border-color:var(--text)}.speed-toggle{width:auto;min-width:48px;padding:0 14px;color:var(--text);font-variant-numeric:tabular-nums}.speed-pill{padding:8px 16px;background:transparent;border:1px solid var(--border);border-radius:999px;color:var(--text-secondary);font-family:var(--sans);font-size:10px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;cursor:pointer;transition:background .22s var(--ease),color .22s var(--ease),border-color .22s var(--ease)}.speed-pill:hover{background:var(--text);color:var(--bg);border-color:var(--text)}.browser-warning{position:absolute;bottom:100px;left:16px;right:16px;background:var(--bg-card);border:1px solid var(--border);color:var(--text-secondary);padding:12px 14px;border-radius:14px;font-size:12px;font-weight:300;text-align:center}.transcript-overlay{position:absolute;inset:0;background:#2b252040;display:flex;align-items:flex-end;z-index:10;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.transcript-panel{background:var(--bg);border-top:1px solid var(--border);border-radius:24px 24px 0 0;padding:24px 20px 20px;width:100%;max-height:70%;overflow-y:auto}.transcript-panel h3{font-family:var(--serif);font-weight:300;font-variation-settings:"opsz" 144;color:var(--text);margin:0 0 16px;font-size:28px;letter-spacing:-.01em}.transcript-messages{display:flex;flex-direction:column;gap:10px}.transcript-msg{padding:12px 4px;border-bottom:1px solid var(--border-soft)}.transcript-msg:last-child{border-bottom:none}.msg-role{font-family:var(--sans);font-size:10px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.22em;font-weight:600}.msg-text{font-family:var(--serif);font-weight:400;font-size:15px;color:var(--text);margin:6px 0 0;line-height:1.5}.transcript-msg.user .msg-text{font-style:italic}.tappable-word{cursor:pointer;border-radius:3px;padding:0 1px;transition:background .15s var(--ease),color .15s var(--ease)}.tappable-word:hover{background:var(--accent-light)}.tappable-word:active{background:var(--text);color:var(--bg)}.close-transcript{width:100%;padding:12px;background:transparent;border:1px solid var(--border);border-radius:999px;color:var(--text);font-family:var(--sans);font-size:11px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;cursor:pointer;margin-top:16px;transition:background .22s var(--ease),color .22s var(--ease),border-color .22s var(--ease)}.close-transcript:hover{background:var(--text);color:var(--bg);border-color:var(--text)}.vocab-page{padding:0 0 24px;min-height:100%;display:flex;flex-direction:column}.vocab-header{display:flex;align-items:center;gap:12px;padding:8px 16px 12px;background:var(--accent);color:#fff}.vocab-back{display:flex;align-items:center;gap:2px;padding:6px 12px 6px 6px;background:#ffffff2e;border:none;border-radius:16px;cursor:pointer;color:#fff;font-family:inherit;font-size:13px;font-weight:500;transition:background .2s}.vocab-back:hover{background:#ffffff47}.vocab-back:active{transform:scale(.96)}.vocab-title{font-size:22px;font-weight:700;margin:0;color:#fff;letter-spacing:-.3px;flex:1}.vocab-count{padding:4px 10px;background:#fff3;color:#fff;border-radius:12px;font-size:13px;font-weight:600}.vocab-search-wrap{position:relative;padding:12px 16px;background:var(--bg-pill)}.vocab-search-icon{position:absolute;left:28px;top:50%;transform:translateY(-50%);color:var(--text-secondary);pointer-events:none}.vocab-search{width:100%;padding:10px 36px 10px 38px;border:2px solid var(--border);border-radius:10px;font-size:14px;font-family:inherit;background:var(--bg-card);color:var(--text);transition:border-color .2s}.vocab-search:focus{outline:none;border-color:var(--accent)}.vocab-search::placeholder{color:var(--text-secondary)}.vocab-search-clear{position:absolute;right:28px;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text-secondary);font-size:20px;cursor:pointer;padding:0 4px;line-height:1}.vocab-search-clear:hover{color:var(--text)}.vocab-empty{text-align:center;color:var(--text-secondary);font-size:14px;line-height:1.6;padding:48px 24px}.vocab-empty p{margin:4px 0}.vocab-sections{display:flex;flex-direction:column;gap:24px;padding:0 16px}.vocab-section-label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:1px;color:var(--accent);margin:0 0 10px;padding-bottom:6px;border-bottom:2px solid var(--border)}.vocab-card{display:flex;align-items:center;gap:12px;padding:12px 14px;background:var(--bg-card);border:2px solid var(--border);border-radius:12px;margin-bottom:8px;transition:all .2s}.vocab-card:hover{border-color:var(--accent);box-shadow:0 4px 12px #4b5eaa1a}.vocab-card-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.vocab-word{font-size:16px;font-weight:700;color:var(--accent)}.vocab-context{font-size:13px;color:var(--text-secondary);line-height:1.4;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.vocab-card-actions{display:flex;gap:4px;flex-shrink:0}.vocab-speak{width:32px;height:32px;border-radius:8px;background:var(--bg-pill);border:none;color:var(--accent);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.vocab-speak:hover{background:var(--accent);color:#fff}.vocab-delete{width:32px;height:32px;border-radius:8px;background:var(--bg-pill);border:none;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .2s}.vocab-delete:hover{background:var(--danger);color:#fff}.testing-panel-toggle{position:fixed;right:12px;bottom:12px;z-index:9999;padding:7px 10px;border:1px solid rgba(255,255,255,.28);border-radius:999px;background:#000000b8;color:#fff;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;cursor:pointer}.testing-panel{position:fixed;right:12px;bottom:12px;background:#000000e6;color:#fff;padding:12px;border-radius:8px;font-size:12px;z-index:9999;box-shadow:0 4px 12px #00000080;max-width:280px}.testing-header{display:flex;align-items:center;justify-content:space-between;gap:12px;font-weight:700;margin-bottom:10px;font-size:13px}.testing-close{width:22px;height:22px;padding:0!important;border-radius:999px!important;background:#ffffff29!important;color:#fff!important;line-height:1}.testing-section{margin-bottom:10px}.section-label{font-size:10px;opacity:.7;margin-bottom:4px}.level-buttons{display:flex;gap:4px}.level-btn{flex:1;padding:6px 8px;border:1px solid rgba(255,255,255,.3);background:#ffffff1a;color:#fff;border-radius:4px;font-size:10px;cursor:pointer;font-weight:600;transition:all .2s}.level-btn:hover{background:#fff3}.level-btn.active{background:#10b981;border-color:#10b981}.testing-buttons{display:flex;gap:8px;margin-bottom:8px}.testing-panel button{flex:1;padding:8px 12px;border:none;border-radius:6px;font-size:11px;cursor:pointer;font-weight:600;transition:all .2s}.reset-btn{background:#ef4444;color:#fff}.reset-btn:hover:not(:disabled){background:#dc2626}.new-user-btn{background:#3b82f6;color:#fff}.new-user-btn:hover{background:#2563eb}.testing-panel button:disabled{opacity:.5;cursor:not-allowed}.testing-message{padding:6px 8px;background:#ffffff1a;border-radius:4px;margin-bottom:8px;font-size:11px}.testing-info{font-size:10px;opacity:.7;margin-top:6px}.testing-info code{background:#fff3;padding:2px 4px;border-radius:3px;font-family:Courier New,monospace}.dashboard-backdrop{position:fixed;inset:0;background:#2b25208c;display:flex;align-items:flex-start;justify-content:center;padding:24px;z-index:9100;overflow-y:auto}.dashboard-card{background:var(--bg, #F2EDE4);border-radius:14px;width:min(960px,100%);max-height:calc(100vh - 48px);padding:20px 22px;display:flex;flex-direction:column;gap:12px;box-shadow:0 16px 48px #2b25203d;overflow:hidden}.dashboard-header{display:flex;align-items:baseline;justify-content:space-between}.dashboard-header h2{font-family:var(--serif, "Fraunces", serif);font-size:22px;font-weight:500;margin:0;color:var(--text, #2B2520)}.dashboard-close{appearance:none;border:0;background:transparent;font-size:28px;line-height:1;color:var(--text, #2B2520);cursor:pointer;padding:0 6px}.dashboard-blurb{font-family:var(--serif, "Fraunces", serif);font-style:italic;font-size:13px;color:var(--text-secondary, #6B5F54);margin:0}.dashboard-status{padding:10px 0;font-family:var(--sans, "Inter", system-ui, sans-serif);font-size:13px;color:var(--text-secondary, #6B5F54)}.dashboard-status--error{color:#a8421c}.dashboard-table-wrap{overflow:auto;border:1px solid rgba(43,37,32,.1);border-radius:8px}.dashboard-table{width:100%;border-collapse:collapse;font-family:var(--sans);font-size:13px;color:var(--text);background:#fff}.dashboard-table thead th{background:var(--surface, #E8E1D3);text-align:left;padding:8px 10px;font-size:10px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--text-secondary, #6B5F54);border-bottom:1px solid rgba(43,37,32,.1);white-space:nowrap}.dashboard-table tbody td{padding:10px;border-bottom:1px solid rgba(43,37,32,.06);vertical-align:top}.dashboard-table tbody tr:last-child td{border-bottom:0}.cell-name{font-weight:600}.cell-email{font-size:11px;color:var(--text-secondary)}.cell-total{color:var(--text-secondary)}.cell-topics{max-width:320px;font-size:12px;color:var(--text-secondary)}.cell-muted{color:var(--text-secondary)}.persona-panel-toggle{position:fixed;bottom:16px;right:16px;z-index:9000;appearance:none;border:1px solid rgba(43,37,32,.18);background:var(--surface, #E8E1D3);color:var(--text, #2B2520);padding:6px 12px;font-family:var(--sans, "Inter", system-ui, sans-serif);font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;border-radius:999px;cursor:pointer;box-shadow:0 2px 6px #2b25201f}.persona-panel-toggle:hover{background:var(--bg, #F2EDE4)}.persona-panel{position:fixed;bottom:16px;right:16px;z-index:9000;width:280px;max-width:calc(100vw - 32px);background:var(--bg, #F2EDE4);border:1px solid rgba(43,37,32,.16);border-radius:12px;padding:12px;font-family:var(--sans, "Inter", system-ui, sans-serif);color:var(--text, #2B2520);box-shadow:0 8px 24px #2b252029}.persona-header{display:flex;align-items:center;justify-content:space-between;font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;margin-bottom:10px}.persona-close{appearance:none;border:0;background:transparent;color:var(--text, #2B2520);font-size:18px;line-height:1;cursor:pointer;padding:2px 6px}.persona-section{margin-bottom:10px}.persona-label{font-size:10px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--text-secondary, #6B5F54);margin-bottom:4px}.persona-stack{display:flex;flex-direction:column;gap:4px}.persona-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.persona-preset{appearance:none;border:1px solid rgba(43,37,32,.16);background:var(--surface, #E8E1D3);font-size:12px;padding:6px 10px;border-radius:6px;text-align:left;cursor:pointer;font-family:inherit;color:inherit}.persona-preset:hover:not(:disabled){background:#fff}.persona-pill{appearance:none;border:1px solid rgba(43,37,32,.16);background:var(--surface, #E8E1D3);font-size:11px;font-weight:600;letter-spacing:.06em;padding:4px 10px;border-radius:999px;cursor:pointer;font-family:inherit;color:inherit;text-transform:capitalize}.persona-pill.is-active{background:var(--text, #2B2520);color:var(--bg, #F2EDE4);border-color:var(--text, #2B2520)}.persona-pill:disabled,.persona-preset:disabled{opacity:.5;cursor:wait}.persona-input{flex:1;min-width:0;padding:6px 8px;border-radius:6px;border:1px solid rgba(43,37,32,.16);font-family:inherit;font-size:13px;background:#fff;color:var(--text)}.persona-readout{font-size:12px;font-family:var(--serif, "Fraunces", serif);font-style:italic;color:var(--text-secondary, #6B5F54);flex:1}.persona-status{display:flex;justify-content:space-between;font-size:11px;color:var(--text-secondary, #6B5F54);margin-top:8px;padding-top:8px;border-top:1px solid rgba(43,37,32,.08)}.persona-flash{color:var(--text, #2B2520);font-weight:600}.landing-page{min-height:100vh;width:100%;background:var(--bg);color:var(--text);overflow-y:auto;overflow-x:hidden;font-family:var(--sans)}.landing-container{max-width:1160px;margin:0 auto;padding:0 56px;width:100%}.landing-header{position:fixed;top:0;left:0;right:0;background:#f2ede4d1;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--border-soft);z-index:100;padding:20px 0}.header-inner{display:flex;align-items:center;justify-content:space-between}.brand-lockup{display:flex;align-items:center;gap:12px}.brand-mark{width:44px;height:26px;display:block}.brand-name{font-family:var(--serif);font-size:22px;font-weight:400;font-variation-settings:"opsz" 24;color:var(--text);letter-spacing:-.005em}.hero-mark{width:96px;height:56px;display:block;margin-bottom:32px}.footer-lockup{display:flex;align-items:center;gap:10px}.footer-mark{width:32px;height:19px;display:block}.header-cta{font-family:var(--sans);font-size:12px;font-weight:500;color:var(--text);background:transparent;border:1px solid var(--border);padding:8px 16px;border-radius:999px;cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:background .22s var(--ease),color .22s var(--ease),border-color .22s var(--ease)}.header-cta:hover{background:var(--text);color:var(--bg);border-color:var(--text)}.top-nav{display:flex;align-items:center;gap:6px;flex:1;justify-content:center}.top-nav-item{background:transparent;border:none;padding:8px 16px;border-radius:999px;font-family:var(--sans);font-size:11px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--text-tertiary);cursor:pointer;transition:background .22s var(--ease),color .22s var(--ease);white-space:nowrap}.top-nav-item:hover{color:var(--text)}.top-nav-item.active{color:var(--text);background:var(--bg-card)}.pill{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 28px;border-radius:999px;font-family:var(--sans);font-size:14px;font-weight:500;letter-spacing:.01em;cursor:pointer;border:1px solid transparent;transition:background .24s var(--ease),color .24s var(--ease),border-color .24s var(--ease),transform .2s var(--ease)}.pill-primary{background:var(--text);color:var(--bg)}.pill-primary:hover{background:#3a3229;transform:translateY(-1px)}.pill-primary:active{transform:translateY(0) scale(.98)}.pill-ghost{background:transparent;color:var(--text);border-color:var(--border)}.pill-ghost:hover{border-color:var(--text)}.pill-large{padding:16px 34px;font-size:15px}.landing-hero{min-height:80vh;padding:140px 0 100px;display:flex;align-items:center}.hero-grid{display:flex;align-items:flex-start}.hero-copy{display:flex;flex-direction:column;max-width:780px}.hero-title{max-width:820px}.hero-eyebrow{margin-bottom:32px}.hero-title{font-family:var(--serif);font-size:92px;font-weight:300;font-variation-settings:"opsz" 144;color:var(--text);line-height:.98;letter-spacing:-.02em;margin:0 0 28px}.hero-title em{font-style:italic;font-weight:400}.hero-subtitle{font-family:var(--sans);font-size:17px;font-weight:300;color:var(--text-secondary);line-height:1.6;margin:0 0 18px;max-width:460px}.hero-levels{font-size:11px;font-weight:600;color:var(--text);letter-spacing:.28em;margin:0 0 32px;opacity:.75}.hero-ctas{display:flex;gap:12px;flex-wrap:wrap}.hero-visual{display:flex;align-items:center;justify-content:center;position:relative}.hero-phone{position:relative;width:320px;aspect-ratio:9/19}.hero-phone-shadow{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 60%,rgba(62,52,40,.18),transparent 70%);filter:blur(24px);transform:translateY(20px) scale(.95);z-index:0}.hero-phone-device{position:relative;z-index:1;width:100%;height:100%;background:linear-gradient(155deg,#2a2420,#0f0b08 55%,#1a1510);border-radius:48px;padding:6px;box-shadow:0 0 0 1px #ffffff0d inset,0 34px 60px -24px #3e342866}.hero-phone-notch{position:absolute;top:14px;left:50%;transform:translate(-50%);width:84px;height:24px;background:#000;border-radius:999px;z-index:2}.hero-phone-screen{position:relative;width:100%;height:100%;background:linear-gradient(180deg,#e8e1d3,#ddd3c0);border-radius:42px;overflow:hidden}.hero-phone-overlay{position:absolute;inset:auto 20px 24px;background:#f2ede4b8;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.4);border-radius:22px;padding:24px 22px;display:flex;flex-direction:column;gap:14px;height:62%}.hero-phone-eyebrow{font-size:9px;letter-spacing:.26em}.hero-phone-title{font-family:var(--serif);font-weight:300;font-size:22px;line-height:1.15;letter-spacing:-.005em;color:var(--text);margin-bottom:4px}.hero-phone-title em{font-style:italic;font-weight:400}.hero-phone-pill{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 18px;border-radius:999px;background:var(--text);color:var(--bg);font-family:var(--sans);font-size:12px;font-weight:500}.hero-phone-pill.ghost{background:#fbf7f0d9;color:var(--text);border:1px solid var(--border)}.landing-section{padding:140px 0;border-top:1px solid var(--border-soft)}.section-kicker{margin-bottom:28px}.section-heading{font-family:var(--serif);font-size:72px;font-weight:300;font-variation-settings:"opsz" 144;color:var(--text);line-height:1;letter-spacing:-.02em;margin:0 0 48px}.section-heading em{font-style:italic;font-weight:400}.section-heading-sm{font-size:56px;margin-bottom:28px}.section-subheading{font-family:var(--sans);font-size:17px;color:var(--text-secondary);font-weight:300;max-width:480px;margin:-32px 0 60px;line-height:1.55}.steps-list{display:flex;flex-direction:column}.step-row{display:grid;grid-template-columns:120px 1fr;gap:40px;padding:36px 0;border-top:1px solid var(--border-soft);align-items:baseline}.step-row:last-child{border-bottom:1px solid var(--border-soft)}.step-num{font-family:var(--serif);font-size:22px;font-weight:400;font-variation-settings:"opsz" 24;color:var(--text-secondary);letter-spacing:-.01em}.step-body{max-width:520px}.step-title{font-family:var(--serif);font-weight:400;font-size:28px;font-variation-settings:"opsz" 48;color:var(--text);letter-spacing:-.01em;margin:0 0 12px;line-height:1.1}.step-desc{font-family:var(--sans);font-size:15px;font-weight:300;color:var(--text-secondary);line-height:1.6;margin:0}.section-preview{background:var(--bg-alt);border-top:1px solid var(--border-soft)}.preview-inner{display:grid;grid-template-columns:1fr 1.1fr;gap:80px;align-items:center}.preview-copy{display:flex;flex-direction:column}.preview-copy .caps{margin-bottom:28px}.preview-desc{font-family:var(--sans);font-size:16px;font-weight:300;color:var(--text-secondary);line-height:1.6;margin:0;max-width:420px}.preview-visual{display:flex;justify-content:center;align-items:center}.mockup-phone{position:relative;width:320px;aspect-ratio:9/19;background:linear-gradient(155deg,#2a2420,#0f0b08 55%,#1a1510);border-radius:48px;padding:6px;box-shadow:0 0 0 1px #ffffff0d inset,0 34px 60px -24px #3e342859}.mockup-notch{position:absolute;top:14px;left:50%;transform:translate(-50%);width:84px;height:24px;background:#000;border-radius:999px;z-index:2}.mockup-screen{position:relative;width:100%;height:100%;background:var(--bg);border-radius:42px;overflow:hidden;font-family:var(--sans);display:flex;flex-direction:column;padding:48px 18px 18px}.mockup-status{display:flex;justify-content:space-between;font-size:10px;color:var(--text-secondary);letter-spacing:.08em;padding:0 6px 8px}.mockup-content{flex:1;display:flex;flex-direction:column;min-height:0;padding:8px 4px 0}.mockup-crumbs{font-size:9px;color:var(--text-secondary);letter-spacing:.04em;display:flex;gap:4px;margin-bottom:10px}.mockup-title-row{display:flex;align-items:flex-end;gap:10px;margin:0 0 16px}.mockup-mark{width:32px;height:19px;display:block;flex-shrink:0;margin-bottom:4px}.mockup-title{font-family:var(--serif);font-weight:300;font-size:30px;font-variation-settings:"opsz" 144;color:var(--text);letter-spacing:-.01em;line-height:1;margin:0}.mockup-title em{font-style:italic;font-weight:400}.mockup-featured{display:flex;align-items:center;gap:14px;padding:24px 18px;background:var(--bg-card);border:1px solid var(--border);border-radius:20px;margin-bottom:24px;box-shadow:var(--shadow-soft)}.mockup-featured-copy{flex:1;display:flex;flex-direction:column;gap:4px}.mockup-featured-kicker{font-size:9px;letter-spacing:.24em;font-weight:600;color:var(--text-secondary);margin-bottom:2px}.mockup-featured-name{font-family:var(--serif);font-size:30px;font-weight:400;font-variation-settings:"opsz" 48;color:var(--text);letter-spacing:-.015em;line-height:1}.mockup-featured-desc{font-size:11px;color:var(--text-secondary);line-height:1.45;font-weight:300;margin-top:6px}.mockup-featured-btn{width:48px;height:48px;border-radius:50%;background:var(--text);color:var(--bg);display:flex;align-items:center;justify-content:center;flex-shrink:0}.mockup-divider{padding:8px 4px 10px;border-bottom:1px solid var(--border-soft);margin-bottom:4px}.mockup-list{display:flex;flex-direction:column}.mockup-contact{display:flex;align-items:center;gap:8px;padding:10px 4px;border-bottom:1px solid var(--border-soft)}.mockup-contact:last-child{border-bottom:none}.mockup-contact-info{flex:1;display:flex;flex-direction:column;min-width:0}.mockup-contact-name{font-family:var(--serif);font-style:italic;font-size:13px;font-weight:400;color:var(--text);line-height:1.1}.mockup-contact-sub{font-family:var(--sans);font-size:10px;color:var(--text-secondary);font-weight:300;margin-top:2px}.mockup-contact-arrow{width:20px;height:20px;border-radius:50%;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;color:var(--text-secondary);flex-shrink:0}.pricing-tier{margin-top:56px;padding:28px 32px 8px;border:1px solid var(--border-soft);border-radius:16px;background:#ffffff73}.pricing-tier+.pricing-tier{margin-top:32px}.pricing-tier-head{display:flex;flex-direction:column;gap:8px;padding-bottom:8px}.pricing-tier-headline{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap}.pricing-tier-number{font-family:var(--serif);font-size:24px;font-weight:500;color:var(--text);letter-spacing:-.01em;text-decoration:none;transition:opacity .18s var(--ease)}.pricing-tier-number:hover{opacity:.75}.pricing-tier-label{font-size:13px;font-weight:600;letter-spacing:.22em;color:var(--accent, #B87A3E)}.pricing-tier-blurb{font-family:var(--sans);font-size:15px;color:var(--text-secondary);font-weight:300;line-height:1.6;max-width:580px}.pricing-list{display:flex;flex-direction:column;margin-top:12px}.pricing-row{display:grid;grid-template-columns:180px 180px 1fr auto;gap:32px;padding:28px 0;border-top:1px solid var(--border-soft);align-items:baseline;transition:padding .22s var(--ease),background .22s var(--ease);cursor:default}.pricing-row:last-child{border-bottom:1px solid var(--border-soft)}.pricing-row:hover{background:var(--bg-card);padding-left:12px;padding-right:12px}.pricing-kicker{font-size:13px;font-weight:600;letter-spacing:.2em;color:var(--text)}.pricing-name{font-family:var(--serif);font-size:28px;font-weight:400;font-variation-settings:"opsz" 48;color:var(--text);letter-spacing:-.01em}.pricing-desc{font-family:var(--sans);font-size:14px;color:var(--text-secondary);font-weight:300;line-height:1.5}.pricing-price{font-family:var(--serif);font-size:24px;font-weight:400;color:var(--text);letter-spacing:-.01em;text-align:right}.pricing-period{font-family:var(--sans);font-size:12px;color:var(--text-secondary);font-weight:300;margin-left:2px}.pricing-note{font-family:var(--serif);font-style:italic;font-size:15px;color:var(--text-secondary);text-align:center;margin:48px 0 0}.cta-section{text-align:center;padding:160px 0;border-top:1px solid var(--border-soft)}.cta-heading{font-family:var(--serif);font-weight:300;font-variation-settings:"opsz" 144;font-size:72px;line-height:1;letter-spacing:-.02em;color:var(--text);margin:0 0 48px}.cta-heading em{font-style:italic;font-weight:400}.side-nav{position:fixed;right:40px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:16px;z-index:50}.side-nav-item{background:none;border:none;padding:6px 0;cursor:pointer;position:relative;display:flex;align-items:center;gap:12px;justify-content:flex-end}.side-nav-label{font-family:var(--sans);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--text-tertiary);transition:color .22s var(--ease);white-space:nowrap}.side-nav-item:hover .side-nav-label{color:var(--text-secondary)}.side-nav-item.active .side-nav-label{color:var(--text);font-weight:600}.side-nav-dot{display:block;width:9px;height:9px;background:var(--text-secondary);border-radius:50%;transition:background .22s var(--ease),transform .22s var(--ease),box-shadow .22s var(--ease);flex-shrink:0}.side-nav-item:hover .side-nav-dot{background:var(--text);transform:scale(1.2)}.side-nav-item.active .side-nav-dot{background:var(--text);box-shadow:0 0 0 5px var(--accent-light);transform:scale(1.1)}.landing-footer{padding:40px 0;border-top:1px solid var(--border-soft)}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:16px}.footer-brand{font-family:var(--serif);font-size:16px;color:var(--text);font-style:italic}.footer-meta{font-size:10px;color:var(--text-tertiary);display:flex;flex-wrap:wrap;align-items:center;gap:8px}.footer-meta a{color:var(--text-tertiary);text-decoration:none;transition:color .18s var(--ease)}.footer-meta a:hover{color:var(--text)}@media(max-width:960px){.landing-container{padding:0 32px}.top-nav{display:none}.hero-grid{grid-template-columns:1fr;gap:48px}.hero-visual{order:-1}.hero-title{font-size:64px}.section-heading{font-size:52px}.section-heading-sm{font-size:40px}.cta-heading{font-size:52px}.preview-inner{grid-template-columns:1fr;gap:48px}.pricing-row{grid-template-columns:140px 1fr auto;gap:20px}.pricing-kicker{grid-column:1 / -1;margin-bottom:-12px}.pricing-name{grid-column:1}.pricing-desc{grid-column:2}.pricing-price{grid-column:3}}@media(max-width:640px){.landing-container{padding:0 24px}.landing-hero{padding:120px 0 60px;min-height:auto}.hero-title{font-size:48px}.hero-subtitle{font-size:15px}.hero-phone{width:260px}.landing-section{padding:100px 0}.section-heading{font-size:42px}.section-heading-sm{font-size:34px}.cta-heading{font-size:42px}.cta-section{padding:120px 0}.step-row{grid-template-columns:60px 1fr;gap:20px;padding:28px 0}.step-title{font-size:22px}.pricing-row{grid-template-columns:1fr auto;gap:8px;padding:22px 0}.pricing-kicker{grid-column:1 / -1;margin-bottom:4px}.pricing-name{grid-column:1;font-size:22px}.pricing-desc{grid-column:1;margin-top:4px}.pricing-price{grid-column:2;grid-row:2 / span 2;align-self:center;font-size:20px}.footer-inner{flex-direction:column;gap:8px;align-items:flex-start}.mockup-phone{width:280px}.hero-phone{width:240px}}.phone-call-screen{position:relative;min-height:100%;padding:56px 24px 32px;display:flex;flex-direction:column;background:var(--bg)}.phone-call-back{position:absolute;top:14px;left:14px;width:34px;height:34px;border-radius:50%;background:transparent;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text);transition:background .22s var(--ease),color .22s var(--ease),border-color .22s var(--ease)}.phone-call-back:hover{background:var(--text);color:var(--bg);border-color:var(--text)}.phone-call-body{flex:1;display:flex;flex-direction:column;align-items:center;text-align:center;padding-top:20px}.phone-call-mark{position:absolute;top:18px;right:18px;width:28px;height:auto;opacity:.95;pointer-events:none}.phone-call-avatar{width:96px;height:96px;border-radius:50%;background:var(--bg-card);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;padding:20px;margin-bottom:28px;box-shadow:var(--shadow-soft)}.phone-call-avatar img{width:100%;height:100%;object-fit:contain;opacity:.7}.phone-call-kicker{font-family:var(--sans);font-size:13px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--text);margin-bottom:14px}.phone-call-name{font-family:var(--serif);font-size:40px;font-weight:300;font-variation-settings:"opsz" 144;color:var(--text);margin:0 0 10px;letter-spacing:-.015em;line-height:1}.phone-call-name em{font-style:italic;font-weight:400}.phone-call-hint{font-family:var(--serif);font-style:italic;font-size:14px;font-weight:400;color:var(--text-secondary);margin:0 0 36px;max-width:260px;line-height:1.5}.phone-call-number-block{width:100%;max-width:320px;padding:20px 0 24px;border-top:1px solid var(--border-soft);border-bottom:1px solid var(--border-soft);display:flex;flex-direction:column;align-items:center;gap:8px;margin-bottom:32px}.phone-call-number-label{font-family:var(--sans);font-size:12px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--text)}.phone-call-number{font-family:var(--serif);font-weight:400;font-variation-settings:"opsz" 48;font-size:26px;color:var(--text);text-decoration:none;letter-spacing:-.005em;transition:color .22s var(--ease)}.phone-call-number:hover{color:var(--text-secondary)}.phone-call-button{display:inline-flex;align-items:center;gap:10px;padding:14px 30px;background:var(--text);color:var(--bg);border-radius:999px;font-family:var(--sans);font-size:13px;font-weight:500;letter-spacing:.04em;text-decoration:none;transition:transform .2s var(--ease),background .22s var(--ease);margin-bottom:24px}.phone-call-button:hover{transform:translateY(-1px);background:#3a3229}.phone-call-button:active{transform:translateY(0) scale(.98)}.phone-call-note{font-family:var(--serif);font-style:italic;font-size:12px;color:var(--text-secondary);max-width:260px;margin:0;line-height:1.5}.auth-backdrop{position:fixed;inset:0;background:#2b252073;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:10000;padding:24px;animation:auth-fade .22s var(--ease)}@keyframes auth-fade{0%{opacity:0}to{opacity:1}}.auth-card{position:relative;width:100%;max-width:380px;background:var(--bg-card);border:1px solid var(--border);border-radius:14px;padding:36px 32px 32px;box-shadow:0 14px 40px #3e34282e;animation:auth-rise .34s cubic-bezier(.22,1,.36,1);display:flex;flex-direction:column;align-items:center;text-align:center}@keyframes auth-rise{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}.auth-close{position:absolute;top:12px;right:12px;width:28px;height:28px;border-radius:50%;background:transparent;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-secondary);transition:background .22s var(--ease),color .22s var(--ease),border-color .22s var(--ease)}.auth-close:hover{background:var(--text);color:var(--bg);border-color:var(--text)}.auth-logo{width:56px;height:auto;margin-bottom:14px}.auth-title{font-family:var(--serif);font-weight:300;font-size:28px;line-height:1.1;color:var(--text);margin:0 0 8px;letter-spacing:-.015em}.auth-title em{font-style:italic;font-weight:400}.auth-subtitle{font-family:var(--sans);font-size:13px;color:var(--text-secondary);margin:0 0 22px;line-height:1.5;font-weight:300}.auth-subtitle strong{color:var(--text);font-weight:500}.auth-form{width:100%;display:flex;flex-direction:column;gap:6px}.auth-label{font-family:var(--sans);font-size:11px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--text-secondary);text-align:left;margin-bottom:2px}.auth-input{font-family:var(--sans);font-size:15px;color:var(--text);background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:12px 14px;outline:none;transition:border-color .18s var(--ease),box-shadow .18s var(--ease);width:100%}.auth-input:focus{border-color:var(--text);box-shadow:0 0 0 2px var(--accent-light)}.auth-input:disabled{opacity:.6;cursor:not-allowed}.auth-input-code{letter-spacing:.4em;font-variant-numeric:tabular-nums;font-size:20px;text-align:center;font-weight:500;padding:14px}.auth-error{font-family:var(--sans);font-size:12px;color:var(--danger);margin-top:6px;text-align:left;line-height:1.4}.auth-button{font-family:var(--sans);font-size:14px;font-weight:500;letter-spacing:.02em;color:var(--bg);background:var(--text);border:none;border-radius:999px;padding:12px 24px;cursor:pointer;margin-top:14px;transition:background .22s var(--ease),transform .22s var(--ease)}.auth-button:hover:not(:disabled){background:#3a3229}.auth-button:active:not(:disabled){transform:translateY(1px)}.auth-button:disabled{opacity:.4;cursor:not-allowed}.auth-link{font-family:var(--sans);font-size:12px;color:var(--text-secondary);background:transparent;border:none;cursor:pointer;margin-top:10px;padding:6px;transition:color .18s var(--ease)}.auth-link:hover:not(:disabled){color:var(--text)}.auth-link:disabled{opacity:.4;cursor:not-allowed}.goal-backdrop{position:fixed;inset:0;background:radial-gradient(55% 45% at 18% 10%,rgba(255,252,246,.52),transparent 70%),radial-gradient(52% 42% at 84% 88%,rgba(201,184,150,.26),transparent 70%),var(--bg);display:flex;align-items:center;justify-content:center;z-index:9000;padding:16px;overflow-y:auto;animation:goal-backdrop-fade .32s cubic-bezier(.32,.72,0,1) both}@keyframes goal-backdrop-fade{0%{opacity:0}to{opacity:1}}@keyframes goal-card-rise{0%{opacity:0;transform:translateY(40px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.goal-card{background:linear-gradient(155deg,#ffffffc2,#f8f5ee85),#fffcf68c;-webkit-backdrop-filter:blur(32px) saturate(175%);backdrop-filter:blur(32px) saturate(175%);border:1px solid rgba(255,255,255,.76);border-radius:28px;padding:36px 28px 28px;width:100%;max-width:460px;box-shadow:0 1px #ffffffe6 inset,0 -1px #1e2b5514 inset,0 0 0 1px #1e2b550a,0 32px 68px -22px #1e2b5547,0 12px 24px -10px #2b252024;position:relative;font-family:var(--sans);margin:auto;animation:goal-card-rise .48s cubic-bezier(.32,.72,0,1) both;will-change:opacity,transform}.goal-card:before{content:"";position:absolute;inset:12px;border:1px solid rgba(30,43,85,.08);border-radius:22px;pointer-events:none}.goal-close{position:absolute;top:12px;right:12px;background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:8px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:background .2s var(--ease),color .2s var(--ease)}.goal-close:hover{background:var(--bg-alt, var(--border-soft));color:var(--text)}.goal-logo{width:56px;height:32px;display:block;margin:0 auto 18px}.goal-title{font-family:var(--serif);font-weight:400;font-size:28px;color:var(--text);text-align:center;margin:0 0 8px;line-height:1.15;letter-spacing:-.015em}.goal-title em{font-style:italic}.goal-subtitle{font-family:var(--serif);font-style:italic;font-size:13px;color:var(--text-secondary);text-align:center;margin:0 0 22px;line-height:1.5}.goal-featured{position:relative;width:100%;overflow:hidden;background:var(--bg-card);color:var(--text);border:1px solid var(--border);border-radius:22px;padding:24px 22px;cursor:pointer;text-align:left;font-family:inherit;margin-bottom:22px;transition:transform .24s cubic-bezier(.32,.72,0,1),box-shadow .24s cubic-bezier(.32,.72,0,1);box-shadow:0 1px #ffffffc7 inset,0 10px 24px -18px #3e34282e}.goal-featured:after{content:none}.goal-featured:hover{transform:translateY(-2px);box-shadow:0 1px #ffffffe6 inset,0 16px 36px -12px #2b25203d}.goal-featured.selected{border-color:var(--accent);box-shadow:0 0 0 3px #c9b89638,0 14px 28px -20px #3e342833}.goal-featured-badge{position:static;display:inline-flex;margin-bottom:16px;background:var(--bg-alt);color:var(--text-secondary);font-family:var(--sans);font-size:9px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;padding:5px 10px;border-radius:999px;border:1px solid var(--border-soft)}.goal-featured-label{font-family:var(--serif);font-size:28px;font-weight:400;letter-spacing:-.015em;line-height:1.1;margin-bottom:6px}.goal-featured-level{font-family:var(--sans);font-size:10px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;opacity:.75;margin-bottom:12px}.goal-featured-desc{font-family:var(--serif);font-style:italic;font-size:14px;line-height:1.55;opacity:.92}.goal-signal-bars{display:none}.goal-signal-bars span{width:5px;border-radius:999px;background:linear-gradient(180deg,#405dad,#1e2b55);box-shadow:0 0 10px #405dad40}.goal-signal-bars span:nth-child(1){height:10px}.goal-signal-bars span:nth-child(2){height:16px}.goal-signal-bars span:nth-child(3){height:23px}.goal-signal-bars span:nth-child(4){height:31px}.goal-divider{display:flex;align-items:center;gap:10px;margin:0 0 14px}.goal-divider:before,.goal-divider:after{content:"";flex:1;height:1px;background:var(--border-soft, var(--border))}.goal-divider span{font-family:var(--sans);font-size:10px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--text-secondary)}.goal-options{display:flex;flex-direction:column;gap:8px;margin-bottom:22px}.goal-option{background:#ffffff6b;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.5);border-radius:14px;padding:11px 14px;cursor:pointer;text-align:left;font-family:inherit;color:inherit;transition:background .22s cubic-bezier(.32,.72,0,1),transform .22s cubic-bezier(.32,.72,0,1),box-shadow .22s cubic-bezier(.32,.72,0,1);display:flex;flex-direction:column;gap:2px}.goal-option:hover{background:#ffffffa6;transform:translateY(-1px)}.goal-option.selected{background:#ffffffe6;border-color:#405dad6b;box-shadow:0 0 0 2px #405dad24,0 10px 24px -18px #1e2b5566}.goal-option-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.goal-option-label{font-family:var(--sans);font-size:12px;font-weight:500;color:var(--text);line-height:1.3}.goal-option-level{font-family:var(--sans);font-size:8px;font-weight:600;letter-spacing:.12em;color:var(--text-secondary);text-transform:uppercase;padding:2px 6px;background:var(--bg-alt, var(--bg));border:1px solid var(--border-soft, var(--border));border-radius:999px;flex-shrink:0}.goal-option-desc{font-family:var(--serif);font-style:italic;font-size:11px;color:var(--text-secondary);line-height:1.35}.goal-mode-row{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:18px;text-align:left}.goal-mode-label{font-family:var(--sans);font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--text)}.goal-mode-hint{font-family:var(--serif);font-style:italic;font-size:11px;color:var(--text-secondary);flex-basis:100%}.goal-owner-tools{display:flex;flex-direction:column;gap:6px;margin-bottom:18px;padding:12px;border:1px dashed rgba(43,37,32,.18);border-radius:8px;text-align:left}.goal-owner-label{font-family:var(--sans);font-size:10px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--text-secondary)}.goal-owner-button{appearance:none;border:1px solid rgba(43,37,32,.18);background:transparent;font-family:var(--sans);font-size:12px;color:var(--text);padding:8px 12px;border-radius:6px;cursor:pointer;align-self:flex-start}.goal-owner-button:hover:not(:disabled){background:#2b25200d}.goal-owner-button:disabled{opacity:.5;cursor:wait}.goal-danger-tools{display:flex;flex-direction:column;gap:6px;margin-bottom:18px;padding:12px;border:1px solid rgba(168,66,28,.32);border-radius:8px;text-align:left;background:#a8421c0a}.goal-danger-label{font-family:var(--sans);font-size:10px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:#a8421c}.goal-danger-button{appearance:none;border:1px solid rgba(168,66,28,.4);background:transparent;font-family:var(--sans);font-size:12px;color:#a8421c;padding:8px 12px;border-radius:6px;cursor:pointer;align-self:flex-start}.goal-danger-button:hover:not(:disabled){background:#a8421c14}.goal-danger-button:disabled{opacity:.5;cursor:wait}.goal-danger-error{font-family:var(--sans);font-size:12px;color:#a8421c;font-weight:500}.goal-danger-hint{font-family:var(--serif);font-style:italic;font-size:11px;color:var(--text-secondary)}.goal-phone-row{display:flex;flex-direction:column;gap:6px;margin-bottom:18px;text-align:left}.goal-phone-label{font-family:var(--sans);font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--text)}.goal-phone-optional{font-family:var(--serif);font-style:italic;font-size:11px;font-weight:400;letter-spacing:0;text-transform:none;color:var(--text-secondary);margin-left:4px}.goal-phone-input{background:var(--bg);border:1px solid var(--border-soft, var(--border));border-radius:12px;padding:12px 14px;font-family:var(--sans);font-size:14px;color:var(--text);outline:none;transition:border-color .2s var(--ease)}.goal-phone-input:focus{border-color:var(--text)}.goal-button{width:100%;padding:15px 20px;background:var(--text);color:var(--bg-card);border:1px solid var(--text);border-radius:999px;font-family:var(--sans);font-size:12px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;cursor:pointer;transition:background .22s var(--ease),color .22s var(--ease),transform .22s var(--ease),box-shadow .22s var(--ease),opacity .2s;box-shadow:0 12px 24px -16px #2b252057}.goal-button:hover:not(:disabled){transform:translateY(-1px);background:#3a3229;box-shadow:0 14px 26px -16px #2b25206b}.goal-button:active:not(:disabled){transform:translateY(0);background:var(--accent);border-color:var(--accent);color:var(--text)}.goal-button:disabled{opacity:.4;cursor:not-allowed}.limit-backdrop{position:fixed;inset:0;background:#2b252073;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:10000;padding:24px;animation:limit-fade .22s var(--ease)}@keyframes limit-fade{0%{opacity:0}to{opacity:1}}.limit-card{position:relative;width:100%;max-width:380px;background:var(--bg-card);border:1px solid var(--border);border-radius:14px;padding:36px 32px 28px;box-shadow:0 14px 40px #3e34282e;animation:limit-rise .34s cubic-bezier(.22,1,.36,1);display:flex;flex-direction:column;align-items:center;text-align:center}@keyframes limit-rise{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}.limit-close{position:absolute;top:12px;right:12px;width:28px;height:28px;border-radius:50%;background:transparent;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-secondary);transition:background .22s var(--ease),color .22s var(--ease),border-color .22s var(--ease)}.limit-close:hover{background:var(--text);color:var(--bg);border-color:var(--text)}.limit-logo{width:56px;height:auto;margin-bottom:14px}.limit-title{font-family:var(--serif);font-weight:300;font-size:26px;line-height:1.15;color:var(--text);margin:0 0 10px;letter-spacing:-.015em}.limit-title em{font-style:italic;font-weight:400}.limit-subtitle{font-family:var(--sans);font-size:13px;color:var(--text-secondary);margin:0 0 22px;line-height:1.5;font-weight:300}.limit-button{font-family:var(--sans);font-size:14px;font-weight:500;letter-spacing:.02em;color:var(--bg);background:var(--text);border:none;border-radius:999px;padding:12px 24px;cursor:pointer;width:100%;transition:background .22s var(--ease),transform .22s var(--ease)}.limit-button:hover{background:#3a3229}.limit-button:active{transform:translateY(1px)}.limit-link{font-family:var(--sans);font-size:12px;color:var(--text-secondary);background:transparent;border:none;cursor:pointer;margin-top:10px;padding:6px;transition:color .18s var(--ease)}.limit-link:hover{color:var(--text)}.paywall{padding:28px 24px 24px;display:flex;flex-direction:column;height:100%;overflow-y:auto;background:var(--bg)}.paywall-crumbs{font-family:var(--sans);font-size:11px;color:var(--text-secondary);letter-spacing:.04em;display:flex;gap:6px;align-items:center;margin-bottom:24px}.paywall-crumb-sep{color:var(--text-tertiary)}.paywall-title{font-family:var(--serif);font-size:46px;font-weight:300;font-variation-settings:"opsz" 144;color:var(--text);line-height:1.02;letter-spacing:-.015em;margin:0 0 16px}.paywall-title em{font-style:italic;font-weight:400}.paywall-subtitle{font-family:var(--sans);font-size:14px;color:var(--text-secondary);line-height:1.55;font-weight:300;margin:0 0 28px;max-width:280px}.paywall-price-card{background:var(--bg-card);border:1px solid var(--border-soft);border-radius:14px;padding:24px 22px 22px;display:flex;flex-direction:column;gap:18px}.paywall-price{display:baseline;font-family:var(--serif);color:var(--text);display:flex;align-items:baseline;gap:6px}.paywall-price-amount{font-size:44px;font-weight:400;letter-spacing:-.02em;font-variation-settings:"opsz" 144}.paywall-price-period{font-family:var(--sans);font-size:13px;color:var(--text-secondary);font-weight:300}.paywall-features{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}.paywall-features li{display:flex;gap:10px;align-items:flex-start;font-family:var(--sans);font-size:14px;color:var(--text);font-weight:300;line-height:1.45}.paywall-check{color:var(--text);font-weight:500;flex-shrink:0;width:16px}.paywall-cta{margin-top:6px;padding:14px 18px;background:var(--text);color:var(--bg);border:none;border-radius:10px;font-family:var(--sans);font-size:14px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;transition:background .2s var(--ease),transform .12s var(--ease)}.paywall-cta:hover:not(:disabled){background:#1a1410}.paywall-cta:active:not(:disabled){transform:translateY(1px)}.paywall-cta:disabled{opacity:.6;cursor:wait}.paywall-error{margin:0;color:#a3322a;font-family:var(--sans);font-size:13px;font-weight:400}.paywall-foot{text-align:center;font-family:var(--sans);font-size:12px;color:var(--text-secondary);margin-top:22px;font-weight:300;font-style:italic}.paywall-signout{align-self:center;margin-top:14px;background:transparent;border:none;color:var(--text-secondary);font-family:var(--sans);font-size:12px;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;padding:6px 10px}.paywall-signout:hover{color:var(--text)}@media(max-width:500px){.paywall{padding:24px 20px 20px}.paywall-title{font-size:40px}}.phone-frame{width:100%;max-width:100%;min-height:100vh;margin:0 auto;background:var(--bg);position:relative;overflow:hidden}@media(min-width:430px){.phone-frame{max-width:375px}}@media(min-width:500px){.phone-frame{height:min(932px,calc(100vh - 40px));min-height:0;max-height:none;border-radius:44px;border:1px solid var(--border);margin-top:20px;margin-bottom:20px;box-shadow:var(--shadow-lifted)}}.pages-container{position:absolute;inset:0;overflow:hidden}.pages-slider{display:flex;width:200%;height:100%;transition:transform .3s var(--ease)}.pages-slider.show-vocab{transform:translate(-50%)}.page{width:50%;height:100%;overflow-y:auto;padding-top:40px}.browser-notice{margin:8px 16px;padding:10px 14px;background:var(--bg-pill);color:var(--text-secondary);border-radius:10px;font-size:13px;text-align:center}.app-auth-bar{position:fixed;top:12px;left:12px;z-index:9999;display:flex;gap:6px;align-items:center}.app-auth-pill{padding:6px 12px;border-radius:999px;border:1px solid var(--border);background:var(--bg-card);color:var(--text);font-family:Inter,sans-serif;font-size:10px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;cursor:pointer;transition:background .16s var(--ease),border-color .16s var(--ease),transform .16s var(--ease);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.app-auth-pill:hover{background:var(--bg);border-color:var(--text);transform:translateY(-1px)}.app-auth-pill--icon{padding:6px 10px;font-size:13px;letter-spacing:0}.auth-required-screen{min-height:100%;display:grid;align-content:center;justify-items:center;gap:14px;padding:52px 32px;text-align:center}.auth-required-mark{width:74px;height:74px;opacity:.9}.auth-required-kicker{margin:6px 0 0;color:var(--accent);font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.auth-required-screen h1{margin:0;color:var(--text);font-family:Fraunces,Georgia,serif;font-size:36px;font-weight:520;line-height:1.02}.auth-required-screen p:not(.auth-required-kicker){max-width:280px;margin:0;color:var(--text-secondary);font-size:15px;line-height:1.55}.auth-required-button{margin-top:8px;padding:14px 28px;border:1px solid rgba(71,52,38,.2);border-radius:999px;background:#4b3528;color:#fffaf2;font-family:Inter,sans-serif;font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;cursor:pointer;box-shadow:0 16px 30px -22px #2b2520a6}.auth-required-loading{margin-top:8px;color:var(--text-secondary);font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
