@font-face{font-family:Dela Gothic One;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/dela-gothic-one-latin-400.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Figtree;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/figtree-latin-wght.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--color-ink: #25233a;--color-butter: #ffe477;--color-cobalt: #243edb;--color-tomato: #f15b41;--color-pink: #f4bbdd;--color-paper: #f8f5f0;--font-brand-display: "Dela Gothic One", sans-serif;--font-brand-ui: "Figtree", system-ui, sans-serif;--space-20: 80px;--space-24: 96px;--space-30: 120px;--r-scene: 120px;--r-scene-mobile: 36px;--content-wide: 1320px;--gutter: clamp(24px, 5vw, 80px);--bg: var(--color-paper);--surface: #ffffff;--surface-sunken: #eeebe5;--ink: var(--color-ink);--ink-muted: #625e70;--ink-faint: #6b6778;--border: #dfdbe4;--border-strong: #bdb7c9;--brand: var(--color-cobalt);--brand-300: #97a5f5;--brand-400: #5872ec;--brand-600: var(--color-cobalt);--brand-700: #1b2fa3;--brand-tint: #e9edff;--on-brand: #ffffff;--success: #216748;--success-tint: #e3f1e8;--danger: #ad352a;--danger-tint: #fff0eb;--tutor: #96422f;--tutor-tint: #fff0e9;--focus: var(--color-cobalt);--scrim: rgba(37, 35, 58, .42);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--r-sm: 8px;--r-md: 12px;--r-lg: 16px;--r-xl: 24px;--r-2xl: 32px;--r-pill: 999px;--shadow-sm: 0 2px 6px rgba(37, 35, 58, .04);--shadow-md: 0 6px 20px rgba(37, 35, 58, .07);--shadow-lg: 0 14px 40px rgba(37, 35, 58, .12);--shadow-xl: 0 24px 64px rgba(37, 35, 58, .2);--dur-fast: .14s;--dur: .22s;--dur-slow: .34s;--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-in: cubic-bezier(.4, 0, 1, 1);--ease-spring: cubic-bezier(.34, 1.4, .64, 1);--icon-sm: 20px;--icon-md: 24px;--font-display: var(--font-brand-display);--font-ui: var(--font-brand-ui)}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font-ui);font-size:15px;line-height:1.55;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}button,input,select,textarea{font-family:inherit}.font-display{font-family:var(--font-display);font-weight:400;letter-spacing:-.025em}.tnum{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}:focus-visible{outline:3px solid var(--focus);outline-offset:3px;box-shadow:none}.app{display:flex;flex-direction:column;height:100%;height:100dvh;max-width:1120px;margin:0 auto;background:var(--bg)}.app--live{max-width:900px}.app__header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-5);flex:none;padding:calc(env(safe-area-inset-top,0px) + var(--space-6)) var(--space-8) var(--space-5);background:var(--bg);z-index:2}.app__identity{display:flex;align-items:center;gap:var(--space-5)}.app__tagline{font-size:.8125rem;color:var(--ink-muted)}.app__navigation{display:flex;flex-wrap:wrap;max-width:100%;align-items:center;gap:var(--space-1);padding:var(--space-1);border:1px solid var(--border);border-radius:var(--r-pill);background:var(--surface)}.app__brandgroup{display:inline-flex;align-items:center}.app__brandbtn{border:none;background:none;padding:0;cursor:pointer}.app__logo{display:block;flex:none}.app__navicon{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:44px;min-width:max-content;padding:var(--space-3) var(--space-5);border:none;border-radius:var(--r-pill);background:transparent;color:var(--ink-muted);font-family:var(--font-ui);font-size:.9375rem;font-weight:600;cursor:pointer}.app__navicon:hover{color:var(--brand);background:var(--brand-tint)}.app__navicon--active,.app__navicon--active:hover{color:var(--on-brand);background:var(--brand)}.app__skip{position:fixed;top:var(--space-2);left:var(--space-2);z-index:50;padding:var(--space-3) var(--space-5);background:var(--brand);color:var(--on-brand);border-radius:var(--r-pill);transform:translateY(-180%)}.app__skip:focus{transform:none}.app__main:focus{outline:none}@media (max-width: 760px){.app__header{padding:calc(env(safe-area-inset-top,0px) + var(--space-4)) var(--space-5) var(--space-3);gap:var(--space-4)}.app__identity{width:100%;justify-content:space-between;gap:var(--space-3)}.app__identity .app__logo{height:32px;width:auto}.app__navigation{width:100%;border-radius:var(--r-xl)}.app__navicon{flex:1 1 auto;padding-inline:var(--space-3)}}@media (max-width: 380px){.app__navicon{padding-inline:var(--space-2);font-size:.875rem}.app__navicon svg{display:none}}.app__main{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}.app__main--centered{align-items:center;justify-content:center;padding:var(--space-2) var(--space-4) var(--space-4)}.screen__scroll{flex:1 1 auto;min-height:0;overflow-y:auto;padding:var(--space-5) var(--space-8) var(--space-8);-webkit-overflow-scrolling:touch}@media (max-width: 640px){.screen__scroll{padding:var(--space-4) var(--space-5) var(--space-6)}}.screen__action{flex:0 0 auto;display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:var(--bg)}.action{display:flex;flex-direction:column;gap:var(--space-2)}.action__btn,.courses__retry{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);width:100%;min-height:50px;border:1px solid transparent;border-radius:var(--r-pill);padding:var(--space-3) var(--space-5);font-family:var(--font-ui);font-size:.9375rem;font-weight:600;line-height:1.2;cursor:pointer;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-spring)}.action__btn:active,.courses__retry:active{transform:scale(.97)}.action__btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.action__btn--start,.courses__retry{background:var(--brand-600);color:var(--on-brand);box-shadow:var(--shadow-sm)}.action__btn--start:hover,.courses__retry:hover{background:var(--brand-700)}.action__btn-stopicon{width:16px;height:16px;border-radius:3px;background:var(--danger)}.autoend{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) var(--space-3) var(--space-2) var(--space-4);border-radius:var(--r-md);background:var(--brand-tint);color:var(--brand);font-size:.875rem;font-weight:600;animation:autoend-in var(--dur-fast) var(--ease-out)}.autoend__cancel{flex:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid currentColor;background:none;border-radius:var(--r-pill);padding:var(--space-1) var(--space-3);font:inherit;font-weight:600;color:inherit;cursor:pointer;white-space:nowrap}@keyframes autoend-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.action__btn-pauseicon{display:inline-flex;gap:4px}.action__btn-pauseicon:before,.action__btn-pauseicon:after{content:"";width:5px;height:16px;border-radius:2px;background:currentColor}.banner{border-radius:var(--r-md);padding:var(--space-3) var(--space-4);line-height:1.45}.banner--error{background:var(--danger-tint);color:var(--danger)}.banner--error strong{display:block;margin-bottom:var(--space-1)}.banner--error p{margin:0}.banner--inline{font-size:.875rem;padding:var(--space-2) var(--space-3)}.banner--warning{background:var(--brand-tint);color:var(--brand)}.banner__link{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:none;padding:0;margin-left:var(--space-1);font:inherit;font-weight:600;color:var(--brand);text-decoration:underline;cursor:pointer}.course__chips{display:flex;flex-wrap:wrap;gap:var(--space-2)}.course__chip{display:inline-flex;align-items:center;font-size:.8125rem;font-weight:600;color:var(--brand-700);background:var(--brand-tint);padding:var(--space-1) var(--space-3);border-radius:var(--r-pill)}:root .course__chip.course__chip--done{color:var(--brand-tint);background:var(--brand-700)}.grading-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;display:flex;align-items:center;justify-content:center;padding:var(--space-6);background:var(--scrim);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:scrim-fade var(--dur) var(--ease-out) both}.grading-overlay__card{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);max-width:22rem;padding:var(--space-8) var(--space-6);border-radius:var(--r-2xl);background:var(--surface);box-shadow:var(--shadow-xl);text-align:center;animation:sheet-up var(--dur-slow) var(--ease-out) both}.grading-overlay__spinner{width:2.75rem;height:2.75rem;border-radius:50%;border:2.5px solid var(--border);border-top-color:var(--brand);animation:spin .9s linear infinite}.grading-overlay__title{margin:0;font-family:var(--font-display);font-optical-sizing:auto;font-size:1.25rem;line-height:1.25;font-weight:500;color:var(--brand)}.grading-overlay__sub{margin:0;font-size:.9375rem;color:var(--ink-muted)}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.action__btn:active,.courses__retry:active{transform:none}.grading-overlay,.grading-overlay__card{animation:none}.grading-overlay__spinner{animation:spin 1.8s linear infinite!important}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.splash-pulse{display:flex;justify-content:center}.splash-pulse__logo{width:96px;height:auto;animation:splash-pulse 1.6s ease-in-out infinite}@keyframes splash-pulse{0%,to{opacity:.35}50%{opacity:.8}}@media (prefers-reduced-motion: reduce){.splash-pulse__logo{animation:none}}.conversation__minutes-hint{margin:0;text-align:center;font-size:.8125rem;color:var(--ink-muted)}.landing{--ink: var(--color-ink);--ink-muted: var(--color-ink);--bg: var(--color-paper);--brand: var(--color-cobalt);--focus: var(--color-cobalt);--font-display: var(--font-brand-display);--font-ui: var(--font-brand-ui);color:var(--ink);background:var(--bg);font-family:var(--font-ui);font-size:1.125rem;line-height:1.5}.landing :where(h1,h2,h3,p){margin:0}.landing h1,.landing h2{font-family:var(--font-display);font-weight:400;letter-spacing:-.025em;line-height:1.08;overflow-wrap:anywhere}.landing :where(a){color:inherit}.landing :where(button){font:inherit;cursor:pointer}.landing img{display:block;max-width:100%}.landing__hero-copy,.landing__story-inner>div,.landing__help-heading>*,.landing__progress>*,.landing__pricing>*,.landing__questions{min-width:0}.landing :focus-visible{outline:3px solid currentColor;outline-offset:5px;box-shadow:none}.landing :target{scroll-margin-top:var(--space-8)}.landing main:focus,.landing section:focus{outline:none;box-shadow:none}.landing__skip{position:fixed;top:var(--space-3);left:var(--space-3);z-index:10;padding:var(--space-3) var(--space-5);color:var(--color-paper);background:var(--color-cobalt);transform:translateY(-180%)}.landing__skip:focus{transform:none}.landing__nav{display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);padding:var(--space-6) var(--gutter);background:var(--color-butter)}.landing__nav>a{display:flex;align-items:center;min-height:44px}.landing__desktop-nav,.landing__nav-actions{display:flex;align-items:center;gap:var(--space-8)}.landing__desktop-nav{margin-left:auto}.landing__nav a,.landing__menu a{text-decoration:none}.landing__desktop-nav a,.landing__nav-start{display:inline-flex;align-items:center;min-height:44px;font-weight:600;font-size:1rem}.landing__desktop-nav a:hover{text-decoration:underline;text-underline-offset:5px}.landing__nav-start{gap:var(--space-5);padding:var(--space-3) var(--space-6);border-radius:var(--r-pill);background:var(--color-cobalt);color:var(--color-paper)}.landing__menu-toggle{display:inline-flex;align-items:center;gap:var(--space-3);min-height:48px;padding:var(--space-2) 0 var(--space-2) var(--space-2);border:0;color:var(--ink);background:none;font-weight:600}.landing__menu-lines{width:22px;height:9px;border-block:2px solid currentColor}html:has(.landing__menu[open]){overflow:hidden}.landing__menu{inset:var(--space-4);width:calc(100% - var(--space-8));height:calc(100dvh - var(--space-8));max-width:none;max-height:calc(100dvh - var(--space-8));padding:0;border:0;border-radius:var(--r-scene-mobile);background:var(--color-cobalt);color:var(--color-paper)}.landing__menu::backdrop{background:var(--color-ink);opacity:.5}.landing__menu[open]{animation:landing-menu-in var(--dur-slow) var(--ease-out) both}.landing__menu-inner{position:relative;display:flex;flex-direction:column;min-height:100%;isolation:isolate;overflow:hidden;padding:var(--space-8) var(--gutter)}.landing__menu-links{margin-block:auto}.landing__menu-inner:before{content:"";position:absolute;z-index:-1;width:58%;height:150%;top:-20%;left:-20%;border-radius:46% 54% 58% 42%/30% 30% 70% 70%;transform:rotate(-28deg);background:color-mix(in srgb,var(--color-paper) 8%,var(--color-cobalt))}.landing__menu-top,.landing__menu-bottom{display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);font-size:1rem}.landing__menu-close{display:inline-flex;align-items:center;gap:var(--space-4);min-height:48px;border:1px solid currentColor;border-radius:var(--r-pill);background:none;color:inherit;padding:var(--space-2) var(--space-5)}.landing__menu-close span{font-size:1.75rem;line-height:1}.landing__menu-links{display:grid;padding:var(--space-12) 0}.landing__menu-links a{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-4);padding:var(--space-3) 0;font-family:var(--font-display);font-size:clamp(1.75rem,5vw,4rem);letter-spacing:-.04em;line-height:1.15}.landing__menu-links a:hover{color:var(--color-butter)}.landing__menu-bottom{padding-top:var(--space-6);border-top:1px solid currentColor}.landing__menu-bottom a{padding-block:var(--space-3);font-weight:600}.landing__hero{background:var(--color-butter);border-radius:0 0 var(--r-scene) var(--r-scene);overflow:hidden}.landing__hero-inner{position:relative;display:grid;grid-template-columns:1.4fr 1fr;max-width:calc(var(--content-wide) + 2 * var(--gutter));margin:auto;padding:var(--space-12) var(--gutter) var(--space-6)}.landing__hero-copy{position:relative;z-index:1}.landing__eyebrow{font-size:.875rem;font-weight:600;margin-bottom:var(--space-6)}.landing h1{font-size:clamp(2.375rem,6.2vw,5.75rem)}.landing h1 span{display:block;color:var(--color-cobalt)}.landing__intro{max-width:36ch;margin-top:var(--space-6);font-size:1.1875rem}.landing__signup{margin-top:var(--space-8)}.landing__signup>p{font-size:.875rem;margin-top:var(--space-3)}.landing__hero-art{position:relative;align-self:end;margin-left:calc(-1 * var(--space-8));padding-top:var(--space-12);animation:landing-character-in .6s var(--ease-out) both}.landing__hero-art img{width:100%;height:auto;max-height:520px;object-fit:cover;object-position:top}.landing__hero-art:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2096%2096'%20width='96'%20height='96'%3e%3cpath%20fill='%2325233A'%20fill-opacity='.15'%20d='M3%209h1v1H3zm18-5h1v1h-1zm26%208h1v1h-1zm28-9h1v1h-1zm15%2018h1v1h-1zM9%2033h1v1H9zm22-13h1v1h-1zm27%2010h1v1h-1zm16%2012h1v1h-1zm-30%204h1v1h-1zM3%2063h1v1H3zm20-13h1v1h-1zm14%2024h1v1h-1zm24-17h1v1h-1zm23%2013h1v1h-1zM13%2088h1v1h-1zm13-9h1v1h-1zm27%2011h1v1h-1zm18-10h1v1h-1zm22%209h1v1h-1z'/%3e%3cpath%20fill='%23F8F5F0'%20fill-opacity='.3'%20d='M12%2017h1v1h-1zm25-8h1v1h-1zm29%2010h1v1h-1zm17%2011h1v1h-1zM5%2047h1v1H5zm31-13h1v1h-1zm17%2016h1v1h-1zm27%205h1v1h-1zm12-11h1v1h-1zM16%2070h1v1h-1zm30-7h1v1h-1zm20%2011h1v1h-1zm12%2018h1v1h-1zm-27-11h1v1h-1z'/%3e%3c/svg%3e");opacity:.25}.landing__hola{position:absolute;top:var(--space-2);right:2%;z-index:1;padding:var(--space-4) var(--space-8) var(--space-5);background:var(--color-pink);border-radius:50% 50% 45% 45%;font-family:var(--font-display);font-size:clamp(1.5rem,2.5vw,2.5rem);letter-spacing:-.045em;transform:rotate(9deg)}.landing__hero-next{display:flex;width:fit-content;align-items:center;gap:var(--space-8);min-height:44px;margin:0 auto;padding:var(--space-6) var(--space-6) var(--space-8);font-size:.875rem;text-decoration:none}.landing__hero-next:hover{text-decoration:underline;text-underline-offset:5px}.landing h2{font-size:clamp(2rem,4.3vw,4rem)}.landing__story{margin:var(--space-6);border-radius:var(--r-2xl) var(--r-scene) var(--r-2xl) var(--r-scene);background:var(--color-pink);overflow:hidden}.landing__story-inner{display:grid;grid-template-columns:1fr 1.05fr;align-items:center;gap:var(--space-12);max-width:var(--content-wide);margin:auto;padding:var(--space-20) var(--space-12)}.landing__story h2 span{color:var(--color-cobalt)}.landing__story p{max-width:35ch;margin-top:var(--space-6)}.landing__story-punchline{font-weight:600}.landing__story img{width:100%;height:auto}.landing__help{max-width:calc(var(--content-wide) + 2 * var(--gutter));margin:auto;padding:var(--space-24) var(--gutter)}.landing__help-heading{display:grid;grid-template-columns:1.7fr 1fr;align-items:end;gap:var(--space-12)}.landing__help-heading>p{max-width:31ch;justify-self:end}.landing__exchange{display:grid;grid-template-columns:1.1fr auto 1fr;align-items:center;gap:var(--space-5);margin:var(--space-16) 0 var(--space-10)}.landing__exchange>p{padding:var(--space-12);font-family:var(--font-display);font-size:clamp(1.5rem,2.65vw,2.75rem);line-height:1.2;letter-spacing:-.04em}.landing__exchange-question{background:var(--color-butter);border-radius:var(--r-scene) var(--r-scene) var(--r-xl) var(--r-scene);transform:rotate(-3deg)}.landing__exchange-arrow{font-size:4rem;color:var(--color-cobalt)}.landing__exchange-answer{color:var(--color-paper);background:var(--color-cobalt);border-radius:var(--r-scene) var(--r-scene) var(--r-scene) var(--r-xl);transform:rotate(3deg)}.landing__exchange figcaption{grid-column:1 / -1;text-align:center;font-size:.8125rem;margin-top:var(--space-6)}.landing__help-notes{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-24)}.landing__help-notes h3{font-size:1.25rem;font-weight:700;margin-bottom:var(--space-3)}.landing__help-notes p{max-width:43ch}.landing__progress{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:1.35fr 1fr;align-items:center;gap:var(--space-16);margin:var(--space-6);padding:var(--space-24) max(var(--space-12),calc((100vw - var(--content-wide)) / 2));border-radius:var(--r-scene) var(--r-2xl) var(--r-scene) var(--r-2xl);background:var(--color-cobalt);color:var(--color-paper)}.landing__progress:before{content:"";position:absolute;z-index:-1;width:42%;aspect-ratio:1;left:-8%;top:-55%;border:var(--space-16) solid color-mix(in srgb,var(--color-paper) 8%,transparent);border-radius:50% 50% 20%;transform:rotate(-28deg)}.landing__progress-lead{font-size:1.5rem;line-height:1.25;font-weight:600}.landing__progress p+p{margin-top:var(--space-5);max-width:38ch}.landing__progress p:last-child{font-size:.9375rem;color:var(--color-butter)}@media (max-width: 900px){.landing__help-heading{grid-template-columns:1fr;gap:var(--space-6)}.landing__help-heading>p{max-width:46ch;justify-self:start}.landing__exchange>p{padding:var(--space-10) var(--space-8)}.landing__progress{gap:var(--space-8);padding:var(--space-16) var(--space-10)}}@media (max-width: 640px){.landing__help{padding:var(--space-16) var(--gutter)}.landing__help h2{font-size:1.875rem}.landing__exchange{grid-template-columns:1fr;gap:var(--space-3);margin-top:var(--space-10)}.landing__exchange>p{font-size:1.5rem;padding:var(--space-8)}.landing__exchange-question{margin-right:var(--space-5)}.landing__exchange-answer{margin-left:var(--space-5)}.landing__exchange-arrow{justify-self:center;font-size:2rem;line-height:1}.landing__exchange figcaption{margin-top:var(--space-4);text-align:left}.landing__help-notes{grid-template-columns:1fr;gap:var(--space-8)}.landing__progress{grid-template-columns:1fr;padding:var(--space-12) var(--space-6);margin:var(--space-4);border-radius:var(--r-scene-mobile) var(--r-xl)}.landing__progress h2{font-size:2rem}}@media (max-width: 760px){.landing__story{margin:var(--space-4);border-radius:var(--r-xl) var(--r-scene-mobile)}.landing__story-inner{grid-template-columns:1fr;gap:var(--space-6);padding:var(--space-10) var(--space-6) var(--space-6)}.landing__story h2{font-size:clamp(1.875rem,7.3vw,3rem)}.landing__story img{max-width:440px;justify-self:center}}.landing__pricing{display:grid;grid-template-columns:1fr 1.25fr;align-items:center;gap:var(--space-24);max-width:calc(var(--content-wide) + 2 * var(--gutter));margin:auto;padding:var(--space-30) var(--gutter)}.landing__price{color:var(--color-cobalt)}.landing__price-amount{font-family:var(--font-display);font-size:clamp(7rem,16vw,14rem);line-height:1;letter-spacing:-.075em}.landing__price-amount span{font-size:.65em;vertical-align:top}.landing__price>p:nth-child(2){margin-top:var(--space-6);font-size:1.5rem;font-weight:600}.landing__price-example{font-size:1rem;color:var(--ink);margin-top:var(--space-3)}.landing__pricing h2{font-size:clamp(2rem,3.5vw,3.25rem)}.landing__pricing-copy>p{max-width:42ch;margin-top:var(--space-6)}.landing__price-extras{display:flex;gap:var(--space-16);margin:var(--space-8) 0}.landing__price-extras dt{font-family:var(--font-display);font-size:2.25rem;line-height:1.2;color:var(--color-cobalt)}.landing__price-extras dd{margin:var(--space-2) 0 0;font-size:1rem}.landing__price-fine{font-size:.875rem}@media (max-width: 760px){.landing__pricing{grid-template-columns:1fr;gap:var(--space-12);padding:var(--space-16) var(--gutter)}.landing__price-amount{font-size:clamp(5rem,32vw,8rem)}.landing__price>p:nth-child(2){font-size:1.25rem;margin-top:var(--space-4)}.landing__price-extras{gap:var(--space-12)}}.landing__faq{display:grid;grid-template-columns:.9fr 1.2fr;gap:var(--space-16);max-width:calc(var(--content-wide) + 2 * var(--gutter));margin:auto;padding:var(--space-10) var(--gutter) var(--space-30)}.landing__faq h2{max-width:12ch}.landing__questions details{border-top:1px solid var(--ink)}.landing__questions details:last-child{border-bottom:1px solid var(--ink)}.landing__questions summary{display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);padding:var(--space-6) 0;font-weight:600;cursor:pointer;list-style:none}.landing__questions summary::-webkit-details-marker{display:none}.landing__questions summary:after{content:"+";flex:none;width:var(--space-6);text-align:center;font-size:1.75rem;line-height:1}.landing__questions details[open] summary:after{content:"−"}.landing__questions details>p{padding:var(--space-3) var(--space-10) var(--space-6) 0}.landing__cta{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--space-20) var(--gutter);background:var(--color-butter);border-radius:var(--r-scene) var(--r-scene) 0 0}.landing__cta:before,.landing__cta:after{content:"";position:absolute;z-index:-1;top:14%;width:24%;height:110%;background:var(--color-pink);border-radius:50% 50% 20%}.landing__cta:before{left:-10%;transform:rotate(-25deg)}.landing__cta:after{right:-10%;transform:rotate(25deg)}.landing__cta h2{font-size:clamp(3rem,7.5vw,7rem);margin:var(--space-6) 0 var(--space-8)}.landing__cta h2 span{color:var(--color-cobalt)}.landing__cta .gsi-slot__button{display:flex;justify-content:center}.landing__cta-note{font-size:.875rem;margin-top:var(--space-4)}.landing__footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-6);padding:var(--space-8) var(--gutter);background:var(--color-butter);font-size:.9375rem}.landing__footer a{display:inline-flex;align-items:center;gap:var(--space-3);min-height:44px;text-decoration:none}.landing__footer a:hover{text-decoration:underline;text-underline-offset:5px}.landing__footer small{flex-basis:100%;font-size:.8125rem}@media (max-width: 760px){.landing__faq{grid-template-columns:1fr;gap:var(--space-8);padding-bottom:var(--space-16)}.landing__faq h2{max-width:none;font-size:2rem}.landing__questions summary{gap:var(--space-4);font-size:1.0625rem}.landing__questions details>p{padding-right:0;font-size:1.0625rem}.landing__cta{border-radius:var(--r-scene-mobile) var(--r-scene-mobile) 0 0;padding:var(--space-12) var(--gutter)}.landing__cta:before,.landing__cta:after{top:45%;width:35%}.landing__cta:before{left:-25%}.landing__cta:after{right:-25%}.landing__footer{flex-direction:column;align-items:flex-start;gap:var(--space-4);padding-top:var(--space-4)}}.gsi-slot{display:flex;flex-direction:column;gap:var(--space-3)}.gsi-slot__button{min-height:44px}.gsi-note{font-size:.875rem;color:var(--ink-muted)}@keyframes landing-character-in{0%{opacity:0;transform:translateY(24px) rotate(3deg)}to{opacity:1;transform:none}}@keyframes landing-menu-in{0%{opacity:0;transform:translateY(-12px) scale(.98)}to{opacity:1;transform:none}}@media (max-width: 1000px){.landing__desktop-nav{display:none}.landing__hero-inner{grid-template-columns:1.35fr 1fr}.landing__hero-art{margin-left:0;align-self:center}}@media (max-width: 640px){.landing__nav{padding:var(--space-5) var(--gutter);gap:var(--space-4)}.landing__nav img{height:32px;width:auto}.landing__nav-start{display:none}.landing__hero{border-radius:0 0 var(--r-scene-mobile) var(--r-scene-mobile)}.landing__hero-inner{display:flex;flex-direction:column;padding-top:var(--space-6)}.landing__eyebrow{font-size:.8125rem;margin-bottom:var(--space-5)}.landing h1{font-size:clamp(2rem,9.6vw,3.5rem)}.landing__intro{font-size:1.0625rem;max-width:34ch}.landing__signup{margin-top:var(--space-6)}.landing__hero-art{align-self:center;width:80%;max-width:360px;margin:var(--space-6) 0 0;padding-top:var(--space-8)}.landing__hola{right:-5%;padding:var(--space-3) var(--space-6)}.landing__hero-next{padding-top:0;gap:var(--space-4)}.landing__menu{inset:var(--space-2);width:calc(100% - var(--space-4));height:calc(100dvh - var(--space-4));max-height:calc(100dvh - var(--space-4))}.landing__menu-inner{padding:var(--space-6)}.landing__menu-top>span{max-width:12ch}.landing__menu-links{padding-block:var(--space-8)}.landing__menu-links a{font-size:clamp(1.5rem,6.5vw,2.5rem);padding-block:var(--space-4)}.landing__menu-bottom{align-items:flex-start;flex-direction:column;gap:var(--space-3)}}@media (prefers-reduced-motion: reduce){.landing__hero-art,.landing__menu[open]{animation:none}}.admin{max-width:720px;margin:0 auto;padding:var(--space-6) var(--space-4);display:flex;flex-direction:column;gap:var(--space-6)}.admin__header{display:flex;flex-direction:column;gap:var(--space-1)}.admin__title{margin:0;font-size:1.75rem;color:var(--ink)}.admin__subtitle{margin:0;color:var(--ink-muted);font-size:.95rem}.admin__note{margin:0;color:var(--ink-muted)}.admin__stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-4)}.admin__stat{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-5);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}.admin__stat-label{color:var(--ink-muted);font-size:.85rem;text-transform:uppercase;letter-spacing:.04em}.admin__stat-value{color:var(--ink);font-size:2rem;font-weight:600}.admin__stat-value--positive{color:var(--success)}.admin__stat-value--negative{color:var(--danger)}.admin__retry{align-self:flex-start;margin-top:var(--space-2);padding:var(--space-2) var(--space-4);background:var(--brand);color:var(--on-brand);border:none;border-radius:var(--r-pill);font:inherit;font-weight:600;cursor:pointer}.admin__retry:hover{background:var(--brand-600)}.admin__ranges{display:flex;flex-wrap:wrap;gap:var(--space-2)}.admin__range-btn{padding:var(--space-2) var(--space-4);background:var(--surface);color:var(--ink-muted);border:1px solid var(--border);border-radius:var(--r-pill);font:inherit;font-size:.9rem;font-weight:600;cursor:pointer;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.admin__range-btn:hover{border-color:var(--border-strong)}.admin__range-btn--active{background:var(--brand);color:var(--on-brand);border-color:var(--brand)}.admin__charts{display:flex;flex-direction:column;gap:var(--space-6)}.admin__chart{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-5);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);color:var(--ink-muted)}.admin__chart-title{margin:0;color:var(--ink);font-size:1rem;font-weight:600}.admin__quality{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center}.admin__quality-tile{padding:var(--space-1) var(--space-3);background:var(--surface-sunken);border:1px solid var(--border);border-radius:var(--r-pill);color:var(--ink-muted);font-size:.8rem}.admin__quality-note{flex-basis:100%;margin:0;color:var(--ink-faint);font-size:.78rem}.admin__feed{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-5);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}.admin__feed-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:var(--space-2)}.admin__feed-row{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:var(--space-3);padding:var(--space-2) 0;border-top:1px solid var(--border)}.admin__feed-row:first-child{border-top:none}.admin__feed-tag{padding:var(--space-1) var(--space-2);border-radius:var(--r-pill);font-size:.75rem;font-weight:600;white-space:nowrap}.admin__feed-tag--signup{background:var(--tutor-tint);color:var(--tutor)}.admin__feed-tag--payment{background:var(--success-tint);color:var(--success)}.admin__feed-tag--session{background:var(--brand-tint);color:var(--brand-700)}.admin__feed-user{color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin__feed-amount{color:var(--ink);font-weight:600}.admin__feed-time{color:var(--ink-faint);font-size:.8rem;white-space:nowrap}.admin__drill{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-5);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}.admin__search{display:flex;gap:var(--space-2)}.admin__search-input{flex:1;padding:var(--space-2) var(--space-3);background:var(--surface-sunken);color:var(--ink);border:1px solid var(--border);border-radius:var(--r-md);font:inherit}.admin__search-input:focus{outline:none;border-color:var(--brand)}.admin__user-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);width:100%;padding:var(--space-2) var(--space-3);background:var(--surface-sunken);border:1px solid var(--border);border-radius:var(--r-md);font:inherit;text-align:left;cursor:pointer}.admin__user-row:hover{border-color:var(--border-strong)}.admin__detail{display:flex;flex-direction:column;gap:var(--space-4);margin-top:var(--space-2);padding-top:var(--space-4);border-top:1px solid var(--border)}.admin__detail-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-2)}.admin__detail-email{color:var(--ink);font-weight:600;font-size:1.1rem}.admin__detail-name{color:var(--ink-muted)}.admin__grade-row{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:var(--space-3);padding:var(--space-2) 0;border-top:1px solid var(--border)}.admin__grade-row:first-child,.admin__feed-list li:first-child .admin__grade-row--btn{border-top:none}.admin__grade-row--btn{width:100%;background:none;border-left:none;border-right:none;border-bottom:none;font:inherit;color:inherit;text-align:left;cursor:pointer}.admin__grade-row--btn:hover{color:var(--brand)}.admin__transcript{list-style:none;margin:var(--space-3) 0 0;padding:0;display:flex;flex-direction:column;gap:var(--space-3)}.admin__turn{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-2) var(--space-3);border-radius:var(--r-md);background:var(--surface-sunken)}.admin__turn--learner{border-left:3px solid var(--brand)}.admin__turn--tutor{border-left:3px solid var(--border)}.admin__turn-role{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-muted)}.admin__turn-text{white-space:pre-wrap}.admin-shell{display:flex;align-items:stretch;min-height:100vh;min-height:100dvh;background:var(--surface-sunken)}.admin-sidebar{position:sticky;top:0;align-self:flex-start;flex:0 0 240px;width:240px;height:100vh;height:100dvh;display:flex;flex-direction:column;gap:var(--space-6);padding:var(--space-6) var(--space-5);background:var(--surface);border-right:1px solid var(--border)}.admin-sidebar__brand{display:flex;align-items:center;gap:var(--space-2)}.admin-sidebar__badge{margin-left:auto;padding:2px var(--space-2);border-radius:var(--r-pill);background:var(--brand-tint);color:var(--brand-700);font-size:.7rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.admin-sidebar__nav{display:flex;flex-direction:column;gap:var(--space-1)}.admin-sidebar__link{display:block;padding:var(--space-3) var(--space-4);border-radius:var(--r-md);color:var(--ink-muted);font-weight:600;font-size:.95rem;text-decoration:none;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.admin-sidebar__link:hover{background:var(--surface-sunken);color:var(--ink)}.admin-sidebar__link--active{background:var(--brand-tint);color:var(--brand-700)}.admin-sidebar__footer{margin-top:auto;display:flex;flex-direction:column;gap:var(--space-2);padding-top:var(--space-4);border-top:1px solid var(--border)}.admin-sidebar__email{color:var(--ink-faint);font-size:.8rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-sidebar__foot-link{color:var(--ink-muted);font-size:.9rem;font-weight:600;text-decoration:none}.admin-sidebar__foot-link:hover{color:var(--brand)}.admin-sidebar__logout{align-self:flex-start;padding:0;background:none;border:none;color:var(--ink-muted);font:inherit;font-size:.9rem;font-weight:600;cursor:pointer}.admin-sidebar__logout:hover{color:var(--danger)}.admin-main{flex:1 1 auto;min-width:0}.admin-main__inner{max-width:1280px;margin:0 auto;padding:var(--space-8) var(--space-8) var(--space-12);display:flex;flex-direction:column;gap:var(--space-6)}.admin-page__head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:var(--space-4)}.admin-page__title{margin:0;font-size:1.75rem;color:var(--ink)}.admin-page__subtitle{margin:var(--space-1) 0 0;color:var(--ink-muted);font-size:.95rem}.admin-sections{display:flex;flex-direction:column;gap:var(--space-6)}.admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-4)}.admin-summary{display:flex;flex-wrap:wrap;gap:var(--space-5);color:var(--ink-muted);font-size:.9rem}.admin-summary__num{color:var(--ink);font-weight:600}.admin-table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow-sm)}.admin-table{width:100%;border-collapse:collapse;font-size:.9rem}.admin-table th{padding:var(--space-3) var(--space-4);text-align:left;color:var(--ink-muted);font-size:.78rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;border-bottom:1px solid var(--border);white-space:nowrap}.admin-table td{padding:var(--space-3) var(--space-4);color:var(--ink);border-bottom:1px solid var(--border);white-space:nowrap}.admin-table tbody tr:last-child td{border-bottom:none}.admin-table tbody tr:hover{background:var(--brand-tint)}.admin-table__num{text-align:right}.admin-table__rowbtn{padding:0;background:none;border:none;color:var(--brand-700);font:inherit;font-weight:600;text-align:left;cursor:pointer}.admin-table__rowbtn:hover{text-decoration:underline}.admin-kv{margin:var(--space-4) 0}.admin-kv th[scope=row]{text-transform:none;letter-spacing:normal;font-weight:500;font-size:.9rem;color:var(--ink-muted);width:55%}.admin-panel{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;justify-content:flex-end}.admin-panel__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;border:none;padding:0;background:var(--scrim);cursor:pointer;animation:scrim-fade var(--dur) var(--ease-out) both}.admin-panel__sheet{position:relative;width:100%;max-width:30rem;height:100%;display:flex;flex-direction:column;background:var(--surface);border-left:1px solid var(--border);box-shadow:var(--shadow-xl);animation:admin-panel-in var(--dur-slow) var(--ease-out) both}@keyframes admin-panel-in{0%{transform:translate(100%)}to{transform:translate(0)}}.admin-panel__head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-5) var(--space-5) var(--space-4);border-bottom:1px solid var(--border)}.admin-panel__title{margin:0;font-size:1.2rem;color:var(--ink)}.admin-panel__close{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;border-radius:50%;background:var(--surface-sunken);color:var(--ink-muted);cursor:pointer}.admin-panel__close:hover{color:var(--ink)}.admin-panel__body{flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain;padding:var(--space-5)}@media (prefers-reduced-motion: reduce){.admin-panel__backdrop,.admin-panel__sheet{animation:none}}@media (max-width: 820px){.admin-shell{flex-direction:column}.admin-sidebar{position:static;flex-basis:auto;width:100%;height:auto;flex-direction:row;flex-wrap:wrap;align-items:center;gap:var(--space-3) var(--space-4);padding:var(--space-3) var(--space-4)}.admin-sidebar__nav{flex-direction:row;flex-wrap:wrap;gap:var(--space-1)}.admin-sidebar__link{padding:var(--space-2) var(--space-3)}.admin-sidebar__footer{margin-top:0;margin-left:auto;flex-direction:row;align-items:center;gap:var(--space-4);padding-top:0;border-top:none}.admin-sidebar__email{display:none}.admin-main__inner{padding:var(--space-5) var(--space-4) var(--space-8)}.admin-panel__sheet{max-width:none}}@keyframes explain-nudge{0%,to{transform:scale(1)}12%{transform:scale(1.05)}24%{transform:scale(1)}}.progress-screen,.account-screen{padding-bottom:var(--space-12)}.progress__hero,.account__hero{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-6);margin:var(--space-2) 0 var(--space-8)}.progress__hero-copy,.account__hero-copy{max-width:42rem}.progress__eyebrow,.streak__eyebrow{display:block;margin:0 0 var(--space-2);color:var(--brand-700);font-family:var(--font-ui);font-size:.8125rem;font-weight:700;line-height:1.2}.progress__title{margin:0;color:var(--ink);font-family:var(--font-display);font-size:clamp(2rem,5vw,3.25rem);font-weight:400;letter-spacing:-.035em;line-height:1.05}.progress__intro,.account__intro,.progress__section-heading>p:not(.progress__eyebrow),.account__section-intro,.journey-band__caption{max-width:46ch;margin:var(--space-3) 0 0;color:var(--ink-muted);font-size:1rem;line-height:1.55}.progress__session-count{flex:0 0 auto;margin:0 0 var(--space-1);padding:var(--space-2) var(--space-3);border:1px solid var(--border-strong);border-radius:var(--r-pill);color:var(--ink-muted);font-size:.8125rem;font-weight:700;white-space:nowrap}.progress__section-heading h2,.account__section-heading h2,.fingerprint-section__title,.scenario-list__title,.ask-data__title,.mastery__empty-title{margin:0;color:var(--ink);font-family:var(--font-ui);font-size:clamp(1.25rem,2vw,1.5rem);font-weight:700;letter-spacing:-.02em;line-height:1.25}.progress__snapshot{display:grid;grid-template-columns:minmax(13rem,.8fr) minmax(0,1.2fr);margin-bottom:var(--space-8);overflow:hidden;border-radius:var(--r-2xl);background:var(--brand);color:var(--on-brand)}.progress__detail-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-8)}@media (max-width: 760px){.progress__detail-grid{display:block}}.progress-screen .streak{display:flex;align-items:flex-start;gap:var(--space-3);min-height:100%;margin:0;padding:var(--space-6);border:0;border-right:1px solid color-mix(in srgb,var(--on-brand) 28%,transparent);border-radius:0;background:transparent;box-shadow:none}.progress-screen .streak__flame{display:inline-flex;flex:0 0 auto;color:var(--on-brand)}.progress-screen .streak__flame svg{width:28px;height:28px}.progress-screen .streak__text{display:flex;flex-direction:column;gap:var(--space-1)}.progress-screen .streak__eyebrow{color:color-mix(in srgb,var(--on-brand) 85%,transparent)}.progress-screen .streak__count,.progress-screen .streak--empty .streak__count,.progress-screen .streak__caption{color:var(--on-brand)}.progress-screen .streak__count{font-family:var(--font-ui);font-size:1.2rem;font-weight:700;letter-spacing:-.02em;line-height:1.18}.progress-screen .streak--empty .streak__count{font-size:1.05rem}.progress-screen .streak__caption{font-size:.875rem;opacity:.8}.progress-screen .journey-band{padding:var(--space-6)}.progress-screen .journey-band__heading{display:grid;grid-template-columns:auto 1fr;column-gap:var(--space-3);align-items:baseline}.progress-screen .journey-band__heading .progress__eyebrow{grid-column:1 / -1;color:color-mix(in srgb,var(--on-brand) 85%,transparent)}.progress-screen .journey-band__title{margin:0;color:var(--on-brand);font-family:var(--font-display);font-size:clamp(1.5rem,3vw,2rem);font-weight:400;letter-spacing:-.03em;line-height:1.1}.progress-screen .journey-band__caption{margin:0;color:var(--on-brand);font-size:.875rem;opacity:.82}.progress-screen .journey-band__track{display:flex;align-items:flex-start;gap:var(--space-2);margin-top:var(--space-6)}.progress-screen .journey-band__step{position:relative;display:flex;flex:1 1 0;flex-direction:column;align-items:flex-start;min-width:0;gap:var(--space-2);text-align:left}.progress-screen .journey-band__step:before{width:100%;height:8px;border-radius:var(--r-pill);background:color-mix(in srgb,var(--on-brand) 24%,transparent);content:"";transition:background var(--dur) var(--ease-out)}.progress-screen .journey-band__step--active:before{background:var(--on-brand)}.progress-screen .journey-band__step-cefr,.progress-screen .journey-band__step--active .journey-band__step-cefr{color:var(--on-brand);font-size:.6875rem;font-weight:600;font-variant-numeric:tabular-nums;opacity:.72}.progress-screen .journey-band__step-name{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.progress__support{display:grid;grid-template-columns:minmax(0,1fr) minmax(16rem,.8fr);gap:var(--space-8);align-items:end;margin-bottom:var(--space-10);padding:var(--space-8);border:1px solid var(--border);border-radius:var(--r-xl) var(--r-scene-mobile) var(--r-xl) var(--r-xl);background:var(--surface)}.progress-screen .progress__actions{display:grid;gap:var(--space-3);margin:0}.progress-screen .progress__action{display:flex;flex-direction:column;gap:var(--space-2)}.progress-screen .progress__btn{display:inline-flex;align-items:center;justify-content:flex-start;min-height:52px;gap:var(--space-2);padding:var(--space-3) var(--space-4);border:1px solid transparent;border-radius:var(--r-lg);box-shadow:var(--shadow-sm);font-family:var(--font-ui);font-size:.9375rem;font-weight:700;line-height:1.2;cursor:pointer;transition:background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-spring)}.progress-screen .progress__btn--nudge{background:var(--brand-600);color:var(--on-brand)}.progress-screen .progress__btn--nudge:hover{background:var(--brand-700)}.progress-screen .progress__btn--push{border-color:var(--border-strong);background:var(--surface);color:var(--ink)}.progress-screen .progress__btn--push:hover{background:var(--surface-sunken)}.progress-screen .progress__btn:active{transform:scale(.97)}.progress-screen .progress__btn:disabled{cursor:not-allowed;opacity:.45;transform:none}.progress-screen .progress__btn--push:disabled{border-color:transparent;background:var(--surface-sunken);opacity:1}.progress-screen .progress__status{margin:0;color:var(--ink-muted);font-size:.8125rem;line-height:1.4}.progress-screen .progress__status--error{color:var(--danger)}.progress-screen .btn__icon{display:inline-flex}.progress-screen .btn__icon svg{width:var(--icon-sm);height:var(--icon-sm)}.fingerprint-section,.scenario-list,.ask-data,.mastery__empty{margin:0 0 var(--space-8);padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.fingerprint-section,.scenario-list{border-top:1px solid var(--border);padding-top:var(--space-8)}.fingerprint{color:var(--ink-muted)}.progress-screen .fingerprint{max-width:34rem;margin:var(--space-6) auto 0}.fingerprint__unscored{margin:0 0 var(--space-2);color:var(--ink-muted);font-size:.8125rem;text-align:center}.progress-screen button.scenario-list__item{display:grid;grid-template-columns:minmax(0,1fr) auto auto;width:100%;gap:var(--space-4);align-items:center;padding:var(--space-4) 0;border:0;border-top:1px solid var(--border);background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.progress-screen button.scenario-list__item:first-of-type{padding-top:0;border-top:0}.progress-screen button.scenario-list__item:hover{color:var(--brand-700)}.progress-screen button.scenario-list__item:focus-visible{outline:3px solid var(--focus);outline-offset:4px}.progress-screen .scenario-list__name{min-width:0;overflow:hidden;color:var(--ink);font-weight:700;text-overflow:ellipsis;white-space:nowrap}.progress-screen .scenario-list__mastery{color:var(--brand-700);font-family:var(--font-display);font-size:1.1rem;font-weight:400}.progress-screen .scenario-list__band{padding:var(--space-1) var(--space-2);border:1px solid var(--border);border-radius:var(--r-pill);background:var(--brand-tint);color:var(--brand-700);font-size:.72rem;font-weight:700}.progress-screen .ask-data{padding:var(--space-6);border-radius:var(--r-xl) var(--r-xl) var(--r-scene-mobile) var(--r-xl);background:var(--brand-tint)}.progress-screen .ask-data__input{display:flex;gap:var(--space-2);margin-top:var(--space-5)}.progress-screen .ask-data__field{flex:1 1 auto;min-width:0;min-height:48px;padding:var(--space-2) var(--space-3);border:1px solid var(--border-strong);border-radius:var(--r-md);background:var(--surface);color:var(--ink);font:inherit;font-size:.9375rem;transition:border-color var(--dur) var(--ease-out),box-shadow var(--dur) var(--ease-out)}.progress-screen .ask-data__field::placeholder{color:var(--ink-faint)}.progress-screen .ask-data__field:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-color:var(--brand)}.progress-screen .ask-data__send{flex:0 0 auto;min-height:48px;padding:var(--space-2) var(--space-4);border:0;border-radius:var(--r-md);background:var(--brand);color:var(--on-brand);font:inherit;font-size:.9375rem;font-weight:700;cursor:pointer;transition:background var(--dur) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.progress-screen .ask-data__send:hover{background:var(--brand-700)}.progress-screen .ask-data__send:active{transform:scale(.97)}.progress-screen .ask-data__send:disabled{cursor:default;opacity:.5}.progress-screen .ask-data__send:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.progress-screen .ask-data__answer{margin:var(--space-4) 0 0;padding:var(--space-4);border-radius:var(--r-md);background:var(--surface);color:var(--ink);font-size:.9375rem;line-height:1.55}.progress-screen .mastery__empty{padding:var(--space-8);border-radius:var(--r-xl) var(--r-scene-mobile) var(--r-xl) var(--r-xl);background:var(--surface-sunken)}.progress-screen .mastery__empty-title{margin-bottom:var(--space-3)}.progress-screen .mastery__empty-body{max-width:42ch;margin:0;color:var(--ink-muted);font-size:1rem;line-height:1.55}.progress-screen .courses__retry{margin-top:var(--space-4)}.account__hero{align-items:center}.account-screen .account__user{display:flex;flex:0 1 20rem;align-items:center;gap:var(--space-4);min-width:0;margin:0;padding:var(--space-3) 0 var(--space-3) var(--space-5);border:0;border-left:1px solid var(--border);border-radius:0;background:transparent;box-shadow:none}.account-screen .account__avatar{flex:0 0 52px;width:52px;height:52px;border-radius:var(--r-lg) var(--r-lg) var(--r-lg) var(--r-scene-mobile);object-fit:cover}.account-screen .account__avatar--placeholder{display:flex;align-items:center;justify-content:center;background:var(--brand-tint);color:var(--brand-700);font-family:var(--font-display);font-size:1.1rem;font-weight:400}.account-screen .account__user-info{display:flex;flex:1 1 auto;flex-direction:column;min-width:0;gap:2px}.account__user-label{margin:0;color:var(--ink-faint);font-size:.75rem;font-weight:700}.account-screen .account__user-name,.account-screen .account__user-email{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-screen .account__user-name{color:var(--ink);font-size:1rem;font-weight:700}.account-screen .account__user-email{color:var(--ink-muted);font-size:.875rem}.account-screen .account__balance-card{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-6);min-height:11.5rem;margin:0 0 var(--space-8);padding:var(--space-8);border:0;border-radius:var(--r-2xl);background:var(--brand);color:var(--on-brand);box-shadow:none}.account-screen .account__balance-card--loading{display:flex;align-items:center}.account-screen .account__balance-card--error{align-items:center;background:var(--danger-tint);color:var(--danger)}.account__balance-copy{min-width:0}.account__balance-currency{font-family:var(--font-ui);font-size:1rem;font-weight:600;letter-spacing:0}.account-screen .account__balance-card .account__balance-label,.account-screen .account__balance-card .account__balance-amount,.account-screen .account__balance-card .account__balance-minutes,.account-screen .account__balance-card .account__balance-reserved{color:var(--on-brand)}.account-screen .account__balance-label{margin:0 0 var(--space-3);font-family:var(--font-ui);font-size:.875rem;font-weight:700;letter-spacing:0;text-transform:none}.account-screen .account__balance-amount{margin:0;font-family:var(--font-display);font-size:clamp(2.5rem,6vw,4.25rem);font-weight:400;letter-spacing:-.055em;line-height:1.05;overflow-wrap:anywhere}.account-screen .account__balance-detail{max-width:15rem}.account-screen .account__balance-minutes{margin:0 0 var(--space-2);font-size:1rem;font-weight:700}.account-screen .account__balance-reserved{margin:0;font-size:.8125rem;opacity:.78}.account__buy,.account__referral,.account__ledger{margin:0 0 var(--space-10)}.account__section-heading{margin:0 0 var(--space-5)}.account-screen .account__buy-card,.account-screen .account__referral-card{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-6);border:1px solid var(--border);border-radius:var(--r-xl) var(--r-xl) var(--r-scene-mobile) var(--r-xl);background:var(--surface);box-shadow:none}.account-screen .account__invite-callout{display:flex;align-items:center;gap:var(--space-3);margin:0 0 var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--r-lg) var(--r-lg) var(--r-lg) var(--r-scene-mobile);background:var(--brand-tint)}.account-screen .account__invite-callout-text{flex:1 1 auto;margin:0;color:var(--ink);font-size:.9375rem;font-weight:600;line-height:1.4}.account-screen .account__invite-callout-dismiss{display:flex;flex:0 0 auto;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:0;border-radius:var(--r-pill);background:transparent;color:var(--ink-muted);font-size:1.375rem;line-height:1;cursor:pointer;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-spring)}.account-screen .account__invite-callout-dismiss:hover{background:color-mix(in srgb,var(--ink) 8%,transparent);color:var(--ink)}.account-screen .account__invite-callout-dismiss:active{transform:scale(.9)}.account-screen .account__amount-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-2)}.account-screen .account__amount{min-height:52px;padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);color:var(--ink);font-family:var(--font-ui);font-size:1rem;font-weight:700;font-variant-numeric:tabular-nums;cursor:pointer;transition:background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-spring)}.account-screen .account__amount:hover{border-color:var(--border-strong);background:var(--surface-sunken)}.account-screen .account__amount:active{transform:scale(.97)}.account-screen .account__amount--selected,.account-screen .account__amount--selected:hover{border-color:var(--brand);background:var(--brand);color:var(--on-brand)}.account-screen .account__amount:disabled{cursor:not-allowed;opacity:.45;transform:none}.account-screen .account__custom{display:flex;align-items:center;gap:var(--space-2);min-height:52px;padding:0 var(--space-3);border:1px solid var(--border-strong);border-radius:var(--r-md);background:var(--surface);transition:border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.account-screen .account__custom:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--focus) 24%,transparent)}.account-screen .account__custom-affix{color:var(--ink-muted);font-size:.9375rem;font-weight:700}.account-screen .account__custom-input{flex:1 1 auto;min-width:0;padding:var(--space-3) 0;border:0;outline:0;background:none;color:var(--ink);font-family:var(--font-ui);font-size:1.0625rem;font-weight:700;font-variant-numeric:tabular-nums}.account-screen .account__custom-input::placeholder{color:var(--ink-faint);font-weight:500}.account-screen .account__custom-hint{margin:calc(var(--space-2) * -1) 0 0;color:var(--ink-faint);font-size:.8125rem}.account-screen .account__custom-hint--error{color:var(--danger)}.account-screen .account__buy-btn{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:54px;padding:var(--space-3) var(--space-5);border:1px solid transparent;border-radius:var(--r-lg);background:var(--brand-600);color:var(--on-brand);box-shadow:var(--shadow-sm);font-family:var(--font-ui);font-size:.9375rem;font-weight:700;cursor:pointer;transition:background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-spring)}.account-screen .account__buy-btn:hover{background:var(--brand-700)}.account-screen .account__buy-btn:active,.account-screen .account__ledger-more:active,.account-screen .account__logout-btn:active,.account-screen .account__referral-copy:active{transform:scale(.97)}.account-screen .account__buy-btn:disabled,.account-screen .account__ledger-more:disabled{cursor:not-allowed;opacity:.45;transform:none}.account-screen .account__buy-btn--saved{border-color:var(--border-strong);background:var(--surface);color:var(--ink);box-shadow:none}.account-screen .account__buy-btn--saved:hover{background:var(--surface-sunken)}.banner--success{background:var(--success-tint);color:var(--success)}.account-screen .account__referral-card{gap:var(--space-4)}.account-screen .account__referral-desc{max-width:46ch;margin:0;color:var(--ink-muted);font-size:1rem;line-height:1.5}.account-screen .account__referral-earned,.account-screen .account__referral-pending{margin:0;font-size:.9375rem}.account-screen .account__referral-earned{color:var(--success);font-weight:700}.account-screen .account__referral-pending{color:var(--ink-faint)}.account-screen .account__referral-link-row{display:flex;align-items:center;min-height:48px;gap:var(--space-2)}.account-screen .account__referral-link{flex:1 1 0;min-width:0;padding:var(--space-3);overflow:hidden;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-sunken);color:var(--ink);font-family:var(--font-ui);font-size:.8125rem;text-overflow:ellipsis;white-space:nowrap}.account-screen .account__referral-copy{flex:0 0 auto;min-height:44px;padding:var(--space-2) var(--space-4);border:1px solid var(--border-strong);border-radius:var(--r-md);background:var(--surface);color:var(--ink);font-family:var(--font-ui);font-size:.8125rem;font-weight:700;cursor:pointer;transition:background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-spring)}.account-screen .account__referral-copy:hover{border-color:var(--border-strong);background:var(--surface-sunken)}.account-screen .account__referral-friends{display:flex;flex-direction:column;gap:0;margin:0;padding:0;list-style:none}.account-screen .account__referral-friend{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) 0;border-top:1px solid var(--border)}.account-screen .account__referral-friend:first-child{border-top:0}.account-screen .account__referral-friend--inactive{color:var(--ink-muted)}.account-screen .account__referral-avatar{flex:0 0 auto;width:28px;height:28px;border-radius:var(--r-pill);object-fit:cover}.account-screen .account__referral-friend-name{flex:1 1 0;min-width:0;overflow:hidden;color:var(--ink);font-size:.9375rem;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.account-screen .account__referral-friend-status{flex:0 0 auto;color:var(--ink-faint);font-size:.8125rem}.account-screen .account__ledger{border-top:1px solid var(--border);padding-top:var(--space-8)}.account-screen .account__ledger-list{display:flex;flex-direction:column;gap:0;margin:0;padding:0;border-top:1px solid var(--border);list-style:none}.account-screen .account__ledger-row{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-4) 0;border:0;border-bottom:1px solid var(--border);border-radius:0;background:transparent;box-shadow:none}.account-screen .account__ledger-row-main{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3)}.account-screen .account__ledger-reason{color:var(--ink);font-size:.9375rem;font-weight:700;text-transform:capitalize}.account-screen .account__ledger-amount{flex:0 0 auto;font-size:.9375rem;font-weight:700}.account-screen .account__ledger-amount--credit{color:var(--success)}.account-screen .account__ledger-amount--debit{color:var(--ink)}.account-screen .account__ledger-date{color:var(--ink-faint);font-size:.8125rem}.account-screen .account__ledger-empty{margin:0;padding:var(--space-5) 0;color:var(--ink-muted);font-size:.9375rem}.account-screen .account__ledger-more{display:block;width:auto;min-width:10rem;min-height:44px;margin-top:var(--space-5);padding:var(--space-3) var(--space-4);border:1px solid var(--border-strong);border-radius:var(--r-lg);background:var(--surface);color:var(--ink);font-family:var(--font-ui);font-size:.9375rem;font-weight:700;cursor:pointer;transition:background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-spring)}.account-screen .account__ledger-more:hover{background:var(--surface-sunken)}.account-screen .account__logout{padding:var(--space-2) 0 var(--space-8);border-top:1px solid var(--border)}.account-screen .account__logout-btn{display:block;width:100%;max-width:18rem;min-height:48px;padding:var(--space-3) var(--space-5);border:1px solid var(--border-strong);border-radius:var(--r-lg);background:var(--surface);color:var(--danger);font-family:var(--font-ui);font-size:.9375rem;font-weight:700;cursor:pointer;transition:background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-spring)}.account-screen .account__logout-btn:hover{border-color:var(--danger);background:var(--danger-tint)}.account-screen .account__version{margin:var(--space-3) 0 0;color:var(--ink-faint);font-size:.75rem;text-align:left}.account-screen .account__credit{margin:var(--space-2) 0 0;color:var(--ink-faint);font-size:.75rem;text-align:left}@media (max-width: 720px){.progress__hero,.account__hero{display:block;margin-bottom:var(--space-6)}.progress__session-count{display:inline-block;margin-top:var(--space-4)}.progress__snapshot,.progress__support{grid-template-columns:1fr}.progress__snapshot{border-radius:var(--r-scene-mobile) var(--r-xl) var(--r-xl) var(--r-xl)}.progress-screen .streak{min-height:0;padding:var(--space-5);border-right:0;border-bottom:1px solid color-mix(in srgb,var(--on-brand) 28%,transparent)}.progress-screen .journey-band,.progress__support,.progress-screen .mastery__empty,.account-screen .account__balance-card{padding:var(--space-6)}.progress__support{gap:var(--space-6)}.account-screen .account__user{margin-top:var(--space-5);padding:var(--space-4) 0 0;border-top:1px solid var(--border);border-left:0}.account-screen .account__balance-card{display:block;min-height:0;border-radius:var(--r-scene-mobile) var(--r-xl) var(--r-xl) var(--r-xl)}.account-screen .account__balance-detail{max-width:none;margin-top:var(--space-5)}.account-screen .account__buy-card,.account-screen .account__referral-card,.progress-screen .ask-data{padding:var(--space-5)}.account-screen .account__amount-grid{grid-template-columns:repeat(2,1fr)}.account-screen .account__ledger-more,.account-screen .account__logout-btn{width:100%;max-width:none}}@media (max-width: 420px){.progress-screen .journey-band__heading{display:block}.progress-screen .journey-band__caption{margin-top:var(--space-2)}.progress-screen .journey-band__track{gap:var(--space-1)}.progress-screen button.scenario-list__item{grid-template-columns:minmax(0,1fr) auto}.progress-screen .scenario-list__band{display:none}.progress-screen .ask-data__input{display:block}.progress-screen .ask-data__send{width:100%;margin-top:var(--space-2)}.account-screen .account__referral-link-row{align-items:stretch}.account-screen .account__referral-copy{padding-inline:var(--space-3)}}@media (prefers-reduced-motion: reduce){.progress-screen .journey-band__step:before,.progress-screen .progress__btn,.progress-screen .ask-data__field,.progress-screen .ask-data__send,.account-screen .account__invite-callout-dismiss,.account-screen .account__amount,.account-screen .account__custom,.account-screen .account__buy-btn,.account-screen .account__referral-copy,.account-screen .account__ledger-more,.account-screen .account__logout-btn{transition:none}.progress-screen .progress__btn:active,.progress-screen .ask-data__send:active,.account-screen .account__invite-callout-dismiss:active,.account-screen .account__amount:active,.account-screen .account__buy-btn:active,.account-screen .account__referral-copy:active,.account-screen .account__ledger-more:active,.account-screen .account__logout-btn:active{transform:none}}.pulse{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-2) 0 0}.pulse__bars{display:flex;align-items:center;gap:6px;height:36px;padding:0 var(--space-3);border:1px solid var(--border);border-radius:var(--r-pill);background:var(--surface);box-shadow:var(--shadow-sm)}.pulse__bar{width:8px;height:24px;border-radius:var(--r-pill);transform-origin:center;will-change:transform}.pulse__bar--1{background:var(--brand)}.pulse__bar--2{background:var(--brand-700)}.pulse__bar--3{background:var(--success)}.pulse__bar--4{background:var(--ink)}.pulse__label{min-height:1.05rem;color:var(--ink-muted);font-family:var(--font-ui);font-size:.75rem;font-weight:650;letter-spacing:.04em}.pulse__glow{position:fixed;top:0;right:0;bottom:0;left:0;z-index:5;pointer-events:none;opacity:var(--glow, 0);background:color-mix(in srgb,var(--brand) 14%,transparent);will-change:opacity}.screen__stage{display:flex;flex:1;flex-direction:column;min-height:0}.stage{position:relative;display:flex;flex:1;flex-direction:column;min-height:0;padding:calc(env(safe-area-inset-top,0px) + var(--space-4)) var(--space-8) 0}.stage__topline{display:flex;flex:none;flex-wrap:wrap;align-items:center;gap:var(--space-2);min-height:44px;padding-bottom:var(--space-3);border-bottom:1px solid var(--border)}.stage__timer{flex:1 1 0;color:var(--ink-muted);font-family:var(--font-ui);font-size:.8125rem;font-weight:650;font-variant-numeric:tabular-nums}.stage__peek,.stage__chip{border:0;border-radius:var(--r-pill);font-family:var(--font-ui);font-size:.8125rem;font-weight:650;cursor:pointer;min-height:44px}.stage__peek{display:inline-flex;align-items:center;gap:5px;justify-self:center;padding:0 var(--space-3);background:transparent;color:var(--ink)}.stage__peek:hover{background:var(--surface-sunken)}.stage__peek-chevron{transform:rotate(90deg)}.stage__chip{min-width:5.2rem;padding:0 var(--space-3);background:var(--brand-tint);color:var(--brand-700);text-align:center}.stage__chip:hover{background:var(--brand);color:var(--on-brand)}.stage__chip--ghost{visibility:hidden}.stage__words{position:absolute;top:calc(100% + var(--space-1));right:0;z-index:8;width:max-content;max-width:min(30rem,calc(100vw - var(--space-10)));padding:var(--space-3);border:1px solid var(--border-strong);border-radius:var(--r-lg) var(--r-lg) var(--r-sm) var(--r-lg);background:var(--surface);box-shadow:var(--shadow-lg);justify-content:flex-end}.stage__center{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:safe center;min-height:0;padding:max(var(--space-8),3rem) var(--space-2) var(--space-8);overflow-y:auto;overscroll-behavior:contain;color:var(--ink);font-family:var(--font-ui);font-weight:550;line-height:1.34;text-align:center;transition:font-size var(--dur-slow) var(--ease-out)}.stage__utterance{flex:none;max-width:min(42rem,100%);margin:0;overflow-wrap:anywhere}.stage__word{display:inline-block;max-width:100%;overflow-wrap:anywhere;animation:stage-word-in .28s var(--ease-out) both}@keyframes stage-word-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.stage__waiting{max-width:21rem;margin:0;color:var(--ink-muted);font-family:var(--font-ui);font-size:1rem;font-weight:550;line-height:1.5}.stage__explain{display:inline-flex;flex:none;align-items:center;gap:6px;min-height:44px;margin-top:var(--space-6);padding:0 var(--space-4);border:1px solid var(--brand);border-radius:var(--r-pill);background:var(--brand-tint);color:var(--brand-700);font-family:var(--font-ui);font-size:.875rem;font-weight:700;cursor:pointer;animation:stage-fade-in var(--dur-slow) var(--ease-out) both}.stage__explain--pending{visibility:hidden;pointer-events:none}.stage__explain:hover{background:var(--brand);color:var(--on-brand)}@keyframes stage-fade-in{0%{opacity:0}to{opacity:1}}.stage__caption{flex:none;min-height:24px;max-height:5rem;overflow-y:auto;overflow-wrap:anywhere;margin:0 0 var(--space-2);color:var(--ink-muted);font-family:var(--font-ui);font-size:.875rem;line-height:1.4;text-align:center}.stage--idle{gap:var(--space-5);overflow-y:auto;padding-bottom:var(--space-6)}.stage__idle-intro{display:flex;align-items:end;justify-content:space-between;gap:var(--space-4);overflow:hidden;padding:var(--space-5) var(--space-5) var(--space-4);border-radius:var(--r-xl) var(--r-xl) var(--r-lg) var(--r-xl);background:var(--color-butter);flex-shrink:0}.stage__idle-title{max-width:18rem;margin:0;color:var(--ink);font-family:var(--font-display);font-size:clamp(1.55rem,5vw,2.3rem);font-weight:400;line-height:1.08}.stage__idle-copy{max-width:29rem;margin:var(--space-3) 0 0;color:var(--ink-muted);font-family:var(--font-ui);font-size:.9375rem;line-height:1.45}.stage__idle-dog{width:clamp(4.6rem,19vw,7.5rem);flex:0 0 auto;align-self:end;margin:0 calc(var(--space-3) * -1) calc(var(--space-4) * -1) 0}.stage__course-picker{display:flex;flex-direction:column;gap:var(--space-3);flex:none}.stage__section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3)}.stage__section-heading h2{margin:0;color:var(--ink);font-family:var(--font-ui);font-size:1.125rem;font-weight:700;line-height:1.2}.stage__saving,.stage__course-loading{color:var(--ink-muted);font-family:var(--font-ui);font-size:.8125rem;font-weight:600}.stage__course-error{max-width:36rem}.stage__course-error .banner{margin-top:0}.stage__course-empty{margin:0;padding:var(--space-6);border:1px solid var(--border);border-radius:var(--r-xl);color:var(--ink-muted);background:var(--surface)}.stage__course-loading{display:grid;min-height:13rem;place-items:center;border:1px dashed var(--border-strong);border-radius:var(--r-xl);background:var(--surface-sunken)}.deck{display:grid;gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr))}.deck__card{display:flex;flex-direction:column;align-items:stretch;min-height:126px;padding:var(--space-4);border:1px solid var(--border-strong);border-radius:var(--r-lg) var(--r-lg) var(--r-sm) var(--r-lg);background:var(--surface);box-shadow:var(--shadow-sm);color:var(--ink);font:inherit;text-align:left;cursor:pointer;transition:transform var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.deck__card:not(:disabled):not([aria-disabled=true]):hover{border-color:var(--brand);box-shadow:var(--shadow-md);transform:translateY(-2px)}.deck__card--locked{opacity:1;background:var(--surface-sunken);color:var(--ink-muted);cursor:not-allowed}.deck__card[aria-disabled=true]:not(.deck__card--locked){cursor:wait}.deck__card--active{border-color:var(--brand);background:var(--brand-tint);box-shadow:var(--shadow-md)}.deck__card-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.deck__tag{display:inline-flex;align-items:center;min-height:22px;padding:2px var(--space-2);border-radius:var(--r-pill);background:var(--surface-sunken);color:var(--ink-muted);font-family:var(--font-ui);font-size:.6875rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.deck__tag--active{background:var(--brand);color:var(--on-brand)}.deck__tag--passed{background:var(--success-tint);color:var(--success)}.deck__tag--ready{background:var(--surface-sunken);color:var(--ink)}.deck__tier{color:var(--ink-muted);font-family:var(--font-ui);font-size:.75rem;font-weight:650}.deck__title{display:block;margin:var(--space-3) 0 0;color:var(--ink);font-family:var(--font-ui);font-size:1rem;font-weight:700;line-height:1.25}.deck__card--locked .deck__title,.deck__card--locked .deck__tier{color:var(--ink-muted)}.deck__sub{display:block;margin-top:4px;color:var(--ink-muted);font-family:var(--font-ui);font-size:.75rem;line-height:1.35}.deck__chips{display:flex;flex-wrap:wrap;gap:var(--space-1);margin-top:var(--space-3)}.deck__chip{padding:2px var(--space-2);border-radius:var(--r-pill);background:var(--surface);color:var(--brand-700);font-family:var(--font-ui);font-size:.6875rem;font-weight:650}.deck__chip--done{background:var(--success-tint);color:var(--success);text-decoration:line-through}.idle-action{display:flex;flex-direction:column;gap:var(--space-2);margin:0 auto;border-top:1px solid var(--border);background:var(--bg);padding:var(--space-2) var(--space-1) calc(var(--space-2) + env(safe-area-inset-bottom,0px));width:min(100%,42rem)}@media (min-width: 761px){.app--home:not(.app--live) .screen__stage{flex:0 1 auto}.app--home:not(.app--live) .screen__action{padding:var(--space-5) var(--space-8)}}.startpills{padding:0}.startpills__prompt{margin:0 0 var(--space-2);color:var(--ink-muted);font-family:var(--font-ui);font-size:.8125rem;font-weight:600}.startpills__row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.startpills__pill{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-height:70px;padding:var(--space-3) var(--space-4);border:1px solid var(--border-strong);border-radius:var(--r-lg) var(--r-lg) var(--r-sm) var(--r-lg);font-family:var(--font-ui);font-size:.9375rem;font-weight:700;line-height:1.2;text-align:left;cursor:pointer;transition:transform var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.startpills__pill small{margin-top:4px;font-size:.75rem;font-weight:550;line-height:1.3}.startpills__pill:not(:disabled):active{transform:scale(.97)}.startpills__pill:disabled{opacity:.55;cursor:wait}.startpills__pill--simple{background:var(--surface);color:var(--ink)}.startpills__pill--simple:hover{background:var(--surface-sunken);border-color:var(--ink-muted)}.startpills__pill--conv{border-color:var(--brand);background:var(--brand);color:var(--on-brand);box-shadow:var(--shadow-sm)}.startpills__pill--conv:hover{background:var(--brand-700)}.stage__minutes{align-self:center;border:0;background:transparent;color:var(--ink-muted);font-family:var(--font-ui);font-size:.75rem;font-weight:600;cursor:pointer;min-height:44px}.stage__minutes:hover{color:var(--brand-700);text-decoration:underline}.sheet__panel{position:fixed;top:0;right:0;left:0;z-index:41;display:flex;flex-direction:column;max-height:min(76vh,46rem);margin:0 auto;overflow:hidden;border-radius:0 0 var(--r-xl) var(--r-xl);background:var(--surface);box-shadow:var(--shadow-xl);animation:sheet-down var(--dur-slow) var(--ease-out) both;max-width:900px}@keyframes sheet-down{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:none}}.sheet__header{display:flex;align-items:start;justify-content:space-between;gap:var(--space-4);padding:calc(env(safe-area-inset-top,0px) + var(--space-5)) var(--space-5) var(--space-4);border-bottom:1px solid var(--border);background:var(--surface-sunken)}.sheet__eyebrow,.course-detail__eyebrow{margin:0 0 var(--space-1);color:var(--ink-muted);font-family:var(--font-ui);font-size:.6875rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.sheet__title{margin:0;color:var(--ink);font-family:var(--font-display);font-size:1.25rem;font-weight:400;line-height:1.15}.sheet__dismiss{border:0;border-radius:var(--r-pill);padding:0 var(--space-3);background:var(--surface);color:var(--ink);font-family:var(--font-ui);font-size:.8125rem;font-weight:700;cursor:pointer;min-height:44px}.sheet__dismiss:hover{background:var(--brand-tint);color:var(--brand-700)}.sheet__body{display:flex;flex-direction:column;gap:var(--space-4);overflow-y:auto;padding:var(--space-5)}.sheet__empty{margin:var(--space-5) 0;color:var(--ink-muted);font-family:var(--font-ui);font-size:.9375rem;line-height:1.5;text-align:center}.sheet__turn{max-width:min(42rem,90%);margin:0;font-family:var(--font-ui);line-height:1.5;text-align:left}.sheet__turn--tutor{align-self:flex-start;border:1px solid var(--border);border-radius:var(--r-lg) var(--r-lg) var(--r-lg) var(--r-sm);padding:var(--space-3) var(--space-4);background:var(--surface);color:var(--ink);font-size:.9375rem;cursor:pointer}.sheet__turn--tutor:hover{border-color:var(--brand);background:var(--brand-tint)}.sheet__turn--learner{align-self:flex-end;border-radius:var(--r-lg) var(--r-lg) var(--r-sm) var(--r-lg);padding:var(--space-3) var(--space-4);background:var(--brand);color:var(--on-brand);font-size:.875rem}.sheet__close{display:flex;align-items:center;justify-content:center;gap:var(--space-1);min-height:52px;border:0;border-top:1px solid var(--border);background:var(--surface);color:var(--ink-muted);font-family:var(--font-ui);font-size:.8125rem;font-weight:700;cursor:pointer}.sheet__close:hover{color:var(--brand-700);background:var(--brand-tint)}.sheet__close-chevron{transform:rotate(-90deg)}.orbit{display:flex;align-items:flex-start;justify-content:center;gap:var(--space-6);padding:var(--space-3) var(--space-4) calc(var(--space-3) + env(safe-area-inset-bottom,0px));transition:opacity var(--dur) var(--ease-out)}.orbit--dim{opacity:.9}.orbit__btn{display:flex;flex-direction:column;align-items:center;gap:var(--space-1);min-width:52px;border:0;padding:0;background:transparent;cursor:pointer}.orbit__btn:disabled{opacity:.42;cursor:not-allowed}.orbit__icon{display:grid;width:48px;height:48px;place-items:center;border:1px solid var(--border-strong);border-radius:var(--r-pill);background:var(--surface);color:var(--ink);box-shadow:var(--shadow-sm);transition:transform var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out)}.orbit__btn:not(:disabled):active .orbit__icon{transform:scale(.97)}.orbit__btn--end .orbit__icon{width:56px;height:56px;border-color:var(--brand);background:var(--brand);color:var(--on-brand)}.orbit__btn--end .action__btn-stopicon{background:var(--on-brand)}.orbit__label{color:var(--ink-muted);font-family:var(--font-ui);font-size:.6875rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.course-detail{position:fixed;top:0;right:0;bottom:0;left:0;z-index:25;display:grid;place-items:end center}.course-detail__sheet{position:relative;width:min(100%,34rem);max-height:min(88vh,48rem);overflow-y:auto;padding:var(--space-8) var(--space-5) calc(var(--space-6) + env(safe-area-inset-bottom,0px));border-radius:var(--r-xl) var(--r-xl) 0 0;background:var(--surface);box-shadow:var(--shadow-xl);animation:course-detail-in var(--dur-slow) var(--ease-out) both}@keyframes course-detail-in{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}.course-detail__close{position:absolute;top:var(--space-3);right:var(--space-3);display:grid;place-items:center;border:0;border-radius:var(--r-pill);background:var(--surface-sunken);color:var(--ink);font-size:1.5rem;line-height:1;cursor:pointer;width:44px;height:44px}.course-detail__close:hover{background:var(--brand-tint);color:var(--brand-700)}.course-detail__title{max-width:15rem;margin:0;color:var(--ink);font-family:var(--font-display);font-size:1.7rem;font-weight:400;line-height:1.1}.course-detail__summary{margin:var(--space-3) 0 0;color:var(--brand-700);font-family:var(--font-ui);font-size:.875rem;font-weight:700}.course-detail__section{margin-top:var(--space-6)}.course-detail__section-label{margin:0 0 var(--space-3);color:var(--ink);font-family:var(--font-ui);font-size:.8125rem;font-weight:700}.course-detail__ask-presets{display:flex;flex-wrap:wrap;gap:var(--space-2)}.course-detail__chip{border:1px solid var(--border-strong);border-radius:var(--r-pill);padding:0 var(--space-3);background:var(--surface);color:var(--ink);font-family:var(--font-ui);font-size:.8125rem;font-weight:650;cursor:pointer;min-height:44px}.course-detail__chip:hover{border-color:var(--brand);background:var(--brand-tint);color:var(--brand-700)}.course-detail__ask-input{display:flex;gap:var(--space-2);margin-top:var(--space-3)}.course-detail__ask-field{min-width:0;flex:1;border:1px solid var(--border-strong);border-radius:var(--r-md);padding:0 var(--space-3);background:var(--surface);color:var(--ink);font:inherit;min-height:44px}.course-detail__ask-send{border:0;border-radius:var(--r-md);padding:0 var(--space-4);background:var(--brand);color:var(--on-brand);font-family:var(--font-ui);font-weight:700;cursor:pointer;min-height:44px}.course-detail__chip:disabled,.course-detail__ask-send:disabled,.course-detail__ask-field:disabled{opacity:.5;cursor:not-allowed}.course-detail__ask-answer{margin:var(--space-3) 0 0;color:var(--ink-muted);font-family:var(--font-ui);font-size:.875rem;line-height:1.5}.deck__card:focus-visible,.startpills__pill:focus-visible,.stage__peek:focus-visible,.stage__chip:focus-visible,.stage__explain:focus-visible,.sheet__dismiss:focus-visible,.sheet__close:focus-visible,.sheet__turn--tutor:focus-visible,.course-detail button:focus-visible,.course-detail input:focus-visible{outline:3px solid var(--focus);outline-offset:3px}@media (max-width: 38rem){.stage{padding-right:var(--space-5);padding-left:var(--space-5)}.stage--idle{gap:var(--space-4)}.stage__idle-intro{padding:var(--space-4);flex-shrink:0}.deck{grid-template-columns:1fr}.deck__card--active{grid-column:auto}.startpills__row{gap:var(--space-2)}.startpills__pill{min-height:74px;padding:var(--space-3)}.orbit{gap:var(--space-5)}.sheet__header,.sheet__body{padding-right:var(--space-4);padding-left:var(--space-4)}}@media (prefers-reduced-motion: reduce){.deck__card,.stage__center,.stage__word,.stage__explain,.sheet__panel,.course-detail__sheet,.orbit{transition:none;animation:none}}@keyframes scrim-fade{0%{opacity:0}to{opacity:1}}@keyframes sheet-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes skeleton-shimmer{0%{background-position:100% 0}to{background-position:0 0}}.freeze{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:flex;flex-direction:column;justify-content:flex-end}.freeze__sheet{position:relative;width:min(100%,32rem);max-height:calc(100dvh - var(--space-6));margin:0 auto;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background:var(--surface);border:1px solid color-mix(in srgb,var(--color-pink) 32%,var(--border));border-bottom:0;border-radius:var(--r-2xl) var(--r-2xl) 0 0;padding:var(--space-8) var(--space-5) calc(env(safe-area-inset-bottom,0px) + var(--space-5));box-shadow:var(--shadow-xl);animation:sheet-up var(--dur-slow) var(--ease-out) both}.freeze__close{position:absolute;top:var(--space-3);right:var(--space-3);display:grid;width:44px;height:44px;place-items:center;border:1px solid var(--border);border-radius:16px 16px 16px 6px;background:var(--surface-sunken);color:var(--ink);cursor:pointer;transition:background var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-spring)}.freeze__close:hover{background:var(--color-butter)}.freeze__close:active,.freeze__alt:active,.translate__row:active,.freeze__continue:active,.freeze__secondary:active,.report .report__continue:active,.install-prompt__install:active{transform:scale(.97)}.freeze__title{display:flex;align-items:center;gap:var(--space-2);margin:0 var(--space-10) var(--space-3) 0;color:var(--ink);font-family:var(--font-display);font-size:clamp(1.25rem,5vw,1.65rem);font-weight:400;line-height:1.18;letter-spacing:-.025em}.freeze__title svg,.freeze__alts-label svg{flex:0 0 auto;color:var(--brand)}.freeze__explanation{margin:0 0 var(--space-5);color:var(--ink-muted);font-family:var(--font-ui);font-size:1rem;line-height:1.55}.freeze__gloss{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-2);margin-bottom:var(--space-6);padding:var(--space-3) var(--space-4);border-radius:18px 18px 18px 7px;background:var(--color-butter);color:var(--ink)}.freeze__gloss-word{font-family:var(--font-ui);font-size:1.06rem;font-weight:700}.freeze__gloss-arrow{color:var(--ink-muted);font-size:.9rem}.freeze__gloss-meaning{font-family:var(--font-ui);font-weight:600}.freeze__alts,.translate__list{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-5)}.freeze__alts-label{display:flex;align-items:center;gap:var(--space-2);margin:0 0 var(--space-1);color:var(--ink-muted);font-family:var(--font-ui);font-size:.75rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.freeze__alt,.translate__row{display:flex;width:100%;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:18px 18px 18px 7px;background:var(--surface);color:var(--ink);box-shadow:var(--shadow-sm);cursor:pointer;text-align:left;transition:background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-spring)}.freeze__alt:hover,.translate__row:hover{border-color:color-mix(in srgb,var(--brand) 48%,var(--border));background:color-mix(in srgb,var(--brand-tint) 55%,var(--surface))}.freeze__alt--speaking,.translate__row--speaking{border-color:var(--brand);background:var(--brand-tint)}.freeze__alt-body,.translate__row-body{display:flex;flex:1 1 auto;flex-direction:column;gap:2px;min-width:0}.freeze__alt-chip,.report .report__chip{display:inline-flex;align-items:center;width:fit-content;border-radius:var(--r-pill);padding:var(--space-1) var(--space-3);background:var(--brand-tint);color:var(--brand-700);font-family:var(--font-ui);font-size:.78rem;font-weight:700}.freeze__alt-text,.translate__es{color:var(--ink);font-family:var(--font-ui);font-size:.98rem;font-weight:600;line-height:1.45}.freeze__alt-english,.translate__en{color:var(--ink-muted);font-family:var(--font-ui);font-size:.875rem;line-height:1.45}.freeze__alt-speaker,.translate__speaker{display:inline-flex;flex:0 0 auto;color:var(--brand)}.freeze__continue,.freeze__secondary,.report .report__continue{display:inline-flex;width:100%;min-height:50px;align-items:center;justify-content:center;border-radius:var(--r-pill);padding:var(--space-3) var(--space-5);font-family:var(--font-ui);font-size:.95rem;font-weight:700;line-height:1.2;cursor:pointer;transition:background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-spring)}.freeze__continue,.report .report__continue{margin-top:var(--space-1);border:1px solid var(--brand);background:var(--brand);color:var(--on-brand);box-shadow:var(--shadow-sm)}.freeze__continue:hover,.report .report__continue:hover{background:var(--brand-700)}.freeze__secondary{margin-top:var(--space-3);border:1px solid var(--border-strong);background:var(--surface);color:var(--ink)}.freeze__secondary:hover:not(:disabled){border-color:var(--brand);background:var(--brand-tint)}.freeze__secondary:disabled,.freeze__continue:disabled,.report .report__continue:disabled{cursor:not-allowed;opacity:.45}.translate__source{margin:0 0 var(--space-5);padding:var(--space-3) var(--space-4);border-radius:16px 16px 16px 6px;background:color-mix(in srgb,var(--color-pink) 42%,var(--surface));color:var(--ink);font-family:var(--font-ui);font-size:.95rem;font-weight:600;line-height:1.45}.translate__skeleton{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-5)}.translate__skeleton-row{display:flex;width:100%;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:18px 18px 18px 7px;background:var(--surface)}.translate__skeleton-body{display:flex;flex:1 1 auto;flex-direction:column;gap:var(--space-2)}.translate__skeleton-line,.translate__skeleton-dot,.skel{background:linear-gradient(90deg,var(--surface-sunken) 25%,var(--border) 45%,var(--surface-sunken) 65%);background-size:400% 100%;animation:skeleton-shimmer 1.4s ease-in-out infinite}.translate__skeleton-line{height:.72rem;border-radius:var(--r-pill)}.translate__skeleton-line--es{width:90%}.translate__skeleton-line--en{width:64%;height:.64rem}.translate__skeleton-row:nth-child(2) .translate__skeleton-line--es{width:78%}.translate__skeleton-row:nth-child(3) .translate__skeleton-line--es{width:84%}.translate__skeleton-row:nth-child(3) .translate__skeleton-line--en{width:52%}.translate__skeleton-dot{flex:0 0 auto;width:18px;height:18px;border-radius:50%}.freeze .banner--error{margin:0 0 var(--space-4);border:1px solid color-mix(in srgb,var(--danger) 38%,var(--border));border-radius:16px 16px 16px 6px;background:var(--danger-tint);color:var(--ink)}dialog.report{position:fixed;top:0;right:0;bottom:0;left:0;z-index:25;padding:var(--space-4);overflow-y:auto;background:transparent}.report>.report__sheet{position:relative;width:min(100%,34rem);max-height:calc(100dvh - var(--space-8));overflow-y:auto;overscroll-behavior:contain;padding:var(--space-8) var(--space-5) calc(env(safe-area-inset-bottom,0px) + var(--space-5));border:1px solid color-mix(in srgb,var(--color-pink) 35%,var(--border));border-radius:var(--r-2xl);background:var(--surface);box-shadow:var(--shadow-xl);animation:sheet-up var(--dur-slow) var(--ease-out) both}.report .report__close{position:absolute;z-index:2;top:var(--space-3);right:var(--space-3);display:grid;width:44px;height:44px;place-items:center;border:1px solid var(--border);border-radius:16px 16px 16px 6px;background:var(--surface-sunken);color:var(--ink);cursor:pointer}.report .report__close:hover{background:var(--color-butter)}.report .report__headline{margin-bottom:var(--space-6);padding:var(--space-6) var(--space-4) var(--space-5);border-radius:24px 24px 24px 9px;text-align:center}.report .report__headline--pass{background:var(--color-butter)}.report .report__headline--encourage{background:color-mix(in srgb,var(--color-pink) 56%,var(--surface))}.report .report__verdict{margin:0;color:var(--ink);font-family:var(--font-display);font-size:clamp(1.35rem,5vw,1.85rem);font-weight:400;line-height:1.15;letter-spacing:-.03em}.report .report__score{margin:var(--space-2) 0;color:var(--brand);font-family:var(--font-display);font-size:clamp(2.5rem,10vw,3.5rem);font-weight:400;font-variant-numeric:tabular-nums;line-height:1}.report .report__verdict-sub,.report .report__empty,.report .report__emotion,.report .report__ask-answer{margin:0;color:var(--ink-muted);font-family:var(--font-ui);font-size:.95rem;line-height:1.52}.report .report__mode{display:inline-flex;margin-left:var(--space-2);vertical-align:middle;border-radius:var(--r-pill);padding:3px 9px;background:var(--surface);color:var(--ink-muted);font-family:var(--font-ui);font-size:.68rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.report .report__mode--conversational{background:var(--brand-tint);color:var(--brand-700)}.report .report__bars{display:flex;flex-direction:column;gap:var(--space-3);margin-bottom:var(--space-6)}.report .report__bar-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:var(--space-1)}.report .report__bar-label,.report .report__bar-value{font-family:var(--font-ui);font-size:.9rem;font-weight:700}.report .report__bar-label{color:var(--ink)}.report .report__bar-value{color:var(--ink-muted);font-variant-numeric:tabular-nums}.report .report__bar-track{height:10px;overflow:hidden;border-radius:var(--r-pill);background:var(--surface-sunken)}.report .report__bar-fill{height:100%;border-radius:inherit;background:var(--brand);transform:scaleX(var(--report-bar-scale));transform-origin:left center;animation:report-bar-reveal var(--dur) var(--ease-out) both;animation-delay:var(--report-bar-delay)}.report .report__section{margin-bottom:var(--space-6)}.report .report__section-label{margin:0 0 var(--space-2);color:var(--ink-muted);font-family:var(--font-ui);font-size:.73rem;font-weight:700;letter-spacing:.075em;text-transform:uppercase}.report .report__chips,.report .report__ask-presets{display:flex;flex-wrap:wrap;gap:var(--space-2)}.report button.report__chip{border:0;cursor:pointer}.report .report__chip--missing{border:1px solid color-mix(in srgb,var(--color-tomato) 46%,var(--border));background:color-mix(in srgb,var(--color-pink) 35%,var(--surface));color:var(--ink)}.report .report__fixes,.report .report__gates{display:flex;flex-direction:column;gap:var(--space-2);margin:0;padding:0;list-style:none}.report .report__fix{padding:var(--space-3) var(--space-4);border-radius:18px 18px 18px 7px;background:var(--surface-sunken)}.report .report__fix-line{display:flex;align-items:flex-start;gap:var(--space-2);margin:0;color:var(--ink);font-family:var(--font-ui);font-size:.94rem;line-height:1.45}.report .report__fix-line--said{color:var(--ink-muted);text-decoration:line-through;text-decoration-color:color-mix(in srgb,var(--color-tomato) 65%,transparent)}.report .report__fix-line--better{margin-top:var(--space-1);font-weight:700}.report .report__fix-tag{display:inline-flex;flex:0 0 auto;margin-top:.15em;text-decoration:none}.report .report__fix-line--better .report__fix-tag{color:var(--success)}.report .report__fix-note{margin:var(--space-2) 0 0;color:var(--ink-muted);font-family:var(--font-ui);font-size:.875rem;line-height:1.45}.report .report__gate{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:18px 18px 18px 7px;background:var(--surface-sunken)}.report .report__gate--pass{border-color:color-mix(in srgb,var(--success) 30%,var(--border));background:var(--success-tint)}.report .report__gate-mark{display:grid;flex:0 0 auto;width:26px;height:26px;place-items:center;border-radius:50%;background:var(--ink-faint);color:var(--on-brand)}.report .report__gate--pass .report__gate-mark{background:var(--success)}.report .report__gate-main{display:flex;flex:1 1 auto;flex-direction:column;gap:2px;min-width:0}.report .report__gate-label{color:var(--ink);font-family:var(--font-ui);font-size:.94rem;font-weight:700}.report .report__gate-detail{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);color:var(--ink-muted);font-family:var(--font-ui);font-size:.8rem;line-height:1.45}.report .report__chips--missing{display:inline-flex;flex-wrap:wrap;gap:var(--space-1)}.report .report__gate-status{flex:0 0 auto;color:var(--ink-muted);font-family:var(--font-ui);font-size:.75rem;font-weight:700}.report .report__gate--pass .report__gate-status{color:var(--success)}.report .report__ask-presets{margin-bottom:var(--space-3)}.report .report__ask-input{display:flex;gap:var(--space-2);margin-bottom:var(--space-3)}.report .report__ask-field{flex:1 1 auto;min-width:0;border:1px solid var(--border-strong);border-radius:14px 14px 14px 5px;padding:var(--space-2) var(--space-3);background:var(--surface);color:var(--ink);font-family:var(--font-ui);font-size:.94rem}.report .report__ask-send{border:1px solid var(--brand);border-radius:var(--r-pill);padding:var(--space-2) var(--space-4);background:var(--brand);color:var(--on-brand);font-family:var(--font-ui);font-size:.9rem;font-weight:700;cursor:pointer;min-height:44px}.report .report__ask-field:disabled,.report .report__ask-send:disabled,.report button.report__chip:disabled{cursor:not-allowed;opacity:.5}.report .report__ask-answer{padding:var(--space-3);border-radius:14px 14px 14px 5px;background:var(--surface-sunken);color:var(--ink)}.install-prompt{display:flex;align-items:center;gap:var(--space-3);margin:var(--space-2) var(--space-4) var(--space-4);padding:var(--space-3) var(--space-4);border:1px solid color-mix(in srgb,var(--color-butter) 68%,var(--border));border-radius:18px 18px 18px 7px;background:var(--color-butter);color:var(--ink)}.install-prompt__text{flex:1 1 auto;margin:0;font-family:var(--font-ui);font-size:.875rem;font-weight:600;line-height:1.45}.install-prompt__install{border:1px solid var(--brand);border-radius:var(--r-pill);padding:var(--space-2) var(--space-4);background:var(--brand);color:var(--on-brand);font-family:var(--font-ui);font-size:.875rem;font-weight:700;cursor:pointer;min-height:44px}.install-prompt__dismiss{display:grid;flex:0 0 auto;height:36px;place-items:center;border:0;border-radius:12px 12px 12px 5px;background:transparent;color:var(--ink);cursor:pointer;min-height:44px;width:44px}.install-prompt__dismiss:hover{background:color-mix(in srgb,var(--ink) 8%,transparent)}.install-sheet__steps{display:grid;gap:var(--space-3);margin:0 0 var(--space-5);padding-left:1.4rem;color:var(--ink);font-family:var(--font-ui);font-size:.96rem;line-height:1.5}.install-sheet__body{margin:0 0 var(--space-5);color:var(--ink-muted);font-family:var(--font-ui);font-size:1rem;line-height:1.55}.skel-group{display:flex;flex-direction:column;gap:var(--space-3)}.skel{display:block;height:.8rem;border-radius:var(--r-pill)}.skel--block{border-radius:18px 18px 18px 7px}.tutorial{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;pointer-events:none}.tutorial__shade{position:absolute;background:var(--scrim);pointer-events:auto}.tutorial__corner{position:absolute;width:14px;height:14px;pointer-events:auto}.tutorial__corner--tl{background:radial-gradient(circle at 100% 100%,transparent 14px,var(--scrim) 14px)}.tutorial__corner--tr{background:radial-gradient(circle at 0 100%,transparent 14px,var(--scrim) 14px)}.tutorial__corner--bl{background:radial-gradient(circle at 100% 0,transparent 14px,var(--scrim) 14px)}.tutorial__corner--br{background:radial-gradient(circle at 0 0,transparent 14px,var(--scrim) 14px)}.tutorial__ring{position:absolute;border-radius:14px;box-shadow:0 0 0 3px var(--color-butter),0 0 0 6px color-mix(in srgb,var(--brand) 55%,transparent);pointer-events:none;transition:top var(--dur) var(--ease-out),left var(--dur) var(--ease-out),width var(--dur) var(--ease-out),height var(--dur) var(--ease-out)}.tutorial__card{position:absolute;left:50%;width:min(22rem,calc(100vw - var(--space-8)));transform:translate(-50%);display:grid;grid-template-columns:1fr auto;max-height:calc(100dvh - 32px);overflow-y:auto;gap:var(--space-3);justify-items:start;padding:var(--space-5);border:1px solid color-mix(in srgb,var(--color-pink) 48%,var(--border));border-radius:22px 22px 22px 8px;background:var(--surface);color:var(--ink);box-shadow:var(--shadow-xl);pointer-events:auto}.tutorial__title,.tutorial__text{grid-column:1 / -1}.tutorial__next{grid-column:2;grid-row:3}.tutorial__title{margin:0;font-family:var(--font-display);font-size:1.05rem;font-weight:400;line-height:1.2}.tutorial__text{margin:0;font-family:var(--font-ui);font-size:.96rem;font-weight:600;line-height:1.48}.tutorial__next{justify-self:end;border:1px solid var(--brand);border-radius:var(--r-pill);padding:var(--space-2) var(--space-4);background:var(--brand);color:var(--on-brand);font-family:var(--font-ui);font-size:.9rem;font-weight:700;cursor:pointer;min-height:44px}.tutorial__skip{grid-column:1;grid-row:3;justify-self:start;border:0;padding:var(--space-1);background:transparent;color:var(--ink-muted);font-family:var(--font-ui);font-size:.8rem;font-weight:600;text-decoration:underline;cursor:pointer;min-height:44px;padding-inline:var(--space-2)}.freeze button:focus-visible,.report button:focus-visible,.report input:focus-visible,.install-prompt button:focus-visible,.tutorial button:focus-visible,.tutorial__card:focus-visible{outline:3px solid var(--focus);outline-offset:4px}@media (max-width: 32rem){dialog.report{padding:0;place-items:end center}dialog.report>.report__sheet{max-height:calc(100dvh - var(--space-5));border-bottom:0;border-radius:var(--r-2xl) var(--r-2xl) 0 0}dialog.report .report__ask-input{align-items:stretch;flex-direction:column}dialog.report .report__ask-send{min-height:44px}}@media (prefers-reduced-motion: reduce){.freeze__sheet,.report,.report>.report__sheet,.translate__skeleton-line,.translate__skeleton-dot,.skel{animation:none}.freeze__alt,.translate__row,.freeze__close,.freeze__continue,.freeze__secondary,.report .report__continue,.tutorial__ring{transition:none}}dialog.app-modal{box-sizing:border-box;top:0;right:0;bottom:0;left:0;width:100%;max-width:none;height:100dvh;max-height:none;margin:0;border:0;padding:0;overflow:visible;background:transparent;color:inherit}dialog.app-modal:not([open]){display:none}dialog.app-modal::backdrop{background:var(--scrim);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:scrim-fade var(--dur) var(--ease-out) both}dialog.app-modal.freeze[open]{display:flex;flex-direction:column;justify-content:flex-end}dialog.app-modal.report[open]{display:grid;place-items:center}dialog.app-modal.sheet[open]{display:block}dialog.app-modal.course-detail[open]{display:grid;place-items:end center}@media (prefers-reduced-motion: reduce){dialog.app-modal::backdrop{animation:none}}@media (max-width: 32rem){dialog.app-modal.report[open]{place-items:end center}}.action-notice-region{position:fixed;right:max(var(--space-5),calc((100vw - 1120px) / 2 + var(--space-5)));bottom:calc(env(safe-area-inset-bottom,0px) + var(--space-6));z-index:15;max-width:min(25rem,calc(100vw - var(--space-8)));pointer-events:none}.action-notice{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);border:1px solid var(--border-strong);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow-lg);color:var(--ink);font-size:.875rem;font-weight:600;line-height:1.4;overflow-wrap:anywhere;animation:acknowledgement-in var(--dur) var(--ease-out) both}.action-notice>svg{flex:none;color:var(--brand)}.action-notice--success>svg{color:var(--success);animation:acknowledgement-mark var(--dur) var(--ease-out) both}@keyframes acknowledgement-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes acknowledgement-mark{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}.report__headline{position:relative;isolation:isolate}.celebration-burst{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;border-radius:inherit;pointer-events:none;z-index:-1}.celebration-burst>i{position:absolute;left:50%;top:45%;width:5px;height:10px;border-radius:1px;background:var(--color-cobalt);opacity:0;animation:scene-confetti .88s var(--ease-out) var(--burst-delay) both}.celebration-burst>i:nth-child(3n){background:var(--color-tomato)}.celebration-burst>i:nth-child(4n){background:var(--color-pink);border-radius:50%;width:7px;height:7px}.celebration-burst>i:nth-child(5n){background:var(--color-ink)}@keyframes scene-confetti{0%{opacity:0;transform:translate(0) rotate(0) scale(.5)}12%{opacity:1}to{opacity:0;transform:translate(var(--burst-x),calc(var(--burst-y) + 24px)) rotate(var(--burst-turn)) scale(.9)}}.course-detail__ask-answer[role=status]{animation:acknowledgement-in var(--dur) var(--ease-out) both}@media (prefers-reduced-motion: reduce){.action-notice,.action-notice--success>svg,.course-detail__ask-answer[role=status]{animation:none}.celebration-burst{display:none}}.stage__practice{position:relative;display:flex;flex:1 1 0;justify-content:flex-end}.stage__chip-count{display:inline-flex;align-items:center;justify-content:center}.stage__chip-count--earned{animation:stage-practice-count-pop var(--dur) var(--ease-out) both}.stage__practice-feedback{position:absolute;top:calc(100% + var(--space-4));right:0;z-index:2;display:inline-flex;align-items:center;justify-content:flex-end;gap:var(--space-1);width:max-content;max-width:min(18rem,calc(100vw - var(--space-8)));min-height:1.35rem;margin:0;color:var(--success);font-family:var(--font-ui);font-size:.75rem;font-weight:700;line-height:1.35;pointer-events:none}.stage__practice-complete-mark{display:inline-flex;align-items:center;gap:1px;flex:none;color:var(--success);animation:acknowledgement-mark var(--dur) var(--ease-out) both}@keyframes stage-practice-count-pop{0%,to{transform:scale(1)}55%{transform:scale(1.08)}}.report .report__headline--pass{overflow:hidden}.report .report__headline-success{display:inline-flex;align-items:center;justify-content:center;width:1.45em;height:1.45em;margin-left:var(--space-2);vertical-align:.05em;border-radius:50%;background:var(--success);color:var(--on-brand);animation:acknowledgement-mark var(--dur) var(--ease-out) both}@keyframes report-bar-reveal{0%{transform:scaleX(0)}to{transform:scaleX(var(--report-bar-scale))}}.account-screen .account__referral-copy--copied{display:inline-flex;align-items:center;gap:var(--space-1)}.account__referral-copy--copied>svg{animation:acknowledgement-mark var(--dur) var(--ease-out) both}.account-screen .account__referral-copy-error{margin:calc(var(--space-2) * -1) 0 0;color:var(--danger);font-size:.8125rem;line-height:1.4}.account-screen .account__amount--selected{animation:account-amount-select var(--dur-fast) var(--ease-out)}.account-screen .account__payment-success{display:flex;align-items:center;gap:var(--space-2)}.account-screen .account__payment-success-mark{display:grid;flex:0 0 auto;width:1.75rem;height:1.75rem;place-items:center;border-radius:var(--r-pill);background:var(--surface);animation:acknowledgement-mark var(--dur) var(--ease-out) both}.progress-screen .ask-data__answer--new{animation:acknowledgement-in var(--dur) var(--ease-out) both}@keyframes account-amount-select{0%{transform:scale(.97)}to{transform:scale(1)}}@media (prefers-reduced-motion: reduce){.stage__chip-count--earned,.stage__practice-complete-mark,.report .report__headline-success,.report .report__bar-fill,.account__referral-copy--copied>svg,.account-screen .account__amount--selected,.account-screen .account__payment-success-mark,.progress-screen .ask-data__answer--new{animation:none}}
