/*! tailwindcss v4.1.14 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-border-style:solid;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-duration:initial;--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-lg:32rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--font-weight-medium:500;--font-weight-semibold:600;--ease-out:cubic-bezier(0,0,.2,1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*{border-color:var(--border)}html{background:var(--background)}body{background:var(--background);min-width:320px;color:var(--foreground);font-family:var(--mono)}button,input{font:inherit}button:not(:disabled),[role=button]:not([aria-disabled=true]){cursor:pointer}button:focus-visible,input:focus-visible{outline:3px solid var(--red)}@supports (color:color-mix(in lab,red,red)){button:focus-visible,input:focus-visible{outline:3px solid color-mix(in srgb,var(--red),transparent 70%)}}button:focus-visible,input:focus-visible{outline-offset:3px}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.fixed{position:fixed}.relative{position:relative}.static{position:static}.inset-0{inset:calc(var(--spacing)*0)}.top-\[50\%\]{top:50%}.left-\[50\%\]{left:50%}.z-50{z-index:50}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.table{display:table}.size-8{width:calc(var(--spacing)*8);height:calc(var(--spacing)*8)}.size-9{width:calc(var(--spacing)*9);height:calc(var(--spacing)*9)}.size-10{width:calc(var(--spacing)*10);height:calc(var(--spacing)*10)}.h-8{height:calc(var(--spacing)*8)}.h-9{height:calc(var(--spacing)*9)}.h-10{height:calc(var(--spacing)*10)}.w-full{width:100%}.max-w-\[calc\(100\%-2rem\)\]{max-width:calc(100% - 2rem)}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.translate-x-\[-50\%\]{--tw-translate-x:-50%;translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-y-\[-50\%\]{--tw-translate-y:-50%;translate:var(--tw-translate-x)var(--tw-translate-y)}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.items-center{align-items:center}.justify-center{justify-content:center}.gap-1\.5{gap:calc(var(--spacing)*1.5)}.gap-2{gap:calc(var(--spacing)*2)}.gap-4{gap:calc(var(--spacing)*4)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.border{border-style:var(--tw-border-style);border-width:1px}.bg-background{background-color:var(--background)}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab,red,red)){.bg-black\/50{background-color:color-mix(in oklab,var(--color-black)50%,transparent)}}.bg-destructive{background-color:var(--destructive)}.bg-primary{background-color:var(--primary)}.bg-secondary{background-color:var(--secondary)}.bg-transparent{background-color:#0000}.p-6{padding:calc(var(--spacing)*6)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-4{padding-inline:calc(var(--spacing)*4)}.px-6{padding-inline:calc(var(--spacing)*6)}.py-2{padding-block:calc(var(--spacing)*2)}.text-center{text-align:center}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.whitespace-nowrap{white-space:nowrap}.text-muted-foreground{color:var(--muted-foreground)}.text-primary{color:var(--primary)}.text-primary-foreground{color:var(--primary-foreground)}.text-secondary-foreground{color:var(--secondary-foreground)}.text-white{color:var(--color-white)}.underline-offset-4{text-underline-offset:4px}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xs{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.outline-none{--tw-outline-style:none;outline-style:none}.fade-out{--tw-exit-opacity:0}.running{animation-play-state:running}@media (hover:hover){.hover\:bg-accent:hover{background-color:var(--accent)}.hover\:bg-destructive\/90:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab,var(--destructive)90%,transparent)}}.hover\:bg-primary\/90:hover{background-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-primary\/90:hover{background-color:color-mix(in oklab,var(--primary)90%,transparent)}}.hover\:bg-secondary\/80:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-secondary\/80:hover{background-color:color-mix(in oklab,var(--secondary)80%,transparent)}}.hover\:underline:hover{text-decoration-line:underline}}.focus-visible\:border-ring:focus-visible{border-color:var(--ring)}.focus-visible\:ring-\[3px\]:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(3px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:color-mix(in oklab,var(--destructive)20%,transparent)}}.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab,red,red)){.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:color-mix(in oklab,var(--ring)50%,transparent)}}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:opacity-50:disabled{opacity:.5}.has-\[\>svg\]\:px-2\.5:has(>svg){padding-inline:calc(var(--spacing)*2.5)}.has-\[\>svg\]\:px-3:has(>svg){padding-inline:calc(var(--spacing)*3)}.has-\[\>svg\]\:px-4:has(>svg){padding-inline:calc(var(--spacing)*4)}.aria-invalid\:border-destructive[aria-invalid=true]{border-color:var(--destructive)}.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:color-mix(in oklab,var(--destructive)20%,transparent)}}.data-\[state\=closed\]\:animate-out[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity:0}.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale:.95}.data-\[state\=open\]\:animate-in[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=open\]\:fade-in-0[data-state=open]{--tw-enter-opacity:0}.data-\[state\=open\]\:zoom-in-95[data-state=open]{--tw-enter-scale:.95}@media (min-width:40rem){.sm\:max-w-lg{max-width:var(--container-lg)}.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}.sm\:text-left{text-align:left}}.dark\:border-input:is(.dark *){border-color:var(--input)}.dark\:bg-destructive\/60:is(.dark *){background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.dark\:bg-destructive\/60:is(.dark *){background-color:color-mix(in oklab,var(--destructive)60%,transparent)}}.dark\:bg-transparent:is(.dark *){background-color:#0000}@media (hover:hover){.dark\:hover\:bg-accent\/50:is(.dark *):hover{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-accent\/50:is(.dark *):hover{background-color:color-mix(in oklab,var(--accent)50%,transparent)}}.dark\:hover\:bg-input\/50:is(.dark *):hover{background-color:var(--input)}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-input\/50:is(.dark *):hover{background-color:color-mix(in oklab,var(--input)50%,transparent)}}}.dark\:focus-visible\:ring-destructive\/40:is(.dark *):focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.dark\:focus-visible\:ring-destructive\/40:is(.dark *):focus-visible{--tw-ring-color:color-mix(in oklab,var(--destructive)40%,transparent)}}.dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab,var(--destructive)40%,transparent)}}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:calc(var(--spacing)*4);height:calc(var(--spacing)*4)}}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}:root{--cg-canvas:#f2eee6;--cg-surface:#fbf9f4;--cg-surface-elevated:#fffdf8;--cg-focus-surface:#1c2834;--cg-text-primary:#17212d;--cg-text-secondary:#52606d;--cg-text-quiet:#747b78;--cg-border-subtle:#d8d0c3;--cg-border-strong:#9e9384;--cg-accent:#d54932;--cg-accent-strong:#b83d2b;--cg-success:#3e7658;--cg-warning:#9b6724;--cg-danger:#a83d32;--cg-focus:#35627a;--cg-selection:#f6dfda;--cg-shadow:0 24px 64px #17212d1a;--cg-shadow-small:0 8px 24px #17212d12;--background:var(--cg-canvas);--foreground:var(--cg-text-primary);--card:var(--cg-surface);--card-foreground:var(--cg-text-primary);--popover:var(--cg-surface-elevated);--popover-foreground:var(--cg-text-primary);--primary:var(--cg-accent);--primary-foreground:var(--cg-surface-elevated);--secondary:#e8e1d6;--secondary-foreground:var(--cg-text-primary);--muted:#ece7de;--muted-foreground:var(--cg-text-secondary);--accent:#e8e1d6;--accent-foreground:var(--cg-text-primary);--destructive:var(--cg-danger);--destructive-foreground:var(--cg-surface-elevated);--border:var(--cg-border-subtle);--input:var(--cg-border-subtle);--ring:var(--cg-focus);--radius:.75rem;--ink:var(--cg-text-primary);--ink-soft:var(--cg-text-secondary);--paper:var(--cg-surface);--paper-deep:#e9e3d8;--line:var(--cg-border-subtle);--red:var(--cg-accent);--red-dark:var(--cg-accent-strong);--blue:var(--cg-focus);--navy:var(--cg-focus-surface);--cg-space-1:.25rem;--cg-space-2:.5rem;--cg-space-3:.75rem;--cg-space-4:1rem;--cg-space-6:1.5rem;--cg-space-8:2rem;--cg-space-12:3rem;--cg-space-16:4rem;--cg-space-24:6rem;--cg-rail:15rem;--cg-content:74rem;--cg-study:68rem;--cg-dialog:30rem;--cg-mobile-breakpoint:56rem;--mono:"IBM Plex Mono",monospace;--display:"Fraunces",Georgia,serif;--ease-out:cubic-bezier(.23,1,.32,1)}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app-shell{background:var(--background);min-height:100dvh;color:var(--ink)}.desktop-rail{display:none}.mobile-topbar{justify-content:space-between;align-items:center;margin-bottom:1.45rem;display:flex}.mobile-menu,.icon-button{width:44px;height:44px;color:var(--ink);border:1px solid var(--line);transition:transform .16s var(--ease-out),background .16s var(--ease-out),color .16s var(--ease-out);background:0 0;border-radius:50%;place-items:center;display:grid}.icon-button:hover,.mobile-menu:hover{background:var(--navy);color:var(--paper)}.icon-button:active,.mobile-menu:active{transform:scale(.95)}.brand-lockup{align-items:center;gap:.62rem;display:flex}.brand-lockup.compact{gap:.42rem}.brand-mark{object-fit:contain;width:37px;height:37px}.brand-name{color:var(--ink);letter-spacing:.1em;font-size:.72rem;font-weight:600;line-height:.84}.session-header{justify-content:space-between;align-items:center;gap:1rem;max-width:72rem;margin:0 auto 1.4rem;display:flex}.session-identity{flex-wrap:wrap;align-items:center;gap:.75rem;min-width:0;display:flex}.eyebrow,.feedback-kicker{color:var(--ink-soft);letter-spacing:.12em;text-transform:uppercase;font-size:.68rem;font-weight:600}.session-context{white-space:nowrap;align-items:center;gap:.45rem;min-width:0;display:inline-flex}.session-separator{color:#a59b8c;letter-spacing:0}.session-number{color:var(--ink);letter-spacing:.02em;white-space:nowrap;font-size:.72rem;font-weight:600}.progress-cluster{flex:none;align-items:center;gap:.7rem;display:flex}.tick-progress{align-items:center;gap:.42rem;display:flex}.tick-progress span{background:#d3ccbf;border:1px solid #0000;border-radius:50%;width:7px;height:7px}.tick-progress span.is-filled{background:var(--red)}.tick-progress span.is-current{border-color:var(--red);background:0 0;box-shadow:0 0 0 3px #e4472f1a}.shortcut-chip{width:44px;height:44px;color:var(--ink-soft);font-family:var(--mono);transition:background .16s var(--ease-out),border-color .16s var(--ease-out),color .16s var(--ease-out);background:0 0;border:1px solid #0000;border-radius:.55rem;place-items:center;font-size:.7rem;display:grid}.shortcut-chip:hover{color:var(--ink);background:var(--paper-deep);border-color:var(--line)}.study-layout{width:100%;max-width:72rem;margin:0 auto}.study-surface{min-width:0}.study-card{background:var(--paper);border:1px solid var(--line);border-radius:1.15rem;position:relative;overflow:visible;box-shadow:0 18px 48px #1e252d14,inset 0 2px #fff9}.study-card:before{border-radius:inherit;pointer-events:none;content:"";opacity:.38;mix-blend-mode:multiply;background-image:radial-gradient(#18202c21 .45px,#0000 .45px);background-size:5px 5px;position:absolute;inset:0}.card-topline{z-index:1;justify-content:space-between;align-items:center;gap:1rem;padding:1.15rem 1.15rem 0;display:flex;position:relative}.prompt-label{min-width:0;color:var(--ink-soft);letter-spacing:.075em;text-transform:uppercase;align-items:center;gap:.48rem;font-size:.66rem;font-weight:600;display:flex}.audio-compact{min-height:44px;color:var(--blue);transition:background .16s var(--ease-out),color .16s var(--ease-out);background:0 0;border:0;border-radius:.65rem;align-items:center;gap:.42rem;padding:0 .65rem;font-size:.7rem;font-weight:600;display:inline-flex}.audio-compact:hover{background:#e8eef0}.audio-compact:disabled{color:var(--ink-soft);cursor:not-allowed}.audio-compact kbd,.choice-card kbd{color:#7b8690;font-size:.6rem}.sentence-wrap{z-index:1;padding:3.4rem 1.15rem 2.2rem;position:relative}.cloze-slot{border-bottom:.08em solid var(--red);min-width:2.55em;max-width:100%;min-height:.92em;font-family:var(--display);vertical-align:baseline;justify-content:center;margin:0 .08em;padding:0 .12em .04em;display:inline-flex}.cloze-slot:has(.cloze-word){border-bottom-color:var(--blue);min-width:0;padding-inline:.08em}.cloze-word{max-width:100%;color:var(--red-dark);font:inherit;overflow-wrap:anywhere;white-space:normal;background:0 0;border:0;padding:0}.cloze-word:hover{color:var(--red)}.sentence-word{max-width:100%;color:inherit;font:inherit;font-style:inherit;letter-spacing:inherit;overflow-wrap:anywhere;white-space:normal;transition:color .13s var(--ease-out),border-color .13s var(--ease-out),background .13s var(--ease-out);background:0 0;border:0;border-bottom:1px dashed #0000;padding:0 .08em}.sentence-word:focus-visible,.cloze-word:focus-visible{z-index:1;outline:3px solid var(--red);border-radius:.18em;position:relative}@supports (color:color-mix(in lab,red,red)){.sentence-word:focus-visible,.cloze-word:focus-visible{outline:3px solid color-mix(in srgb,var(--red),transparent 66%)}}.sentence-word:focus-visible,.cloze-word:focus-visible{outline-offset:3px}.sentence-word:hover,.sentence-word.is-selected{color:var(--red-dark);border-bottom-color:var(--red);background:#f8e3dd}.answer-area{z-index:1;gap:.85rem;padding:.15rem 1.15rem 1.15rem;display:grid;position:relative}.answer-input-wrap{display:block;position:relative}.answer-input{width:100%;min-width:0;height:54px;color:var(--ink);border:1px solid var(--line);transition:border .16s var(--ease-out),box-shadow .16s var(--ease-out);background:#fffdf8;border-radius:.85rem;padding:0 3rem 0 1rem;font-size:1rem}.answer-input::placeholder{color:#a29a8d}.answer-input:focus{border-color:var(--ink);outline:none;box-shadow:0 0 0 4px #18202c12}.input-tail{color:#9a9286;font-size:1.05rem;position:absolute;top:50%;right:1rem;transform:translateY(-50%)}.primary-cta,.next-cta{width:100%;min-height:54px;box-shadow:0 6px 0 var(--red-dark),0 12px 25px #e4472f3b;letter-spacing:.04em;transition:transform .15s var(--ease-out),box-shadow .15s var(--ease-out),background .15s var(--ease-out)!important;background:#e4472f!important;border-radius:.85rem!important;font-size:.8rem!important;font-weight:600!important}.primary-cta kbd,.next-cta kbd{color:#fff7f0;text-align:center;background:#18202c2e;border-color:#ffffff3d;min-width:1.25rem;padding:.12rem .2rem;font-size:.62rem;line-height:1.1}.primary-cta:active,.next-cta:active{box-shadow:0 2px 0 var(--red-dark),0 6px 14px #e4472f33;transform:translateY(3px)scale(.985)}.primary-cta:disabled{box-shadow:0 4px #c8786b;color:#fff7f0!important;background:#e9a99c!important}.choice-list{gap:.55rem;display:grid}.choice-card{min-height:54px;color:var(--ink);border:1px solid var(--line);text-align:left;transition:transform .15s var(--ease-out),border .15s var(--ease-out),background .15s var(--ease-out);background:#fffdf8;border-radius:.75rem;grid-template-columns:27px 1fr auto;align-items:center;padding:.65rem .85rem;display:grid}.choice-card:hover{border-color:var(--ink-soft);transform:translate(2px)}.choice-card.is-selected{border-color:var(--red);background:#f4e1dc;box-shadow:0 0 0 3px #e4472f1a}.choice-index{color:var(--red);font-size:.68rem;font-weight:600}.feedback-stamp{z-index:1;animation:stamp-in .19s var(--ease-out);background:#edf4ee;border:1px solid #c9d7ce;border-radius:.85rem;align-items:flex-start;gap:.8rem;margin:.2rem 1.15rem 1.35rem;padding:.9rem;display:flex;position:relative}.feedback-stamp>div:last-child{overflow-wrap:anywhere;min-width:0}.stamp-icon{color:#fff;background:#4d7b5e;border-radius:50%;flex:none;place-items:center;width:30px;height:30px;display:grid}.feedback-kicker{color:#3a6449;margin-top:.12rem;display:block}.feedback-stamp p{color:#405447;font-family:var(--display);margin:.35rem 0 0;font-size:1.03rem;line-height:1.28}.answer-comparison{font-family:var(--mono);overflow-wrap:anywhere;font-size:.69rem;line-height:1.5}.is-wrong p{color:#7d483f}.hint-ladder{z-index:1;border-left:3px solid var(--blue);animation:hint-in .17s var(--ease-out);background:#edf0ed;border-radius:0 .7rem .7rem 0;margin:-.2rem 1.15rem 1.2rem;padding:.85rem .9rem;position:relative}.hint-heading{color:var(--blue);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:.45rem;font-size:.64rem;font-weight:600;display:flex}.hint-ladder p{color:#3c4650;overflow-wrap:anywhere;gap:.6rem;margin:.6rem 0 0;font-size:.73rem;line-height:1.55;display:flex}.hint-ladder p span{width:18px;height:18px;color:var(--blue);border:1px solid #9baab3;border-radius:50%;flex:none;place-items:center;font-size:.6rem;display:grid}.post-answer{z-index:1;min-width:0;padding:.15rem 1.15rem 1.15rem;position:relative}.complete-sentence{color:var(--ink);font-family:var(--display);letter-spacing:-.03em;overflow-wrap:anywhere;margin:0;font-size:clamp(1.45rem,4vw,2rem);line-height:1.25}.translation{color:var(--ink-soft);overflow-wrap:anywhere;margin:.55rem 0 .8rem;font-size:.73rem}.grammar-note{color:var(--blue);align-items:center;gap:.4rem;font-size:.68rem;font-weight:600;display:inline-flex}.feedback-actions{flex-wrap:wrap;gap:.45rem;margin-top:1rem;display:flex}.feedback-actions button,.confused-button{min-height:38px;color:var(--ink-soft);border:1px solid var(--line);transition:border .15s var(--ease-out),color .15s var(--ease-out),background .15s var(--ease-out);background:0 0;border-radius:.55rem;align-items:center;gap:.4rem;padding:0 .65rem;font-size:.66rem;display:inline-flex}.inline-explain{z-index:1;animation:hint-in .18s var(--ease-out);background:#e7ecee;border:1px solid #c8d5d9;border-radius:.85rem;margin:0 1.15rem 1.15rem;padding:1rem;position:relative}.inline-explain-title{color:var(--blue);letter-spacing:.1em;justify-content:space-between;align-items:center;font-size:.62rem;font-weight:600;display:flex}.inline-explain-title button{width:44px;height:44px;color:var(--blue);background:0 0;border:0;border-radius:50%;place-items:center;display:grid}.inline-explain p{color:#334653;font-family:var(--display);overflow-wrap:anywhere;margin:.65rem 0 .9rem;font-size:1rem;line-height:1.45}.confused-button{color:var(--blue);background:#ffffff4d}.action-dock{grid-template-columns:1fr 1fr 46px;align-items:center;gap:.55rem;margin-top:.7rem;display:grid;position:relative}.action-dock.is-study{grid-template-columns:minmax(0,1fr) 46px;max-width:15rem}.dock-action{min-height:48px;color:var(--ink-soft);transition:background .16s var(--ease-out),color .16s var(--ease-out);background:0 0;border:1px solid #0000;border-radius:.75rem;justify-content:center;align-items:center;gap:.4rem;font-size:.67rem;display:flex}.dock-action kbd{color:var(--ink-soft);background:var(--paper-deep);border-color:var(--line);font-size:.58rem}.dock-action:hover{color:var(--ink);background:var(--paper-deep)}.dock-more{width:46px;height:46px;color:var(--ink-soft);border:1px solid var(--line);background:0 0;border-radius:.75rem;place-items:center;display:grid}.next-cta{min-height:49px;box-shadow:0 4px 0 var(--red-dark),0 9px 20px #e4472f2e;grid-column:3}.action-dock:has(.next-cta){grid-template-columns:1fr 1fr 1.5fr}.more-popover{z-index:3;background:var(--paper);border:1px solid var(--line);width:min(18rem,100%);animation:hint-in .15s var(--ease-out);border-radius:.8rem;padding:.4rem;position:absolute;bottom:calc(100% + .55rem);right:0;box-shadow:0 18px 40px #18202c21}.more-popover button{width:100%;color:var(--ink-soft);text-align:left;background:0 0;border:0;border-radius:.5rem;align-items:center;gap:.55rem;padding:.7rem;font-size:.68rem;display:flex}.study-surface{position:relative}.xp-flash{z-index:5;background:var(--navy);color:var(--paper);font-family:var(--mono);letter-spacing:.02em;pointer-events:none;animation:xp-flash-rise 1.6s var(--ease-out)both;border-radius:.6rem;align-items:center;gap:.5rem;padding:.34rem .62rem;font-size:.72rem;font-weight:600;display:inline-flex;position:absolute;top:-.5rem;right:.15rem;box-shadow:0 8px 20px #18202c38}.xp-flash.is-gain .xp-flash-amount{color:#ffd9c9}.xp-flash.is-miss{color:var(--ink-soft);box-shadow:none;background:#ded8ce}.xp-flash-combo{color:#ff9d84;border-left:1px solid #ffffff38;align-items:center;gap:.2rem;padding-left:.5rem;display:inline-flex}.xp-flash.is-miss .xp-flash-combo{border-left-color:var(--line);color:var(--ink-soft)}@keyframes xp-flash-rise{0%{opacity:0;transform:translateY(6px)scale(.94)}14%{opacity:1;transform:translateY(0)scale(1)}76%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-8px)scale(.98)}}.cram-safe-note{border:1px solid var(--line);color:var(--ink-soft);font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;border-radius:.5rem;align-items:center;padding:.14rem .5rem;font-size:.56rem;font-weight:600;display:inline-flex}@media (prefers-reduced-motion:reduce){.xp-flash{opacity:1!important;animation:none!important;transform:none!important}}.insight-tray{display:none}.mobile-vocabulary-sheet{right:.8rem;bottom:max(.8rem,env(safe-area-inset-bottom));z-index:12;position:fixed;left:.8rem}.vocabulary-card,.vocabulary-empty{background:var(--paper);border:1px solid var(--line);border-radius:.85rem;padding:1rem;box-shadow:0 15px 35px #18202c24}.vocabulary-card-top{justify-content:space-between;align-items:center;gap:.8rem;display:flex}.vocabulary-card-top>div{min-width:0}.vocabulary-card-top button{width:44px;height:44px;color:var(--ink-soft);background:0 0;border:0;border-radius:50%;place-items:center;display:grid}.vocabulary-card-top button:hover{color:var(--ink);background:var(--paper-deep)}.vocabulary-card h2{color:var(--ink);font-family:var(--display);letter-spacing:-.04em;margin:.52rem 0 .16rem;font-size:2rem;font-weight:500;line-height:1}.vocabulary-pos{color:var(--ink-soft);letter-spacing:.12em;text-transform:uppercase;margin-bottom:.85rem;font-size:.58rem;font-weight:600;display:block}.vocabulary-section-label,.vocabulary-source{color:var(--ink-soft);letter-spacing:.1em;text-transform:uppercase;font-size:.58rem;font-weight:600;display:block}.vocabulary-translation{color:var(--red-dark);font-family:var(--display);margin:0;font-size:1.16rem}.vocabulary-examples{border-top:1px solid var(--line);gap:.6rem;margin-top:.9rem;padding-top:.8rem;display:grid}.vocabulary-example{gap:.1rem;display:grid}.vocabulary-example-de{color:var(--ink);font-family:var(--display);margin:0;font-size:.9rem;line-height:1.35}.vocabulary-example-en{color:var(--ink-soft);margin:0;font-size:.68rem;line-height:1.4}.vocabulary-source{color:#8b867d;letter-spacing:.07em;text-transform:none;margin-top:1rem;font-size:.54rem}.vocabulary-empty{color:var(--ink-soft);box-shadow:none;background:#f7f3ea;border-style:dashed;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.7rem;display:grid}.vocabulary-empty-icon{color:var(--blue);margin-top:.12rem}.vocabulary-empty>div{min-width:0}.vocabulary-empty .eyebrow{font-size:.58rem;display:block}.vocabulary-empty p{max-width:15rem;font-family:var(--display);margin:.38rem 0 0;font-size:.96rem;line-height:1.3}.vocabulary-empty .text-action{grid-column:2;justify-self:start}.mobile-mode-layer{z-index:20;align-items:end;display:flex;position:fixed;inset:0}.mobile-mode-scrim{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#18202c4d;border:0;width:100%;position:absolute;inset:0}.mobile-mode-sheet{z-index:1;width:100%;padding:1.1rem 1rem max(1.1rem,env(safe-area-inset-bottom));background:var(--paper);border-top:1px solid var(--line);animation:panel-in .19s var(--ease-out);border-radius:1.25rem 1.25rem 0 0;position:relative;box-shadow:0 -18px 50px #18202c29}.mode-sheet-heading{justify-content:space-between;align-items:start;gap:1rem;padding:0 .2rem .8rem;display:flex}.mode-sheet-heading h2{color:var(--ink);font-family:var(--display);letter-spacing:-.04em;margin:.35rem 0 0;font-size:1.6rem;font-weight:500;line-height:1}.mode-sheet-close{width:42px;height:42px;color:var(--ink-soft);background:var(--paper-deep);border:1px solid var(--line);border-radius:50%;place-items:center;display:grid}.mobile-mode-option{width:100%;min-height:58px;color:var(--ink-soft);text-align:left;background:0 0;border:1px solid #0000;border-radius:.75rem;grid-template-columns:26px 1fr;align-items:center;gap:.7rem;padding:.7rem .75rem;display:grid}.mobile-mode-option span{gap:.15rem;display:grid}.mobile-mode-option>svg{color:var(--ink-soft)}.mobile-mode-option strong{color:var(--ink);font-size:.72rem}.mobile-mode-option small{color:var(--ink-soft);font-size:.62rem}.mobile-mode-option.is-current{color:var(--red);background:#f8e7e2;border-color:#efb7ab}.mobile-mode-option.is-current strong{color:var(--red-dark)}.mobile-mode-option.is-current>svg{color:var(--red)}.mobile-dashboard-action{border-color:var(--line);background:#f1ece2;margin-bottom:.45rem}.mobile-dashboard-action>svg{color:var(--blue)}.mode-sheet-divider{background:var(--line);height:1px;margin:.55rem 0}.mobile-end-session-action,.mobile-end-session-action strong,.mobile-end-session-action>svg{color:var(--red-dark)}.mobile-mode-option:disabled{cursor:not-allowed;opacity:.45}.shortcut-panel{right:1rem;bottom:max(1rem,env(safe-area-inset-bottom));z-index:8;color:#dce1e5;background:var(--navy);width:min(26rem,100vw - 2rem);animation:panel-in .18s var(--ease-out);border-radius:.9rem;padding:.85rem 1rem;position:fixed;box-shadow:0 18px 35px #18202c40}.shortcut-panel>div{color:#fff7e9;letter-spacing:.07em;text-transform:uppercase;justify-content:space-between;align-items:center;font-size:.68rem;font-weight:600;display:flex}.shortcut-panel button{color:#dce1e5;background:0 0;border:0;border-radius:50%;place-items:center;width:44px;height:44px;display:grid}.shortcut-panel p{color:#c5cdd2;margin:.7rem 0 0;font-size:.67rem;line-height:1.7}.shortcut-list{flex-wrap:wrap;gap:.35rem .65rem;display:flex}.shortcut-list span{white-space:nowrap}kbd{color:inherit;font-family:var(--mono);background:#ffffff1c;border:1px solid #ffffff21;border-radius:.25rem;padding:.1rem .26rem;font-size:.62rem}.session-complete{background:var(--paper);border:1px solid var(--line);border-radius:1.35rem;width:min(100%,34rem);margin:clamp(3rem,13vh,9rem) auto;padding:clamp(1.65rem,5vw,3.2rem);box-shadow:0 20px 55px #1e252d12,inset 0 2px #fff9}.completion-stamp{color:#fff;background:#4d7b5e;border-radius:50%;place-items:center;width:38px;height:38px;margin-bottom:1.2rem;display:grid}.session-complete h1{color:var(--ink);font-family:var(--display);letter-spacing:-.06em;margin:.65rem 0 .95rem;font-size:clamp(2.5rem,8vw,4.4rem);font-weight:500;line-height:.9}.session-complete>p{max-width:29rem;color:var(--ink-soft);margin:0;font-size:.72rem;line-height:1.75}.completion-stats{grid-template-columns:repeat(3,1fr);gap:.5rem;margin:1.65rem 0;display:grid}.completion-stats div+div{border-left:1px solid var(--line)}.completion-stats dt{color:var(--ink-soft);letter-spacing:.08em;text-transform:uppercase;font-size:.57rem}.completion-stats dd{color:var(--ink);font-family:var(--display);margin:.22rem 0 0;font-size:1.5rem;font-weight:500}.completion-rewards{border-top:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin:0 0 1.65rem;padding-top:1rem;display:grid}.completion-rewards div{gap:.24rem;min-width:0;display:grid}.completion-rewards dt{color:var(--ink-soft);letter-spacing:.08em;text-transform:uppercase;font-size:.57rem}.completion-rewards dd{color:var(--ink);font-family:var(--display);gap:.38rem;margin:0;font-size:.98rem;font-weight:500;display:grid}.completion-progress{background:var(--paper-deep);border-radius:999px;width:100%;height:5px;display:block;overflow:hidden}.completion-progress i{background:var(--red);border-radius:inherit;height:100%;display:block}.completion-note{color:var(--ink-soft);margin:-.7rem 0 1.45rem;font-size:.62rem;line-height:1.5}.completion-actions{grid-template-columns:minmax(0,1fr);gap:.85rem;display:grid}.completion-actions .next-cta{grid-column:1;width:100%}.completion-secondary{width:100%;min-height:48px;color:var(--ink-soft);border:1px solid var(--line);transition:background .16s var(--ease-out),color .16s var(--ease-out);background:0 0;border-radius:.75rem;justify-content:center;align-items:center;gap:.45rem;font-size:.7rem;font-weight:600;display:inline-flex}.completion-secondary:hover{color:var(--ink);background:var(--paper-deep)}@media (min-width:640px){.main-stage{padding:1.6rem 2rem}.mobile-topbar{margin-bottom:2.1rem}.study-card{border-radius:1.6rem}.card-topline{padding:1.4rem 1.65rem 0}.sentence-wrap{padding:4.75rem 1.65rem 2.8rem}.answer-area{grid-template-columns:1fr auto;align-items:center;padding:.15rem 1.65rem 1.5rem;display:grid}.choice-list{grid-column:1/-1;grid-template-columns:1fr}.primary-cta{width:11rem}.feedback-stamp,.hint-ladder{margin-left:1.65rem;margin-right:1.65rem}.post-answer{padding:.15rem 1.65rem 1.5rem}.inline-explain{margin-left:1.65rem;margin-right:1.65rem}.action-dock{max-width:28rem;margin:1.2rem 0 0}}@media (min-width:900px){.app-shell{grid-template-columns:220px minmax(0,1fr);min-height:100dvh;display:grid;overflow:visible}.desktop-rail{height:100dvh;color:var(--ink);background:#ede8dc;border-right:1px solid #d8d1c5;flex-direction:column;justify-content:space-between;align-self:start;padding:1.9rem 1rem;display:flex;position:sticky;top:0;overflow:hidden}.rail-top,.rail-bottom{z-index:1;position:relative}.desktop-rail .brand-lockup{padding:.1rem 0 1rem;position:relative}.desktop-rail .brand-lockup:after{background:var(--red);content:"";opacity:.75;width:4.6rem;height:1px;position:absolute;bottom:0;left:.1rem;box-shadow:.9rem .35rem 0 -1px #d7cdbd}.desktop-rail .brand-name{color:var(--ink);letter-spacing:.14em;font-size:.7rem}.desktop-rail .brand-mark{width:43px;height:43px}.rail-nav{gap:.95rem;margin-top:2.55rem;display:grid}.rail-nav-group{gap:.2rem;display:grid}.rail-section-label{color:#8a8175;letter-spacing:.16em;text-transform:uppercase;padding:0 .65rem .25rem;font-size:.57rem;font-weight:600}.rail-link{width:100%;min-height:44px;color:var(--ink-soft);text-align:left;transition:background .16s var(--ease-out),color .16s var(--ease-out),border-color .16s var(--ease-out);background:0 0;border:0;border-left:3px solid #0000;border-radius:0;align-items:center;gap:.7rem;padding:0 .65rem;font-size:.7rem;display:flex}.rail-link>svg{color:#7d858c;stroke-width:1.8px;flex:none}.rail-link:hover{color:var(--ink);background:#fbf9f385}.rail-link.is-current{color:var(--ink);border-left-color:var(--red);background:#f6f2e9}.rail-link:disabled{color:#a29a8d;cursor:not-allowed}.rail-link:disabled>svg{color:#a29a8d}.rail-link.is-current>svg{color:var(--red)}.rail-count{min-width:1.45rem;color:var(--ink-soft);font-family:var(--mono);text-align:center;background:#e4ddd1;border:1px solid #d5ccbd;border-radius:.35rem;margin-left:auto;padding:.18rem .35rem;font-size:.58rem;line-height:1.1}.rail-link.is-current .rail-count{color:var(--red-dark);background:#f2ded8;border-color:#e6b9ae}.rail-divider{background:var(--line);height:1px;margin:-.15rem .65rem 0}.rail-settings{margin-top:-.55rem}.rail-streak{min-height:44px;color:var(--ink-soft);align-items:center;gap:.55rem;padding:0 .65rem;font-size:.68rem;line-height:1.3;display:flex}.rail-streak svg{color:var(--red);flex:none}.rail-streak-copy{align-items:baseline;gap:.35rem;display:inline-flex}.rail-streak strong{color:var(--ink);font-size:.82rem}.main-stage{flex-direction:column;min-width:0;min-height:100dvh;padding:clamp(2rem,4.5vh,3.3rem) clamp(2rem,4vw,5rem);display:flex;overflow:visible}.mobile-topbar{display:none}.session-header{max-width:72rem;margin-bottom:1rem}.study-layout{flex:none;grid-template-columns:minmax(0,1.65fr) minmax(14.5rem,.6fr);align-items:start;gap:clamp(1.4rem,3vw,3rem);max-width:72rem;min-height:auto;margin:auto;display:grid}.study-surface{flex-direction:column;justify-content:flex-start;align-self:stretch;width:100%;min-height:auto;display:flex}.study-card{min-height:0;max-height:none}.sentence-wrap{padding:clamp(2.7rem,6vh,4rem) clamp(2rem,4vw,4rem) 2.35rem}.card-topline{padding:1.2rem clamp(2rem,4vw,4rem) 0}.answer-area{padding:.15rem clamp(2rem,4vw,4rem) clamp(1.5rem,3.5vh,2.8rem)}.feedback-stamp,.hint-ladder{margin-left:clamp(2rem,4vw,4rem);margin-right:clamp(2rem,4vw,4rem)}.post-answer{padding:.15rem clamp(2rem,4vw,4rem) clamp(1.5rem,3.5vh,2.8rem)}.inline-explain{margin-left:clamp(2rem,4vw,4rem);margin-right:clamp(2rem,4vw,4rem)}.action-dock{margin-top:1rem}.insight-tray{background:0 0;border:0;border-left:1px solid #d5ccbd;border-radius:0;align-self:start;min-height:0;padding:.45rem 0 0 1.25rem;display:block;overflow:visible}.vocab-tray{min-height:0;padding-top:.45rem;display:block}.mobile-vocabulary-sheet{display:none}.vocab-tray .vocabulary-card,.vocab-tray .vocabulary-empty{max-width:16rem}.vocab-tray .vocabulary-card{box-shadow:none;background:#f5f2ea}.text-action{color:var(--blue);background:0 0;border:0;align-items:center;gap:.4rem;padding:0;font-size:.66rem;font-weight:600;display:inline-flex}}@media (min-width:1120px){.insight-tray{padding:.45rem 0 .45rem 1.5rem}}@media (min-width:431px) and (max-width:899px){.app-shell{min-height:100dvh;overflow:visible}.main-stage{flex-direction:column;min-width:0;min-height:100dvh;padding-top:.8rem;padding-bottom:.8rem;display:flex;overflow:visible}.mobile-topbar{margin-bottom:.7rem}.session-header{align-items:flex-start;margin-bottom:.7rem}.card-topline{padding:.9rem 1.2rem 0}.sentence-wrap{padding:1.75rem 1.2rem 1.1rem}.answer-area{padding-bottom:.9rem}.choice-card{min-height:48px;padding-block:.45rem}.primary-cta{min-height:48px}.action-dock{margin-top:.5rem}}@media (max-width:430px){.app-shell{min-height:100dvh;overflow:visible}.main-stage{min-width:0;min-height:100dvh;padding:max(.7rem,env(safe-area-inset-top)).9rem max(.8rem,env(safe-area-inset-bottom));flex-direction:column;display:flex;overflow:visible}.mobile-topbar{min-height:44px;margin-bottom:.65rem}.mobile-menu,.mobile-topbar .icon-button{background:#f7f3ea;border-color:#d8d1c5;border-radius:.45rem;width:42px;height:42px;position:relative;box-shadow:2px 2px #e2dbcf}.mobile-menu{border-left:3px solid var(--red)}.mobile-topbar .icon-button{border-right:3px solid var(--red)}.mobile-menu:after,.mobile-topbar .icon-button:after{color:var(--ink-soft);font-family:var(--mono);letter-spacing:.09em;text-transform:uppercase;font-size:.45rem;font-weight:600;position:absolute;bottom:-1.1rem}.mobile-menu:after{content:"modes";left:1px}.mobile-topbar .icon-button:after{content:"settings";right:0}.brand-mark{width:31px;height:31px}.brand-name{font-size:.67rem}.session-header{flex-direction:column;align-items:stretch;gap:.35rem;margin-bottom:.7rem}.session-identity{width:100%}.progress-cluster{justify-content:flex-start;width:100%}.progress-cluster .shortcut-chip{margin-left:auto}.session-identity{gap:.4rem}.eyebrow{font-size:.58rem}.session-number{font-size:.65rem}.progress-cluster{gap:.55rem}.tick-progress{gap:.35rem}.tick-progress span{width:7px;height:7px}.study-card{border-radius:1.08rem}.card-topline{padding:.85rem .95rem 0}.prompt-label{font-size:.6rem}.audio-compact{min-height:44px;padding:0 .28rem}.audio-compact span,.audio-compact kbd{display:none}.sentence-wrap{padding:1.9rem .95rem .85rem}.sentence{font-size:clamp(1.82rem,9vw,2.38rem);line-height:1.06}.answer-area{gap:.62rem;padding:.05rem .95rem .95rem}.answer-input{height:52px}.primary-cta{min-height:52px}.choice-list{grid-template-columns:1fr;gap:.4rem}.answer-area:has(.choice-list){grid-template-columns:1fr}.answer-area:has(.choice-list) .choice-list{grid-column:1}.answer-area:has(.choice-list) .primary-cta{grid-column:1;width:100%}.choice-card{min-height:48px;padding:.5rem .75rem}.action-dock{margin-top:.3rem}.dock-action{letter-spacing:.04em;border-top:1px solid #d8d1c5;border-radius:0;min-height:44px;font-size:.61rem}.dock-action:first-child{border-left:2px solid var(--red)}.dock-more{border-radius:.45rem;width:44px;height:44px;box-shadow:2px 2px #e2dbcf}.feedback-stamp{gap:.65rem;margin:.1rem .95rem .75rem;padding:.72rem}.feedback-stamp p{font-size:.93rem}.post-answer{padding:.05rem .95rem .85rem}.complete-sentence{font-size:1.34rem;line-height:1.16}.translation{margin:.35rem 0 .55rem;font-size:.67rem}.grammar-note{font-size:.62rem}.feedback-actions{grid-template-columns:repeat(3,1fr);gap:.35rem;margin-top:.75rem;display:grid}.feedback-actions button{justify-content:center;min-height:36px;padding:0 .35rem;font-size:.6rem}.inline-explain{margin:0 .95rem .85rem;padding:.8rem}.session-complete{margin:1.3rem auto;padding:1.4rem}.session-complete>p{font-size:.68rem;line-height:1.55}.completion-stamp{width:34px;height:34px;margin-bottom:.85rem}.completion-stats{margin:1.15rem 0}}@media (max-width:430px) and (max-height:700px){.main-stage{padding:max(.5rem,env(safe-area-inset-top)).7rem max(.5rem,env(safe-area-inset-bottom))}.mobile-topbar{min-height:42px;margin-bottom:.2rem}.session-header{margin-bottom:.3rem}.card-topline{padding:.55rem .75rem 0}.audio-compact{min-height:38px}.sentence-wrap{padding:.95rem .75rem .55rem}.answer-area{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.45rem;padding:0 .75rem .7rem}.answer-area:has(.choice-list){grid-template-columns:1fr}.choice-list{grid-column:1;grid-template-columns:1fr;gap:.3rem}.choice-card{min-height:48px;padding:.35rem .55rem;font-size:.68rem}.answer-area:has(.choice-list) .primary-cta{grid-column:1;width:100%}.answer-input{height:44px;padding-right:2.2rem}.primary-cta{width:auto;min-width:0;min-height:44px;padding-inline:.55rem!important;font-size:.67rem!important}.primary-cta svg{width:15px;height:15px}.action-dock{margin-top:.1rem}.dock-action{min-height:38px;font-size:.57rem}.dock-more{width:40px;height:40px}}@media (max-width:360px){.mobile-menu:after,.mobile-topbar .icon-button:after{display:none}.answer-input{padding-left:.8rem;padding-right:2.45rem;font-size:.76rem}.input-tail{right:.8rem}}@media (prefers-reduced-motion:no-preference){@keyframes stamp-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes hint-in{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@keyframes panel-in{0%{opacity:0;transform:translateY(10px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.shared-app-frame .dashboard-shell{min-height:calc(100dvh - 64px)}.dashboard-shell{background:var(--background);min-height:100dvh;color:var(--ink)}.dashboard-header{justify-content:space-between;gap:1rem;margin:.8rem 0 1.45rem;display:flex;position:relative}.dashboard-header>.settings-panel{position:absolute;top:calc(100% + .75rem);left:auto;right:0}.dashboard-header h1{color:var(--ink);font-family:var(--display);letter-spacing:-.065em;margin:.55rem 0 0;font-size:clamp(2.35rem,8vw,4.5rem);font-weight:500;line-height:.88}.dashboard-header h1 em{color:var(--red);font-style:italic}.dashboard-header-meta{align-items:center;gap:.6rem;display:flex}.dashboard-header-meta>span{display:none}.dashboard-greeting h1{color:var(--ink);font-family:var(--display);letter-spacing:-.04em;margin:0;font-size:clamp(1.95rem,6.5vw,2.9rem);font-weight:500;line-height:1.03}.dashboard-greeting p{max-width:24rem;color:var(--ink-soft);margin:.4rem 0 0;font-size:.72rem}.dashboard-today-col{align-content:start;gap:.8rem;display:grid}.week-dots{justify-content:space-between;gap:.3rem;margin:.7rem 0 0;padding:0;list-style:none;display:flex}.week-dot-mark{color:#0000;border:1px solid var(--line);background:#eee7db;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex}.week-dot.is-today .week-dot-mark{border-color:var(--red)}.week-dot.is-done .week-dot-mark{color:#fff8eb;background:var(--red);border-color:var(--red)}.dashboard-top-grid{gap:.8rem;display:grid}.study-now-card{min-height:18.5rem;color:var(--paper);background:var(--navy);border-radius:1.2rem;padding:1.15rem;position:relative;overflow:hidden;box-shadow:0 18px 42px #18202c26}.gold-core-preview{min-height:0;margin-bottom:.8rem}.study-now-card:before{content:"";z-index:0;pointer-events:none;background:radial-gradient(120% 90% at 100% 0,#e4472f38,#e4472f14 26%,#0000 55%),radial-gradient(90% 120% at 88% 30%,#93b99e1a,#0000 50%),linear-gradient(160deg,#0000 40%,#090d148c);position:absolute;inset:0}@media (prefers-reduced-motion:no-preference){.study-now-card:before{animation:study-now-glow .24s var(--ease-out)both}}@keyframes study-now-glow{0%{opacity:0}to{opacity:1}}.study-now-progress{z-index:1;background:#ffffff1f;border-radius:999px;max-width:25rem;height:5px;margin-top:1.1rem;position:relative;overflow:hidden}.study-now-progress i{background:var(--red);border-radius:inherit;min-width:5px;height:100%;transition:width .32s var(--ease-out);display:block}@media (prefers-reduced-motion:reduce){.study-now-progress i{transition:none}}.study-now-top,.study-now-footer{z-index:1;justify-content:space-between;align-items:center;gap:.8rem;display:flex;position:relative}.study-now-card .eyebrow,.study-now-footer{color:#aeb9bd}.study-now-card h2{z-index:1;color:#fff8eb;max-width:22rem;font-family:var(--display);letter-spacing:-.065em;margin:2.5rem 0 .65rem;font-size:clamp(2.35rem,9vw,4.1rem);font-weight:500;line-height:.9;position:relative}.study-now-card p{z-index:1;color:#c8d0d1;max-width:25rem;margin:0;font-size:.7rem;line-height:1.6;position:relative}.study-now-fresh-ready{z-index:1;color:#c8d0d1;align-items:baseline;gap:.45rem;margin-top:1.35rem;font-size:.68rem;display:flex;position:relative}.study-now-card.is-fresh .study-now-actions{margin-top:1.15rem}.study-now-actions{z-index:1;flex-wrap:wrap;align-items:center;gap:.8rem;margin-top:1.35rem;display:flex;position:relative}.study-now-actions .primary-cta{width:auto;min-width:9.7rem;min-height:48px;padding-inline:1rem}.text-button{border:0;min-height:44px;padding:0;font-size:.68rem;font-weight:600}.text-button.light{color:#f5eadd;background:0 0}.study-now-footer{font-size:.58rem;position:absolute;bottom:1rem;left:1.15rem;right:1.15rem}.dashboard-panel{background:var(--paper);border:1px solid var(--line);border-radius:1.1rem;padding:1.05rem;box-shadow:0 10px 30px #18202c0d}.today-panel,.activity-panel{box-shadow:none;background:0 0;border:0;border-radius:0}.today-panel{padding-inline:0}.today-fresh{margin-top:1.2rem}.today-fresh .daily-goal{margin-top:0;padding-top:1rem}.today-fresh .daily-goal>div:first-child{font-size:.64rem}.today-fresh .daily-goal strong{font-size:1.35rem}.today-fresh .daily-goal-track{height:9px}.today-fresh .daily-goal small,.today-fresh-note{max-width:19rem;color:var(--ink-soft);font-family:var(--display);margin:.25rem 0 0;font-size:.79rem;line-height:1.45;display:block}.activity-panel{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-inline:0}.today-grid div:nth-child(2){border-top-color:var(--red)}.today-grid dt{color:var(--ink-soft);letter-spacing:.04em;text-transform:uppercase;font-size:.54rem}.today-grid dd{color:var(--ink);font-family:var(--display);margin:.3rem 0 0;font-size:1.42rem}.activity-panel{margin-top:.8rem}.activity-legend{color:var(--ink-soft);flex-wrap:wrap;gap:.7rem;font-size:.57rem;display:flex}.activity-legend span{align-items:center;gap:.3rem;display:inline-flex}.activity-legend i{border-radius:2px;width:7px;height:7px;display:inline-block}.legend-new{background:var(--red)}.legend-review{background:var(--blue)}.activity-bars{border-bottom:1px solid var(--line);grid-template-columns:repeat(7,1fr);align-items:end;gap:.7rem;height:8rem;margin:1.35rem .25rem .65rem;padding-bottom:.1rem;display:grid}.activity-day{height:100%;color:var(--ink-soft);text-align:center;grid-template-rows:1fr auto;align-items:end;gap:.45rem;font-size:.55rem;display:grid}.activity-bar{flex-direction:column;justify-content:end;align-items:stretch;gap:2px;height:100%;display:flex}.activity-bar span{border-radius:4px 4px 1px 1px;min-height:2px;display:block}.bar-new{background:var(--red)}.bar-review{background:var(--blue)}.panel-note{color:var(--ink-soft);margin:.8rem 0 0;font-size:.61rem;line-height:1.55}.section-link,.dashboard-footer a{color:var(--blue);align-items:center;gap:.25rem;font-size:.63rem;font-weight:600;text-decoration:none;display:inline-flex}.collection-grid,.practice-grid{gap:.75rem;margin-top:.85rem;display:grid}.collection-card{border:1px solid var(--line);background:#f8f4eb;border-radius:.95rem;padding:1rem}.collection-card p{max-width:27rem;color:var(--ink-soft);margin:.8rem 0;font-size:.65rem;line-height:1.5}.collection-percent{color:var(--red-dark);font-family:var(--display);font-size:1.7rem}.collection-metrics{color:var(--ink-soft);gap:1rem;margin:.72rem 0 .8rem;font-size:.59rem;display:flex}.collection-metrics strong{color:var(--ink);font-size:.73rem}.collection-action{min-height:42px;color:var(--red-dark);background:0 0;border:0;align-items:center;gap:.35rem;padding:0;font-size:.65rem;font-weight:600;display:inline-flex}.practice-card{min-height:70px;color:var(--ink);background:var(--paper);border:1px solid var(--line);text-align:left;transition:transform .15s var(--ease-out),border-color .15s var(--ease-out),background .15s var(--ease-out);border-radius:.8rem;grid-template-columns:28px 1fr 18px;align-items:center;gap:.6rem;padding:.8rem .85rem;display:grid}.practice-card:hover{border-color:var(--ink-soft);background:#f6f1e8}.practice-card strong{font-size:.7rem}.practice-card small{color:var(--ink-soft);font-size:.6rem;line-height:1.35}.dashboard-footer{color:var(--ink-soft);flex-wrap:wrap;justify-content:space-between;gap:.75rem;padding:1rem 0 .4rem;font-size:.59rem;display:flex}.dashboard-footer>span{align-items:center;gap:.3rem;display:inline-flex}@media (max-width:899px){.today-panel.is-fresh{min-height:0}}.collections-toolbar{justify-content:flex-end;align-items:end;gap:1rem;margin-bottom:.95rem;display:flex}.sort-control{min-width:8.8rem;color:var(--ink-soft);gap:.22rem;font-size:.56rem;display:grid;position:relative}.sort-control select{height:38px;color:var(--ink);background:var(--paper);border:1px solid var(--line);appearance:none;border-radius:.5rem;padding:0 1.7rem 0 .6rem;font-size:.62rem}.collection-page-card{background:var(--paper);border:1px solid var(--line);border-radius:1rem;padding:1.15rem;box-shadow:0 10px 30px #18202c0a}.collection-page-card-top{justify-content:space-between;gap:1rem;display:flex}.collection-page-card h2{color:var(--ink);font-family:var(--display);letter-spacing:-.05em;margin:.65rem 0 .35rem;font-size:2rem;font-weight:500}.collection-page-card p{max-width:33rem;color:var(--ink-soft);margin:0;font-size:.67rem;line-height:1.55}.collection-stat-row strong{color:var(--ink);font-family:var(--display);font-size:1.45rem;font-weight:500}.collection-stat-row small{color:var(--ink-soft);text-transform:uppercase;font-size:.56rem}.collection-action-button{min-height:42px;box-shadow:0 3px 0 var(--red-dark);padding:0 .8rem;background:var(--red)!important;font-size:.62rem!important}.collection-actions,.collection-page-actions{align-items:center;gap:.65rem;display:inline-flex;position:relative}.collection-mode-menu{position:relative}.collection-mode-trigger{min-height:42px;color:var(--ink-soft);border:1px solid var(--line);background:0 0;border-radius:.55rem;align-items:center;gap:.25rem;padding:0 .55rem;font-size:.62rem;font-weight:600;display:inline-flex}.collection-mode-trigger:hover{color:var(--ink);background:var(--paper-deep)}.collection-mode-options{z-index:5;background:var(--paper);border:1px solid var(--line);border-radius:.65rem;min-width:9.5rem;padding:.25rem;display:grid;position:absolute;bottom:calc(100% + .4rem);right:0;box-shadow:0 12px 28px #18202c24}.collection-mode-options button{min-height:42px;color:var(--ink-soft);text-align:left;background:0 0;border:0;border-radius:.4rem;padding:0 .65rem;font-size:.62rem}.collection-mode-options button:hover{color:var(--ink);background:var(--paper-deep)}.collection-caught-up{color:var(--ink-soft);font-family:var(--display);margin:0;font-size:.65rem}.category-practice-action{min-height:40px;color:var(--red-dark);border:1px solid var(--line);background:0 0;border-radius:.5rem;align-items:center;gap:.25rem;padding:0 .5rem;font-size:.6rem;font-weight:600;display:inline-flex}.category-row-actions{align-items:center;gap:.75rem;display:inline-flex}.category-practice-action:hover{background:var(--paper-deep)}.stats-kpi-grid{grid-template-columns:repeat(2,1fr);gap:.65rem;display:grid}.stats-kpi-grid article{border:0;border-top:1px solid var(--line);background:0 0;border-radius:0;gap:.35rem;min-height:7.7rem;padding:.9rem 0;display:grid}.stats-kpi-grid article:nth-child(3){border-top:2px solid var(--red)}.stats-kpi-grid strong{color:var(--ink);font-family:var(--display);letter-spacing:-.05em;font-size:2.35rem;font-weight:500}.stats-kpi-grid small{color:var(--ink-soft);font-size:.58rem}.forecast-grid div{border-left:2px solid var(--red);background:#f1ece2;gap:.25rem;padding:.7rem .6rem;display:grid}.forecast-grid strong{color:var(--ink);font-family:var(--display);font-size:1.75rem;font-weight:500}.forecast-panel,.category-panel{box-shadow:none}.stats-heatmap-panel{box-shadow:none;margin-top:.8rem}.stats-heatmap-summary{color:var(--ink-soft);font-size:.66rem}.stats-heatmap-body{flex-wrap:wrap;align-items:flex-start;gap:1.5rem;margin:.95rem 0 0;display:flex}.stats-heatmap-cal{flex:17rem;min-width:0;max-width:26rem}.stats-heatmap-weekdays{color:var(--ink-soft);text-align:center;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:4px;font-size:.55rem;display:grid}.stats-heatmap{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.heatmap-cell{aspect-ratio:1;transition:transform .12s var(--ease-out);border-radius:3px;box-shadow:inset 0 0 0 1px #18202c0f}.heatmap-cell.is-empty{box-shadow:none;background:0 0}.heatmap-cell:not(.is-empty){animation:cell-pop .26s var(--ease-out)both;animation-delay:var(--cell-delay,0s)}.heatmap-cell:not(.is-empty):hover{z-index:1;box-shadow:inset 0 0 0 1px #18202c0f,0 0 0 1.5px var(--ink-soft);position:relative;transform:scale(1.12)}@keyframes cell-pop{0%{opacity:0}to{opacity:1}}.stats-heatmap-context{flex:none;align-content:start;gap:.85rem;margin:0;display:grid}.stats-heatmap-context dt{color:var(--ink-soft);letter-spacing:.12em;text-transform:uppercase;font-size:.55rem;font-weight:600}.stats-heatmap-context dd{color:var(--ink);font-family:var(--display);margin:.15rem 0 0;font-size:1.25rem;line-height:1.1}.heatmap-legend{color:var(--ink-soft);align-items:center;gap:4px;margin-top:.7rem;font-size:.6rem;display:flex}.heatmap-legend i{border-radius:3px;width:12px;height:12px;box-shadow:inset 0 0 0 1px #18202c0f}.heatmap-legend i[data-level="0"]{background:var(--paper-deep)}.heatmap-legend i[data-level="1"]{background:#e4472f40}.heatmap-legend i[data-level="2"]{background:#e4472f73}.heatmap-legend i[data-level="3"]{background:#e4472fb3}.heatmap-legend i[data-level="4"]{background:var(--red)}.category-panel{margin-top:.8rem}.category-list{gap:.5rem;margin-top:1rem;display:grid}.category-row{border-bottom:1px solid var(--line);color:var(--ink);justify-content:space-between;align-items:center;padding:.65rem 0;font-size:.68rem;display:flex}.category-row span{gap:.2rem;display:grid}.category-row small{color:var(--ink-soft);font-size:.56rem}.review-hero{color:var(--paper);background:var(--navy);border-radius:1.2rem;margin-bottom:1.1rem;padding:1.3rem 1.25rem 1.5rem;position:relative;overflow:hidden;box-shadow:0 18px 42px #18202c26}.review-hero .eyebrow{color:#aeb9bd}.review-hero h2{color:#fff8eb;font-family:var(--display);letter-spacing:-.055em;margin:1.6rem 0 .6rem;font-size:clamp(2.1rem,7vw,3.4rem);font-weight:500;line-height:.95}.review-hero p{color:#c8d0d1;max-width:30rem;margin:0;font-size:.72rem;line-height:1.6}.review-hero.is-clear{min-height:0}.review-hero-actions{flex-wrap:wrap;gap:.8rem;margin-top:1.35rem;display:flex}.review-hero-actions .primary-cta{width:auto;min-width:10rem;min-height:48px;padding-inline:1rem}@media (min-width:720px){.review-panels{grid-template-columns:1.15fr .85fr}}.panel-target{color:var(--ink-soft);font-family:var(--mono);letter-spacing:.04em;font-size:.62rem;font-weight:600}.retention-body{flex-direction:column;gap:.75rem;margin-top:.5rem;display:flex}.retention-figure strong{font-family:var(--display);letter-spacing:-.04em;font-size:2.4rem;font-weight:500;line-height:1}.retention-figure small{color:var(--ink-soft);font-size:.64rem}.retention-bar>i{background:var(--red);height:100%;transition:width .32s var(--ease-out);border-radius:6px;display:block}.due-collection-list{flex-direction:column;display:flex}.due-collection-row{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:.8rem;padding:.7rem 0;display:flex}.due-collection-row:first-child{border-top:0}.due-collection-name small{color:var(--ink-soft);font-family:var(--mono);font-size:.62rem;font-weight:600}.due-collection-row .text-button,.cram-row .text-button{color:var(--red-dark);background:0 0;align-items:center;gap:.35rem;display:inline-flex}.due-collection-row .text-button:hover,.cram-row .text-button:hover{color:var(--red)}.cram-row{background:var(--paper);border:1px dashed var(--line);border-radius:1.1rem;justify-content:space-between;align-items:center;gap:1rem;margin-top:1.1rem;padding:.95rem 1.05rem;display:flex}.cram-row-copy{min-width:0}.cram-row-copy .eyebrow{color:var(--ink-soft);align-items:center;gap:.3rem;display:inline-flex}.cram-row-copy p{max-width:42rem;color:var(--ink-soft);font-family:var(--display);margin:.3rem 0 0;font-size:.76rem;line-height:1.5}.bookmarks-empty{margin-top:.4rem}.bookmarks-toolbar .primary-cta{width:auto;min-width:9.5rem;min-height:46px;padding-inline:1rem}.bookmarks-sort{background:var(--paper-deep);border-radius:.6rem;gap:.15rem;padding:.2rem;display:inline-flex}.bookmarks-sort button{min-height:36px;color:var(--ink-soft);font-family:var(--mono);letter-spacing:.03em;cursor:pointer;transition:background .15s var(--ease-out),color .15s var(--ease-out);background:0 0;border:0;border-radius:.45rem;padding:0 .7rem;font-size:.62rem;font-weight:600}.bookmarks-sort button.is-current{color:var(--ink);background:var(--paper);box-shadow:0 1px 3px #18202c1a}@media (min-width:760px){.bookmark-list{grid-template-columns:repeat(auto-fill,minmax(20rem,1fr))}}.bookmark-card{background:var(--paper);border:1px solid var(--line);border-radius:.95rem;justify-content:space-between;align-items:flex-start;gap:.6rem;padding:.95rem 1rem;display:flex;box-shadow:0 10px 30px #18202c0d}.bookmark-main{min-width:0}.bookmark-sentence{color:var(--ink);font-family:var(--display);margin:0;font-size:1.02rem;font-weight:500;line-height:1.4}.bookmark-tag{color:var(--ink-soft);font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;font-size:.58rem;font-weight:600}.bookmark-mastery{color:var(--ink-soft);font-family:var(--mono);letter-spacing:.03em;align-items:center;gap:.4rem;font-size:.58rem;font-weight:600;display:inline-flex}.bookmark-remove{width:44px;height:44px;color:var(--red);border:1px solid var(--line);cursor:pointer;transition:background .15s var(--ease-out),border-color .15s var(--ease-out);background:0 0;border-radius:.6rem;flex:none;place-items:center;display:grid}.bookmark-remove.is-marked svg{fill:currentColor}@supports (color:color-mix(in lab,red,red)){.bookmark-remove:hover{border-color:color-mix(in srgb,var(--red)40%,var(--line))}}@media (min-width:640px){.progress-panel-body{grid-template-columns:1fr 1fr;gap:1.6rem}.progress-panel-body .progress-block+.progress-block{border-left:1px solid var(--line);padding-left:1.6rem}}.progress-block{flex-direction:column;gap:.55rem;display:flex}.progress-block-head{justify-content:space-between;align-items:baseline;gap:.6rem;display:flex}.progress-figure{align-items:baseline;gap:.5rem;display:flex}.progress-figure strong{font-family:var(--display);letter-spacing:-.05em;font-size:2.35rem;font-weight:500;line-height:1}.progress-figure small{color:var(--ink-soft);font-size:.62rem}.progress-bar{background:var(--paper-deep);border-radius:6px;height:10px;overflow:hidden}.progress-bar>i{background:var(--red);height:100%;transition:width .32s var(--ease-out);border-radius:6px;display:block}.progress-foot{color:var(--ink-soft);font-family:var(--mono);letter-spacing:.03em;font-size:.58rem;font-weight:600}.retention-sparkline{width:100%;height:34px;margin-top:.2rem;overflow:visible}.retention-sparkline-line{fill:none;stroke:var(--red);stroke-width:1.6px;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}.retention-sparkline-target{stroke:var(--ink);stroke-width:1px;stroke-dasharray:3 3;opacity:.35;vector-effect:non-scaling-stroke}.listening-prompt{align-content:center;justify-items:start;min-height:18rem;display:grid}.listening-orb{width:68px;height:68px;color:var(--paper);background:var(--red);border-radius:50%;place-items:center;margin-bottom:1rem;display:grid;box-shadow:0 0 0 11px #f8e7e2}.listening-prompt h2{max-width:18rem;color:var(--ink);font-family:var(--display);letter-spacing:-.055em;margin:.65rem 0 .45rem;font-size:clamp(2rem,7vw,3.2rem);font-weight:500;line-height:.92}.listening-prompt p{max-width:20rem;color:var(--ink-soft);margin:0;font-size:.68rem;line-height:1.6}.listening-controls{gap:.5rem;margin-top:1.25rem;display:flex}.listening-controls button{min-height:44px;color:var(--blue);background:#edf0ed;border:1px solid #c8d5d9;border-radius:.55rem;align-items:center;gap:.4rem;padding:0 .7rem;font-size:.64rem;display:inline-flex}@media (min-width:900px){.listening-prompt{min-height:0}.listening-orb{width:56px;height:56px;margin-bottom:.75rem;box-shadow:0 0 0 9px #f8e7e2}.listening-prompt h2{font-size:clamp(1.9rem,3vw,2.4rem)}.listening-controls{margin-top:1rem}}@media (min-width:900px) and (max-height:760px){.listening-orb{width:48px;height:48px;margin-bottom:.55rem;box-shadow:0 0 0 8px #f8e7e2}.listening-orb svg{width:23px;height:23px}.listening-prompt h2{margin-top:.45rem;font-size:2rem}.listening-controls{gap:.4rem;margin-top:.7rem}.listening-controls button{min-height:38px;padding-inline:.6rem}}@media (min-width:431px) and (max-width:899px){.listening-prompt{min-height:0}.listening-orb{width:56px;height:56px;margin-bottom:.7rem;box-shadow:0 0 0 9px #f8e7e2}.listening-orb svg{width:25px;height:25px}.listening-prompt h2{max-width:22rem;margin:.55rem 0 .4rem;font-size:clamp(2rem,5vw,2.4rem);line-height:.94}.listening-prompt p{font-size:.64rem;line-height:1.45}.listening-controls{gap:.45rem;margin-top:.8rem}.listening-controls button{min-height:40px;padding-inline:.65rem}}@media (max-width:430px) and (max-height:700px){.listening-prompt{min-height:0}.listening-orb{width:50px;height:50px;margin-bottom:.65rem;box-shadow:0 0 0 7px #f8e7e2}.listening-orb svg{width:23px;height:23px}.listening-prompt h2{max-width:100%;margin:.45rem 0 .32rem;font-size:clamp(1.65rem,7.5vw,2rem);line-height:.94}.listening-prompt p{font-size:.6rem;line-height:1.4}.listening-controls{gap:.4rem;margin-top:.65rem}.listening-controls button{min-height:38px;padding-inline:.55rem;font-size:.58rem}}@media (min-width:640px){.dashboard-main{padding:1.6rem 2rem 1.8rem}.dashboard-header{margin:1.1rem 0 1.8rem}.study-now-card{padding:1.5rem}.study-now-footer{bottom:1.25rem;left:1.5rem;right:1.5rem}.dashboard-panel{padding:1.35rem}.collection-grid,.practice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.collection-grid .collection-card:only-child{grid-column:1/-1}.stats-kpi-grid{grid-template-columns:repeat(3,1fr)}.stats-kpi-grid article:nth-child(4),.stats-kpi-grid article:nth-child(5){grid-column:span 1}.collection-page-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.collection-page-card:only-child{grid-column:1/-1}}@media (min-width:900px){.dashboard-shell{grid-template-columns:190px minmax(0,1fr);display:grid}.shared-app-frame .dashboard-shell{min-height:100dvh}.dashboard-rail{border-right:1px solid var(--line);background:#ede8dc;flex-direction:column;justify-content:space-between;height:100dvh;padding:1.7rem .9rem;display:flex;position:sticky;top:0;overflow:hidden}.dashboard-rail>.brand-lockup{padding-bottom:1.15rem;position:relative}.dashboard-rail>.brand-lockup:after{background:var(--red);content:"";width:6rem;height:3px;position:absolute;bottom:0;left:.1rem;box-shadow:1.1rem .45rem 0 -1px #d7cdbd}.dashboard-rail .brand-mark{width:43px;height:43px}.dashboard-rail .brand-name{letter-spacing:.14em;font-size:.7rem}.dashboard-nav{gap:.35rem;margin-top:3.6rem;display:grid}.dashboard-nav a,.dashboard-nav-settings{width:100%;min-height:43px;color:var(--ink-soft);text-align:left;cursor:pointer;transition:color .15s var(--ease-out),background .15s var(--ease-out);background:0 0;border:none;border-left:2px solid #0000;align-items:center;gap:.55rem;padding:0 .45rem;font-family:inherit;font-size:.66rem;text-decoration:none;display:flex}.dashboard-nav a:hover,.dashboard-nav-settings:hover{color:var(--ink);background:#f6f2e9}.dashboard-nav a.is-current{color:var(--ink);border-left-color:var(--red);background:#f6f2e9}.dashboard-rail .rail-bottom{z-index:1;gap:.7rem;display:grid;position:relative}.rail-stats{border:1px solid var(--line);background:#f6f2e9;border-radius:.7rem;gap:.6rem;padding:.7rem .65rem;display:grid}.rail-streak{align-items:center;gap:.5rem;display:flex}.rail-streak-num{color:var(--red);font-family:var(--display);letter-spacing:-.03em;font-size:1.9rem;font-weight:500;line-height:1}.rail-streak-label{color:var(--ink-soft);letter-spacing:.09em;text-transform:uppercase;font-size:.52rem;line-height:1.12}.rail-xp{gap:.32rem;display:grid}.rail-xp-head{color:var(--ink-soft);letter-spacing:.05em;justify-content:space-between;font-size:.54rem;display:flex}.rail-xp-bar{background:#e0d8c8;border-radius:999px;height:5px;overflow:hidden}.rail-xp-bar i{background:var(--red);border-radius:inherit;height:100%;transition:width .32s var(--ease-out);display:block}.rail-profile{align-items:center;gap:.5rem;display:flex}.rail-avatar{width:30px;height:30px;color:var(--paper);background:var(--navy);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:.72rem;font-weight:600;display:inline-flex}.rail-profile-name{min-width:0;color:var(--ink);font-size:.66rem;font-weight:600;display:grid}.rail-profile-name small{color:var(--ink-soft);letter-spacing:.05em;font-size:.54rem;font-weight:500}.rail-study-action{min-height:44px;color:var(--paper);background:var(--navy);transition:background .15s var(--ease-out);border-radius:.6rem;justify-content:center;align-items:center;gap:.5rem;padding:0 .6rem;font-size:.66rem;font-weight:600;text-decoration:none;display:flex}.rail-study-action:hover{background:var(--ink)}.rail-study-action.is-live{background:var(--red)}.dashboard-main{max-width:108rem;padding:2.25rem clamp(2.5rem,6vw,7rem) 2.5rem}.dashboard-header{align-items:end;margin:0 0 2.25rem}.dashboard-header-meta{color:var(--ink-soft);text-align:right;gap:.35rem;font-size:.6rem;display:grid}.dashboard-header-meta>span{display:inline}.dashboard-header h1{margin-top:0;font-size:clamp(3.4rem,5vw,5.4rem)}.dashboard-greeting h1{font-size:clamp(2.3rem,3.2vw,3.3rem)}.dashboard-greeting p{font-size:.78rem}.dashboard-top-grid{grid-template-columns:minmax(0,1.45fr) minmax(18rem,.75fr);align-items:start;gap:1rem}.dashboard-today-col .today-panel{min-height:0}.study-now-card{min-height:25rem;padding:1.65rem}.study-now-card h2{margin-top:4.4rem;font-size:clamp(3rem,4.5vw,5rem)}.study-now-footer{bottom:1.35rem;left:1.65rem;right:1.65rem}.today-panel{min-height:25rem}.today-panel .today-grid{grid-template-columns:repeat(2,1fr);gap:.6rem;margin-top:3.6rem}.today-grid div{padding:.75rem .55rem}.today-grid dd{font-size:2.2rem}.activity-panel{margin-top:1rem}.activity-bars{height:10rem}.dashboard-section{margin-top:2.5rem}.collection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.practice-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.stats-kpi-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.stats-kpi-grid article{min-height:9.5rem}.collection-page-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:430px){.dashboard-main{padding-inline:.9rem}.dashboard-header{margin-top:.2rem}.dashboard-header h1{font-size:2.9rem}.study-now-card{min-height:19.5rem}.study-now-card h2{margin-top:2.8rem;font-size:2.8rem}.study-now-footer{gap:.2rem;display:grid}.today-grid{gap:.25rem}.today-grid dd{font-size:1.25rem}.activity-bars{gap:.45rem;height:7.1rem}.activity-panel .panel-note{display:none}.collection-card h3{font-size:1.35rem}.collection-page-footer{flex-direction:column;align-items:start}.collection-page-footer .collection-action-button{width:100%}.collection-stat-row{gap:.25rem}.collection-stat-row strong{font-size:1.15rem}.forecast-grid strong{font-size:1.45rem}.stats-activity-row{grid-template-columns:4.4rem 1fr 1.2rem}}.settings-panel{top:max(1rem,env(safe-area-inset-top));z-index:41;overscroll-behavior:contain;width:min(23rem,100vw - 2rem);max-height:calc(100dvh - 2rem);color:var(--ink);background:var(--paper);border:1px solid var(--line);animation:panel-in .18s var(--ease-out);border-radius:.95rem;padding:1rem;position:fixed;right:1rem;overflow-y:auto;box-shadow:0 18px 45px #18202c29}.settings-panel-heading{justify-content:space-between;align-items:start;gap:1rem;margin-bottom:.9rem;display:flex}.settings-panel-heading h2{font-family:var(--display);letter-spacing:-.05em;margin:.3rem 0 0;font-size:1.65rem;font-weight:500;line-height:1}.settings-close{width:34px;height:34px;color:var(--ink-soft);background:var(--paper-deep);border:1px solid var(--line);border-radius:50%;place-items:center;display:grid}.settings-field{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.8rem;min-height:3.3rem;padding:.65rem 0;display:grid}.settings-field>span{gap:.2rem;display:grid}.settings-field small{color:var(--ink-soft);font-size:.58rem;line-height:1.35}.settings-field select{min-width:7.2rem;height:36px;color:var(--ink);border:1px solid var(--line);background:#fffdf8;border-radius:.5rem;padding:0 .55rem;font-size:.62rem}.settings-field input[type=range]{width:7.2rem;accent-color:var(--red)}.settings-account-status{border-top:1px solid var(--line);gap:.22rem;min-width:0;padding:.65rem 1rem .65rem 0;display:grid;position:relative}.settings-account-status strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:.64rem;font-weight:600;overflow:hidden}.settings-account-status small{color:var(--ink-soft);font-size:.58rem;line-height:1.35}.settings-account-signin{min-height:44px;color:var(--ink);border:1px solid var(--line);transition:color .15s var(--ease-out),background .15s var(--ease-out);background:#fffdf8;border-radius:.5rem;justify-self:start;align-items:center;margin-top:.15rem;padding:0 .7rem;font-size:.62rem;font-weight:600;text-decoration:none;display:inline-flex}.settings-account-status.is-synced small{color:var(--blue)}.settings-account-status.is-syncing small{color:var(--red)}.settings-account-status.is-offline small,.settings-account-status.is-error small,.settings-account-status.is-unauthenticated small,.settings-account-status.is-forbidden small{color:var(--ink-soft)}.settings-account-status.is-unconfigured{padding-bottom:.75rem}.settings-account-status.is-unconfigured strong{font-weight:500}.settings-account-status.is-unconfigured small{max-width:28rem}.settings-account-status:before{content:"";background:var(--ink-soft);border-radius:50%;width:.38rem;height:.38rem;display:block;position:absolute;top:.9rem;right:.15rem}.settings-account-status.is-synced:before{background:var(--blue)}.settings-account-status.is-syncing:before{background:var(--red)}.settings-account-status.is-offline:before,.settings-account-status.is-error:before{background:var(--ink-soft)}.settings-account-status.is-unauthenticated:before,.settings-account-status.is-forbidden:before{background:var(--red-dark)}.settings-voice{align-items:center;gap:.5rem;display:flex}.settings-voice-preview{min-height:36px;color:var(--ink);border:1px solid var(--line);transition:color .15s var(--ease-out),background .15s var(--ease-out);background:#fffdf8;border-radius:.5rem;align-items:center;gap:.35rem;padding:0 .7rem;font-size:.62rem;font-weight:600;display:inline-flex}.settings-voice-preview:hover{color:var(--paper);background:var(--navy)}.audio-compact:disabled,.listening-controls button:disabled,.feedback-actions button:disabled,.dock-action:disabled{cursor:not-allowed;opacity:.55}.daily-goal{border-top:1px solid var(--line);gap:.45rem;margin-top:1rem;padding-top:.85rem;display:grid}.daily-goal-track{background:#e4ddd0;border-radius:99px;height:7px;overflow:hidden}.daily-goal-track span{background:var(--red);border-radius:inherit;height:100%;transition:width .18s var(--ease-out);display:block}.daily-goal small{color:var(--ink-soft);font-size:.57rem}.collection-empty-note{color:var(--ink-soft);border-left:3px solid var(--red);background:#f1ece2;border-radius:0 .55rem .55rem 0;margin:0 0 1rem;padding:.75rem .85rem;font-size:.64rem;line-height:1.5}@media (min-width:900px){.settings-panel{top:1.7rem;left:190px;right:auto}}@media (max-width:430px){.settings-panel{top:max(.7rem,env(safe-area-inset-top));width:calc(100vw - 1.8rem);right:.9rem}.settings-field{gap:.55rem}.settings-field input[type=range]{width:6rem}}.shared-settings-action{width:38px;height:38px;color:var(--ink-soft);background:var(--paper-deep);border:1px solid var(--line);border-radius:.7rem;place-items:center;display:grid}.shared-settings-action:hover{color:var(--ink)}.settings-overlay{z-index:40;animation:panel-in .14s var(--ease-out);background:#141a2459;position:fixed;inset:0}.settings-backup-actions{gap:.5rem;display:flex}.settings-backup-button{color:var(--ink);background:var(--paper-deep);border:1px solid var(--line);border-radius:.55rem;align-items:center;gap:.4rem;padding:.45rem .7rem;font-size:.72rem;display:inline-flex}.settings-backup-button:hover{border-color:var(--ink-soft)}.audio-admin-page{min-height:100dvh;color:var(--ink);background:var(--background);padding:1.25rem 1rem 3rem}.audio-admin-header,.audio-admin-section-heading,.audio-admin-header-actions,.release-actions,.review-actions,.review-audio-actions{align-items:center;display:flex}.audio-admin-header,.audio-admin-section-heading{justify-content:space-between;gap:1rem}.audio-admin-header{align-items:flex-start;max-width:76rem;margin:0 auto 1.2rem}.audio-admin-header h1,.audio-admin-login h1{color:var(--ink);font-family:var(--display);letter-spacing:-.07em;margin:.45rem 0 .55rem;font-size:clamp(2.5rem,8vw,4.8rem);font-weight:500;line-height:.88}.audio-admin-header p,.audio-admin-login p,.audio-admin-panel p,.worker-note,.render-profile-note{color:var(--ink-soft);font-size:.65rem;line-height:1.55}.audio-admin-header p{margin:0}.audio-admin-kicker{color:var(--red-dark);letter-spacing:.13em;text-transform:uppercase;font-size:.55rem;font-weight:700}.audio-admin-header-actions{gap:.5rem}.audio-admin-icon-button,.audio-admin-logout,.audio-admin-colab-link,.row-actions button,.row-queue-button,.review-audio-actions button,.reject-button,.reject-form button{min-height:36px;color:var(--blue);border:1px solid var(--line);background:0 0;border-radius:.5rem;align-items:center;gap:.35rem;padding:0 .7rem;font-size:.6rem;font-weight:600;text-decoration:none;display:inline-flex}.audio-admin-icon-button{justify-content:center;width:38px;padding:0}.audio-admin-logout{color:var(--ink-soft)}.audio-admin-icon-button:hover,.audio-admin-logout:hover,.row-actions button:hover,.row-queue-button:hover,.review-audio-actions button:hover{color:var(--ink);background:var(--paper)}.audio-admin-banner{color:#7e2f24;background:#f8e7e2;border:1px solid #e8b9ae;border-radius:.7rem;align-items:flex-start;gap:.55rem;max-width:76rem;margin:0 auto .8rem;padding:.75rem .85rem;font-size:.64rem;line-height:1.45;display:flex}.audio-admin-banner button{color:inherit;background:0 0;border:0;margin-left:auto;padding:0}.audio-admin-banner.is-warning{color:#735b24;background:#f8f0d8;border-color:#dfcc8d}.audio-admin-grid,.audio-admin-section-block,.audio-admin-panel,.review-grid{max-width:76rem;margin-left:auto;margin-right:auto}.audio-admin-grid{gap:.8rem;display:grid}.audio-admin-panel{background:var(--paper);border:1px solid var(--line);border-radius:.95rem;padding:1rem;box-shadow:0 10px 30px #18202c0a}.audio-admin-section-heading{align-items:flex-start}.audio-admin-section-heading h2{font-family:var(--display);letter-spacing:-.05em;margin:.35rem 0 0;font-size:1.65rem;font-weight:500;line-height:1}.audio-admin-status,.row-state{width:max-content;color:var(--ink-soft);background:var(--muted);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;border-radius:999px;align-items:center;gap:.32rem;padding:.3rem .45rem;font-size:.54rem;font-weight:700;display:inline-flex}.audio-admin-status i{background:currentColor;border-radius:50%;width:6px;height:6px}.status-ready{color:#3f7555;background:#e2eee4}.status-rendering{color:#8a5b1f;background:#f7ecd2}.status-loading{color:var(--blue);background:#e3edf1}.status-offline{color:var(--ink-soft)}.worker-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-top:1.25rem;display:grid}.worker-details>div{color:var(--red);gap:.5rem;display:flex}.worker-details span{gap:.15rem;min-width:0;display:grid}.worker-details small,.qa-grid dt{color:var(--ink-soft);text-transform:uppercase;font-size:.51rem}.worker-details strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:.61rem;overflow:hidden}.worker-note{margin:1rem 0 0}.worker-note strong{color:var(--ink)}.audio-admin-colab-link{color:var(--red-dark);border:0;margin-top:.7rem;padding-left:0}.release-check{color:#5f9471}.release-id{color:var(--ink);font-family:var(--mono);text-overflow:ellipsis;margin-top:1.25rem;font-size:.72rem;display:block;overflow:hidden}.release-panel>p{margin:.55rem 0 0}.release-actions{margin-top:1rem}.coverage-panel{margin-top:.8rem}.coverage-counts{grid-template-columns:repeat(4,1fr);gap:.45rem;margin-top:1.2rem;display:grid}.coverage-count{border-top:2px solid var(--line);padding:.62rem .45rem}.coverage-count strong{color:var(--ink);font-family:var(--display);font-size:1.55rem;font-weight:500;display:block}.coverage-count span{color:var(--ink-soft);font-size:.51rem;line-height:1.2}.coverage-approved{border-color:#6d9a77}.coverage-staged{border-color:#d39a3f}.coverage-missing,.coverage-stale,.coverage-failed{border-color:var(--red)}.coverage-queued{border-color:var(--blue)}.coverage-list{border-top:1px solid var(--line);margin-top:1.2rem}.coverage-list-heading{color:var(--ink);justify-content:space-between;gap:.5rem;padding:.7rem 0;font-size:.62rem;font-weight:700;display:flex}.coverage-list-heading small{color:var(--ink-soft);font-size:.55rem;font-weight:400}.coverage-row{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.65rem;padding:.65rem 0;display:grid}.coverage-row>span:first-child{gap:.22rem;min-width:0;display:grid}.coverage-row strong{color:var(--ink-soft);font-size:.54rem}.coverage-row em{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:.64rem;font-style:normal;overflow:hidden}.row-state{color:var(--ink-soft)}.state-approved{color:#3f7555;background:#e2eee4}.state-staged,.state-claimed,.state-rendering,.state-queued{color:#8a5b1f;background:#f7ecd2}.state-missing,.state-stale,.state-failed,.state-rejected{color:#8e382c;background:#f8e7e2}.queue-panel{margin-top:.8rem}.queue-depth,.section-count{color:var(--ink-soft);font-size:.58rem}.empty-copy{margin:1.2rem 0 0}.admin-table{margin-top:1.15rem;overflow-x:auto}.admin-table-head,.admin-table-row{border-top:1px solid var(--line);grid-template-columns:minmax(13rem,2fr) 6rem 4rem 7rem 9rem 5rem;align-items:center;gap:.65rem;min-width:680px;padding:.65rem 0;font-size:.58rem;display:grid}.admin-table-head{color:var(--ink-soft);text-transform:uppercase;font-size:.51rem}.admin-table-row>span:first-child{gap:.2rem;min-width:0;display:grid}.admin-table-row strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:.59rem;overflow:hidden}.admin-table-row em{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;font-size:.56rem;font-style:normal;overflow:hidden}.row-actions{gap:.3rem;display:flex}.row-actions button{border:0;min-height:30px;padding:0 .45rem}.job-error{color:#8e382c;grid-column:1/-1;font-size:.56rem;line-height:1.35}.audio-admin-section-block{margin-top:2rem}.audio-admin-section-block>.audio-admin-section-heading{margin-bottom:.85rem}.empty-state{color:var(--ink-soft);align-items:center;gap:.65rem;display:flex}.empty-state p{margin:0}.review-grid{gap:.8rem;display:grid}.audio-review-card{background:var(--paper);border:1px solid var(--line);border-radius:.95rem;padding:1rem}.review-card-heading{justify-content:space-between;align-items:flex-start;gap:.6rem;display:flex}.review-question-ids{color:var(--red-dark);font-size:.53rem;font-weight:700}.audio-review-card h3{color:var(--ink);font-family:var(--display);letter-spacing:-.045em;margin:.4rem 0 0;font-size:1.55rem;font-weight:500;line-height:1}.audio-review-card audio{width:100%;margin-top:1rem;display:block}.review-audio-actions{gap:.4rem;margin-top:.45rem}.review-audio-actions button{border:0;padding-left:0}.qa-grid{grid-template-columns:repeat(3,1fr);gap:.5rem;margin:1rem 0 0;display:grid}.qa-grid div{border-top:1px solid var(--line);padding-top:.4rem}.qa-grid dd{color:var(--ink);margin:.25rem 0 0;font-size:.59rem}.provenance-block{background:var(--muted);border-radius:.55rem;margin-top:1rem;padding:.7rem}.provenance-block span{color:var(--ink-soft);letter-spacing:.08em;font-size:.5rem;font-weight:700}.provenance-block p{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;margin:.35rem 0 0;font-size:.57rem;overflow:hidden}.provenance-block small{color:var(--ink-soft);font-size:.53rem}.review-reason{margin:.7rem 0 0;color:#8e382c!important;font-size:.57rem!important}.review-actions{gap:.5rem;margin-top:1rem}.reject-button{color:#8e382c;border:0}.reject-form{border-top:1px solid var(--line);gap:.45rem;margin-top:.8rem;padding-top:.8rem;display:grid}.reject-form label{color:var(--ink-soft);font-size:.55rem}.reject-form input,.audio-admin-login input{width:100%;min-height:42px;color:var(--ink);background:var(--background);border:1px solid var(--line);border-radius:.5rem;padding:0 .7rem;font-size:.64rem}.reject-form>div{gap:.4rem;display:flex}.reject-form button{border:0}.reject-form button:last-child{color:var(--ink-soft)}.previous-releases-panel{margin:2rem auto 0}.previous-release-list{gap:.5rem;margin-top:1rem;display:grid}.previous-release-list div{border-top:1px solid var(--line);justify-content:space-between;gap:.5rem;padding-top:.55rem;display:flex}.previous-release-list strong{color:var(--ink);font-family:var(--mono);font-size:.59rem}.previous-release-list span{color:var(--ink-soft);font-size:.56rem}.render-profile-note{margin:1rem 0 0}.audio-admin-login-page{place-items:center;display:grid}.audio-admin-login{background:var(--paper);border:1px solid var(--line);border-radius:1rem;width:min(100%,28rem);padding:1.25rem;box-shadow:0 18px 42px #18202c12}.audio-admin-login p{margin:0}.audio-admin-login form{gap:.5rem;margin-top:1.4rem;display:grid}.audio-admin-login label{color:var(--ink-soft);font-size:.56rem}.audio-admin-login button{min-height:44px;margin-top:.35rem}.audio-admin-loading{text-align:center;padding:2rem}.audio-admin-error{color:#8e382c!important}@media (min-width:700px){.audio-admin-page{padding:2rem 2rem 4rem}.audio-admin-grid.audio-admin-top-grid{grid-template-columns:1.2fr .8fr}.review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.coverage-counts{grid-template-columns:repeat(7,1fr)}}@media (max-width:520px){.audio-admin-header{flex-direction:column}.audio-admin-header-actions{justify-content:flex-end;width:100%}.audio-admin-section-heading{align-items:flex-start}.audio-admin-section-heading>button{white-space:normal;max-width:9rem;min-height:38px;padding-inline:.55rem;font-size:.55rem}.coverage-counts{grid-template-columns:repeat(3,1fr)}.coverage-list-heading{display:grid}.coverage-row{grid-template-columns:minmax(0,1fr) auto}.coverage-row .row-queue-button{grid-area:1/2}.coverage-row .row-state{grid-area:2/2}.previous-release-list div{display:grid}}.legend-extra,.bar-extra,.stats-row-extra{background:#8d7761}.progress-percent{color:var(--ink-soft);font-size:.58rem}.collection-caught-up{font-weight:600;color:var(--ink-soft)!important;margin:0!important;font-size:.65rem!important}.collection-page-footer .collection-caught-up{margin-left:auto!important}.practice-card:disabled:hover{background:var(--paper);border-color:var(--line);transform:none}.answer-mode-selector{color:var(--ink-soft);grid-template-columns:auto auto;align-items:baseline;gap:.15rem .55rem;margin-top:.9rem;font-size:.68rem;display:grid}.answer-mode-selector span{color:var(--ink);font-weight:700}.answer-mode-selector button{min-height:40px;color:var(--red-dark);border:0;border-bottom:1px solid var(--red);background:0 0;padding:.35rem .4rem}@supports (color:color-mix(in lab,red,red)){.answer-mode-selector button{border-bottom:1px solid color-mix(in srgb,var(--red),transparent 55%)}}.answer-mode-selector button{font:inherit;text-align:left;font-weight:700}.answer-mode-selector button:hover{color:var(--red)}.answer-mode-selector small{color:var(--ink-soft);grid-column:1/-1;line-height:1.45}.tertiary-assistance{min-height:42px;color:var(--ink-soft);font:inherit;text-decoration:underline;-webkit-text-decoration-color:var(--ink-soft);text-decoration-color:var(--ink-soft);background:0 0;border:0;padding:.35rem .5rem;font-size:.68rem;font-weight:600}@supports (color:color-mix(in lab,red,red)){.tertiary-assistance{-webkit-text-decoration-color:color-mix(in srgb,var(--ink-soft),transparent 60%);text-decoration-color:color-mix(in srgb,var(--ink-soft),transparent 60%)}}.tertiary-assistance{text-underline-offset:.22rem}.tertiary-assistance:hover,.tertiary-assistance:focus-visible{color:var(--ink)}.tertiary-assistance.has-draft{opacity:.72}.choice-feedback-list{gap:.45rem;margin:0 1.15rem 1rem;display:grid}.choice-feedback-row{min-height:48px;color:var(--ink-soft);border:1px solid var(--line);background:#fffdf8;border-radius:.65rem;grid-template-columns:1.2rem 1fr auto;align-items:center;gap:.4rem;padding:.55rem .7rem;font-size:.78rem;display:grid}.choice-feedback-row strong{color:var(--ink);text-transform:uppercase;letter-spacing:.08em;font-size:.62rem}.choice-feedback-row.is-correct-choice{background:#edf4ee;border-color:#a9c2ad}.choice-feedback-row.is-wrong-choice{background:#f9eae5;border-color:#d99e91}.follow-up-status{color:var(--ink-soft);font-size:.68rem;font-weight:600}.action-dock.is-feedback{flex-direction:column;align-items:stretch;gap:.55rem;display:flex}.feedback-secondary-actions{flex-wrap:wrap;order:1;align-items:center;gap:.2rem .35rem;display:flex}.feedback-secondary-actions .dock-action{min-height:36px;color:var(--ink-soft);border-color:#0000;justify-content:flex-start;padding:0 .4rem;font-size:.62rem}.feedback-secondary-actions .dock-action:hover,.feedback-secondary-actions .dock-action.is-marked{color:var(--ink);background:0 0}.action-dock.is-feedback>.next-cta{order:2;grid-column:auto;width:100%}.mobile-vocabulary-sheet{padding-bottom:env(safe-area-inset-bottom)}.vocabulary-translation{overflow-wrap:anywhere}.error-stage{min-height:100dvh;padding:max(1.2rem,env(safe-area-inset-top))1rem max(1.2rem,env(safe-area-inset-bottom));background:var(--background);color:var(--ink);place-items:center;display:grid}.error-card,.not-found-card{background:var(--paper);border:1px solid var(--line);border-radius:1.3rem;width:min(100%,38rem);padding:clamp(1.6rem,5vw,3.5rem);box-shadow:0 20px 55px #1e252d12}.error-mark{width:42px;height:42px;color:var(--paper);background:var(--red);border-radius:50%;place-items:center;margin-bottom:1.2rem;display:grid}.error-card h1,.not-found-card h1{color:var(--ink);font-family:var(--display);letter-spacing:-.065em;margin:.6rem 0 1rem;font-size:clamp(2.7rem,8vw,5rem);font-weight:500;line-height:.9}.error-card p,.not-found-card p{max-width:31rem;color:var(--ink-soft);margin:0;font-size:.72rem;line-height:1.7}.error-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin-top:1.5rem;display:grid}.error-actions .primary-cta{justify-content:center;align-items:center;gap:.4rem;min-height:48px;display:inline-flex}.error-secondary{min-height:48px;color:var(--ink-soft);border:1px solid var(--line);background:0 0;border-radius:.75rem;justify-content:center;align-items:center;gap:.4rem;font-size:.68rem;font-weight:600;display:inline-flex}.error-secondary:hover{color:var(--ink);background:var(--paper-deep)}.not-found-card .primary-cta{justify-content:center;align-items:center;gap:.4rem;width:100%;margin-top:1.5rem;display:inline-flex}.error-details{color:var(--ink-soft);margin-top:1.4rem;font-size:.65rem}.error-details pre{white-space:pre-wrap;max-height:12rem;margin-top:.6rem;overflow:auto}@media (max-width:430px){.error-actions{grid-template-columns:1fr}.progress-percent{display:none}}.landing-page{--landing-width:min(100% - 3rem,87rem);min-height:100dvh;color:var(--ink);background:var(--background);overflow-x:clip}.landing-header{width:var(--landing-width);border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem;min-height:78px;margin:0 auto;display:grid}@supports (color:color-mix(in lab,red,red)){.landing-header{border-bottom:1px solid color-mix(in srgb,var(--line)82%,transparent)}}.landing-brand,.landing-header-start,.landing-sync-link,.landing-footer-brand{color:var(--ink);text-decoration:none}.landing-brand{letter-spacing:.12em;align-items:center;gap:.62rem;width:max-content;min-height:44px;font-size:.68rem;font-weight:600;display:inline-flex}.landing-brand .brand-mark{width:38px;height:38px}.landing-sync-link,.landing-header-start{min-height:44px;transition:color .15s var(--ease-out),background .15s var(--ease-out),border-color .15s var(--ease-out),transform .15s var(--ease-out);justify-content:center;align-items:center;display:inline-flex}.landing-header-actions{justify-content:flex-end;align-items:center;gap:.8rem;display:flex}.landing-sync-link{color:var(--blue);padding:0 .35rem;font-size:.62rem;font-weight:600}.landing-sync-link:hover{color:var(--ink)}.landing-sync-state{min-height:44px;color:var(--blue);align-items:center;font-size:.59rem;font-weight:600;display:inline-flex}.landing-header-start{min-width:7.6rem;color:var(--paper);background:var(--navy);border-radius:.58rem;padding:0 .85rem;font-size:.62rem;font-weight:600}.landing-header-start:hover{background:var(--ink);transform:translateY(-1px)}.landing-header-start:active,.landing-primary-cta:active,.landing-preview-submit:active{transform:translateY(1px)scale(.985)}.landing-header-start-short{display:none}.landing-page a:focus-visible,.landing-page button:focus-visible,.landing-page input:focus-visible{outline:3px solid var(--red)}@supports (color:color-mix(in lab,red,red)){.landing-page a:focus-visible,.landing-page button:focus-visible,.landing-page input:focus-visible{outline:3px solid color-mix(in srgb,var(--red),transparent 70%)}}.landing-page a:focus-visible,.landing-page button:focus-visible,.landing-page input:focus-visible{outline-offset:3px}.landing-hero,.landing-preview-section,.landing-review-moment,.landing-game-layer,.landing-final-cta,.landing-footer{width:var(--landing-width);margin-left:auto;margin-right:auto}.landing-hero{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,.82fr) minmax(31rem,1.18fr);align-items:center;gap:clamp(2rem,5vw,6rem);min-height:min(48rem,100dvh - 78px);padding:clamp(3.5rem,6vw,5.5rem) 0;display:grid}.landing-hero-copy{max-width:35rem}.landing-eyebrow{color:var(--red-dark);letter-spacing:.13em;text-transform:uppercase;font-size:.6rem;font-weight:600}.landing-hero h1{max-width:10.5ch;color:var(--ink);font-family:var(--display);letter-spacing:-.075em;margin:0 0 1.6rem;font-size:clamp(3.35rem,6.4vw,6.5rem);font-weight:500;line-height:.9}.landing-hero h1 em{color:var(--red);font-style:italic;display:block}.landing-hero-description{max-width:34rem;color:var(--ink-soft);font-family:var(--display);margin:0;font-size:clamp(1.05rem,1.7vw,1.35rem);line-height:1.38}.landing-cta-row{flex-wrap:wrap;align-items:center;gap:.7rem 1rem;margin-top:2rem;display:flex}.landing-primary-cta{min-height:52px;color:var(--paper);background:var(--red);box-shadow:0 4px 0 var(--red-dark),0 10px 22px #e4472f29;transition:background .15s var(--ease-out),box-shadow .15s var(--ease-out),transform .15s var(--ease-out);border-radius:.66rem;justify-content:center;align-items:center;gap:.55rem;padding:0 1.1rem;font-size:.69rem;font-weight:600;text-decoration:none;display:inline-flex}.landing-primary-cta:hover{background:var(--red-dark);transform:translateY(-2px)}.landing-hero>.landing-preview-section{flex-direction:column;justify-content:center;align-self:stretch;min-width:0;padding:0;display:flex}.landing-preview-frame{background:var(--navy);border:1px solid var(--navy);border-radius:1.35rem;margin:0;padding:0;display:block;overflow:hidden;box-shadow:0 22px 55px #18202c24}.landing-preview-topline{color:#bfc7c8;letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid #ffffff21;justify-content:space-between;align-items:center;gap:1rem;min-height:56px;padding:0 1.3rem;font-size:.56rem;font-weight:600;display:flex}.landing-preview-mark{color:#fff8eb;align-items:center;gap:.5rem;display:inline-flex}.landing-preview-mark img{width:28px;height:28px}.landing-preview-meta{color:#fff8eb;align-items:center;gap:.45rem;display:inline-flex}.landing-preview-window{background:var(--paper);min-height:28rem;transition:grid-template-columns .2s var(--ease-out);grid-template-columns:minmax(0,1fr) minmax(0,0fr);display:grid}.landing-preview-window[data-context-visible=true]{grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr)}.landing-preview-exercise{flex-direction:column;min-width:0;padding:clamp(1.35rem,3vw,2.8rem);display:flex}.landing-preview-sentence{max-width:42rem;color:var(--ink);font-family:var(--display);letter-spacing:-.065em;margin:clamp(2rem,4vw,3.5rem) 0 1.7rem;font-size:clamp(2rem,3.9vw,4.2rem);font-weight:500;line-height:1.02}.landing-preview-cloze{min-width:2.25em;color:var(--red-dark);text-align:center;vertical-align:-.08em;border:1px solid var(--red);transition:color .2s var(--ease-out),background .2s var(--ease-out),border-color .2s var(--ease-out);background:#f7e3de;border-bottom-width:3px;border-radius:.12em .12em .04em .04em;padding:0 .08em;display:inline-block;box-shadow:0 .04em #e8b0a4}.landing-preview-cloze-correct{color:#315c41;background:#e1eee3;border-color:#4d7b5e;box-shadow:0 .04em #b7d0bc}.landing-preview-answer-input{width:100%;max-width:30rem;min-height:48px;color:var(--ink);border:1px solid var(--line);transition:color .18s var(--ease-out),background .18s var(--ease-out),border-color .18s var(--ease-out),box-shadow .18s var(--ease-out);background:#fffdf8;border-radius:.58rem;padding:0 1rem;font-size:1rem;line-height:1.35;display:block}.landing-preview-answer-input::placeholder{color:var(--ink-soft);opacity:1}.landing-preview-answer-input:hover{border-color:var(--ink-soft)}@supports (color:color-mix(in lab,red,red)){.landing-preview-answer-input:hover{border-color:color-mix(in srgb,var(--ink-soft)65%,var(--line))}}.landing-preview-answer-input:focus{border-color:var(--red);box-shadow:none}.landing-page .landing-preview-answer-input:focus-visible{outline:2px solid var(--red)}@supports (color:color-mix(in lab,red,red)){.landing-page .landing-preview-answer-input:focus-visible{outline:2px solid color-mix(in srgb,var(--red)70%,transparent)}}.landing-page .landing-preview-answer-input:focus-visible{outline-offset:3px}.landing-preview-answer-incorrect{border-color:var(--red-dark);background:#fff9f6}.landing-preview-answer-correct{color:#315c41;background:#f0f7ef;border-color:#86aa8c}.landing-preview-answer-input:disabled{cursor:default;opacity:1}.landing-preview-controls{flex-wrap:wrap;align-items:center;gap:.45rem;margin-top:1rem;display:flex}.landing-preview-control,.landing-preview-submit,.landing-preview-audio-unavailable{white-space:nowrap;justify-content:center;align-items:center;gap:.35rem;min-height:44px;padding:0 .65rem;font-size:.6rem;font-weight:600;display:inline-flex}.landing-preview-control{color:var(--blue);transition:color .15s var(--ease-out),background .15s var(--ease-out),border-color .15s var(--ease-out),opacity .15s var(--ease-out);background:0 0;border:1px solid #0000;border-radius:.55rem}.landing-preview-control:hover:not(:disabled){color:var(--ink);background:var(--paper-deep);border-color:var(--line)}.landing-preview-control:disabled{color:var(--blue);cursor:default;opacity:.62}.landing-preview-control[aria-busy=true]{cursor:wait}.landing-preview-audio-unavailable{color:var(--ink-soft);opacity:.82}.landing-preview-submit{color:var(--paper);background:var(--red);transition:background .15s var(--ease-out),transform .15s var(--ease-out);border:0;border-radius:.55rem;margin-left:auto;text-decoration:none}.landing-preview-submit:hover{background:var(--red-dark)}.landing-preview-hints,.landing-preview-context-reveal{opacity:0;transition:grid-template-rows .2s var(--ease-out),margin-top .2s var(--ease-out),opacity .2s var(--ease-out),transform .2s var(--ease-out);grid-template-rows:0fr;margin-top:.65rem;display:grid;transform:translateY(-5px)}.landing-preview-hints[data-visible=true],.landing-preview-context-reveal[data-visible=true]{opacity:1;grid-template-rows:1fr;transform:translateY(0)}.landing-preview-hints>p,.landing-preview-context-reveal>div{min-height:0;overflow:hidden}.landing-preview-hints>p{color:var(--ink-soft);border-left:2px solid var(--blue);grid-template-columns:1.4rem minmax(0,1fr);gap:.45rem;margin:0;padding:.55rem 0 .15rem .8rem;font-size:.58rem;line-height:1.45;display:grid}.landing-preview-hints>p span{color:var(--blue);font-weight:600}.landing-demo-feedback{min-height:1.4rem;color:var(--ink-soft);transition:color .18s var(--ease-out),opacity .18s var(--ease-out);align-items:center;gap:.35rem;margin:.8rem 0 0;font-size:.59rem;line-height:1.4;display:flex}.landing-demo-feedback-correct{color:#315c41}.landing-demo-feedback-incorrect{color:var(--red-dark)}.landing-preview-context{border-left:1px solid var(--line);opacity:1;min-width:0;transition:padding .2s var(--ease-out),border-color .2s var(--ease-out),opacity .2s var(--ease-out),visibility .2s var(--ease-out);background:#f1ece2;flex-direction:column;padding:clamp(1.5rem,3vw,2.8rem) clamp(1.3rem,3vw,2.4rem);display:flex;overflow:hidden}.landing-preview-context[data-visible=false]{visibility:hidden;opacity:0;pointer-events:none;border-left-color:#0000;padding:0}.landing-preview-context h3{color:var(--ink);font-family:var(--display);letter-spacing:-.055em;margin:1.35rem 0 .45rem;font-size:clamp(1.8rem,3vw,2.8rem);font-weight:500;line-height:.96}.landing-preview-translation{color:var(--red-dark);font-family:var(--display);margin:0;font-size:1.1rem;line-height:1.3}.landing-preview-context-reveal{border-top:0 solid var(--line);margin-top:0;padding-top:0}.landing-preview-context-reveal[data-visible=true]{border-top-width:1px;margin-top:1.3rem;padding-top:1.1rem}.landing-preview-feedback{gap:.65rem;display:flex}.landing-preview-feedback-icon{width:27px;height:27px;color:var(--paper);background:#4d7b5e;border-radius:50%;flex:none;place-items:center;display:grid}.landing-preview-translation,.landing-preview-explanation{color:var(--ink-soft);font-size:.57rem;line-height:1.45}.landing-preview-feedback strong{min-width:0;color:var(--ink);font-family:var(--display);font-size:.98rem;font-weight:500;line-height:1.2;display:block}.landing-preview-explanation{border-top:1px solid var(--line);margin:1rem 0 0;padding-top:.9rem}.landing-review-moment{grid-template-columns:minmax(0,.8fr) minmax(20rem,1.2fr);align-items:center;gap:clamp(2rem,8vw,8rem);padding-top:clamp(3.5rem,8vw,7rem);display:grid}.landing-review-moment h2{max-width:16ch;color:var(--ink);font-family:var(--display);letter-spacing:-.065em;margin:0;font-size:clamp(1.9rem,3.5vw,3.8rem);font-weight:500;line-height:.96}.landing-review-timeline{max-width:38rem;color:var(--ink-soft);grid-template-columns:auto minmax(3.5rem,1fr) auto;align-items:start;gap:clamp(.8rem,2vw,1.5rem);display:grid}.landing-review-stage{color:var(--ink);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;flex-direction:column;align-items:flex-start;gap:.7rem;font-size:.62rem;font-weight:600;display:inline-flex}.landing-review-stage-mark{width:2.85rem;height:2.85rem;color:var(--red);border:1px solid var(--red);box-shadow:0 2px 0 var(--red);background:#fffdf8;border-radius:.7rem;place-items:center;display:grid}@supports (color:color-mix(in lab,red,red)){.landing-review-stage-mark{box-shadow:0 2px color-mix(in srgb,var(--red)28%,transparent)}}.landing-review-stage:last-child .landing-review-stage-mark{color:var(--blue);border-color:var(--blue);box-shadow:0 2px 0 var(--blue)}@supports (color:color-mix(in lab,red,red)){.landing-review-stage:last-child .landing-review-stage-mark{box-shadow:0 2px color-mix(in srgb,var(--blue)28%,transparent)}}.landing-review-connector{min-width:3.5rem;height:2.85rem;color:var(--ink-soft);align-items:center;display:flex}.landing-review-connector:before,.landing-review-connector:after{content:"";background:var(--line);flex:1;height:1px}.landing-review-connector svg{flex:none;margin-inline:.7rem}.landing-game-layer{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:clamp(4rem,8vw,7rem);padding:clamp(2.5rem,5vw,4.5rem) 0}.landing-game-layer h2{max-width:16ch;color:var(--ink);font-family:var(--display);letter-spacing:-.065em;margin:0;font-size:clamp(1.9rem,3.5vw,3.8rem);font-weight:500;line-height:.96}.landing-game-layer-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1.5rem,4vw,4.5rem);margin:3rem 0 0;padding:0;list-style:none;display:grid}.landing-game-layer-list li{border-top:2px solid var(--red);min-width:0;padding-top:1rem}.landing-game-layer-label{color:var(--red-dark);font-family:var(--mono);letter-spacing:.12em;font-size:.6rem;font-weight:600;display:block}.landing-game-layer-list h3{color:var(--ink);font-family:var(--display);letter-spacing:-.045em;margin:.8rem 0 0;font-size:clamp(1.35rem,2vw,2rem);font-weight:500;line-height:1}.landing-game-layer-list p{max-width:23rem;color:var(--ink-soft);margin:.8rem 0 0;font-size:.68rem;line-height:1.55}.landing-final-cta{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:2rem;margin-top:clamp(4rem,8vw,7rem);padding:clamp(2.5rem,6vw,5rem) 0 clamp(3.5rem,7vw,6rem);display:grid}.landing-final-cta h2{max-width:10ch;color:var(--ink);font-family:var(--display);letter-spacing:-.07em;grid-column:1;margin:0;font-size:clamp(2.7rem,6vw,6rem);font-weight:500;line-height:.9}.landing-final-cta .landing-primary-cta{grid-area:1/2;margin-bottom:.25rem}.landing-footer{min-height:78px;color:var(--ink-soft);border-top:1px solid var(--line);justify-content:flex-start;align-items:center;gap:1rem;padding:1rem 0;font-size:.57rem;display:flex}.landing-footer-brand{color:var(--ink);letter-spacing:.1em;align-items:center;gap:.45rem;font-size:.6rem;font-weight:600;display:inline-flex}.landing-footer-brand .brand-mark{width:25px;height:25px}@media (max-width:1023px){.landing-hero{grid-template-columns:1fr;gap:4rem;min-height:0}.landing-hero-copy{max-width:42rem}.landing-preview-window,.landing-preview-window[data-context-visible=true]{grid-template-columns:1fr}.landing-preview-context{border-top:1px solid var(--line);border-left:0}.landing-preview-context[data-visible=false]{display:none}.landing-preview-context-reveal{margin-top:0}}@media (max-width:660px){.landing-page{--landing-width:min(100% - 1.5rem,87rem)}.landing-header{grid-template-columns:auto minmax(0,1fr);min-height:70px}.landing-header-actions{gap:.35rem}.landing-header-start{min-width:0;padding-inline:.72rem}.landing-hero{gap:3rem;padding-top:4rem;padding-bottom:4.3rem}.landing-hero h1{font-size:clamp(3.15rem,13vw,5rem)}.landing-preview-topline{padding-inline:1rem}.landing-preview-exercise{padding:1.3rem 1rem 2.1rem}.landing-preview-sentence{margin-top:2.5rem;font-size:clamp(2.05rem,11vw,3.8rem)}.landing-preview-submit{margin-left:0}.landing-final-cta{grid-template-columns:1fr;align-items:start;gap:1.5rem;margin-top:5.5rem}.landing-review-moment{grid-template-columns:1fr;gap:2.2rem;padding-top:4.3rem}.landing-game-layer-list{grid-template-columns:1fr;gap:2rem;margin-top:2.4rem}.landing-game-layer-list p{max-width:32rem}.landing-review-timeline{max-width:none}.landing-final-cta h2,.landing-final-cta .landing-primary-cta{grid-area:auto/1}.landing-final-cta .landing-primary-cta{width:max-content;margin:0}.landing-footer{flex-direction:column;align-items:flex-start;min-height:0;padding:1.25rem 0 1.5rem}}@media (max-width:430px){.landing-header-start-full{display:none}.landing-header-start-short{display:inline}.landing-brand{gap:.45rem;font-size:.62rem}.landing-brand .brand-mark{width:32px;height:32px}.landing-sync-link,.landing-sync-state{font-size:.55rem}.landing-header-start{min-height:42px;padding-inline:.68rem}.landing-hero-description{font-size:1rem}.landing-cta-row{flex-direction:column;align-items:stretch}.landing-primary-cta{width:100%}.landing-preview-context{padding-inline:1rem}.landing-preview-submit,.landing-final-cta .landing-primary-cta{width:100%}}@media (prefers-reduced-motion:no-preference){.landing-preview-answer-incorrect{animation:landing-answer-error .18s var(--ease-out)}}@keyframes landing-answer-error{0%,to{transform:translate(0)}35%{transform:translate(-3px)}70%{transform:translate(3px)}}@media (prefers-reduced-motion:reduce){.landing-page *{transition-duration:.001ms!important;animation:none!important}}.storage-recovery-notice{z-index:60;min-height:44px;padding:.65rem max(.85rem,env(safe-area-inset-right)).65rem max(.85rem,env(safe-area-inset-left));color:var(--ink);border-bottom:1px solid var(--red);background:#efe3d7;justify-content:center;align-items:center;gap:.8rem;display:flex;position:relative}@supports (color:color-mix(in lab,red,red)){.storage-recovery-notice{border-bottom:1px solid color-mix(in srgb,var(--red)24%,var(--line))}}.storage-recovery-notice{font-size:.66rem;line-height:1.45}.storage-recovery-notice p{max-width:64rem;margin:0}.storage-recovery-notice button{border:1px solid var(--line);min-height:32px;color:var(--ink);background:var(--paper);font:inherit;cursor:pointer;border-radius:.5rem;flex:none;padding:0 .65rem}.shared-app-frame{background:var(--background);min-height:100dvh}.shared-app-header{z-index:30;min-height:64px;padding:max(.65rem,env(safe-area-inset-top))clamp(.85rem,3vw,2.25rem).65rem;background:var(--background);grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:clamp(.6rem,2vw,1.4rem);display:grid;position:sticky;top:0}@supports (color:color-mix(in lab,red,red)){.shared-app-header{background:color-mix(in srgb,var(--background)94%,transparent)}}.shared-app-header{border-bottom:1px solid var(--line)}@supports (color:color-mix(in lab,red,red)){.shared-app-header{border-bottom:1px solid color-mix(in srgb,var(--line)82%,transparent)}}.shared-app-header{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.shared-brand,.shared-primary-nav a,.shared-study-action{color:var(--ink);text-decoration:none}.shared-primary-nav{justify-content:center;gap:.25rem;min-width:0;display:flex}.shared-primary-nav a,.shared-study-action{min-height:44px;color:var(--ink-soft);transition:background .15s ease,color .15s ease,transform .15s var(--ease-out);border-radius:.55rem;justify-content:center;align-items:center;gap:.42rem;padding:0 .72rem;font-size:.64rem;font-weight:600;display:inline-flex}.shared-primary-nav a:hover,.shared-primary-nav a.is-current,.shared-study-action:hover{color:var(--ink);background:var(--paper-deep)}.shared-primary-nav a.is-current{box-shadow:inset 0 -2px 0 var(--red)}.shared-study-action{color:var(--paper);background:var(--navy)}@media (min-width:900px){.shared-app-header{display:none}}.study-now-card p,.collection-card p,.collection-page-card p,.vocabulary-empty p,.vocabulary-card p,.inline-explain p,.translation,.error-card p,.not-found-card p,.collection-empty-note{font-family:var(--display);font-size:max(.82rem,1em);line-height:1.55}.study-card,.study-now-card,.error-card,.not-found-card{border-radius:1.15rem}.dashboard-panel,.collection-page-card,.collection-card,.settings-panel,.vocabulary-card,.vocabulary-empty{border-radius:.95rem}.answer-input,.choice-card,.primary-cta,.next-cta,.collection-action,.completion-secondary{border-radius:.68rem!important}@media (min-width:900px){.shared-app-frame .dashboard-main{padding:clamp(2rem,4vw,4.5rem) clamp(2rem,5vw,5.5rem) 4rem}.dashboard-top-grid{grid-template-columns:minmax(0,1.35fr) minmax(17rem,.65fr);align-items:stretch}.collection-grid,.collection-page-grid{grid-template-columns:repeat(auto-fit,minmax(19rem,1fr))}.stats-kpi-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.stats-kpi-grid>article{grid-column:span 2}.stats-kpi-grid>article:nth-last-child(-n+2){grid-column:span 3}}@media (min-width:1320px){.stats-kpi-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.stats-kpi-grid>article,.stats-kpi-grid>article:nth-last-child(-n+2){grid-column:auto}}.forecast-grid>div{box-shadow:none!important;background:0 0!important;border-left:0!important;border-radius:0!important}.forecast-grid>div+div{border-left:1px solid var(--line)!important}.primary-cta:disabled,.next-cta:disabled{color:#5d574f!important;opacity:1!important;cursor:not-allowed!important;background:#ded8ce!important;border:1px solid #bdb4a7!important;transform:none!important;box-shadow:0 2px #c3b9ac!important}.text-button,.section-link,.dashboard-study-link,.collection-action,.collection-caught-up,.completion-secondary,.text-action{align-items:center;min-height:44px;display:inline-flex}.study-card,.study-now-card,.dashboard-panel,.collection-card,.collection-page-card,.stats-kpi-grid>article,.session-complete{animation:paper-enter .26s var(--ease-out)both}.collection-grid>:nth-child(2),.collection-page-grid>:nth-child(2),.stats-kpi-grid>:nth-child(2){animation-delay:35ms}.collection-grid>:nth-child(3),.collection-page-grid>:nth-child(3),.stats-kpi-grid>:nth-child(3){animation-delay:70ms}.stats-kpi-grid>:nth-child(4){animation-delay:.105s}.stats-kpi-grid>:nth-child(5){animation-delay:.14s}.activity-bar>span,.stats-row-track>i,.daily-goal-track>span,.segmented-progress>span,.tick-progress>span{transition:width .24s var(--ease-out),height .24s var(--ease-out),background-color .18s ease,opacity .18s ease}.feedback-stamp,.hint-ladder,.inline-explain,.mobile-vocabulary-sheet,.more-popover{transform-origin:top}.feedback-stamp{animation:feedback-reveal .2s var(--ease-out)both}.post-answer,.hint-ladder{animation:feedback-reveal .22s var(--ease-out)40ms both}.feedback-actions{animation:feedback-reveal .22s var(--ease-out)80ms both}.cloze-word{animation:cloze-settle .18s var(--ease-out)both}.completion-stamp{transform-origin:50%;animation:stamp-settle .24s var(--ease-out).28s both}@keyframes feedback-reveal{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes cloze-settle{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}@keyframes stamp-settle{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}@keyframes paper-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.sentence-word,.choice-card,.collection-action,.practice-card,.rail-link,.dashboard-nav a{transition-duration:.15s}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important;animation-delay:0s!important}}@media (max-width:899px){.storage-recovery-notice{justify-content:space-between;align-items:flex-start;font-size:.62rem}.shared-app-header{padding-inline:max(.65rem,env(safe-area-inset-left))max(.65rem,env(safe-area-inset-right));grid-template-columns:auto 1fr auto auto;gap:.35rem}.shared-brand span,.shared-primary-nav a span,.shared-study-action span{display:none}.shared-primary-nav{justify-content:center}.shared-primary-nav a,.shared-study-action{width:44px;padding:0}.dashboard-main,.main-stage{width:100%}.forecast-grid>div+div{border-left:0!important;border-top:1px solid var(--line)!important}}@media (min-width:600px) and (max-width:899px){.dashboard-header h1{font-size:clamp(2.2rem,7vw,3.5rem)}.study-now-card{min-height:16rem}.study-now-card h2{margin-top:1.4rem;font-size:clamp(2.1rem,6.5vw,3.1rem)}.study-now-actions{margin-top:1rem}.today-grid{margin-top:.9rem}}html{background:var(--cg-canvas)}body{color:var(--cg-text-primary);background:var(--cg-canvas);font-family:var(--mono);text-rendering:optimizeLegibility}button,input,select,textarea{font-family:var(--mono)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--cg-focus);outline-offset:3px}::selection{color:var(--cg-text-primary);background:var(--cg-selection)}.eyebrow,.dashboard-nav-label,.mobile-nav-label,.rail-section-label,.panel-target,.vocabulary-section-label,.vocabulary-source,.prompt-label,.session-number,.progress-foot,.category-row small,.collection-stat-row small,.today-grid dt,.bookmark-tag,.bookmark-mastery,.settings-field small{font-family:var(--mono);letter-spacing:.085em;text-transform:uppercase;font-size:.625rem;font-weight:600;line-height:1.35}.eyebrow{color:var(--cg-text-quiet)}.shared-app-frame{min-height:100dvh;color:var(--cg-text-primary);background:var(--cg-canvas)}.shared-app-header{z-index:30;min-height:4rem;padding:max(.55rem,env(safe-area-inset-top))max(1rem,4vw).55rem;border-bottom:1px solid var(--cg-border-subtle);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f2eee6f0;grid-template-columns:auto minmax(0,1fr) auto auto auto;align-items:center;gap:.55rem;display:grid;position:sticky;top:0}.shared-brand,.shared-primary-nav a,.shared-study-action,.shared-menu-action,.shared-settings-action{color:var(--cg-text-primary);text-decoration:none}.shared-brand{letter-spacing:.12em;align-items:center;gap:.5rem;min-height:2.75rem;font-size:.68rem;font-weight:600;display:inline-flex}.shared-brand img{width:2rem;height:2rem}.shared-menu-action,.shared-settings-action{min-width:2.75rem;min-height:2.75rem;color:var(--cg-text-secondary);background:0 0;border:1px solid #0000;border-radius:.5rem;justify-content:center;align-items:center;gap:.4rem;padding:0 .65rem;font-size:.63rem;font-weight:600;transition:color .16s,background-color .16s,border-color .16s;display:inline-flex}.shared-menu-action:hover,.shared-settings-action:hover{color:var(--cg-text-primary);background:var(--cg-surface);border-color:var(--cg-border-subtle)}.shared-study-action{min-height:2.75rem;color:var(--cg-surface-elevated);background:var(--cg-focus-surface);transition:background-color .16s ease,transform .16s var(--ease-out);border-radius:.5rem;justify-content:center;align-items:center;gap:.42rem;padding:0 .9rem;font-size:.64rem;font-weight:600;display:inline-flex}.shared-study-action:hover{background:#263846}.shared-study-action.is-live{background:var(--cg-accent-strong)}.shared-sync-status{min-width:2.75rem;min-height:2.75rem;color:var(--cg-text-secondary);white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:.5rem;grid-column:3;justify-content:center;align-items:center;gap:.35rem;padding:0 .55rem;font-size:.58rem;font-weight:600;display:inline-flex}.shared-sync-status:hover{color:var(--cg-text-primary);background:var(--cg-surface);border-color:var(--cg-border-subtle)}.shared-sync-status.is-synced{color:var(--cg-success)}.shared-sync-status.is-syncing{color:var(--cg-focus)}.shared-sync-status.is-error,.shared-sync-status.is-forbidden{color:var(--cg-accent-strong)}.dashboard-shell{min-height:100dvh;color:var(--cg-text-primary);background:var(--cg-canvas)}.dashboard-page{min-width:0}.dashboard-rail,.desktop-rail{color:var(--cg-text-primary);border-color:var(--cg-border-subtle);background:#ebe5da}.dashboard-rail{display:none}.rail-top,.rail-bottom{min-width:0}.dashboard-rail .brand-lockup,.desktop-rail .brand-lockup{padding:.25rem 0}.brand-name{color:var(--cg-text-primary);font-family:var(--mono);letter-spacing:.11em;font-size:.68rem;font-weight:600;line-height:.95}.dashboard-nav,.rail-nav{gap:1.45rem;margin-top:3rem;display:grid}.dashboard-nav-group,.rail-nav-group{gap:.15rem;display:grid}.dashboard-nav-label,.rail-section-label{color:var(--cg-text-quiet);letter-spacing:.14em;padding:0 .65rem .42rem;font-size:.56rem}.dashboard-nav a,.dashboard-nav-settings,.rail-link{min-height:2.75rem;color:var(--cg-text-secondary);text-align:left;background:0 0;border:0;border-radius:.45rem;align-items:center;gap:.68rem;padding:0 .65rem;font-size:.68rem;font-weight:600;text-decoration:none;transition:color .16s,background-color .16s;display:flex;position:relative}.dashboard-nav a:before,.rail-link:before{content:"";background:0 0;border-radius:0 .2rem .2rem 0;width:.2rem;height:1.25rem;position:absolute;left:-.75rem}.dashboard-nav a:hover,.dashboard-nav-settings:hover,.rail-link:hover{color:var(--cg-text-primary);background:#fffdf885}.dashboard-nav a.is-current,.rail-link.is-current{color:var(--cg-text-primary);background:var(--cg-surface)}.dashboard-nav a.is-current:before,.rail-link.is-current:before{background:var(--cg-accent)}.dashboard-nav a svg,.dashboard-nav-settings svg,.rail-link svg{color:currentColor;flex:none}.dashboard-nav-settings{margin-top:.8rem}.rail-count{min-width:1.25rem;min-height:1.25rem;color:var(--cg-accent-strong);background:var(--cg-selection);border:1px solid #e6b6aa;border-radius:50%;justify-content:center;align-items:center;margin-left:auto;padding:0 .25rem;font-size:.58rem;display:inline-flex}.rail-end-session,.rail-end-session>svg{color:var(--cg-accent-strong)}.dashboard-rail .shared-sync-status{grid-column:auto;justify-content:flex-start;width:100%;padding-left:.65rem;padding-right:.65rem}.rail-divider{background:var(--cg-border-subtle);height:1px;margin:.6rem .65rem}.rail-stats{border-top:1px solid var(--cg-border-subtle);gap:.9rem;padding:.9rem .65rem;display:grid}.rail-streak{color:var(--cg-accent-strong);align-items:center;gap:.55rem;display:flex}.rail-streak-num{color:var(--cg-text-primary);font-family:var(--display);font-size:2.1rem;line-height:.8}.rail-streak-label,.rail-streak-copy{color:var(--cg-text-secondary);text-transform:uppercase;font-size:.58rem;line-height:1.25}.rail-xp-head{color:var(--cg-text-quiet);justify-content:space-between;gap:.5rem;font-size:.56rem;display:flex}.rail-xp-bar,.progress-bar{background:#d8d0c3;border-radius:999px;height:.35rem;margin-top:.45rem;overflow:hidden}.rail-xp-bar i,.progress-bar i{background:var(--cg-accent);border-radius:inherit;height:100%;display:block}.rail-profile{border-top:1px solid var(--cg-border-subtle);align-items:center;gap:.6rem;padding:.8rem .65rem;display:flex}.rail-avatar{width:2rem;height:2rem;color:var(--cg-surface-elevated);background:var(--cg-focus-surface);font-family:var(--display);border-radius:50%;place-items:center;font-size:1rem;display:grid}.rail-profile-name{min-width:0;color:var(--cg-text-primary);gap:.12rem;font-size:.64rem;font-weight:600;display:grid}.rail-profile-name small{color:var(--cg-text-quiet);font-size:.55rem;font-weight:500}.rail-study-action{min-height:2.9rem;color:var(--cg-surface-elevated);background:var(--cg-focus-surface);border-radius:.5rem;justify-content:center;align-items:center;gap:.45rem;font-size:.65rem;font-weight:600;text-decoration:none;transition:background-color .16s;display:flex}.rail-study-action:hover{background:#263846}.rail-study-action.is-live{background:var(--cg-accent-strong)}.dashboard-main,.main-stage{width:min(100%,var(--cg-content));margin-inline:auto}.dashboard-main{min-width:0;padding:2.25rem clamp(1rem,4vw,3rem) 4rem}.dashboard-header{justify-content:space-between;align-items:flex-end;gap:1.25rem;margin:0 0 2.6rem;display:flex}.dashboard-greeting{min-width:0}.dashboard-context{color:var(--cg-text-quiet);letter-spacing:.105em;margin-bottom:.7rem;display:block}.dashboard-header h1{max-width:45rem;color:var(--cg-text-primary);font-family:var(--display);letter-spacing:-.075em;text-wrap:balance;margin:0;font-size:clamp(2.7rem,6vw,4.9rem);font-weight:500;line-height:.92}.dashboard-greeting p{max-width:35rem;color:var(--cg-text-secondary);font-family:var(--display);margin:.75rem 0 0;font-size:1rem;line-height:1.45}.dashboard-header-meta{color:var(--cg-text-quiet);text-align:right;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.7rem 1rem;font-size:.62rem;display:flex}.dashboard-header-meta .header-streak{color:var(--cg-accent-strong);align-items:center;gap:.3rem;font-weight:600;display:inline-flex}.dashboard-top-grid{grid-template-columns:minmax(0,1.35fr) minmax(16rem,.65fr);align-items:stretch;gap:clamp(1.25rem,3vw,2.25rem);display:grid}.dashboard-today-col{align-content:start;gap:1.5rem;min-width:0;display:grid}.dashboard-panel,.collection-page-card,.collection-card,.practice-card,.bookmark-card,.settings-panel,.vocabulary-card,.vocabulary-empty,.session-complete{color:var(--cg-text-primary);background:var(--cg-surface);border:1px solid var(--cg-border-subtle);box-shadow:none}.dashboard-panel{border-radius:.75rem;padding:1.35rem}.today-panel,.activity-panel{background:0 0;border:0;padding-inline:0}.activity-panel{border-top:1px solid var(--cg-border-subtle);border-bottom:1px solid var(--cg-border-subtle);margin-top:2.4rem;padding-top:1.45rem}.panel-heading,.section-heading{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.panel-heading h2,.section-heading h2{color:var(--cg-text-primary);font-family:var(--display);letter-spacing:-.055em;margin:.35rem 0 0;font-size:clamp(1.6rem,3vw,2rem);font-weight:500;line-height:1}.section-link,.dashboard-footer a,.collection-action,.collection-caught-up,.text-action{min-height:2.75rem;color:var(--cg-accent-strong);background:0 0;border:0;align-items:center;gap:.28rem;font-size:.63rem;font-weight:600;text-decoration:none;display:inline-flex}.section-link:hover,.dashboard-footer a:hover,.collection-action:hover,.text-action:hover{color:var(--cg-accent)}.panel-note,.collection-empty-note{color:var(--cg-text-secondary);font-family:var(--display);font-size:.9rem;line-height:1.55}.collection-empty-note{margin:-1.2rem 0 1.5rem}.study-now-card,.review-hero{color:var(--cg-surface-elevated);background:var(--cg-focus-surface);box-shadow:var(--cg-shadow);border:0;border-radius:.85rem;position:relative;overflow:hidden}.study-now-card{min-height:25rem;padding:clamp(1.35rem,3vw,2rem)}.study-now-card:before,.review-hero:before{z-index:0;pointer-events:none;content:"";opacity:.17;background-image:radial-gradient(#fffdf833 .45px,#0000 .55px);background-size:7px 7px;position:absolute;inset:0}.study-now-card>*,.review-hero>*{z-index:1;position:relative}.study-now-top,.study-now-footer{justify-content:space-between;align-items:center;gap:.8rem;display:flex}.study-now-card .eyebrow,.study-now-footer,.review-hero .eyebrow{color:#b9c2c1}.live-dot{color:#d5ddda;align-items:center;gap:.35rem;font-size:.59rem;display:inline-flex}.live-dot i{background:#9bc0a9;border-radius:50%;width:.4rem;height:.4rem}.study-now-card h2{color:#fffdf8;max-width:31rem;font-family:var(--display);letter-spacing:-.075em;text-wrap:balance;margin:4.2rem 0 .8rem;font-size:clamp(2.5rem,6vw,4.7rem);font-weight:500;line-height:.9}.study-now-card.is-fresh h2{max-width:34rem}.study-now-card p,.review-hero p{color:#d0d8d6;max-width:32rem;font-family:var(--display);margin:0;font-size:.98rem;line-height:1.5}.study-now-fresh-ready{color:#c9d2d0;align-items:baseline;gap:.5rem;margin-top:1.55rem;font-size:.65rem;display:flex}.study-now-fresh-ready strong{color:#fffdf8;font-family:var(--display);letter-spacing:-.06em;font-size:2rem;font-weight:500}.study-now-actions,.review-hero-actions{flex-wrap:wrap;align-items:center;gap:.8rem;margin-top:1.5rem;display:flex}.study-now-actions .primary-cta,.review-hero-actions .primary-cta{width:auto;min-width:10rem}.study-now-card .primary-cta,.review-hero .primary-cta{color:var(--cg-surface-elevated)!important;background:var(--cg-accent)!important;border:1px solid var(--cg-accent)!important;box-shadow:0 3px 0 var(--cg-accent-strong)!important}.study-now-card .primary-cta:hover,.review-hero .primary-cta:hover{background:var(--cg-accent-strong)!important}.text-button.light{color:#dce4df;background:0 0;border:0;min-height:2.75rem;padding:0;font-size:.65rem;font-weight:600}.text-button.light:hover{color:#fffdf8}.study-now-footer{border-top:1px solid #fffdf826;padding-top:.8rem;font-size:.58rem;position:absolute;bottom:1.25rem;left:clamp(1.35rem,3vw,2rem);right:clamp(1.35rem,3vw,2rem)}.today-panel{min-height:0}.today-grid{grid-template-columns:repeat(2,1fr);gap:0 1.25rem;margin:1.45rem 0 0;display:grid}.today-grid div{border-top:1px solid var(--cg-border-subtle);padding:.8rem 0}.today-grid div:nth-child(2){border-top:1px solid var(--cg-accent)}.today-grid dt{color:var(--cg-text-quiet);font-size:.56rem}.today-grid dd{color:var(--cg-text-primary);font-family:var(--display);letter-spacing:-.055em;margin:.35rem 0 0;font-size:2rem;font-weight:500}.daily-goal{border-top:1px solid var(--cg-border-subtle);margin-top:1.25rem;padding-top:1rem}.daily-goal>div:first-child{color:var(--cg-text-secondary);justify-content:space-between;align-items:baseline;gap:1rem;font-size:.62rem;display:flex}.daily-goal strong{color:var(--cg-text-primary);font-family:var(--display);font-size:1.35rem;font-weight:500}.daily-goal-track{background:var(--cg-border-subtle);border-radius:999px;height:.35rem;margin-top:.65rem;overflow:hidden}.daily-goal-track span{background:var(--cg-accent);border-radius:inherit;height:100%;display:block}.daily-goal small,.today-fresh-note{color:var(--cg-text-quiet);font-family:var(--display);margin-top:.5rem;font-size:.78rem;line-height:1.4;display:block}.week-dots{grid-template-columns:repeat(7,1fr);gap:.45rem;margin:0;padding:0;list-style:none;display:grid}.week-dot{justify-items:center;gap:.45rem;display:grid}.week-dot-label{color:var(--cg-text-quiet);letter-spacing:.04em;text-transform:uppercase;font-size:.55rem}.week-dot-mark{background:var(--cg-border-subtle);border:0;border-radius:0;width:100%;height:.4rem;display:block}.week-dot.is-done .week-dot-mark{background:var(--cg-accent)}.week-dot.is-today .week-dot-mark{outline:2px solid var(--cg-text-primary);outline-offset:2px}.dashboard-section{margin-top:3.2rem}.collection-grid{gap:.8rem;margin-top:1rem;display:grid}.collection-card{border-radius:.65rem;padding:1.25rem}.collection-card-top{justify-content:space-between;gap:1rem;display:flex}.collection-card h3{color:var(--cg-text-primary);font-family:var(--display);letter-spacing:-.06em;margin:.5rem 0 0;font-size:1.9rem;font-weight:500;line-height:.95}.collection-card p{max-width:34rem;color:var(--cg-text-secondary);font-family:var(--display);margin:.85rem 0 1rem;font-size:.9rem;line-height:1.5}.collection-percent{color:var(--cg-accent-strong);font-family:var(--display);letter-spacing:-.05em;font-size:2rem}.segmented-progress{background:var(--cg-border-subtle);border-radius:999px;height:.45rem;display:flex;overflow:hidden}.segmented-progress span{min-width:0}.segment-unseen{background:#b8afa2}.segment-learning{background:var(--cg-accent)}.segment-mastered{background:var(--cg-focus)}.collection-metrics{color:var(--cg-text-secondary);flex-wrap:wrap;gap:.65rem 1.35rem;margin:.9rem 0 0;font-size:.61rem;display:flex}.collection-metrics strong{color:var(--cg-text-primary);font-family:var(--display);font-size:.9rem;font-weight:500}.collection-action{margin-top:.55rem;padding:0}.practice-section{margin-bottom:2rem}.practice-grid{gap:.65rem;margin-top:1rem;display:grid}.practice-card{text-align:left;min-height:4.25rem;transition:color .16s ease,background-color .16s ease,border-color .16s ease,transform .16s var(--ease-out);border-radius:.55rem;grid-template-columns:1.5rem minmax(0,1fr) 1rem;align-items:center;gap:.75rem;padding:.85rem 1rem;display:grid}.practice-card>svg:first-child{color:var(--cg-accent)}.practice-card>svg:last-child{color:var(--cg-text-quiet)}.practice-card span{gap:.18rem;display:grid}.practice-card strong{color:var(--cg-text-primary);font-size:.72rem}.practice-card small{color:var(--cg-text-secondary);font-family:var(--display);font-size:.78rem;line-height:1.35}.practice-card:hover{background:var(--cg-surface-elevated);border-color:var(--cg-border-strong);transform:translate(2px)}.practice-card:disabled{cursor:not-allowed;opacity:.58;transform:none}.dashboard-footer{color:var(--cg-text-quiet);flex-wrap:wrap;justify-content:space-between;gap:.75rem;padding-top:1.3rem;font-size:.6rem;display:flex}.page-header{margin-bottom:2.6rem}.collections-toolbar{justify-content:flex-end;align-items:flex-end;margin:-1.4rem 0 1.1rem;display:flex}.sort-control{min-width:10rem;color:var(--cg-text-quiet);gap:.3rem;font-size:.58rem;display:grid}.sort-control select,.settings-field select{min-height:2.5rem;color:var(--cg-text-primary);background:var(--cg-surface-elevated);border:1px solid var(--cg-border-subtle);border-radius:.45rem;padding:0 2rem 0 .7rem;font-size:.64rem}.sort-control{position:relative}.sort-control svg{pointer-events:none;color:var(--cg-text-quiet);position:absolute;bottom:.72rem;right:.65rem}.collection-page-grid{gap:.85rem;display:grid}.collection-page-card{border-radius:.7rem;padding:clamp(1.2rem,3vw,1.65rem)}.collection-page-card h2{color:var(--cg-text-primary);font-family:var(--display);letter-spacing:-.065em;margin:.55rem 0 .45rem;font-size:clamp(2rem,4vw,2.8rem);font-weight:500;line-height:.95}.collection-page-card p{max-width:42rem;color:var(--cg-text-secondary);font-family:var(--display);margin:0;font-size:.95rem;line-height:1.5}.collection-stat-row{grid-template-columns:repeat(4,1fr);gap:.55rem;margin:1.45rem 0;display:grid}.collection-stat-row span{border-top:1px solid var(--cg-border-subtle);gap:.25rem;padding-top:.6rem;display:grid}.collection-stat-row span:nth-child(2){border-top-color:var(--cg-accent)}.collection-stat-row strong{color:var(--cg-text-primary);font-family:var(--display);letter-spacing:-.05em;font-size:1.7rem;font-weight:500}.collection-stat-row small{color:var(--cg-text-quiet);font-size:.54rem}.collection-page-footer{color:var(--cg-text-quiet);justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;font-size:.6rem;display:flex}.collection-action-button,.bookmarks-toolbar .primary-cta{min-height:2.75rem;padding-inline:.9rem;color:var(--cg-surface-elevated)!important;background:var(--cg-accent)!important;border:1px solid var(--cg-accent)!important;box-shadow:0 3px 0 var(--cg-accent-strong)!important;border-radius:.5rem!important;font-size:.64rem!important}.collection-action-button:hover,.bookmarks-toolbar .primary-cta:hover{background:var(--cg-accent-strong)!important}.review-hero{margin-bottom:1.35rem;padding:clamp(1.35rem,3vw,2rem)}.review-hero h2{color:#fffdf8;max-width:36rem;font-family:var(--display);letter-spacing:-.075em;text-wrap:balance;margin:3rem 0 .8rem;font-size:clamp(2.4rem,6vw,4.25rem);font-weight:500;line-height:.9}.review-hero.is-clear h2{margin-top:1.8rem}.review-panels{grid-template-columns:minmax(0,1.15fr) minmax(15rem,.85fr);gap:.85rem;margin-bottom:.85rem;display:grid}.retention-body{gap:.8rem;margin-top:1.3rem;display:grid}.retention-figure{align-items:baseline;gap:.5rem;display:flex}.retention-figure strong,.progress-figure strong{color:var(--cg-text-primary);font-family:var(--display);letter-spacing:-.07em;font-size:3rem;font-weight:500;line-height:.9}.retention-figure small,.progress-figure small{color:var(--cg-text-secondary);font-size:.62rem}.retention-bar{background:var(--cg-border-subtle);border-radius:0;height:.5rem;position:relative;overflow:visible}.retention-bar>i{background:var(--cg-accent);height:100%;display:block}.retention-bar .retention-target{background:var(--cg-text-primary);opacity:.65;width:2px;position:absolute;top:-.25rem;bottom:-.25rem}.retention-read{color:var(--cg-text-secondary);font-family:var(--display);margin:0;font-size:.82rem;line-height:1.45}.forecast-panel{margin-top:.85rem}.review-panels .forecast-panel{margin-top:0}.forecast-grid{grid-template-columns:repeat(3,1fr);gap:0;margin-top:1.35rem;display:grid}.forecast-grid>div{gap:.35rem;padding:.2rem .75rem;display:grid;border-left:1px solid var(--cg-border-subtle)!important;box-shadow:none!important;background:0 0!important;border-radius:0!important}.forecast-grid>div:first-child{padding-left:0;border-left:0!important}.forecast-grid span{color:var(--cg-text-quiet);font-size:.58rem}.forecast-grid strong{color:var(--cg-text-primary);font-family:var(--display);letter-spacing:-.05em;font-size:2rem;font-weight:500}.due-collections-panel{margin-top:.85rem}.due-collection-list{margin-top:.95rem;display:grid}.due-collection-row,.category-row{border-top:1px solid var(--cg-border-subtle);justify-content:space-between;align-items:center;gap:.8rem;padding:.8rem 0;display:flex}.due-collection-name{color:var(--cg-text-primary);align-items:center;gap:.5rem;font-size:.72rem;font-weight:600;display:inline-flex}.due-collection-name svg{color:var(--cg-text-quiet)}.due-collection-name small{color:var(--cg-text-quiet);font-size:.59rem}.cram-row{border:1px dashed var(--cg-border-strong);background:0 0;border-radius:.55rem;justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;padding:1rem 1.2rem;display:flex}.cram-row-copy p{max-width:42rem;color:var(--cg-text-secondary);font-family:var(--display);margin:.35rem 0 0;font-size:.82rem}.bookmarks-empty{max-width:38rem}.bookmarks-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.8rem;margin-bottom:1.1rem;display:flex}.bookmarks-sort{border-bottom:1px solid var(--cg-border-subtle);background:0 0;gap:0;padding:0;display:inline-flex}.bookmarks-sort button{min-height:2.75rem;color:var(--cg-text-quiet);background:0 0;border:0;border-bottom:2px solid #0000;padding:0 .7rem;font-size:.61rem;font-weight:600}.bookmarks-sort button:hover,.bookmarks-sort button.is-current{color:var(--cg-text-primary);border-bottom-color:var(--cg-accent);box-shadow:none;background:0 0}.bookmark-list{grid-template-columns:repeat(auto-fill,minmax(20rem,1fr));gap:.8rem;margin:0;padding:0;list-style:none;display:grid}.bookmark-card{border-radius:.65rem;justify-content:space-between;align-items:flex-start;gap:.9rem;min-width:0;padding:1.2rem;display:flex}.bookmark-sentence,.bookmark-translation{overflow-wrap:anywhere}.bookmark-sentence{color:var(--cg-text-primary);font-family:var(--display);margin:0;font-size:1.4rem;line-height:1.2}.bookmark-translation{color:var(--cg-text-secondary);font-family:var(--display);margin:.55rem 0 0;font-size:.82rem;line-height:1.4}.bookmark-meta{flex-wrap:wrap;align-items:center;gap:.6rem .9rem;margin-top:1rem;display:flex}.bookmark-tag{color:var(--cg-text-quiet);font-size:.53rem}.bookmark-mastery{color:var(--cg-text-quiet);align-items:center;gap:.35rem;font-size:.53rem;display:inline-flex}.mastery-pips{gap:.17rem;display:inline-flex}.mastery-pips i{background:var(--cg-border-subtle);border-radius:50%;width:.35rem;height:.35rem}.mastery-pips i.is-filled{background:var(--cg-accent)}.bookmark-remove{width:2.75rem;height:2.75rem;color:var(--cg-accent-strong);background:0 0;border:1px solid #0000;border-radius:50%;flex:none;place-items:center;display:grid}.bookmark-remove:hover{background:var(--cg-selection);border-color:#e6b6aa}.stats-kpi-grid{border-top:1px solid var(--cg-border-subtle);grid-template-columns:repeat(5,minmax(0,1fr));gap:0;margin-bottom:2.2rem;display:grid}.stats-kpi-grid article,.stats-kpi-grid>article:nth-last-child(-n+2){border:0;border-top:2px solid #0000;border-right:1px solid var(--cg-border-subtle);background:0 0;border-radius:0;gap:.35rem;min-height:7.3rem;padding:.9rem 1rem .5rem 0;display:grid;grid-column:auto!important}.stats-kpi-grid article+article{padding-left:1rem}.stats-kpi-grid article:nth-child(3){border-top-color:var(--cg-accent)}.stats-kpi-grid strong{color:var(--cg-text-primary);font-family:var(--display);letter-spacing:-.07em;font-size:2.6rem;font-weight:500;line-height:.9}.stats-kpi-grid small{color:var(--cg-text-secondary);font-family:var(--display);font-size:.75rem;line-height:1.35}.progress-panel-body{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:2rem;margin-top:1.35rem;display:grid}.progress-block+.progress-block{border-left:1px solid var(--cg-border-subtle);padding-left:2rem}.progress-block-head{justify-content:space-between;gap:.5rem;display:flex}.progress-figure{align-items:baseline;gap:.6rem;margin-top:.85rem;display:flex}.progress-foot{color:var(--cg-text-quiet);text-transform:none;margin-top:.55rem;font-size:.57rem;display:block}.retention-sparkline{width:100%;height:2.2rem;margin-top:.85rem;display:block;overflow:visible}.retention-sparkline-target{stroke:var(--cg-border-strong);stroke-dasharray:2 2;stroke-width:1px}.retention-sparkline-line{fill:none;stroke:var(--cg-accent);stroke-width:2px;vector-effect:non-scaling-stroke}.stats-heatmap-panel,.category-panel{margin-top:.85rem}.stats-heatmap-summary{color:var(--cg-text-secondary);font-family:var(--display);font-size:.88rem}.stats-heatmap-body{margin-top:1.2rem}.heatmap-cell[data-level="0"]{background:var(--cg-border-subtle)}.heatmap-cell[data-level="1"]{background:#d549323d}.heatmap-cell[data-level="2"]{background:#d549326e}.heatmap-cell[data-level="3"]{background:#d54932ad}.heatmap-cell[data-level="4"]{background:var(--cg-accent)}.category-list{margin-top:1.1rem;display:grid}.category-row{border-bottom:0;padding:.85rem 0}.category-row>span{color:var(--cg-text-primary);gap:.2rem;font-size:.72rem;font-weight:600;display:grid}.category-row small{color:var(--cg-text-quiet);font-family:var(--display);letter-spacing:0;text-transform:none;font-size:.72rem;font-weight:400}.category-row strong{color:var(--cg-accent-strong);font-family:var(--display);font-size:1.55rem;font-weight:500}.app-shell{min-height:100dvh;color:var(--cg-text-primary);background:var(--cg-canvas);display:grid}.main-stage{min-height:100dvh;padding:max(1.2rem,env(safe-area-inset-top))clamp(1rem,4vw,3rem)max(1.2rem,env(safe-area-inset-bottom))}.session-header{width:min(100%,var(--cg-study));justify-content:space-between;align-items:flex-start;gap:1rem;margin:0 auto 1.25rem;display:flex}.session-identity{gap:.6rem;min-width:0;display:grid}.session-context{color:var(--cg-text-quiet);flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.session-separator{color:var(--cg-border-strong)}.cram-safe-note{width:fit-content;color:var(--cg-text-secondary);border:1px dashed var(--cg-border-strong);border-radius:.25rem;padding:.2rem .45rem;font-size:.55rem;display:inline-flex}.progress-cluster{justify-items:end;gap:.55rem;min-width:10rem;display:grid}.session-number{color:var(--cg-text-secondary);font-size:.61rem}.tick-progress{justify-content:flex-end;gap:.25rem;width:100%;display:flex}.tick-progress span{background:var(--cg-border-subtle);width:1rem;height:.3rem;display:block}.tick-progress span.is-filled,.tick-progress span.is-current{background:var(--cg-accent)}.shortcut-chip{color:var(--cg-text-quiet);font-size:.56rem}.study-layout{width:min(100%,var(--cg-study));grid-template-columns:minmax(0,1fr) minmax(15rem,.34fr);align-items:start;gap:clamp(1rem,3vw,2rem);margin:0 auto;display:grid}.study-card{color:var(--cg-text-primary);background:var(--cg-surface-elevated);border:1px solid var(--cg-border-subtle);box-shadow:var(--cg-shadow);border-radius:.85rem;position:relative;overflow:visible}.study-card:before{opacity:.22;background-image:radial-gradient(#17212d2b .45px,#0000 .55px);background-size:7px 7px}.card-topline{padding:1.25rem 1.4rem 0}.prompt-label{color:var(--cg-text-secondary);font-size:.6rem}.prompt-dot{background:var(--cg-accent);border-radius:50%;width:.4rem;height:.4rem;box-shadow:0 0 0 4px #d549321f}.audio-compact{min-height:2.75rem;color:var(--cg-focus);border-radius:.4rem;padding:0 .6rem;font-size:.64rem}.audio-compact:hover{color:var(--cg-text-primary);background:#e7edef}.sentence-wrap{text-align:center;padding:clamp(3.8rem,8vw,6rem) clamp(1.4rem,5vw,4.2rem) 3.2rem}.sentence{max-width:52rem;color:var(--cg-text-primary);font-family:var(--display);letter-spacing:-.075em;overflow-wrap:anywhere;text-wrap:balance;margin:0 auto;font-size:clamp(2.35rem,5vw,3.75rem);font-weight:500;line-height:1.02}.cloze-slot{border-bottom:.07em solid var(--cg-accent);min-width:2.4em;padding:0 .12em .04em}.cloze-slot:has(.cloze-word){border-bottom-color:var(--cg-focus)}.cloze-word{color:var(--cg-accent-strong)}.sentence-word:hover,.sentence-word.is-selected{color:var(--cg-accent-strong);background:var(--cg-selection);border-bottom-color:var(--cg-accent)}.answer-area{gap:.8rem;padding:.15rem 1.4rem 1.4rem}.answer-input{height:3.35rem;color:var(--cg-text-primary);background:var(--cg-surface);border:1px solid var(--cg-border-strong);border-radius:.5rem;padding-inline:1rem 3rem;font-size:1rem}.answer-input:focus{border-color:var(--cg-focus);box-shadow:0 0 0 3px #35627a26}.input-tail{color:var(--cg-text-quiet)}.primary-cta,.next-cta{letter-spacing:.04em;min-height:3.35rem;color:var(--cg-surface-elevated)!important;background:var(--cg-accent)!important;border:1px solid var(--cg-accent)!important;box-shadow:0 3px 0 var(--cg-accent-strong)!important;border-radius:.5rem!important;font-size:.72rem!important}.primary-cta:hover,.next-cta:hover{background:var(--cg-accent-strong)!important}.primary-cta:active,.next-cta:active{transform:translateY(2px);box-shadow:0 1px 0 var(--cg-accent-strong)!important}.primary-cta:disabled,.next-cta:disabled{color:var(--cg-text-quiet)!important;background:#ddd6cb!important;border-color:#c3baad!important;box-shadow:0 2px #b8aea1!important}.choice-list{gap:.55rem}.choice-card{min-height:3.35rem;color:var(--cg-text-primary);background:var(--cg-surface);border:1px solid var(--cg-border-subtle);border-radius:.5rem;padding:.65rem .9rem}.choice-card:hover{border-color:var(--cg-border-strong);background:var(--cg-surface-elevated);transform:translate(2px)}.choice-card.is-selected{color:var(--cg-text-primary);background:var(--cg-selection);border-color:var(--cg-accent);box-shadow:0 0 0 2px #d549321a}.choice-index{color:var(--cg-accent-strong)}.feedback-stamp{background:#edf4ee;border:1px solid #b9d0bf;border-radius:.5rem;margin:.2rem 1.4rem 1.3rem;padding:.9rem}.feedback-stamp.is-wrong{background:#f9eae5;border-color:#e1b6aa}.stamp-icon{background:var(--cg-success);border-radius:50%;width:1.9rem;height:1.9rem}.is-wrong .stamp-icon{background:var(--cg-danger)}.feedback-kicker{color:var(--cg-success)}.is-wrong .feedback-kicker{color:var(--cg-danger)}.feedback-stamp p{color:var(--cg-text-primary);font-family:var(--display)}.hint-ladder{border-left:2px solid var(--cg-focus);background:#eef1ee;border-radius:0;margin:-.15rem 1.4rem 1.2rem;padding:.85rem .9rem}.hint-heading{color:var(--cg-focus)}.hint-ladder p{color:var(--cg-text-secondary)}.hint-ladder p span{color:var(--cg-focus);border-color:#9eafb7}.post-answer{padding:.15rem 1.4rem 1.4rem}.complete-sentence{color:var(--cg-text-primary);font-size:clamp(1.5rem,3.5vw,2.2rem)}.translation{color:var(--cg-text-secondary)}.grammar-note{color:var(--cg-focus)}.feedback-actions button,.confused-button{min-height:2.75rem;color:var(--cg-text-secondary);border:1px solid var(--cg-border-subtle);border-radius:.45rem}.feedback-actions button:hover,.confused-button:hover{color:var(--cg-text-primary);background:var(--cg-canvas);border-color:var(--cg-border-strong)}.inline-explain{background:#e7edef;border:1px solid #c0d0d7;border-radius:.5rem;margin:0 1.4rem 1.2rem;padding:1rem}.inline-explain-title{color:var(--cg-focus)}.inline-explain p{color:var(--cg-text-primary)}.action-dock{gap:.55rem;margin-top:.85rem}.dock-action,.dock-more{min-height:3rem;color:var(--cg-text-secondary);border-radius:.45rem}.dock-action:hover,.dock-more:hover{color:var(--cg-text-primary);background:var(--cg-surface)}.dock-action.is-marked{color:var(--cg-accent-strong);background:var(--cg-selection)}.more-popover{z-index:20;background:var(--cg-surface-elevated);border:1px solid var(--cg-border-subtle);box-shadow:var(--cg-shadow-small);border-radius:.55rem;padding:.35rem}.more-popover button{min-height:2.75rem;color:var(--cg-text-secondary)}.more-popover button:hover{color:var(--cg-text-primary);background:var(--cg-canvas)}.insight-tray{min-width:0;display:block}.vocabulary-card,.vocabulary-empty{box-shadow:none;border-radius:.65rem}.vocabulary-card{padding:1.15rem}.vocabulary-card h2{color:var(--cg-text-primary);font-size:2.1rem}.vocabulary-pos,.vocabulary-section-label,.vocabulary-source{color:var(--cg-text-quiet)}.vocabulary-translation{color:var(--cg-accent-strong)}.vocabulary-examples{border-top-color:var(--cg-border-subtle)}.vocabulary-example-de{color:var(--cg-text-primary)}.vocabulary-example-en,.vocabulary-empty p{color:var(--cg-text-secondary)}.vocabulary-empty{background:0 0;border-style:dashed}.vocabulary-empty-icon{color:var(--cg-focus)}.session-complete{width:min(100%,36rem);box-shadow:var(--cg-shadow-small);border-radius:.85rem;margin:clamp(3rem,13vh,9rem) auto;padding:clamp(1.6rem,5vw,3.2rem)}.completion-stamp{width:2.5rem;height:2.5rem;color:var(--cg-surface-elevated);background:var(--cg-success);border-radius:.45rem;margin-bottom:1.4rem}.session-complete h1{color:var(--cg-text-primary);font-size:clamp(2.6rem,7vw,4.7rem)}.session-complete>p{color:var(--cg-text-secondary);font-family:var(--display);font-size:.95rem}.completion-stats{margin:1.7rem 0}.completion-stats div{padding:.8rem .6rem}.completion-stats dd{color:var(--cg-text-primary)}.settings-overlay{z-index:40;padding:max(1rem,env(safe-area-inset-top))max(1rem,3vw)max(1rem,env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#17212d52;place-items:start end;display:grid;position:fixed;inset:0}.settings-panel{z-index:41;width:min(var(--cg-dialog),calc(100vw - 2rem));background:var(--cg-surface-elevated);border:1px solid var(--cg-border-subtle);max-height:calc(100dvh - 2rem);box-shadow:var(--cg-shadow);border-radius:.7rem;padding:1.35rem;overflow-y:auto;position:relative!important;top:auto!important;left:auto!important;right:auto!important}.settings-panel-heading h2{color:var(--cg-text-primary);font-family:var(--display);font-size:2rem}.settings-close,.settings-voice-preview{color:var(--cg-text-secondary);border:1px solid var(--cg-border-subtle);background:0 0;border-radius:.45rem}.settings-close{width:2.75rem;height:2.75rem}.settings-close:hover,.settings-voice-preview:hover{color:var(--cg-text-primary);background:var(--cg-canvas)}.settings-field{border-top-color:var(--cg-border-subtle);min-height:3.6rem}.settings-field strong{color:var(--cg-text-primary);font-size:.68rem}.settings-field small{color:var(--cg-text-secondary);font-family:var(--display);letter-spacing:0;text-transform:none;font-size:.75rem}.settings-field input[type=range]{accent-color:var(--cg-accent)}.settings-account-status{border-top-color:var(--cg-border-subtle)}.settings-account-status strong{color:var(--cg-text-primary)}.settings-account-status small{color:var(--cg-text-secondary);font-family:var(--display);font-size:.75rem}.settings-account-signin{min-height:2.75rem;color:var(--cg-text-primary);background:var(--cg-canvas);border-color:var(--cg-border-subtle);border-radius:.45rem}.settings-account-signin:hover{color:var(--cg-surface-elevated);background:var(--cg-focus-surface)}.mobile-nav-layer{z-index:35;position:fixed;inset:0}.mobile-nav-scrim{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#17212d59;border:0;width:100%;position:absolute;inset:0}.mobile-nav-sheet{width:min(21rem,100vw - 2.5rem);padding:max(1.1rem,env(safe-area-inset-top))1.2rem max(1.2rem,env(safe-area-inset-bottom));color:var(--cg-text-primary);background:var(--cg-surface-elevated);border-right:1px solid var(--cg-border-subtle);box-shadow:var(--cg-shadow);position:absolute;top:0;bottom:0;left:0;overflow-y:auto}.mobile-nav-heading{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.7rem;display:flex}.mobile-nav-heading h2{color:var(--cg-text-primary);font-family:var(--display);letter-spacing:-.06em;margin:.4rem 0 0;font-size:2rem;font-weight:500}.mobile-nav-close{width:2.75rem;height:2.75rem;color:var(--cg-text-secondary);border:1px solid var(--cg-border-subtle);background:0 0;border-radius:.45rem;place-items:center;display:grid}.mobile-nav-study{min-height:4rem;color:var(--cg-surface-elevated);background:var(--cg-focus-surface);border-radius:.5rem;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.7rem;margin-bottom:1.4rem;padding:.8rem .9rem;text-decoration:none;display:grid}.mobile-nav-study.is-live{background:var(--cg-accent-strong)}.mobile-nav-study span{gap:.15rem;display:grid}.mobile-nav-study strong{font-size:.7rem}.mobile-nav-study small{color:#ced8d5;font-family:var(--display);font-size:.75rem}.mobile-nav-group{gap:.15rem;margin-top:1.35rem;display:grid}.mobile-nav-label{color:var(--cg-text-quiet);letter-spacing:.14em;padding:0 .6rem .4rem;font-size:.56rem}.mobile-nav-group a,.mobile-nav-settings{min-height:2.8rem;color:var(--cg-text-secondary);text-align:left;background:0 0;border:0;border-radius:.4rem;align-items:center;gap:.65rem;padding:0 .6rem;font-size:.68rem;font-weight:600;text-decoration:none;display:flex}.mobile-nav-group a:hover,.mobile-nav-group a.is-current,.mobile-nav-settings:hover{color:var(--cg-text-primary);background:var(--cg-canvas)}.mobile-nav-group a.is-current{box-shadow:inset 3px 0 0 var(--cg-accent)}.mobile-nav-settings{border-top:1px solid var(--cg-border-subtle);border-radius:0;width:100%;margin-top:1.5rem}.mobile-mode-sheet{background:var(--cg-surface-elevated);border-top-color:var(--cg-border-subtle);box-shadow:var(--cg-shadow);border-radius:.85rem .85rem 0 0}@media (min-width:900px){.shared-app-header{display:none}.dashboard-shell{grid-template-columns:var(--cg-rail)minmax(0,1fr);display:grid}.dashboard-rail{border-right:1px solid var(--cg-border-subtle);flex-direction:column;justify-content:space-between;height:100dvh;padding:2rem 1.45rem 1.4rem;display:flex;position:sticky;top:0}.dashboard-main{padding-top:clamp(3rem,6vw,5.5rem);padding-left:clamp(2rem,5vw,5.5rem);padding-right:clamp(2rem,5vw,5.5rem)}.app-shell{grid-template-columns:var(--cg-rail)minmax(0,1fr)}.desktop-rail{border-right:1px solid var(--cg-border-subtle);flex-direction:column;justify-content:space-between;height:100dvh;padding:2rem 1.45rem 1.4rem;display:flex;position:sticky;top:0}.desktop-rail .rail-nav{margin-top:3rem}.desktop-rail .rail-bottom{border-top:1px solid var(--cg-border-subtle);padding-top:1rem}.desktop-rail .rail-streak{padding:.5rem .65rem}.main-stage{padding-top:clamp(2rem,5vw,4.5rem);padding-left:clamp(2rem,5vw,5.5rem);padding-right:clamp(2rem,5vw,5.5rem)}.mobile-topbar{display:none}}@media (max-width:899px){.shared-app-header{grid-template-columns:auto minmax(0,1fr) auto auto auto}.shared-menu-action{grid-column:2;justify-self:start}.shared-settings-action{grid-column:4}.shared-study-action{grid-column:5}.shared-study-action span{display:none}.dashboard-main{padding-top:1.75rem}.dashboard-header{flex-direction:column;align-items:flex-start;margin-bottom:2rem}.dashboard-header h1{max-width:31rem;font-size:clamp(2.5rem,11vw,4.1rem)}.dashboard-greeting p{font-size:.95rem}.dashboard-header-meta{text-align:left;justify-content:flex-start}.dashboard-top-grid,.review-panels,.progress-panel-body{grid-template-columns:1fr}.study-layout{grid-template-columns:minmax(0,1fr);width:100%}.study-surface{width:100%}.study-now-card{min-height:23rem}.study-now-card h2,.review-hero h2{margin-top:3.3rem}.progress-block+.progress-block{border-top:1px solid var(--cg-border-subtle);border-left:0;padding-top:1.4rem;padding-left:0}.bookmark-list{grid-template-columns:1fr}.stats-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stats-kpi-grid article,.stats-kpi-grid>article:nth-last-child(-n+2){border-right:0;min-height:6.5rem;padding-left:0}.stats-kpi-grid article+article{padding-left:.85rem}.stats-kpi-grid article:nth-child(2n){border-left:1px solid var(--cg-border-subtle)}.review-panels .forecast-panel{margin-top:0}.insight-tray{display:none}.mobile-vocabulary-sheet{right:.8rem;bottom:max(.8rem,env(safe-area-inset-bottom));left:.8rem}.mobile-topbar{justify-content:space-between;align-items:center;margin-bottom:1.7rem;display:flex}.mobile-menu,.main-stage .icon-button{width:2.75rem;height:2.75rem;color:var(--cg-text-secondary);border:1px solid var(--cg-border-subtle);background:0 0;border-radius:.45rem}.mobile-menu:hover,.main-stage .icon-button:hover{color:var(--cg-text-primary);background:var(--cg-surface)}}@media (max-width:37rem){.dashboard-main,.main-stage{padding-left:1rem;padding-right:1rem}.main-stage{padding-bottom:max(.8rem,env(safe-area-inset-bottom))}.shared-app-header{padding-left:.75rem;padding-right:.75rem}.shared-brand span,.shared-sync-status span{display:none}.shared-sync-status{padding:0}.study-now-card,.review-hero{min-height:21rem;padding:1.2rem}.study-now-card h2,.review-hero h2{font-size:clamp(2.35rem,13vw,3.6rem)}.study-now-footer{flex-direction:column;align-items:flex-start;gap:.25rem;bottom:1rem;left:1.2rem;right:1.2rem}.collection-stat-row{gap:.3rem}.collection-stat-row strong{font-size:1.45rem}.collection-page-footer,.cram-row{flex-direction:column;align-items:flex-start}.forecast-grid strong{font-size:1.6rem}.session-header{gap:.6rem}.progress-cluster{min-width:6rem}.tick-progress span{width:.55rem}.shortcut-chip{display:none}.sentence-wrap{padding:3.2rem 1.1rem 2.6rem}.sentence{font-size:clamp(2.1rem,12vw,3.4rem)}.answer-area,.post-answer{padding-left:1.1rem;padding-right:1.1rem}.feedback-stamp,.hint-ladder,.inline-explain{margin-left:1.1rem;margin-right:1.1rem}.action-dock,.action-dock:has(.next-cta){grid-template-columns:1fr 1fr}.action-dock .next-cta{grid-area:1/1/auto/-1}.action-dock.is-study{max-width:none}.action-dock.is-study .dock-action{grid-column:1}.action-dock.is-study .dock-more{grid-column:2}.completion-stats{grid-template-columns:1fr}.completion-stats div+div{border-top:1px solid var(--cg-border-subtle);border-left:0;padding-top:.75rem}}@media (min-width:56.25rem) and (max-height:48rem){.main-stage{padding-top:clamp(1rem,2.4vh,1.25rem);padding-bottom:max(.35rem,env(safe-area-inset-bottom))}.session-header{margin-bottom:.75rem}.card-topline{padding-top:.9rem}.sentence-wrap{padding-top:clamp(1.8rem,4vh,2.35rem);padding-bottom:clamp(1rem,2vh,1.35rem)}.sentence{font-size:clamp(2.2rem,4.6vw,3.35rem);line-height:1.05}.answer-area{gap:.65rem;padding-bottom:.95rem}.primary-cta,.next-cta{min-height:3rem}.choice-list{gap:.4rem}.choice-card{min-height:3rem;padding-block:.45rem}.action-dock{margin-top:.65rem}.study-layout:has(.choice-list){grid-template-columns:minmax(0,1fr)}.study-layout:has(.choice-list) .insight-tray{display:none}.study-layout:has(.choice-list) .insight-tray.has-selection{grid-column:1;margin-top:1rem;display:block}.study-layout.has-feedback .sentence-wrap{padding-top:clamp(1.3rem,2.8vh,1.8rem);padding-bottom:clamp(.75rem,1.4vh,1rem)}.study-layout.has-feedback .feedback-stamp{margin-bottom:.55rem;padding:.55rem}.study-layout.has-feedback .post-answer{padding-bottom:.4rem}.study-layout.has-feedback .complete-sentence{font-size:clamp(1.35rem,3vw,2rem);line-height:1.15}.study-layout.has-feedback .feedback-actions{margin-top:.5rem}.study-layout.has-feedback .action-dock{margin-top:.25rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-duration{syntax:"*";inherits:false}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0));filter:blur(var(--tw-enter-blur,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0)scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0));filter:blur(var(--tw-exit-blur,0))}}
