:root{color-scheme:light dark;--color-brand: #0b4f6c;--color-brand-strong: #073a51;--color-brand-soft: #e8f1f5;--color-brand-soft-hover: #d3e2ea;--color-accent: #d97742;--color-accent-strong: #b85e2e;--color-text: #14202b;--color-text-muted: #4f607a;--color-text-subtle: #74829b;--color-text-inverse: #ffffff;--color-surface-page: #f3f6f9;--color-surface: #ffffff;--color-surface-elev: #f7fafc;--color-surface-overlay: rgba(20, 32, 43, .06);--color-border: rgba(83, 108, 154, .18);--color-border-strong: rgba(83, 108, 154, .3);--color-success-bg: #d8efe2;--color-success-fg: #0a5733;--color-warning-bg: #fdf1d8;--color-warning-fg: #8a560c;--color-error-bg: #fadcdc;--color-error-fg: #8c1c1f;--color-error-bold: #8c1c1f;--color-error-bold-hover: #8f1f1f;--color-info-bg: #dfeaf7;--color-info-fg: #114a93;--space-0: 0;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 3rem;--space-8: 4rem;--radius-sm: .4rem;--radius-md: .75rem;--radius-lg: 1.2rem;--radius-pill: 999px;--shadow-card: 0 14px 40px rgba(11, 79, 108, .08);--shadow-card-strong: 0 22px 60px rgba(11, 79, 108, .14);--shadow-focus: 0 0 0 3px rgba(11, 79, 108, .28);--motion-fast: .12s cubic-bezier(.4, 0, .2, 1);--motion-base: .2s cubic-bezier(.4, 0, .2, 1);--font-sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-size-xs: .78rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-md: 1.125rem;--font-size-lg: 1.375rem;--font-size-xl: 1.75rem;--font-size-2xl: 2.25rem;--font-weight-regular: 400;--font-weight-medium: 600;--font-weight-bold: 700;--font-weight-display: 800;--line-height-tight: 1.2;--line-height-base: 1.5;--layout-max-width: 960px;--layout-narrow-width: 540px;--layout-wide-width: 1120px;--layout-content-padding: var(--space-5)}@media (prefers-color-scheme: dark){:root{--color-brand: #4ea8c8;--color-brand-strong: #7bc0db;--color-brand-soft: rgba(78, 168, 200, .16);--color-brand-soft-hover: rgba(78, 168, 200, .26);--color-text: #e6ecf3;--color-text-muted: #a3b1c6;--color-text-subtle: #7d8ba3;--color-text-inverse: #0c1620;--color-surface-page: #0e1620;--color-surface: #18222e;--color-surface-elev: #1f2a37;--color-surface-overlay: rgba(255, 255, 255, .06);--color-border: rgba(167, 189, 224, .16);--color-border-strong: rgba(167, 189, 224, .28);--color-success-bg: rgba(46, 168, 89, .18);--color-success-fg: #7fdfa3;--color-warning-bg: rgba(229, 167, 49, .22);--color-warning-fg: #fad591;--color-error-bg: rgba(204, 80, 80, .22);--color-error-fg: #ff9b9b;--color-error-bold: #b03b3b;--color-error-bold-hover: #c84545;--color-info-bg: rgba(70, 138, 217, .22);--color-info-fg: #9bc1ff;--shadow-card: 0 14px 40px rgba(0, 0, 0, .4);--shadow-card-strong: 0 22px 60px rgba(0, 0, 0, .55);--shadow-focus: 0 0 0 3px rgba(123, 192, 219, .4)}}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;min-height:100%;color:var(--color-text);background:var(--color-surface-page);font-family:var(--font-sans);font-size:var(--font-size-base);line-height:var(--line-height-base);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}#app{display:flex;flex-direction:column;min-height:100vh}h1,h2,h3,p{margin:0}h1{font-size:var(--font-size-2xl);font-weight:var(--font-weight-display);line-height:var(--line-height-tight);color:var(--color-brand-strong)}h2{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-brand-strong)}h3{font-size:var(--font-size-md);font-weight:var(--font-weight-bold);color:var(--color-text)}a{color:var(--color-brand);text-decoration:none;border-bottom:1px solid transparent;transition:color var(--motion-fast),border-color var(--motion-fast)}a:hover,a:focus-visible{color:var(--color-brand-strong);border-bottom-color:currentColor}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:none;box-shadow:var(--shadow-focus)}button,input,select{font:inherit;color:inherit}button{cursor:pointer}button[disabled]{cursor:not-allowed;opacity:.55}input,select{background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);min-height:2.75rem}.app-shell{display:flex;flex-direction:column;flex:1 1 auto;width:100%;margin:0 auto;padding:var(--space-5) var(--layout-content-padding) var(--space-7);max-width:var(--layout-max-width)}.app-shell.is-narrow{max-width:var(--layout-narrow-width)}.app-shell.is-wide{max-width:var(--layout-wide-width)}.app-shell-header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-5)}.app-shell-main{display:flex;flex:1 1 auto;align-items:stretch}.account-shell{display:grid;grid-template-columns:232px minmax(0,1fr);gap:var(--space-6);flex:1 1 auto;align-items:start;width:100%;margin:0;padding:var(--space-5) var(--layout-content-padding) var(--space-7);max-width:var(--layout-max-width)}.account-shell.is-wide{max-width:1320px}.account-shell-main{display:flex;flex-direction:column;min-width:0}.account-nav{position:sticky;top:var(--space-5);display:flex;flex-direction:column;gap:var(--space-5)}.account-nav-header{display:flex;align-items:center}.account-nav-identity{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2)}.account-nav-identity__name{font-weight:var(--font-weight-bold);color:var(--color-text);overflow-wrap:anywhere}.account-nav-badge{align-self:flex-start;padding:.2rem .65rem;border-radius:var(--radius-pill);font-size:var(--font-size-xs);font-weight:var(--font-weight-display);text-transform:uppercase;letter-spacing:.08em}.account-nav-badge.is-active{background:var(--color-success-bg);color:var(--color-success-fg)}.account-nav-badge.is-inactive{background:var(--color-warning-bg);color:var(--color-warning-fg)}.account-nav-list,.account-nav-footer{display:flex;flex-direction:column;gap:var(--space-1)}.account-nav-footer{padding-top:var(--space-4);border-top:1px solid var(--color-border)}.account-nav-tab{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-4);border:1px solid transparent;border-radius:var(--radius-md);background:transparent;color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);text-align:left;text-decoration:none;transition:background var(--motion-fast),color var(--motion-fast)}.account-nav-tab:hover:not(:disabled),.account-nav-tab:focus-visible:not(:disabled){background:var(--color-surface-overlay);color:var(--color-text);border-color:transparent}.account-nav-tab.is-active{background:var(--color-brand-soft);color:var(--color-brand-strong);font-weight:var(--font-weight-bold)}.account-nav-tab.is-primary{justify-content:center;margin-bottom:var(--space-2);background:var(--color-brand);color:var(--color-text-inverse);font-weight:var(--font-weight-bold)}.account-nav-tab.is-primary:hover:not(:disabled),.account-nav-tab.is-primary:focus-visible:not(:disabled){background:var(--color-brand-strong);color:var(--color-text-inverse)}@media (max-width: 900px){.account-shell{grid-template-columns:1fr;gap:var(--space-4)}.account-nav{position:static}.account-nav-list,.account-nav-footer{flex-direction:row;flex-wrap:wrap}.account-nav-footer{padding-top:var(--space-3)}.account-nav-tab{width:auto}}.brand{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--color-brand-strong);font-weight:var(--font-weight-bold);font-size:var(--font-size-md);letter-spacing:-.01em;text-decoration:none}.brand:hover{border-bottom-color:transparent}.brand-mark{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:var(--radius-md);background:var(--color-brand);color:var(--color-text-inverse);font-size:1.1rem;font-weight:var(--font-weight-display)}.card{flex:1 1 auto;display:flex;flex-direction:column;gap:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow-card)}.card.is-compact{padding:var(--space-5);gap:var(--space-3)}.card-eyebrow{font-size:var(--font-size-xs);font-weight:var(--font-weight-display);letter-spacing:.12em;text-transform:uppercase;color:var(--color-brand)}.card-heading{display:flex;flex-direction:column;gap:var(--space-2)}.card-lede{color:var(--color-text-muted);font-size:var(--font-size-md)}.card-body{display:flex;flex-direction:column;gap:var(--space-4)}.session-progress{flex-direction:row;align-items:center;gap:var(--space-3);color:var(--color-text-muted);font-size:var(--font-size-sm)}.card-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3);font-size:var(--font-size-sm);color:var(--color-text-subtle);padding-top:var(--space-3);border-top:1px solid var(--color-border)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);min-height:2.75rem;border:1px solid transparent;border-radius:var(--radius-pill);background:var(--color-brand);color:var(--color-text-inverse);font-weight:var(--font-weight-bold);font-size:var(--font-size-base);text-decoration:none;transition:background var(--motion-fast),transform var(--motion-fast)}.btn:hover:not(:disabled),.btn:focus-visible:not(:disabled){background:var(--color-brand-strong);color:var(--color-text-inverse);border-bottom-color:transparent}.btn:active:not(:disabled){transform:translateY(1px)}.btn.is-secondary{background:var(--color-brand-soft);color:var(--color-brand-strong);border-color:var(--color-border-strong)}.btn.is-secondary:hover:not(:disabled),.btn.is-secondary:focus-visible:not(:disabled){background:var(--color-brand-soft-hover);color:var(--color-brand-strong)}.btn.is-ghost{background:transparent;color:var(--color-text-muted);border-color:transparent}.btn.is-ghost:hover:not(:disabled),.btn.is-ghost:focus-visible:not(:disabled){background:var(--color-surface-overlay);color:var(--color-text)}.btn.is-accent{background:var(--color-accent);color:var(--color-text-inverse)}.btn.is-accent:hover:not(:disabled),.btn.is-accent:focus-visible:not(:disabled){background:var(--color-accent-strong);color:var(--color-text-inverse)}.btn.is-danger{background:var(--color-error-bold);color:#fff}.btn.is-danger:hover:not(:disabled),.btn.is-danger:focus-visible:not(:disabled){background:var(--color-error-bold-hover);color:#fff}.btn.is-block{width:100%}.btn-row{display:flex;flex-wrap:wrap;gap:var(--space-3)}.btn-row.is-stack{flex-direction:column;align-items:stretch}.provider-buttons{display:flex;flex-direction:column;gap:var(--space-3)}.provider-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-3) var(--space-5);min-height:2.85rem;border-radius:var(--radius-pill);border:1px solid transparent;font-weight:var(--font-weight-bold);transition:background var(--motion-fast),border-color var(--motion-fast)}.provider-button .provider-glyph{display:inline-flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem}.provider-button .provider-glyph svg{width:100%;height:100%;display:block}.provider-button.is-google{background:#fff;color:#1f1f1f;border-color:#747775}.provider-button.is-google:hover:not(:disabled),.provider-button.is-google:focus-visible:not(:disabled){background:#f7f8f8;border-color:#747775}.provider-button.is-apple{background:#000;color:#fff;border-color:#000}.provider-button.is-apple:hover:not(:disabled),.provider-button.is-apple:focus-visible:not(:disabled){background:#1a1a1a;border-color:#1a1a1a}@media (prefers-color-scheme: dark){.provider-button.is-google{background:#131314;color:#e3e3e3;border-color:#8e918f}.provider-button.is-google:hover:not(:disabled),.provider-button.is-google:focus-visible:not(:disabled){background:#1c1d20;border-color:#8e918f}.provider-button.is-apple{background:#fff;color:#000;border-color:#fff}.provider-button.is-apple:hover:not(:disabled),.provider-button.is-apple:focus-visible:not(:disabled){background:#f0f0f0;border-color:#f0f0f0}}.credential-panel{display:flex;flex-direction:column;gap:var(--space-3)}.credential-divider{display:flex;align-items:center;gap:var(--space-3);color:var(--color-text-subtle);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.08em}.credential-divider:before,.credential-divider:after{content:"";flex:1 1 auto;border-top:1px solid var(--color-border)}.credential-toggle{align-self:center}.verification-actions{display:flex;flex-direction:column;gap:var(--space-4)}.banner{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--font-size-sm)}.banner.is-info{background:var(--color-info-bg);color:var(--color-info-fg)}.banner.is-success{background:var(--color-success-bg);color:var(--color-success-fg)}.banner.is-warning{background:var(--color-warning-bg);color:var(--color-warning-fg)}.banner.is-error{background:var(--color-error-bg);color:var(--color-error-fg)}.banner-title{font-weight:var(--font-weight-bold)}.request-id{margin-top:var(--space-3);font-size:var(--font-size-xs);color:var(--color-text-subtle)}.request-id code{padding:.1rem .4rem;border-radius:var(--radius-sm);background:var(--color-surface-overlay);font-size:var(--font-size-xs)}.status-card{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-5);border-radius:var(--radius-lg);background:var(--color-surface-elev);border:1px solid var(--color-border)}.status-card .status-badge{align-self:flex-start;padding:.2rem .65rem;border-radius:var(--radius-pill);font-size:var(--font-size-xs);font-weight:var(--font-weight-display);text-transform:uppercase;letter-spacing:.08em}.status-badge.is-active{background:var(--color-success-bg);color:var(--color-success-fg)}.status-badge.is-inactive{background:var(--color-warning-bg);color:var(--color-warning-fg)}.status-badge.is-loading{background:var(--color-info-bg);color:var(--color-info-fg)}.status-badge.is-error{background:var(--color-error-bg);color:var(--color-error-fg)}.status-card__body{margin:calc(var(--space-2) * -1) 0 0;color:var(--color-text);font-size:var(--font-size-sm)}.status-card dl{display:grid;grid-template-columns:max-content 1fr;column-gap:var(--space-4);row-gap:var(--space-2);margin:0;font-size:var(--font-size-sm)}.status-card dt{color:var(--color-text-muted);font-weight:var(--font-weight-medium)}.status-card dd{margin:0;color:var(--color-text);overflow-wrap:anywhere}.guidance{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-5);border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-surface)}.guidance-headline{font-size:var(--font-size-md);font-weight:var(--font-weight-bold);color:var(--color-brand-strong)}.guidance-body{color:var(--color-text-muted)}.cancel-panel{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-5);border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-surface)}.cancel-panel__heading{display:flex;flex-direction:column;gap:var(--space-1)}.cancel-panel__heading h3{color:var(--color-brand-strong)}.cancel-panel__heading p,.cancel-panel__help p{color:var(--color-text-muted)}.cancel-panel__help{display:flex;flex-direction:column;gap:var(--space-3);align-items:flex-start}.cancel-panel__error{padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-error-bg);color:var(--color-error-fg);font-size:var(--font-size-sm)}.paywall-slot{display:flex;align-items:stretch;justify-content:center;flex:1 1 auto;min-height:320px;padding:var(--space-4);border-radius:var(--radius-lg);border:1px dashed var(--color-border-strong);background:var(--color-surface)}.paywall-slot.is-empty:before{content:"Loading your plans…";margin:auto;color:var(--color-text-subtle);font-size:var(--font-size-sm)}.change-plan-paywall{display:none}.change-plan-paywall.is-visible{display:block}.subscribe-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:var(--space-5);width:100%;align-items:stretch}.subscribe-paywall{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-5)}.subscribe-paywall .paywall-slot{min-height:520px}.subscribe-rail{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-5)}.subscribe-rail-heading h2{margin:0 0 var(--space-1)}.subscribe-rail-heading p{color:var(--color-text-muted);font-size:var(--font-size-sm)}.benefit-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-2);color:var(--color-text);font-size:var(--font-size-sm)}.benefit-list li{position:relative;padding-left:1.5rem}.benefit-list li:before{content:"✓";position:absolute;left:0;top:0;color:var(--color-success-fg);font-weight:var(--font-weight-bold)}@media (max-width: 900px){.subscribe-layout{grid-template-columns:1fr}.subscribe-paywall .paywall-slot{min-height:360px}}.form-stack{display:flex;flex-direction:column;gap:var(--space-3)}.form-stack label{display:flex;flex-direction:column;gap:var(--space-1);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-muted)}.form-stack input{width:100%}.form-field{display:flex;flex-direction:column;gap:var(--space-1);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-muted)}.form-field input{width:100%}.profile-facts{display:grid;gap:var(--space-2);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-overlay)}.profile-facts div{display:grid;gap:var(--space-1)}.profile-facts dt{color:var(--color-text-subtle);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.08em}.profile-facts dd{margin:0;overflow-wrap:anywhere}.account-data-zone{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-2);padding-top:var(--space-4);border-top:1px solid var(--color-border)}.account-data-zone__heading{display:flex;flex-direction:column;gap:var(--space-1)}.account-data-zone__heading h2{margin:0;color:var(--color-brand-strong);font-size:var(--font-size-lg)}.account-data-zone__heading p{color:var(--color-text-muted);font-size:var(--font-size-sm)}.danger-zone{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-2);padding-top:var(--space-4);border-top:1px solid var(--color-border)}.danger-zone__heading{display:flex;flex-direction:column;gap:var(--space-1)}.danger-zone__heading h2{margin:0;color:var(--color-error-fg);font-size:var(--font-size-lg)}.danger-zone__heading p{color:var(--color-text-muted);font-size:var(--font-size-sm)}.danger-zone__body{display:flex;flex-direction:column;gap:var(--space-3)}.form-hint{font-size:var(--font-size-xs);color:var(--color-text-subtle)}.boot-shell{display:flex;flex:1 1 auto;align-items:center;justify-content:center}.boot-card{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-6) var(--space-7);border-radius:var(--radius-lg);background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-card);text-align:center;color:var(--color-text-muted)}.spinner{width:1.5rem;height:1.5rem;border-radius:50%;border:2px solid var(--color-brand-soft);border-top-color:var(--color-brand);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width: 640px){.card{padding:var(--space-5)}.status-card dl{grid-template-columns:1fr}}
