/*! tailwindcss v4.2.1 | 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{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--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-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--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-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@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;--spacing:.25rem;--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{box-sizing:border-box;border:0 solid;margin:0;padding:0}::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;-webkit-text-decoration:inherit;-webkit-text-decoration: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]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.invisible{visibility:hidden}.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}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.isolate{isolation:isolate}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.table\!{display:table!important}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.italic{font-style:italic}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.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)}.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}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.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\!{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!important;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function))!important;transition-duration:var(--tw-duration,var(--default-transition-duration))!important}}@font-face{font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(/katex/fonts/KaTeX_AMS-Regular.woff2)format("woff2")}@font-face{font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(/katex/fonts/KaTeX_Caligraphic-Bold.woff2)format("woff2")}@font-face{font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(/katex/fonts/KaTeX_Caligraphic-Regular.woff2)format("woff2")}@font-face{font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(/katex/fonts/KaTeX_Fraktur-Bold.woff2)format("woff2")}@font-face{font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(/katex/fonts/KaTeX_Fraktur-Regular.woff2)format("woff2")}@font-face{font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(/katex/fonts/KaTeX_Main-Bold.woff2)format("woff2")}@font-face{font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(/katex/fonts/KaTeX_Main-BoldItalic.woff2)format("woff2")}@font-face{font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(/katex/fonts/KaTeX_Main-Italic.woff2)format("woff2")}@font-face{font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(/katex/fonts/KaTeX_Main-Regular.woff2)format("woff2")}@font-face{font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(/katex/fonts/KaTeX_Math-BoldItalic.woff2)format("woff2")}@font-face{font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(/katex/fonts/KaTeX_Math-Italic.woff2)format("woff2")}@font-face{font-family:KaTeX_SansSerif;font-style:normal;font-weight:700;src:url(/katex/fonts/KaTeX_SansSerif-Bold.woff2)format("woff2")}@font-face{font-family:KaTeX_SansSerif;font-style:italic;font-weight:400;src:url(/katex/fonts/KaTeX_SansSerif-Italic.woff2)format("woff2")}@font-face{font-family:KaTeX_SansSerif;font-style:normal;font-weight:400;src:url(/katex/fonts/KaTeX_SansSerif-Regular.woff2)format("woff2")}@font-face{font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(/katex/fonts/KaTeX_Script-Regular.woff2)format("woff2")}@font-face{font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(/katex/fonts/KaTeX_Size1-Regular.woff2)format("woff2")}@font-face{font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(/katex/fonts/KaTeX_Size2-Regular.woff2)format("woff2")}@font-face{font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(/katex/fonts/KaTeX_Size3-Regular.woff2)format("woff2")}@font-face{font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(/katex/fonts/KaTeX_Size4-Regular.woff2)format("woff2")}@font-face{font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(/katex/fonts/KaTeX_Typewriter-Regular.woff2)format("woff2")}.katex{text-indent:0;text-rendering:auto;font:1.21em/1.2 KaTeX_Main,Times New Roman,serif}.katex *{border-color:currentColor;-ms-high-contrast-adjust:none!important}.katex .katex-version:after{content:"0.16.22"}.katex .katex-mathml{clip:rect(1px,1px,1px,1px);border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.katex .katex-html>.newline{display:block}.katex .base{white-space:nowrap;width:min-content;position:relative}.katex .base,.katex .strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;table-layout:fixed;display:inline-table}.katex .vlist-r{display:table-row}.katex .vlist{vertical-align:bottom;display:table-cell;position:relative}.katex .vlist>span{height:0;display:block;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{width:0;overflow:hidden}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{vertical-align:bottom;width:2px;min-width:2px;font-size:1px;display:table-cell}.katex .vbox{flex-direction:column;align-items:baseline;display:inline-flex}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{flex-direction:row;display:inline-flex}.katex .thinbox{width:0;max-width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;width:100%;display:inline-block}.katex .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .clap,.katex .llap,.katex .rlap{width:0;position:relative}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;width:100%;display:inline-block}.katex .hdashline{border-bottom-style:dashed;width:100%;display:inline-block}.katex .sqrt>.root{margin-left:.277778em;margin-right:-.555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.833333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.16667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.33333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.66667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.45667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.14667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.714286em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.857143em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.14286em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.28571em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.42857em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.71429em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.05714em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.46857em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.96286em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.55429em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.11111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.33333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.30444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.76444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.416667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.583333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.833333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.72833em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.07333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.347222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.416667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.486111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.694444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.833333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.44028em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.72778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.289352em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.347222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.405093em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.462963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.520833em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.578704em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.694444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.833333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.20023em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.43981em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.24108em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.289296em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.337512em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.385728em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.433944em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.48216em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.578592em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.694311em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.833173em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.19961em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.200965em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.241158em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.281351em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.321543em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.361736em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.401929em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.482315em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.578778em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.694534em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.833601em}.katex .fontsize-ensurer.reset-size11.size11,.katex .sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{width:.12em;display:inline-block}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{min-width:1px;display:inline-block}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;fill-rule:nonzero;fill-opacity:1;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;height:inherit;width:100%;display:block;position:absolute}.katex svg path{stroke:none}.katex img{border-style:none;min-width:0;max-width:none;min-height:0;max-height:none}.katex .stretchy{width:100%;display:block;position:relative;overflow:hidden}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{width:100%;position:relative;overflow:hidden}.katex .halfarrow-left{width:50.2%;position:absolute;left:0;overflow:hidden}.katex .halfarrow-right{width:50.2%;position:absolute;right:0;overflow:hidden}.katex .brace-left{width:25.1%;position:absolute;left:0;overflow:hidden}.katex .brace-center{width:50%;position:absolute;left:25%;overflow:hidden}.katex .brace-right{width:25.1%;position:absolute;right:0;overflow:hidden}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{box-sizing:border-box;border:.04em solid}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{box-sizing:border-box;border-top:.049em solid;border-right:.049em solid;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{text-align:left;display:inline-block;position:absolute;right:calc(50% + .3em)}.katex .cd-label-right{text-align:right;display:inline-block;position:absolute;left:calc(50% + .3em)}.katex-display{text-align:center;margin:1em 0;display:block}.katex-display>.katex{text-align:center;white-space:nowrap;display:block}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{text-align:left;padding-left:2em}body{counter-reset:katexEqnNo mmlEqnNo}.math-visuals{gap:16px;width:100%;min-width:0;margin:20px 0;display:grid}.math-figure{color:#27494a;background:#fbfdfc;border:1px solid #cbdcdc;border-radius:16px;min-width:0;margin:0;padding:18px}.math-figure figcaption{align-items:center;gap:9px;margin-bottom:12px;font-size:16px;display:flex}.math-figure-symbol{color:#3974ad}.math-figure figcaption strong{flex:1}.math-figure button,.math-controls button{color:#27494a;cursor:pointer;background:#f3f9f6;border:1px solid #b9cecf;border-radius:9px;min-height:44px;padding:8px 11px;font-size:13px}.math-figure-scroll{overscroll-behavior-x:contain;overflow-x:auto}.math-scroll-hint{color:#526c6d;margin-top:8px;font-size:13px;display:none}.math-figure.expanded .math-scroll-hint{display:block}.math-draft-preview{min-width:0;max-width:700px}.math-draft-preview article{border-bottom:1px solid #cadbdd;margin:18px 0;padding:14px 0}.math-draft-preview summary{cursor:pointer;padding:10px 0}.math-figure-scroll>svg{fill:#27494a;width:100%;max-width:650px;height:auto;margin:auto;font-family:inherit;font-size:18px;display:block}.math-figure.expanded .math-figure-scroll>svg{width:850px;min-width:850px;max-width:none}.math-figure .math-figure-description{color:#526c6d;margin:10px 0 0;font-size:14px;line-height:1.7}.math-controls{border-top:1px dashed #cadbdd;flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;padding-top:12px;font-size:14px;display:flex}.math-controls label{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.math-controls input[type=range]{accent-color:#3974ad;width:170px;min-height:32px}.math-controls button[aria-pressed=true],.math-lab button[aria-pressed=true]{color:#245982;background:#dcecf5;border-color:#3974ad}.math-draggable{touch-action:none;cursor:crosshair}.math-lab-entry{color:#2c6488;min-height:44px;font:inherit;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #8eaeb9;align-items:center;gap:7px;padding:10px 0 3px;font-size:14px;display:inline-flex}.math-lab{width:100%;min-width:0;padding:5px 0 30px}.math-lab-header{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:22px;display:flex}.math-lab-header p{color:var(--muted);line-height:1.7}.math-lab-header h2{margin:4px 0 10px;font-size:clamp(24px,4vw,36px)}.math-lab-switch,.math-lab-tabs,.math-lab-actions{flex-wrap:wrap;gap:10px;margin:18px 0;display:flex}.math-lab-switch button,.math-lab-tabs button{color:#315457;font:inherit;cursor:pointer;background:#f3f9f6;border:1px solid #bfced1;border-radius:10px;padding:11px 14px;font-size:14px}.math-lab-example{border:1px solid var(--line);background:#fff;border-radius:18px;max-width:860px;margin:20px 0;padding:25px}.math-lab-example h3{margin:13px 0;font-size:20px;line-height:1.8}.math-lab-example p{line-height:1.8}.math-lab-tag{color:#3974ad;font-size:13px;display:block}.math-lab-thought{background:#edf5f1;border-left:3px solid #4c897e;border-radius:0 8px 8px 0;padding:14px 18px;line-height:1.7}.math-demo-answer{gap:8px;font-size:15px;display:grid}.math-demo-answer input{font:inherit;border:1px solid #b7ccce;border-radius:10px;width:min(100%,400px);padding:14px}.math-demo-score{color:#315f4b;background:#e5f1e9;border-radius:14px;padding:20px;font-size:22px}.math-demo-feedback{border-top:1px solid var(--line);margin-top:18px;padding-top:18px}.math-preview-shell{max-width:1120px;margin:0 auto;padding:36px}:is(.math-figure button:focus-visible,.math-lab button:focus-visible,.math-controls input:focus-visible){outline-offset:3px;outline:3px solid #ce8432}.error-row .math-figure{max-width:580px}.math-archive-solution{max-width:620px;margin:12px 0}.math-archive-solution summary{cursor:pointer;color:#3974ad;padding:8px 0}.report-question-list .math-figure{max-width:720px}.math-steps{align-items:center;gap:12px;font-size:14px;display:flex}.math-steps button{background:#f3f9f6;border:1px solid #b9cecf;border-radius:8px;padding:8px 12px}@media (max-width:600px){.math-preview-shell{padding:18px 12px}.math-lab-header{flex-direction:column;gap:10px}.math-lab-example{padding:15px}.math-figure{border-radius:12px;padding:10px}.math-figure figcaption{flex-wrap:wrap;font-size:14px}.math-figure figcaption strong{min-width:100px}.math-figure-scroll>svg{min-width:420px}.math-scroll-hint{display:block}.math-figure .math-figure-description{font-size:13px}.math-controls button,.math-lab-tabs button{min-height:44px}.math-lab-example h3{font-size:18px}}.english-lab{margin-top:24px;font-size:16px;line-height:1.6}.english-lab button,.english-lab summary{cursor:pointer}.english-lab :is(button,summary,input,a):focus-visible{outline:3px solid var(--sky);outline-offset:3px}.english-lab button{min-height:44px}.english-lab-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px;display:flex}.english-lab-head h2{margin:6px 0;font-size:26px}.english-lab-head h2 span{color:var(--sky);margin-left:8px}.english-lab-head p{color:var(--muted);margin:4px 0;font-size:14px}.english-back{color:var(--deep);background:0 0;border:0;align-items:center;gap:7px;padding:4px 0;display:flex}.english-demo-badge{color:#215d86;background:#e7f3fa;border-radius:20px;margin-left:8px;padding:2px 9px;display:inline-block}.english-tabs{border-bottom:1px solid var(--line);gap:6px;display:flex}.english-tabs button{color:var(--muted);background:0 0;border:0;border-bottom:3px solid #0000;flex:1;padding:12px 8px}.english-tabs button[aria-selected=true]{color:#215d86;border-bottom-color:var(--sky);font-weight:700}.english-tabs span{margin-left:6px;font-size:14px}.english-panel{padding-top:16px}.english-instruction{color:var(--muted);margin:0 0 18px;font-size:14px}.english-word-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:18px;display:grid}.english-word-card{border:1px solid var(--line);background:#fff;border-radius:12px;min-width:0;overflow:hidden}.english-card-art{border-bottom:1px solid #edf1f3;position:relative}.english-illustration{aspect-ratio:1;background:#fff;min-width:0;overflow:hidden}.english-illustration img{object-fit:contain;width:100%;height:100%;display:block}.english-card-number{color:#627980;font-size:13px;position:absolute;top:10px;left:12px}.english-art-pair{aspect-ratio:1;grid-template-columns:1fr 1fr;align-items:center;display:grid}.english-word-body{padding:15px}.english-word-body h3{color:#173f54;overflow-wrap:anywhere;margin:0 0 7px;font-size:25px}.english-audio{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.english-speech{color:#215d86;background:#f2f8fc;border:1px solid #c3dce9;border-radius:7px;align-items:center;gap:7px;padding:8px 11px;font-size:14px;display:inline-flex}.english-audio-state,.english-audio-error{font-size:14px}.english-audio-state{color:var(--muted)}.english-audio-error{color:#a03324}.english-phrase{color:#4a646a;margin:12px 0;font-size:16px;line-height:1.5}.english-lab details{border-top:1px solid var(--line);margin-top:12px;padding-top:10px}.english-lab summary{color:#215d86;min-height:36px;font-size:14px}.english-lab details p{margin:7px 0;font-size:15px}.english-number-nav,.english-reading-nav{flex-wrap:wrap;gap:8px;margin:0 0 20px;display:flex}.english-number-nav button,.english-reading-nav button{background:#f3f9f6;border:1px solid #c4d9d0;border-radius:7px;min-width:44px;padding:8px 14px}.english-lab button[aria-pressed=true]{color:#fff;background:#173f54;border-color:#173f54}.english-scene{border:1px solid var(--line);background:#fff;border-radius:12px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;display:grid;overflow:hidden}.english-scene-copy{padding:26px}.english-eyebrow{color:var(--muted);font-size:14px}.english-scene-copy h3{margin:12px 0 20px;font-size:clamp(22px,2vw,30px);line-height:1.45}.english-reveal{color:var(--deep);background:#f3f9f6;border:1px solid #c4d9d0;border-radius:7px;margin-top:20px;padding:8px 12px}.english-keywords{color:#215d86;border-left:3px solid var(--sky);background:#f2f8fc;margin:20px 0 0;padding:12px}.english-explanation p{margin:12px 0}.english-menu-comparison,.english-food-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.english-lab figure{border:1px solid var(--line);background:#fff;border-radius:10px;margin:0;overflow:hidden}.english-menu-comparison figcaption{background:#edf6fb;justify-content:space-between;padding:12px 18px;display:flex}.english-menu-comparison .english-illustration{aspect-ratio:auto;max-height:320px}.english-menu-comparison .english-illustration img{height:320px}.english-menu-comparison figure>p{margin:10px 18px 18px}.english-food-groups{grid-template-columns:repeat(4,minmax(0,1fr))}.english-food-groups figcaption{gap:6px;padding:12px;display:grid}.english-food-groups figcaption span{color:var(--muted);font-size:14px}.english-reading-copy{border:1px solid var(--line);background:#fff;border-radius:10px;margin-top:22px;padding:24px}.english-reading-copy h3{margin:0 0 14px;font-size:22px}.english-reading-copy>p[lang=en]{font-size:19px;line-height:1.95}.english-reading-note{color:var(--muted);font-size:14px}.english-quiz{max-width:960px;margin:0 auto}.english-quiz-heading{color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:15px;font-size:14px;display:flex}.english-quiz progress{accent-color:var(--sky);max-width:160px;height:8px}.english-quiz h3{margin:20px 0;font-size:22px}.english-quiz-body{margin-top:18px}.english-quiz-with-image{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:center;gap:24px;display:grid}.english-quiz-with-image>.english-illustration{border:1px solid var(--line);border-radius:12px}.english-options{border:0;gap:12px;min-width:0;margin:0;padding:0;display:grid}.english-option{border:2px solid var(--line);cursor:pointer;background:#fff;border-radius:10px;display:block;overflow:hidden}.english-option:focus-within{outline:3px solid var(--sky);outline-offset:3px}.english-option.is-selected{border-color:var(--sky);background:#edf6fc}.english-option.is-answer{background:#edf9f3;border-color:#248061}.english-option-label{flex-wrap:wrap;align-items:center;gap:10px;padding:14px;display:flex}.english-option-label input{accent-color:var(--sky);flex-shrink:0;width:18px;height:18px}.english-option-label span[lang=en]{flex:1;min-width:120px}.english-answer-tag{color:#1a674e;font-size:14px}.english-image-options{grid-template-columns:repeat(4,minmax(0,1fr))}.english-image-options .english-option-label{padding:10px 12px}.english-quiz-submit{flex-wrap:wrap;align-items:center;gap:14px;margin-top:22px;display:flex}.english-quiz-submit>span{color:var(--muted);font-size:14px}.english-feedback{background:#edf8f2;border:1px solid #abcabd;border-radius:10px;margin-top:22px;padding:20px}.english-feedback.incorrect{background:#fff5e8;border-color:#e3c9a5}.english-feedback p{margin:10px 0 16px}.english-complete{text-align:center;padding:45px 16px}.english-complete>svg{color:var(--mint);margin:auto}.english-complete strong{color:#215d86;font-size:36px}.english-complete button{margin:24px auto 0}.english-image-error{color:#4a646a;text-align:center;background:#f1f5f8;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:100%;padding:16px;font-size:14px;display:flex}.english-image-error button{background:#f3f9f6;border:1px solid #99b4c5;border-radius:6px;padding:8px}.english-sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (max-width:1200px){.english-word-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:850px){.english-word-grid,.english-food-groups,.english-image-options{grid-template-columns:repeat(2,minmax(0,1fr))}.english-scene-copy{padding:18px}}@media (max-width:560px){.english-lab-head h2{font-size:23px}.english-lab-head{align-items:start}.english-word-grid{gap:10px}.english-word-body{padding:12px}.english-word-body h3{font-size:22px}.english-speech{padding:7px}.english-phrase{font-size:15px}.english-tabs span{display:none}.english-scene,.english-quiz-with-image{grid-template-columns:1fr}.english-scene>.english-illustration{aspect-ratio:auto;max-height:310px}.english-scene>.english-illustration img{height:310px}.english-quiz-with-image>.english-illustration{width:100%;max-width:320px;margin:auto}.english-menu-comparison{gap:10px}.english-menu-comparison .english-illustration img{height:180px}.english-menu-comparison figure>p{margin:10px;font-size:14px}.english-menu-comparison figcaption{padding:10px}.english-reading-copy{padding:18px}.english-reading-copy>p[lang=en]{font-size:18px}}@media (max-width:360px){.english-word-grid{grid-template-columns:1fr}}.english-unit-picker{color:var(--muted);flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 16px;font-size:14px;display:flex}.english-unit-picker select{border:1px solid var(--line);max-width:100%;min-height:44px;color:var(--deep);font:inherit;background:#fff;border-radius:7px;padding:8px 30px 8px 12px;font-size:16px}.english-unit-picker select:focus-visible{outline:3px solid var(--sky);outline-offset:3px}.english-scene-labels{flex-wrap:wrap;gap:7px;margin:0 0 14px;display:flex}.english-scene-labels:empty{display:none}.english-scene-labels span{color:#345d70;background:#f1f6f9;border:1px solid #d8e5ec;border-radius:6px;padding:4px 9px;font-size:14px}.english-reading-panels{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.english-reading-panels-3{grid-template-columns:repeat(3,minmax(0,1fr))}.english-reading-panels-4{grid-template-columns:repeat(4,minmax(0,1fr))}.english-reading-panels figcaption{background:#edf6fb;flex-wrap:wrap;justify-content:space-between;gap:5px;padding:12px 15px;display:flex}.english-reading-panels figcaption span{color:#285d7c;font-size:14px}.english-reading-panels figure>p{margin:12px 15px 16px}.english-reading-panels .english-illustration{aspect-ratio:auto;max-height:320px}.english-reading-panels .english-illustration img{aspect-ratio:1;max-height:320px}.english-reading-table{border:1px solid var(--line);background:#fff;border-radius:10px;margin-top:18px;overflow-x:auto}.english-reading-table:focus-visible{outline:3px solid var(--sky);outline-offset:2px}.english-reading-table table{border-collapse:collapse;width:100%;min-width:400px;line-height:1.6}.english-reading-table caption{text-align:left;color:var(--muted);padding:12px 16px;font-size:14px}.english-reading-table th,.english-reading-table td{text-align:left;vertical-align:top;border-top:1px solid var(--line);padding:12px 16px}.english-reading-table th{background:#edf6fb;font-size:14px}@media (max-width:850px){.english-reading-panels-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.english-unit-picker>span{display:none}.english-lab-head{gap:10px;margin-bottom:14px}.english-lab-head h2{margin:0}.english-back{min-height:36px!important}.english-reading-panels{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.english-reading-panels figcaption{padding:10px}.english-reading-panels figure>p{margin:10px;font-size:14px}}.ui-button{border-radius:var(--radius-control);min-height:44px;font:inherit;cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:10px 18px;font-weight:700;text-decoration:none;transition:transform .16s,box-shadow .16s,background .16s;display:inline-flex}.ui-button-primary{color:var(--white);background:var(--mint);border-color:var(--mint);box-shadow:0 4px #0c6043}.ui-button-secondary{color:var(--deep);background:var(--white);border-color:var(--line);box-shadow:0 3px 0 var(--line)}.ui-button-ghost{color:var(--deep);background:0 0}.ui-button:not(:disabled):hover{transform:translateY(-1px)}.ui-button:not(:disabled):active{box-shadow:none;transform:translateY(2px)}.ui-button-full{width:100%}.ui-button:focus-visible{outline:3px solid var(--sky);outline-offset:3px}.ui-tab-list button:focus-visible{outline:3px solid var(--sky);outline-offset:3px}.ui-dialog{width:min(600px,100vw - 32px);max-height:calc(100dvh - 40px);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius-card);background:var(--white);margin:auto;padding:24px;overflow:auto;box-shadow:0 28px 100px #143d3240}.ui-dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#143d3266}.ui-dialog:not([open]){display:none}.ui-dialog-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.ui-dialog-header h2{margin:0;font-size:22px}.ui-dialog-content{min-width:0}.practice-dialog-book{color:var(--muted);margin:0 0 18px;font-size:14px;line-height:1.6}.practice-unit-options{border:0;gap:9px;min-width:0;margin:0;padding:0;display:grid}.practice-unit-options legend{margin-bottom:12px;font-size:15px;font-weight:700}.practice-unit-option{border:1px solid var(--line);cursor:pointer;border-radius:12px;align-items:center;gap:12px;padding:13px;display:flex}.practice-unit-option input{width:18px;height:18px;accent-color:var(--mint);flex:none}.practice-unit-number{color:var(--muted);font-size:13px}.practice-unit-option strong{font-size:15px;line-height:1.5;display:block}.practice-unit-option small{color:var(--muted);margin-top:4px;font-size:12px;display:block}.practice-unit-option.is-selected{border-color:var(--mint);background:#e8f6ee}.practice-unit-option.is-unavailable{background:var(--paper);color:var(--muted);cursor:default}.practice-unit-option:has(input:focus-visible){outline:3px solid var(--mint);outline-offset:2px}.practice-dialog-actions{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:flex-end;gap:12px;margin-top:20px;padding-top:16px;display:flex}.practice-unit-dialog[open]{flex-direction:column;display:flex;overflow:hidden}.practice-unit-dialog .ui-dialog-header{flex:none}.practice-unit-dialog .ui-dialog-content{flex-direction:column;min-height:0;display:flex;overflow:hidden}.practice-unit-dialog .practice-dialog-book,.practice-unit-dialog .practice-dialog-actions,.practice-unit-dialog .study-error{flex:none}.practice-unit-dialog .practice-unit-options{min-height:0;max-height:min(440px,100dvh - 340px);padding:3px;overflow:auto}.practice-unit-dialog .practice-unit-option{flex:none}.ui-tab-list{border:1px solid var(--line);background:var(--white);border-radius:18px;flex-wrap:wrap;gap:8px;width:fit-content;max-width:100%;margin:20px 0;padding:6px;display:flex}.ui-tab-list button{min-height:44px;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:10px 22px;font-weight:700;display:inline-flex}.ui-tab-list button[data-subject=math]{--tab-color:var(--sky);--tab-bg:#eaf2ff}.ui-tab-list button[data-subject=chinese]{--tab-color:#b6533c;--tab-bg:#fff0e9}.ui-tab-list button[data-subject=english]{--tab-color:var(--mint);--tab-bg:#e5f7ed}.ui-tab-list button[aria-selected=true]{color:var(--tab-color,var(--mint));background:var(--tab-bg,#e5f7ed);box-shadow:0 2px 0 var(--tab-color,var(--mint))}@supports (color:color-mix(in lab, red, red)){.ui-tab-list button[aria-selected=true]{box-shadow:0 2px 0 color-mix(in srgb,var(--tab-color,var(--mint)) 18%,transparent)}}.learning-mascot{color:var(--deep);flex-shrink:0;overflow:visible}@media (max-width:560px){.ui-tab-list{flex-wrap:nowrap;width:100%}.ui-tab-list button{flex:1;padding:10px 6px}.ui-dialog{padding:20px}}@media (prefers-reduced-motion:reduce){.ui-button{transition:none}}.formal-subquestion{border-top:1px solid #dce8e3;margin:24px 0;padding:20px 0}.formal-subquestion h2{white-space:pre-wrap;margin-bottom:16px;font-size:19px;line-height:1.75}.formal-subquestion h2 small{margin-right:8px}.subquestion-points{color:#546c63;margin-left:12px;font-size:14px;font-weight:400;display:inline-block}.drawing-grid{border:1px solid #d3dfda;border-radius:8px;width:100%;max-width:620px;margin:12px auto;display:block}.drawing-grid [role=button]{cursor:crosshair}.drawing-grid [role=button]:focus-visible{stroke:#e0a226;stroke-width:3px;fill:#edc46544;outline:none}.drawing-tools{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.drawing-tools button{color:#173f38;background:#fff;border:1px solid #c8d8d1;border-radius:7px;padding:8px 12px}.drawing-tools button[aria-pressed=true]{color:#fff;background:#173f38}.exam-drawing p{color:#4b625a;font-size:14px;line-height:1.7}.answer-sheet-sections button small{font-size:13px;line-height:1;display:block}.answer-sheet-sections button.partially-answered{background:#fff1c8}.paper-meta{flex-wrap:wrap}.paper-structure-note{font-size:13px;line-height:1.65}.math-text{white-space:pre-wrap}.math-text-inline{vertical-align:-.08em;margin:0 .08em;display:inline-block}.math-text-display{margin:.55em 0;display:block;overflow-x:auto}:root{--ink:#213e35;--muted:#5f726a;--line:#dce8de;--paper:#f5f8ef;--white:#fff;--deep:#185044;--mint:#147d5a;--coral:#e97960;--sky:#3d70be;--sun:#f7c65b;--radius-card:20px;--radius-control:13px;--shadow-card:0 5px 0 #e3ebdd, 0 10px 28px #18504408}*{box-sizing:border-box}html{background:var(--paper)}body{background:var(--paper);color:var(--ink);font-family:var(--font-geist-sans), "Microsoft YaHei", Arial, sans-serif;margin:0;font-size:16px;line-height:1.6}button{font:inherit}small{font-size:13px}button:disabled{cursor:not-allowed;opacity:.55}.action-icon{flex:none;width:1em;height:1em}.action-icon-spin{animation:.8s linear infinite action-icon-spin}:is(button,a.button,a.primary-action,a.secondary-action):has(>.action-icon){justify-content:center;align-items:center;gap:7px;display:inline-flex}@keyframes action-icon-spin{to{transform:rotate(360deg)}}.study-dashboard{border-bottom:2px solid var(--line);margin-bottom:28px;padding:20px 0 30px;font-size:16px;line-height:1.65}.study-dashboard>header,.study-loss-header,.study-resume{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;display:flex}.study-dashboard h2,.study-dashboard h3{margin:6px 0 12px}.study-dashboard>p,.study-reason{color:var(--muted)}.study-dashboard label{gap:6px;margin:10px 0;font-size:14px;display:grid}.study-dashboard input:not([type=checkbox]),.study-dashboard select,.study-dashboard textarea{border:1px solid var(--line);width:100%;min-height:42px;color:var(--ink);background:var(--white);font:inherit;border-radius:6px;padding:9px 11px;font-size:16px}.study-dashboard textarea{resize:vertical}:is(.study-dashboard :is(input,select,textarea,button):focus-visible,.study-runner button:focus-visible){outline:3px solid var(--sky);outline-offset:2px}.scope-checks{max-height:180px;overflow:auto}.study-dashboard .scope-checks label{align-items:flex-start;gap:9px;display:flex}.study-dashboard .scope-checks input[type=checkbox]{width:18px;height:18px;accent-color:var(--deep);flex:none;margin:3px 0 0}.study-dashboard-intro{margin:2px 0 18px;font-size:14px}.school-progress{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--white);scroll-margin-top:24px}.school-progress:focus{outline:none}.study-overview-list article{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;min-height:72px;padding:13px 2px;display:grid}.study-overview-list article:last-child{border-bottom:0}.study-overview-list article>div{grid-template-columns:52px 115px minmax(0,1fr);align-items:baseline;gap:12px;min-width:0;display:grid}.study-overview-list article span{color:#638176;letter-spacing:.08em;font-size:13px;font-weight:700}.study-overview-list article strong{color:var(--deep);font-size:15px}.study-overview-list article p{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:13px;overflow:hidden}.study-dashboard .study-overview-list article>button{color:#226a50;cursor:pointer;background:0 0;border:0;border-radius:0;padding:8px 3px;font-weight:700}.study-dashboard .study-overview-list article>button:hover{color:#124934;background:0 0}.study-overview-list article button b{margin-left:5px;font-size:16px}.study-panel-heading h3,.study-panel-heading p,.study-loss-header h3,.study-loss-header p{margin:0}.study-panel-heading p,.study-loss-header p{color:var(--muted);margin-top:3px;font-size:13px}.study-drawer-backdrop,.study-modal-backdrop{z-index:1200;background:#102d2466;justify-content:flex-end;display:flex;position:fixed;inset:0}.study-drawer{background:var(--white);flex-direction:column;width:min(760px,100vw - 42px);height:100%;display:flex;overflow:hidden;box-shadow:-18px 0 50px #0b291e2b}.study-dashboard .study-drawer>header,.study-dashboard .study-modal>header{border-bottom:1px solid var(--line);flex:none;justify-content:space-between;align-items:center;margin:0;padding:20px 24px;display:flex}.study-drawer header small,.study-modal header small{color:#4c7767;letter-spacing:.08em;font-size:13px;font-weight:700}.study-drawer header h3,.study-modal header h3{margin:2px 0 0;font-size:21px}.study-dashboard .study-close-button{color:#5a6b65;cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;width:38px;height:38px;padding:0;font-size:27px;font-weight:300;display:grid}.study-dashboard .study-close-button:hover{color:var(--deep);background:#eef5f1}.study-drawer-content{min-height:0;padding:22px 24px 32px;overflow-y:auto}.study-drawer-content>p:first-child{color:var(--muted);margin:0 0 16px;font-size:14px}.study-drawer-actions{border-top:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffe;justify-content:flex-end;gap:10px;margin:24px -24px -32px;padding:14px 24px;display:flex;position:sticky;bottom:-32px}.study-dashboard .study-drawer-actions>button:first-child,.study-dashboard .study-actions>button:first-child:not(.primary-action){color:#52645d;background:0 0;border:0;padding:9px 14px}.study-modal-backdrop{z-index:1300;background:#102d2480;justify-content:center;align-items:center;padding:24px}.study-modal{background:var(--white);border-radius:12px;flex-direction:column;width:min(900px,100%);max-height:calc(100vh - 48px);display:flex;overflow:hidden;box-shadow:0 24px 80px #071c1566}.study-loss-modal-form{border:0;min-height:0;margin:0;padding:18px 24px 26px;overflow-y:auto}.study-dashboard .study-subject-tabs{border-bottom:1px solid var(--line);background:0 0;border-radius:0;flex-wrap:nowrap;gap:25px;max-width:620px;margin:0 0 8px;padding:0;display:flex}.study-dashboard .study-subject-tabs button{color:#66736e;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;border-radius:0;align-items:baseline;gap:6px;min-width:0;padding:8px 2px 9px;display:flex}.study-dashboard .study-subject-tabs button:hover{color:var(--deep);background:0 0}.study-dashboard .study-subject-tabs button.active{color:var(--deep);border-bottom-color:var(--deep);box-shadow:none;background:0 0}.study-subject-tabs span{font-weight:700}.study-subject-tabs small{color:var(--muted);font-size:13px}.exam-subject-workspace{max-width:1320px;margin:0 auto}.exam-subject-tabs{border-bottom:1px solid var(--line);gap:28px;margin:0 0 22px;display:flex}.exam-subject-tabs button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;border-radius:0;align-items:center;gap:7px;padding:10px 2px 11px;font-weight:700;display:inline-flex}.exam-subject-tabs button:hover{color:var(--deep);background:0 0}.exam-subject-tabs button[aria-selected=true]{border-bottom-color:var(--deep);color:var(--deep);background:0 0}.exam-subject-tabs button:focus-visible{outline:3px solid var(--sky);outline-offset:2px}.error-subject-tabs{margin-top:20px}.study-plan-fields{grid-template-columns:minmax(140px,.65fr) minmax(240px,1.6fr) minmax(170px,.8fr);gap:14px;margin-top:12px;display:grid}.study-exam-scope{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:0 0;margin-top:12px;padding:15px 0}.study-exam-scope>div:first-child{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;display:flex}.study-exam-scope small{color:var(--muted)}.scope-checks-compact{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px;margin-top:6px;display:grid}.study-unit-picker{grid-template-columns:minmax(260px,1fr) auto;align-items:end;gap:18px;max-width:760px;margin-top:12px;display:grid}.study-unit-picker>span{color:#39715e;white-space:nowrap;background:0 0;margin-bottom:11px;font-size:13px}.study-context-line{color:var(--muted);margin:12px 0 0;font-size:13px}.learned-topic-panel{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:0 0;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 18px;max-width:760px;margin-top:8px;padding:11px 0;display:grid}.study-dashboard .learned-topic-panel label{overflow-wrap:anywhere;align-items:flex-start;gap:9px;line-height:1.55;display:flex}.study-dashboard .learned-topic-panel input[type=checkbox]{width:18px;height:18px;accent-color:var(--deep);flex:none;margin:3px 0 0}.study-scope-rule{color:var(--muted);margin:12px 0 0;font-size:13px}.study-empty-line{color:var(--muted);font-size:14px}.study-weekly-compact{border-top:1px solid var(--line);margin-top:22px;padding-top:16px}.study-weekly-compact h3{font-size:15px}.study-weekly-compact p{color:var(--muted);margin:5px 0;font-size:13px}.study-dashboard .primary-action.flat{color:var(--white);border-color:var(--deep);background:var(--deep)}.study-loss-form{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:0 0;border-radius:0;margin:16px 0;padding:18px 0}.study-actions{flex-wrap:wrap;gap:12px;margin:14px 0;display:flex}.study-losses{gap:14px;display:grid}.study-losses article,.study-result-list article{border:1px solid var(--line);overflow-wrap:anywhere;border-radius:8px;padding:18px}.study-losses article>div:first-child{flex-wrap:wrap;justify-content:space-between;gap:10px;display:flex}.study-losses article span{color:var(--deep);font-size:14px;font-weight:700}.study-losses p{margin:8px 0}.study-losses small{color:var(--muted);font-size:14px}.study-resume{background:#e1f1ea;border-radius:8px;margin-top:20px;padding:16px 20px}.study-notice{border-left:3px solid var(--sun);background:#fff3d6;border-radius:4px;padding:12px 16px;font-size:15px;line-height:1.65}.study-error{color:#8b3024;background:#fff0ec;border:1px solid #eebbae;border-radius:6px;padding:14px}.study-error button{border:1px solid;border-radius:4px;margin-left:12px;padding:6px}.study-finish{align-items:start;padding-top:30px}.study-finish .session-result{max-width:860px;margin:0 auto}.study-result-list{text-align:left;gap:12px;margin:20px 0;display:grid}.study-result-list p{font-size:16px;line-height:1.7}@media (max-width:850px){.study-loss-form{padding:12px}.study-dashboard>header{align-items:start}.study-overview-list article>div{grid-template-columns:48px 105px minmax(0,1fr);gap:9px}.study-plan-fields,.study-unit-picker{grid-template-columns:1fr;gap:0}.study-unit-picker>span{width:fit-content;margin:0}}@media (max-width:560px){.study-panel-heading{align-items:flex-start}.study-subject-tabs{max-width:none}.study-dashboard .study-subject-tabs{gap:14px}.study-dashboard .study-subject-tabs button{padding:8px 0}.exam-subject-tabs{justify-content:space-between;gap:0;margin-bottom:14px}.exam-subject-tabs button{flex:1;justify-content:center;padding:10px 0}.scope-checks-compact,.learned-topic-panel{grid-template-columns:1fr}.study-overview-list article{padding:14px 0}.study-overview-list article>div{display:block}.study-overview-list article span{margin-bottom:2px;display:block}.study-overview-list article p{white-space:normal;margin-top:3px}.study-drawer{width:100%}.study-dashboard .study-drawer>header,.study-dashboard .study-modal>header{padding:16px}.study-drawer-content{padding:18px 16px 26px}.study-drawer-actions{margin:22px -16px -26px;padding:12px 16px;bottom:-26px}.study-modal-backdrop{padding:0}.study-modal{border-radius:0;height:100%;max-height:none}.study-loss-modal-form{padding:14px 16px 22px}}.app-shell{grid-template-columns:208px minmax(0,1fr);min-height:calc(100dvh - 64px);display:grid}.side-rail{background:var(--white);border-right:1px solid var(--line);flex-direction:column;height:calc(100dvh - 64px);min-height:540px;padding:24px 14px 20px;display:flex;position:sticky;top:0}.brand-mark{align-items:center;gap:6px;padding:0;display:flex}.brand-mark>span:last-child,.profile-chip span{flex-direction:column;display:flex}.brand-mark strong{white-space:nowrap;font-size:15px}.brand-mark small,.profile-chip small{color:var(--muted);margin-top:3px;font-size:13px}.brand-icon{width:41px;height:41px;color:var(--white);background:var(--deep);border-radius:8px;place-items:center;display:grid}.main-nav{gap:10px;margin-top:30px;display:grid}.nav-item{width:100%;min-height:48px;color:var(--muted);border-radius:var(--radius-control);cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;align-items:center;gap:12px;padding:0 12px;transition:background .16s,transform .16s;display:flex}.nav-item:hover{color:var(--deep);background:#f1f6f3}.nav-item.active{color:var(--deep);background:#e2f3de;border-color:#c3ddba;font-weight:800;box-shadow:0 3px #d3e4c9}.rail-footer{margin-top:auto}.profile-chip{border-top:1px solid var(--line);align-items:center;gap:10px;margin:16px 6px 0;padding-top:18px;display:flex}.workspace{width:100%;min-width:0;max-width:1480px;margin-inline:auto;padding:24px clamp(24px,2.6vw,40px) 48px}.topbar{justify-content:space-between;align-items:center;gap:22px;min-height:62px;display:flex}.topbar p,.section-heading p,.companion-head p{color:var(--muted);margin:0 0 5px;font-size:13px}.topbar h1{letter-spacing:0;margin:0;font-size:31px;line-height:1.2}.top-actions{align-items:center;gap:10px;display:flex}.icon-button,.round-button{border:1px solid var(--line);border-radius:var(--radius-control);background:var(--white);width:44px;height:44px;color:var(--deep);cursor:pointer;flex:none;place-items:center;display:grid}.icon-button:hover,.round-button:hover{border-color:var(--mint)}.parent-entry{height:42px;color:var(--ink);cursor:pointer;background:#f3f9f6;border:1px solid #c8ddd3;border-radius:7px;align-items:center;gap:4px;padding:0 13px;display:flex}.content-grid{grid-template-columns:minmax(0,1fr) 290px;align-items:start;gap:26px;margin-top:30px;display:grid}.main-column{min-width:0}.mission-band{background:var(--deep);min-height:330px;color:var(--white);border-radius:8px;grid-template-columns:minmax(0,1.25fr) minmax(250px,.75fr);padding:clamp(28px,4vw,48px);display:grid;position:relative;overflow:hidden}.mission-copy{z-index:2;align-self:center;position:relative}.eyebrow{color:#9fe1ca;align-items:center;gap:7px;font-size:13px;font-weight:700;display:flex}.mission-copy h2{letter-spacing:0;max-width:560px;margin:15px 0 12px;font-size:47px;line-height:1.12}.mission-copy>p{color:#c6d8d3;max-width:500px;margin:0;font-size:15px;line-height:1.7}.mission-meta{color:#d7e6e1;flex-wrap:wrap;gap:18px;margin-top:22px;font-size:13px;display:flex}.mission-meta span{align-items:center;gap:7px;display:flex}.mission-copy>.mission-session-note{margin-top:16px;font-size:14px;line-height:1.75}.primary-action{border:1px solid var(--mint);border-radius:var(--radius-control);background:var(--mint);min-height:44px;color:var(--white);cursor:pointer;align-items:center;gap:9px;margin-top:20px;padding:10px 20px;font-weight:800;text-decoration:none;transition:transform .16s,box-shadow .16s;display:inline-flex;box-shadow:0 4px #0c6043}.primary-action:hover:not(:disabled){transform:translateY(-1px)}.primary-action:active:not(:disabled){box-shadow:none;transform:translateY(2px)}.invention-visual{align-self:center;min-height:250px;position:relative}.machine-core{color:#183a35;background:#9fe1ca;border:10px solid #32635a;border-radius:50%;place-items:center;width:112px;height:112px;display:grid;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #b8eee0}.orbit{border:1px solid #5a827a;border-radius:50%;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%)}.orbit-one{width:190px;height:190px}.orbit-two{border-style:dashed;width:260px;height:260px}.part-label{color:#dcece8;background:#214b45;border:1px solid #52776f;border-radius:5px;padding:6px 9px;font-size:13px;position:absolute}.label-a{top:9%;left:7%}.label-b{top:42%;right:0}.label-c{color:#ffd776;bottom:5%;left:3%}.section-block{margin-top:34px}.section-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.section-heading h2,.companion-head h2{letter-spacing:0;margin:0;font-size:20px}.section-heading>button{color:var(--deep);cursor:pointer;background:0 0;border:0;align-items:center;gap:2px;font-size:13px;display:flex}.subject-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:16px;display:grid}.subject-card{border:1px solid var(--line);border-top:3px solid var(--subject-color);background:var(--white);border-radius:7px;grid-template-columns:auto minmax(0,1fr);gap:13px;min-width:0;padding:18px;display:grid}.subject-icon{width:42px;height:42px;color:var(--subject-color);background:#eff5f2;border-radius:7px;place-items:center;display:grid}.subject-info{min-width:0}.subject-info>div{justify-content:space-between;gap:8px;display:flex}.subject-info h3{margin:2px 0 0;font-size:16px}.subject-info strong{color:var(--subject-color);font-size:14px}.subject-info p{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:8px 0 12px;font-size:13px;overflow:hidden}.progress-track{background:#edf1ef;border-radius:3px;height:5px;display:block;overflow:hidden}.progress-track span{background:var(--subject-color);height:100%;display:block}.subject-card .round-button{grid-column:1/-1;width:100%;height:32px;margin-top:3px}.study-map-heading{flex-wrap:wrap;gap:12px}.study-map-note{color:var(--muted);font-size:14px;line-height:1.75}.study-subject-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}.study-subject-list .subject-card{grid-template-columns:auto minmax(0,1fr)}.study-subject-list .subject-info>div{flex-wrap:wrap}.study-subject-list .subject-info p{text-overflow:clip;white-space:normal;overflow-wrap:anywhere;line-height:1.7;overflow:visible}.subject-learned-scope{overflow-wrap:anywhere;grid-column:1/-1;font-size:13px;line-height:1.7}.subject-learned-scope>strong{color:var(--deep)}.subject-learned-scope p{color:var(--muted);margin:6px 0}.subject-learned-scope p span{color:var(--ink);margin-top:2px;display:block}.study-subject-list .subject-card .round-button{grid-column:1/-1;justify-content:center;align-self:end;gap:8px;width:100%;height:auto;min-height:40px;padding:8px;display:flex}.insight-column{gap:18px;display:grid}.companion-panel,.status-panel{border:1px solid var(--line);background:var(--white);border-radius:8px;padding:22px}.companion-panel{border-top:4px solid var(--coral)}.companion-head{align-items:center;gap:10px;display:flex}.companion-head>span{width:40px;height:40px;color:var(--coral);background:#fbe8e2;border-radius:50%;place-items:center;display:grid}.companion-panel blockquote{color:#42504c;margin:20px 0;font-size:14px;line-height:1.75}.companion-panel button{color:#9a3f29;cursor:pointer;background:#fbe8e2;border:1px solid #f0b5a5;border-radius:7px;width:100%;height:40px;font-weight:700}.section-heading.compact>svg{color:var(--sun)}.status-stats{grid-template-columns:1fr 1fr;gap:10px;margin:20px 0;display:grid}.status-stats div{background:#f3f7f5;border-radius:6px;padding:12px}.status-stats strong{font-size:23px;display:block}.status-stats span{color:var(--muted);font-size:13px}.week-row{justify-content:space-between;gap:7px;display:flex}.week-row span{width:32px;height:32px;color:var(--muted);background:#eef2f0;border-radius:50%;place-items:center;font-size:13px;display:grid}.week-row .done{color:var(--white);background:var(--mint)}.gentle-note{color:var(--muted);margin:18px 0 0;font-size:13px;line-height:1.6}.mobile-nav{display:none}.more-actions{gap:12px;display:grid}.more-actions .ui-button{justify-content:flex-start}.empty-state .ui-button{margin-top:22px}.empty-state .learning-mascot{margin-inline:auto}.practice-row.subject-math{border-left:5px solid var(--sky)}.practice-row.subject-chinese{border-left:5px solid var(--coral)}.practice-row.subject-english{border-left:5px solid var(--mint)}.practice-row .practice-course-detail{margin-bottom:6px;font-size:13px;line-height:1.5}.error-summary{color:var(--deep);font-weight:700}.companion-dialog .ui-dialog-header{border-bottom:1px solid var(--line);flex:none;padding-bottom:16px}.login-mascot{color:var(--deep);align-items:center;gap:12px;margin-bottom:22px;font-weight:700;display:flex}:is(.nav-item,.primary-action,.secondary-action,.icon-button,.round-button,.mobile-nav button):focus-visible{outline:3px solid var(--sky);outline-offset:3px}@media (max-width:1100px){.app-shell{grid-template-columns:72px minmax(0,1fr)}.side-rail{align-items:center;padding:22px 10px}.side-rail .brand-mark>span,.side-rail .nav-item span,.side-rail .profile-chip span{display:none}.main-nav{width:100%}.nav-item{justify-content:center;padding:0}.rail-footer{width:100%}.profile-chip{justify-content:center;margin-inline:0}.content-grid{grid-template-columns:1fr}.insight-column{grid-template-columns:1fr 1fr}.today-mission{grid-template-columns:minmax(0,1fr);min-height:auto}.today-mission .invention-visual{display:none}}@media (max-width:780px){.app-shell{padding-bottom:76px;display:block}.side-rail{display:none}.workspace{padding:20px 16px 30px}.topbar{align-items:flex-start}.topbar p{font-size:13px}.topbar h1{max-width:230px}.parent-entry{display:none}.content-grid{margin-top:22px}.mission-band{grid-template-columns:1fr;min-height:auto;padding:28px 24px}.invention-visual{min-height:220px;margin-top:20px}.subject-list,.insight-column{grid-template-columns:1fr}.subject-card{grid-template-columns:auto minmax(0,1fr) auto;align-items:center}.subject-card .round-button{grid-column:auto;width:36px}.mobile-nav{z-index:20;min-height:76px;padding:8px 4px max(8px, env(safe-area-inset-bottom));border-top:1px solid var(--line);background:#fffffff5;grid-template-columns:repeat(5,minmax(0,1fr));display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -5px 20px #18504408}.mobile-nav button{color:var(--muted);background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:13px;display:flex}.mobile-nav button.active{color:var(--deep);font-weight:700}.mobile-nav button{border-radius:12px;min-height:52px}.mobile-nav button.active{background:#e2f3de}.topbar{gap:12px}.top-actions{gap:8px}.companion-entry{min-width:44px;padding:10px}.companion-entry span{display:none}.practice-row .ui-button{grid-column:2;justify-self:start}}@media (max-width:420px){.mission-copy h2{font-size:30px}.invention-visual{transform:scale(.9)}}.typing-hub{border:solid var(--line);border-width:1px 0;max-width:1120px;margin-top:28px;padding:26px 0 30px}.typing-hub-heading{justify-content:space-between;align-items:end;gap:24px;display:flex}.typing-hub-heading p{color:#2666a6;align-items:center;gap:7px;margin:0;font-size:13px;font-weight:800;display:flex}.typing-hub-heading h2{color:var(--ink);letter-spacing:0;margin:7px 0 5px;font-size:27px}.typing-hub-heading span{color:var(--muted);font-size:13px}.typing-hub-heading label{min-width:156px;color:var(--muted);font-size:13px;font-weight:800}.typing-hub-heading select{width:100%;min-height:44px;color:var(--ink);background:var(--white);border:1px solid #bdcec9;border-radius:7px;outline:0;margin-top:7px;padding:0 10px;font-weight:700}.typing-mode-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:20px;display:grid}.typing-mode-card{border-radius:var(--radius-card);min-width:0;min-height:240px;box-shadow:var(--shadow-card);background:#fff;border:1px solid #cbd8d4;grid-template-rows:1fr auto;grid-template-columns:118px minmax(0,1fr);display:grid;overflow:hidden}.mode-card-visual{color:#eaf5ff;background:#173f65;grid-row:1/3;place-content:center;justify-items:center;gap:12px;min-height:240px;display:grid;position:relative}.mode-card-visual>span{color:#12314d;min-width:58px;height:58px;font:900 29px var(--font-geist-mono);background:#f7c654;border:3px solid #fff;border-radius:7px;place-items:center;display:grid;box-shadow:0 8px #b98117}.mode-card-visual>i{background:#ef705a;width:2px;height:46px;box-shadow:0 -7px 13px #ffbe72}.sentence-preview{color:#285b52;background:#dcefe8}.sentence-preview>span{color:#254c44;width:124px;height:auto;box-shadow:none;background:#fff;border:1px solid #82b9a8;padding:11px 8px;font-size:13px}.sentence-preview>i{width:104px;height:4px;box-shadow:none;background:#f0b943}.mode-card-copy{padding:20px 20px 8px}.mode-card-copy small{color:#6f7d79;font-size:13px;font-weight:800}.mode-card-copy h3{letter-spacing:0;margin:7px 0 8px;font-size:21px}.mode-card-copy p{color:#53645f;margin:0;font-size:13px;line-height:1.7}.typing-mode-card footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:12px 20px 20px;display:flex}.typing-mode-card footer>span{color:#6c7975;align-items:center;gap:5px;font-size:13px;display:flex}.typing-mode-card footer button{color:#fff;border-radius:var(--radius-control);background:var(--sky);cursor:pointer;border:0;justify-content:center;align-items:center;gap:7px;min-height:44px;padding:0 15px;font-weight:800;display:inline-flex;box-shadow:0 3px #285798}.sentence-mode-card footer button{background:#246d59}.radar-preview{color:#e8fbf7;background:#17675f}.radar-preview>span{color:#124b47;background:#8de0cc;box-shadow:0 8px #3d9481}.radar-preview>i{background:#ffdc70;width:70px;height:2px;box-shadow:0 0 12px #ffdc70}.radar-mode-card footer button{background:#17675f}.repair-preview{color:#694f16;background:#f3df9e}.repair-preview>span{color:#563f10;width:128px;height:auto;box-shadow:none;background:#fff8da;border-color:#8f721f;padding:10px;font-size:13px}.repair-preview>i{width:110px;height:4px;box-shadow:none;background:#a84c38}.repair-mode-card footer button{background:#8a611e}.boss-mode-card{grid-column:1/-1;min-height:220px}.boss-mode-card .mode-card-visual{color:#fff2df;background:#712f38;min-height:220px}.boss-preview>span{color:#5a2229;background:#f1b65b;border-color:#ffd6a0;width:76px;font-size:16px;box-shadow:0 8px #a44d36}.boss-preview>i{width:90px;height:5px;box-shadow:none;background:#f5d987}.boss-mode-card footer button{background:#843946}.typing-memory-note,.typing-hub-error{color:#7c6a38;margin:12px 0 0;font-size:13px}.typing-hub-error{color:#a9422d}.typing-game-screen{z-index:120;color:#fff;background:#0b2637;outline:0;grid-template-rows:72px minmax(0,1fr) auto;min-height:100dvh;display:grid;position:fixed;inset:0;overflow:hidden}.typing-game-hud{z-index:10;background:#102e40;border-bottom:1px solid #ffffff2e;grid-template-columns:44px minmax(190px,1fr) auto auto auto 44px;align-items:center;gap:clamp(8px,2vw,18px);padding:10px clamp(12px,3vw,34px);display:grid;position:relative}.typing-game-hud>button{color:#fff;border-radius:var(--radius-control);cursor:pointer;background:#183d50;border:1px solid #ffffff57;place-items:center;width:44px;height:44px;display:grid}.typing-progress{grid-template-columns:auto minmax(80px,1fr) auto;align-items:center;gap:10px;font-size:13px;display:grid}.typing-progress i{background:#ffffff2e;height:7px;overflow:hidden}.typing-progress b{background:#f1c653;height:100%;transition:width .25s;display:block}.typing-score,.typing-combo{flex-direction:column;align-items:center;min-width:56px;display:flex}.typing-score span,.typing-combo span{color:#b9ced8;font-size:13px}.typing-score strong,.typing-combo strong{margin-top:2px;font-size:18px}.typing-combo strong{color:#f7c95b}.typing-hearts{color:#ef745f;justify-content:center;gap:5px;min-width:70px;display:flex}.word-defense-field{background:linear-gradient(#225b80 0%,#4f8fa4 68%,#bed7cb 100%);min-height:0;position:relative;overflow:hidden}.typing-time-readout{z-index:5;color:#fff5cc;background:#092738bd;border:1px solid #ffeca6a3;border-radius:999px;align-items:center;min-height:30px;margin:0;padding:0 11px;font-size:13px;font-weight:900;display:inline-flex;position:absolute;top:13px;right:15px;box-shadow:0 4px 14px #05192438}.sky-grid{opacity:.22;background-image:linear-gradient(#ffffff38 1px,#0000 1px),linear-gradient(90deg,#ffffff26 1px,#0000 1px);background-size:64px 64px;position:absolute;inset:0}.falling-word{z-index:3;top:22px;left:var(--word-lane);text-align:center;width:max-content;min-width:220px;max-width:calc(100vw - 28px);animation:typing-word-fall var(--fall-duration) linear forwards;background:#102d42;border:2px solid #ffffffe0;border-radius:8px;padding:15px 21px 18px;position:absolute;transform:translate(-50%);box-shadow:0 10px #05162042}.falling-word small{color:#d3e8f0;margin-bottom:9px;font-size:15px;font-weight:700;line-height:1.35;display:block}.falling-word strong{font:800 44px/1.1 var(--font-geist-mono);letter-spacing:0;justify-content:center;gap:2px;display:flex}.falling-word.is-long strong{font-size:35px}.falling-word.is-extra-long strong{font-size:28px}.falling-word strong span{color:#fff;border-bottom:3px solid #0000;min-width:.62em;transition:color .12s,transform .12s}.falling-word strong span.hit{color:#75dfb4;transform:translateY(-3px)}.falling-word strong span.target{color:#ffd665;border-bottom-color:#ffd665}.defense-ground{z-index:2;color:#193d34;background:#d8e9df;border-top:3px solid #f3cf68;justify-content:center;align-items:center;gap:8px;height:42px;font-size:13px;font-weight:900;display:flex;position:absolute;bottom:0;left:0;right:0}@keyframes typing-word-fall{to{transform:translate(-50%,calc(100dvh - 390px))}}.typing-shot{z-index:140;pointer-events:none;background:#fff2a8;border-radius:50%;width:8px;height:18px;animation:.4s cubic-bezier(.18,.72,.2,1) forwards typing-shot-flight;position:fixed;box-shadow:0 0 13px 5px #ffbd55}@keyframes typing-shot-flight{to{opacity:0;transform:translate(var(--shot-x), var(--shot-y)) scale(.35)}}.sentence-copy{color:#193c34;background:#e8f1ed}.sentence-copy .typing-game-hud{color:#fff}.sentence-copy-field{background:#eef5f2;flex-direction:column;justify-content:center;align-items:center;min-height:0;padding:clamp(24px,5vh,54px) clamp(18px,6vw,80px);display:flex;overflow:auto}.sentence-kind{color:#286a58;background:#d7ede5;border-radius:5px;align-items:center;gap:6px;min-height:28px;padding:0 10px;font-size:13px;font-weight:900;display:inline-flex}.sentence-translation{color:#65756f;text-align:center;max-width:860px;margin:16px 0 13px;font-size:13px}.sentence-target{text-align:left;width:min(980px,100%);font:700 clamp(20px, 2.5vw, 31px)/1.85 var(--font-geist-mono);letter-spacing:0;overflow-wrap:anywhere;background:#fff;border:1px solid #c1d3cc;border-width:1px 0;padding:25px clamp(15px,3vw,30px)}.sentence-target span{color:#a8b3af;white-space:pre-wrap}.sentence-target span.typed{color:#216d57}.sentence-target span.current{color:#163e34;background:#f7cd5f;box-shadow:0 3px #d6a936}.sentence-status{color:#73817d;justify-content:space-between;gap:12px;width:min(980px,100%);margin:12px 0 0;font-size:13px;display:flex}.listening-radar{background:#0d393b}.listening-radar-field{background:#145459;place-items:center;min-height:0;display:grid;position:relative;overflow:hidden}.radar-sweep{aspect-ratio:1;background:repeating-radial-gradient(circle,#0000 0 61px,#97e5d238 62px 63px);border:1px solid #94e3cf73;border-radius:50%;width:min(520px,82vw);position:absolute;overflow:hidden}.radar-sweep:before,.radar-sweep:after{content:"";background:#9ee9d747;position:absolute}.radar-sweep:before{height:1px;top:50%;left:0;right:0}.radar-sweep:after{width:1px;top:0;bottom:0;left:50%}.radar-sweep i{transform-origin:0;background:#ffe083;width:48%;height:2px;animation:3.2s linear infinite radar-scan;position:absolute;inset:50% 50% auto auto;box-shadow:0 0 15px #ffe083}.radar-sweep b{background:#ffdb72;border-radius:50%;width:11px;height:11px;animation:1.4s infinite radar-ping;position:absolute;top:29%;left:67%;box-shadow:0 0 0 6px #ffdb722e,0 0 18px #ffe69a}@keyframes radar-scan{to{transform:rotate(360deg)}}@keyframes radar-ping{50%{opacity:.45;transform:scale(.7)}}.radar-console{z-index:2;color:#ecfffa;background:#083032e0;border:1px solid #c4f4e87a;border-radius:8px;justify-items:center;width:min(650px,100% - 28px);padding:26px;display:grid;position:relative;box-shadow:0 24px 60px #031e1f59}.radar-label{color:#9fe5d3;align-items:center;gap:7px;font-size:13px;font-weight:900;display:inline-flex}.radar-replay,.radar-hint{color:#173f3d;cursor:pointer;background:#9ce1d0;border:0;border-radius:6px;align-items:center;gap:8px;min-height:44px;padding:0 14px;font-weight:900;display:inline-flex}.radar-replay{color:#60470e;background:#ffdc79;margin-top:18px}.radar-answer{min-height:70px;font:900 36px var(--font-geist-mono);justify-content:center;align-items:center;gap:7px;margin:23px 0 12px;display:flex}.radar-answer span{color:#7ca8a4;text-align:center;min-width:.7em}.radar-answer span.heard{color:#fff}.radar-console p{color:#c7e0db;min-height:22px;margin:0 0 16px;font-size:13px}.radar-hint:disabled{opacity:.65;cursor:default}.boss-review{background:#2e1720}.boss-review .typing-game-hud{background:#421e29}.boss-review-field{background:#5f2b35;flex-direction:column;justify-content:center;align-items:center;min-height:0;padding:28px 20px;display:flex;position:relative;overflow:hidden}.boss-status-panel{grid-template-columns:88px minmax(0,1fr);align-items:center;gap:18px;width:min(720px,100%);display:grid}.boss-emblem{color:#ffd67d;background:#35161e;border:2px solid #e0a64d;border-radius:50%;place-items:center;width:82px;height:82px;display:grid;position:relative;box-shadow:0 0 0 8px #ffd67d14}.boss-emblem span{font-size:17px;font-weight:900;position:absolute}.boss-status-panel small{color:#e4b7bd;font-size:13px;font-weight:800;display:block}.boss-status-panel strong{color:#fff6e3;margin:4px 0 9px;font-size:23px;display:block}.boss-status-panel>div:last-child>i{background:#31151d;border:1px solid #895461;height:12px;display:block;overflow:hidden}.boss-status-panel>div:last-child>i b{background:#efb955;height:100%;transition:width .3s;display:block}.boss-word{text-align:center;background:#371820;border:1px solid #a96572;border-radius:8px;width:min(760px,100%);margin:30px 0 20px;padding:23px 18px 25px;box-shadow:0 16px 40px #1b060d52}.boss-word small{color:#e6bcc3;margin-bottom:10px;font-size:14px;font-weight:800;display:block}.boss-word strong{font:900 42px/1.1 var(--font-geist-mono);justify-content:center;gap:3px;display:flex}.boss-word strong span{color:#fff1df;border-bottom:3px solid #0000;min-width:.62em}.boss-word strong span.hit{color:#76ddb3;transform:translateY(-3px)}.boss-word strong span.target{color:#ffd069;border-bottom-color:#ffd069}.boss-timer{transform-origin:0;width:min(720px,100%);height:10px;animation:boss-time-shrink var(--boss-duration) linear forwards;background:#ffd069;border:1px solid #925d68}.boss-time-readout{color:#fff0cc;background:#421e29;border-color:#bf8690;margin:0 0 10px;position:static}@keyframes boss-time-shrink{to{background:#ef655b;transform:scaleX(0)}}.boss-callout{color:#e9c9cd;margin:10px 0 0;font-size:13px;font-weight:800}.sentence-repair{color:#2f351f;background:#eee8d7}.sentence-repair .typing-game-hud{color:#fff;background:#3d4a35}.repair-phase-chip{color:#2f3d2c;background:#e9ce72;border-radius:5px;place-items:center;min-width:72px;min-height:29px;padding:0 10px;font-size:13px;font-weight:900;display:grid}.sentence-repair-field{background:#f3efe2;flex-direction:column;justify-content:center;align-items:center;min-height:0;padding:24px clamp(16px,5vw,64px);display:flex;overflow:auto}.repair-assembly{background:#fffdf5;border:2px dashed #a99c72;flex-wrap:wrap;place-content:center;gap:8px;width:min(980px,100%);min-height:86px;padding:16px;display:flex}.repair-assembly em{color:#837a61;align-self:center;font-size:13px;font-style:normal}.repair-assembly span,.repair-token-tray button{color:#2e473a;min-height:40px;font:800 14px var(--font-geist-mono);background:#e5f2ec;border:1px solid #9cb8aa;border-radius:6px;align-items:center;padding:0 12px;display:inline-flex}.repair-token-tray{flex-wrap:wrap;place-content:center;gap:9px;width:min(980px,100%);min-height:112px;margin-top:18px;display:flex}.repair-token-tray button{color:#4f3e1d;cursor:pointer;background:#fff0bb;border-color:#c9aa64;transition:transform .1s,background .1s}.repair-token-tray button:hover:not(:disabled){background:#ffe18a;transform:translateY(-2px)}.repair-token-tray button:disabled{opacity:.22;cursor:default}.repair-token-tray button.wrong{color:#fff;background:#d85a48;border-color:#a64033;animation:.22s wrong-key-shake}.repair-assembled-line{color:#27604e;width:min(980px,100%);font:700 14px/1.6 var(--font-geist-mono);background:#e0f0e9;border-left:4px solid #4c9a7e;align-items:center;gap:8px;margin-bottom:14px;padding:11px 14px;display:flex}.repair-dock{z-index:20;color:#e6ece6;background:#303b2e;border-top:1px solid #667363;justify-content:center;align-items:center;gap:18px;min-height:218px;padding:18px;display:flex;position:relative}.repair-dock button{color:#303820;cursor:pointer;background:#e8cd74;border:0;border-radius:6px;align-items:center;gap:8px;min-height:44px;padding:0 15px;font-weight:900;display:inline-flex}.repair-dock button:disabled{opacity:.45;cursor:default}.repair-dock span{color:#bdc9bb;font-size:13px;font-weight:800}.typing-float-message{z-index:150;color:#15392f;background:#ffdc79;border:1px solid #e7ba43;border-radius:7px;align-items:center;min-height:37px;padding:0 15px;font-weight:900;animation:.65s both typing-message;display:flex;position:fixed;top:88px;left:50%;transform:translate(-50%);box-shadow:0 9px 24px #071f1936}@keyframes typing-message{0%{opacity:0;transform:translate(-50%,8px)}25%,75%{opacity:1;transform:translate(-50%)}to{opacity:.4}}.screen-keyboard{z-index:20;min-height:218px;padding:13px max(12px, env(safe-area-inset-right)) max(14px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left));-webkit-user-select:none;user-select:none;background:#122b36;border-top:1px solid #ffffff2e;position:relative;box-shadow:0 -16px 32px #05141942}.keyboard-row{justify-content:center;gap:clamp(4px,.7vw,8px);width:min(920px,100%);margin:0 auto 7px;display:flex}.keyboard-row button{color:#dce8e5;cursor:pointer;width:clamp(34px,7.4vw,70px);height:40px;font:800 13px var(--font-geist-mono);background:#25434d;border:1px solid #52686f;border-bottom-width:4px;border-radius:6px;flex:0 70px;transition:transform 80ms,border-color 80ms,background 80ms}.keyboard-row button[data-key=shift],.keyboard-row button[data-key=backspace]{flex-basis:108px;width:clamp(67px,12vw,108px);font-size:13px}.keyboard-row button[data-key=space]{width:min(330px,46vw);font-family:var(--font-geist-sans);flex-basis:330px;font-size:13px}.keyboard-row button.expected{color:#173d33;background:#f5c95d;border-color:#d8a62c;box-shadow:0 0 0 3px #f5c95d2b}.keyboard-row button.pressed{border-bottom-width:1px;transform:translateY(3px)}.keyboard-row button.wrong{color:#fff;background:#d85843;border-color:#ad3d2c;animation:.22s wrong-key-shake}.keyboard-row button.latched{color:#fff;background:#28755f}@keyframes wrong-key-shake{25%{transform:translate(-3px)}75%{transform:translate(3px)}}.typing-finish-screen{color:#173a31;background:#e7f0ec;grid-template-rows:1fr;place-items:center;display:grid}.typing-finish-panel{text-align:center;background:#fff;border:1px solid #bfd0ca;border-radius:8px;width:min(680px,100% - 28px);max-height:calc(100dvh - 28px);padding:clamp(20px,4vw,32px);overflow:auto;box-shadow:0 26px 70px #10302833}.typing-finish-panel .reward-receipt{margin:0 0 20px}.finish-badge{color:#6d4d09;background:#f5ca5d;border-radius:50%;place-items:center;width:68px;height:68px;margin:0 auto 15px;display:grid;position:relative}.finish-badge svg:last-child{color:#d75e45;position:absolute;top:-5px;right:-5px}.typing-finish-panel>p{color:#61736d;margin:0;font-size:13px}.typing-finish-panel h1{letter-spacing:0;margin:6px 0 20px;font-size:clamp(43px,8vw,67px);line-height:1.2}.typing-finish-panel h1 small{font-size:13px}.typing-finish-stats{border:1px solid #d6e0dc;border-width:1px 0;grid-template-columns:repeat(4,1fr);display:grid}.typing-finish-stats>div{flex-direction:column;min-width:0;padding:16px 8px;display:flex}.typing-finish-stats>div+div{border-left:1px solid #d6e0dc}.typing-finish-stats strong{font-size:20px}.typing-finish-stats span{color:#71807b;margin-top:4px;font-size:13px}.typing-review-list{text-align:left;background:#fff8e4;border-left:3px solid #e1ae35;margin-top:18px;padding:14px}.typing-review-list strong{font-size:13px}.typing-review-list p{color:#665e48;overflow-wrap:anywhere;margin:5px 0 0;font-size:13px;line-height:1.6}.typing-finish-panel footer{justify-content:center;gap:10px;margin-top:21px;display:flex}.typing-finish-panel footer button{color:#28584c;cursor:pointer;background:#f3f9f6;border:1px solid #afc7bf;border-radius:7px;align-items:center;gap:7px;min-height:44px;padding:0 15px;font-weight:800;display:inline-flex}.typing-finish-panel footer button.primary{color:#fff;background:#245f50;border-color:#245f50}@media (max-width:780px){.typing-hub-heading{flex-direction:column;align-items:stretch}.typing-hub-heading label{width:100%}.typing-mode-grid{grid-template-columns:1fr}.boss-mode-card{grid-column:auto}.typing-mode-card{grid-template-columns:126px minmax(0,1fr)}.mode-card-visual{min-height:250px}.typing-game-screen{grid-template-rows:64px minmax(0,1fr) auto}.typing-game-hud{grid-template-columns:40px minmax(100px,1fr) auto auto 40px;gap:6px;padding:8px 10px}.typing-progress{grid-template-columns:minmax(80px,1fr) auto}.typing-progress>span,.typing-score span,.typing-combo span{display:none}.typing-score,.typing-combo{min-width:34px}.typing-hearts{z-index:11;background:#0f2a33bf;border-radius:6px;min-width:0;padding:7px;position:fixed;top:70px;left:12px}.screen-keyboard{min-height:190px;padding-top:10px}.falling-word{box-sizing:border-box;min-width:190px;max-width:calc(100vw - 24px);padding:13px 16px 16px;left:50%}.falling-word small{font-size:13px}.falling-word strong{font-size:34px}.falling-word.is-long strong{font-size:27px}.falling-word.is-extra-long strong{font-size:23px}.keyboard-row{gap:3px;margin-bottom:5px}.keyboard-row button{flex:1 1 0;width:auto;min-width:0;height:35px;padding:0 2px;font-size:13px}.keyboard-row button[data-key=shift],.keyboard-row button[data-key=backspace]{flex:1.6 1 0;width:auto}.keyboard-row button[data-key=space]{flex:5 1 0;width:auto}.sentence-copy-field{justify-content:flex-start;padding-top:24px}.sentence-repair-field{justify-content:flex-start;padding-top:20px}.repair-phase-chip{min-width:55px;padding:0 5px}.radar-console{padding:20px 15px}.radar-answer{gap:4px;font-size:29px}.boss-status-panel{grid-template-columns:65px minmax(0,1fr)}.boss-emblem{width:62px;height:62px}.boss-word{margin:18px 0 14px;padding:18px 9px 20px}.boss-word strong{font-size:32px}.repair-dock{flex-direction:column;gap:10px;min-height:190px}.sentence-target{padding:17px 12px;font-size:18px;line-height:1.75}@keyframes typing-word-fall{to{transform:translate(-50%,calc(100dvh - 345px))}}}@media (max-width:470px){.typing-hub{padding-top:20px}.typing-mode-card{grid-template-rows:128px auto auto;grid-template-columns:1fr;min-height:0}.boss-mode-card{min-height:0}.boss-mode-card .mode-card-visual{min-height:128px}.mode-card-visual{grid-row:auto;grid-auto-flow:column;place-content:center;min-height:128px}.mode-card-visual>i{width:42px;height:2px}.mode-card-copy{padding:18px 16px 7px}.typing-mode-card footer{padding:10px 12px 14px 16px}.typing-progress strong{font-size:13px}.typing-score strong,.typing-combo strong{font-size:14px}.repair-phase-chip{z-index:11;position:fixed;top:70px;right:12px}.repair-assembly{min-height:76px;padding:11px}.repair-assembly span,.repair-token-tray button{min-height:36px;padding:0 9px;font-size:13px}.repair-token-tray{gap:6px;min-height:100px;margin-top:10px}.repair-assembled-line{font-size:13px}.typing-finish-panel .reward-receipt{gap:12px;padding:16px}.typing-finish-panel .reward-receipt>.gold-coin{flex:0 0 52px;width:52px}.typing-finish-panel .reward-receipt strong{font-size:28px}.typing-finish-panel .finish-badge{width:56px;height:56px;margin-bottom:10px}.typing-finish-panel h1{margin-bottom:14px}.typing-finish-panel .typing-review-list{margin-top:12px;padding:10px}.typing-finish-panel footer{margin-top:16px}.typing-finish-stats>div{padding:8px}.typing-finish-stats{grid-template-columns:repeat(2,1fr)}.typing-finish-stats>div:nth-child(3){border-top:1px solid #d6e0dc;border-left:0}.typing-finish-stats>div:nth-child(4){border-top:1px solid #d6e0dc}.typing-finish-panel footer{flex-direction:column}.typing-finish-panel footer button{justify-content:center}}@media (prefers-reduced-motion:reduce){.typing-shot{display:none}.keyboard-row button,.falling-word strong span,.typing-progress b{transition:none}.typing-float-message,.keyboard-row button.wrong{animation-duration:.01ms}*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.falling-word{transform:translate(-50%, var(--word-offset,0px))!important;animation:none!important}.boss-timer{transform:scaleX(var(--boss-scale,1))!important;animation:none!important}}.tool-view,.parent-dashboard{max-width:1280px;margin-top:24px}.view-intro p{color:var(--muted);margin:0 0 7px;font-size:13px}.view-intro h2{letter-spacing:0;margin:0;font-size:26px}.practice-list,.error-list{gap:12px;margin-top:24px;display:grid}.practice-row,.error-row{border:1px solid var(--line);border-radius:var(--radius-card);background:var(--white);min-width:0;box-shadow:var(--shadow-card);grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:18px;padding:22px;display:grid}.practice-icon{border-radius:7px;place-items:center;width:44px;height:44px;display:grid}.practice-icon.math{color:var(--sky);background:#eaf2ff}.practice-icon.chinese{color:#a5442c;background:#fbe8e2}.practice-icon.english{color:var(--mint);background:#e5f7ed}.practice-row h3,.error-row h3{letter-spacing:0;margin:0 0 7px;font-size:18px}.practice-row p,.error-row p{color:var(--muted);margin:0;font-size:13px}.practice-row .curriculum-notes{margin-top:12px}.practice-row .curriculum-notes p{overflow-wrap:anywhere;margin-top:6px;font-size:14px;line-height:1.7}.practice-row select{width:100%;max-width:430px;min-height:44px;color:var(--ink);border:1px solid var(--line);border-radius:var(--radius-control);background:#f8fbf5;margin-top:12px;padding:8px 12px;font-size:15px}.mastery{text-align:right;flex-direction:column;min-width:60px;display:flex}.mastery strong{font-size:18px}.mastery small{color:var(--muted);margin-top:3px;font-size:13px}.secondary-action{min-height:44px;color:var(--deep);border-radius:var(--radius-control);background:var(--white);cursor:pointer;border:1px solid #aaccc1;justify-content:center;align-items:center;gap:7px;padding:0 14px;font-weight:700;display:inline-flex}.secondary-action:hover{border-color:var(--mint);background:#e1f4ed}.secondary-action:disabled{opacity:.58;cursor:wait}.exam-view{max-width:760px}.exam-spec{border:1px solid var(--line);background:var(--white);border-radius:7px;grid-template-columns:repeat(3,1fr);margin:28px 0 20px;display:grid}.exam-spec div{text-align:center;flex-direction:column;padding:22px;display:flex}.exam-spec div+div{border-left:1px solid var(--line)}.exam-spec strong{font-size:27px}.exam-spec span{color:var(--muted);margin-top:5px;font-size:13px}.exam-sections{border-top:1px solid var(--line)}.exam-sections p{border-bottom:1px solid var(--line);color:#394743;align-items:center;gap:10px;margin:0;padding:16px 2px;font-size:14px;display:flex}.exam-sections p span{color:var(--muted);margin-left:auto}.exam-note{max-width:650px;color:var(--muted);margin:20px 0 0;font-size:13px;line-height:1.7}.exam-view>.primary-action{margin-top:24px}.exam-center{max-width:1120px;padding-bottom:40px}.exam-center-head{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.formal-badge{color:#40534d;background:#f5f9f7;border:1px solid #bed0ca;border-radius:6px;align-items:center;gap:6px;min-height:34px;padding:0 10px;font-size:13px;font-weight:800;display:inline-flex}.active-exam-banner{color:var(--white);background:var(--deep);border-radius:7px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;margin-top:22px;padding:17px 19px;display:grid}.ongoing-exams>p{color:var(--muted);margin:18px 0 0;font-size:13px}.ongoing-exams .active-exam-banner{margin-top:10px}.active-exam-banner>span{color:#7e5611;background:var(--sun);border-radius:50%;place-items:center;width:42px;height:42px;display:grid}.active-exam-banner p,.active-exam-banner h3{margin:0}.active-exam-banner p{color:#bcd0ca;font-size:13px}.active-exam-banner h3{margin-top:4px;font-size:15px}.active-exam-banner .primary-action{color:var(--deep);background:var(--white)}.exam-filters{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;margin-top:28px;display:flex}.segmented-control{background:#eef4f1;border:1px solid #c8d7d2;border-radius:7px;gap:2px;padding:3px;display:inline-flex}.segmented-control button{color:#53645f;cursor:pointer;background:0 0;border:0;border-radius:5px;min-width:74px;height:34px;padding:0 12px;font-weight:700}.segmented-control button.active{color:var(--white);background:var(--deep)}.exam-kind-tabs{align-self:stretch;display:flex}.exam-kind-tabs button{min-width:90px;color:var(--muted);cursor:pointer;background:0 0;border:0;padding:0 12px 12px;font-weight:700;position:relative}.exam-kind-tabs button.active{color:var(--deep)}.exam-kind-tabs button.active:after{content:"";background:var(--coral);height:3px;position:absolute;bottom:-1px;left:10px;right:10px}.exam-center-message{color:#9a432d;background:#fdf1ed;border:1px solid #edb6a8;border-radius:7px;align-items:center;gap:8px;margin-top:18px;padding:12px 14px;font-size:13px;display:flex}.exam-catalog-loading{min-height:250px;color:var(--muted);align-content:center;justify-items:center;gap:12px;font-size:13px;display:grid}.exam-catalog-loading svg,.spin{animation:1s linear infinite ui-spin}@keyframes ui-spin{to{transform:rotate(360deg)}}.paper-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:22px;display:grid}.paper-card{border:1px solid var(--line);border-top:3px solid var(--mint);border-radius:var(--radius-card);background:var(--white);flex-direction:column;min-width:0;min-height:298px;padding:19px;display:flex}.paper-card.chinese{border-top-color:var(--coral)}.paper-card.english{border-top-color:var(--sky)}.paper-card>header{justify-content:space-between;align-items:center;display:flex}.paper-card>header>span{color:#167659;background:#dff5ed;border-radius:7px;place-items:center;width:39px;height:39px;display:grid}.paper-card.chinese>header>span{color:#a5442c;background:#fbe8e2}.paper-card.english>header>span{color:#296992;background:#e4f1f8}.paper-card>header small{color:var(--muted);font-size:13px}.paper-card h3{overflow-wrap:anywhere;margin:15px 0 7px;font-size:17px;line-height:1.45}.paper-card>p{min-height:34px;color:var(--muted);margin:0;font-size:13px;line-height:1.55}.paper-meta{color:#53635e;flex-wrap:wrap;gap:7px 14px;margin-top:14px;display:flex}.paper-meta span{align-items:center;gap:5px;font-size:13px;display:inline-flex}.paper-sections{flex-wrap:wrap;gap:5px;margin-top:14px;display:flex}.paper-sections span{color:#596a64;background:#edf3f0;border-radius:4px;padding:4px 6px;font-size:13px}.paper-card>footer{align-items:center;gap:8px;margin-top:auto;padding-top:17px;display:flex}.paper-card>footer .primary-action{flex:1}.fresh-paper{color:#8f452f;background:#fff4f0;flex:none}.generation-status{align-items:center;gap:5px;display:flex;color:#52645e!important;min-height:21px!important;margin-top:9px!important}.generation-status .thinking-dots{margin:0 2px 0 0}.empty-state{text-align:center;border:1px solid var(--line);border-radius:var(--radius-card);background:var(--white);box-shadow:var(--shadow-card);margin-top:24px;padding:36px 24px}.empty-state svg{color:var(--mint)}.empty-state h3{margin:13px 0 7px}.empty-state p{color:var(--muted);margin:0;font-size:13px}.error-row{grid-template-columns:auto minmax(0,1fr) auto}.error-view-intro{justify-content:space-between;align-items:center;gap:16px;display:flex}.wrong-sync-message{color:#8f452f;background:#fff5f1;border:1px solid #e8c0b5;border-radius:7px;align-items:center;gap:7px;margin:18px 0 -7px;padding:10px 12px;font-size:13px;display:flex}.error-number{color:#a5442c;background:#fbe8e2;border-radius:50%;place-items:center;width:32px;height:32px;font-weight:800;display:grid}.error-row small{color:#9a4b37;margin-top:8px;font-size:13px;display:block}.parent-metrics{border:1px solid var(--line);background:var(--white);border-radius:7px;grid-template-columns:repeat(3,1fr);display:grid}.parent-metrics div{flex-direction:column;padding:22px;display:flex}.parent-metrics div+div{border-left:1px solid var(--line)}.parent-metrics span,.parent-metrics small{color:var(--muted);font-size:13px}.parent-metrics strong{margin:8px 0 5px;font-size:26px}.report-band{color:var(--white);background:var(--deep);border-radius:8px;justify-content:space-between;align-items:center;gap:30px;margin-top:20px;padding:30px;display:flex}.report-band>div{max-width:720px}.report-band>div>p:first-child{color:#9fe1ca;margin:0 0 8px;font-size:13px;font-weight:800}.report-band h2{letter-spacing:0;margin:0 0 12px;font-size:22px}.report-band h2+p{color:#c6d8d3;margin:0;font-size:13px;line-height:1.8}.report-band>svg{color:#f4c45a;flex:none}.parent-detail{grid-template-columns:1fr 1fr;gap:14px;margin-top:20px;display:grid}.parent-detail section{border-top:3px solid var(--mint);padding:22px 2px}.parent-detail section+section{border-color:var(--coral)}.parent-detail h2{margin:0 0 9px;font-size:17px}.parent-detail p{color:var(--muted);margin:0;font-size:13px;line-height:1.7}.account-security{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;margin-top:18px;padding:20px 2px;display:flex}.account-security>div{align-items:center;gap:12px;display:flex}.account-security>div>span{color:#8c4a1e;background:#fff0dc;border-radius:7px;place-items:center;width:40px;height:40px;display:grid}.account-security h2,.account-security p{margin:0}.account-security h2{font-size:16px}.account-security p{color:var(--muted);margin-top:5px;font-size:13px}.dialog-backdrop{z-index:50;background:#0d1e1b85;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.companion-dialog{border-radius:var(--radius-card);background:var(--white);flex-direction:column;width:min(820px,100vw - 32px);height:min(720px,100dvh - 40px);min-height:0;display:flex;overflow:hidden;box-shadow:0 24px 70px #0b1f1b3d}.companion-dialog .ui-dialog-content{flex-direction:column;flex:1;min-height:0;display:flex}.password-dialog{background:var(--white);border-radius:8px;width:min(470px,100%);padding:24px;box-shadow:0 24px 70px #0b1f1b3d}.exam-confirm-backdrop{z-index:80}.exam-confirm-dialog{background:var(--white);border-radius:8px;grid-template-columns:auto minmax(0,1fr);gap:15px;width:min(470px,100%);padding:26px;display:grid;box-shadow:0 24px 70px #0b1f1b3d}.exam-confirm-dialog>span{color:#a8442c;background:#fbe8e2;border-radius:7px;place-items:center;width:44px;height:44px;display:grid}.exam-confirm-dialog h2,.exam-confirm-dialog p{margin:0}.exam-confirm-dialog h2{letter-spacing:0;font-size:19px}.exam-confirm-dialog p{color:var(--muted);margin-top:8px;font-size:13px;line-height:1.7}.exam-confirm-dialog footer{grid-column:1/-1;justify-content:flex-end;gap:9px;margin-top:10px;display:flex}.exam-confirm-dialog .danger{background:#a8442c}.blocking-notice-backdrop{z-index:100}.blocking-notice-dialog{background:var(--white);border-radius:9px;grid-template-columns:auto minmax(0,1fr);gap:14px 16px;width:min(460px,100%);padding:24px;display:grid;box-shadow:0 24px 70px #0b1f1b3d}.blocking-notice-icon{color:#9a4e20;background:#fff0dc;border-radius:8px;place-items:center;width:44px;height:44px;display:grid}.blocking-notice-copy{min-width:0}.blocking-notice-copy h2,.blocking-notice-copy p{margin:0}.blocking-notice-copy h2{font-size:20px;line-height:1.35}.blocking-notice-copy>p{color:var(--muted);margin-top:8px;font-size:14px;line-height:1.65}.blocking-notice-copy>div{border-left:3px solid var(--mint);background:#f0f7f4;border-radius:5px;margin-top:16px;padding:13px 14px}.blocking-notice-copy>div strong{margin-bottom:4px;font-size:13px;display:block}.blocking-notice-copy>div p{color:#42524d;font-size:13px;line-height:1.65}.blocking-notice-dialog footer{grid-column:1/-1;justify-content:flex-end;padding-top:2px;display:flex}.blocking-notice-dialog footer button{min-width:148px}.security-avatar{color:#8c4a1e;background:#fff0dc;border-radius:7px;place-items:center;width:42px;height:42px;display:grid}.password-form{margin-top:22px;display:grid}.password-form label{color:#42524d;margin:0 0 7px;font-size:13px;font-weight:700}.password-form input{width:100%;height:44px;color:var(--ink);border:1px solid #cbd9d4;border-radius:7px;outline:0;margin-bottom:15px;padding:0 13px}.password-form input:focus{border-color:var(--mint);box-shadow:0 0 0 3px #dff5ed}.password-message{color:#ae432c;visibility:hidden;min-height:18px;margin:-3px 0 8px;font-size:13px}.password-message.visible{visibility:visible}.password-success{text-align:center;justify-items:center;gap:16px;padding:34px 4px 8px;display:grid}.password-success>svg{color:var(--mint)}.password-success p{color:var(--muted);margin:0;font-size:13px;line-height:1.7}.dialog-title{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}.dialog-title p,.dialog-title h2{margin:0}.dialog-title p{color:var(--muted);font-size:13px}.dialog-title h2{margin-top:3px;font-size:19px}.companion-avatar{color:#a5442c;background:#fbe8e2;border-radius:50%;place-items:center;width:42px;height:42px;display:grid}.companion-dialog-header{border-bottom:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;min-height:78px;padding:16px 22px;display:grid}.companion-dialog-header p,.companion-dialog-header h2{margin:0}.companion-dialog-header p{color:var(--muted);font-size:13px}.companion-dialog-header h2{letter-spacing:0;margin-top:3px;font-size:20px}.companion-transcript{background:#f4f8f6;flex:1;min-height:0;padding:26px clamp(20px,5vw,52px);overflow-y:auto}.chat-empty{text-align:center;align-content:center;justify-items:center;min-height:260px;display:grid}.chat-empty>span{color:#a5442c;background:#fbe8e2;border-radius:50%;place-items:center;width:58px;height:58px;display:grid}.chat-empty h3{letter-spacing:0;margin:16px 0 18px;font-size:20px}.quick-prompt-list{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.quick-prompt-list button{color:#42534e;cursor:pointer;background:#f3f9f6;border:1px solid #c8d8d2;border-radius:7px;min-height:38px;padding:0 12px}.quick-prompt-list button:hover{color:var(--deep);border-color:var(--mint)}.chat-message{gap:6px;width:min(78%,650px);margin-bottom:22px;display:grid}.chat-message>small{color:var(--muted);font-size:13px}.chat-message.user{justify-items:end;margin-left:auto}.message-body{background:var(--white);border:1px solid #d5e0dc;border-radius:7px;padding:14px 16px}.chat-message.user .message-body{color:var(--white);border-color:var(--deep);background:var(--deep)}.message-body>p{white-space:pre-wrap;margin:0;font-size:14px;line-height:1.75}.tutor-guide{border-top:1px solid var(--line);margin-top:14px;padding-top:13px}.tutor-guide h3{color:#8d452f;letter-spacing:0;margin:0 0 9px;font-size:13px}.tutor-guide ol{color:#40504b;margin:0;padding-left:22px}.tutor-guide li{padding-left:3px;font-size:13px;line-height:1.75}.tutor-visual{border-top:1px solid var(--line);margin:15px 0 0;padding:14px 0 0}.tutor-visual.number_line{overflow-x:auto}.tutor-visual figcaption{color:var(--deep);align-items:center;gap:7px;margin-bottom:13px;font-size:13px;display:flex}.visual-bars{gap:11px;display:grid}.visual-bar-row{grid-template-columns:minmax(90px,150px) minmax(0,1fr);align-items:center;gap:12px;display:grid}.visual-bar-row>div{flex-direction:column;min-width:0;display:flex}.visual-bar-row strong{overflow-wrap:anywhere;font-size:13px}.visual-bar-row small{overflow-wrap:anywhere;color:var(--muted);margin-top:2px;font-size:13px}.visual-bar-track{background:#eef3f1;border:1px solid #d5dedb;height:20px;display:block;overflow:hidden}.visual-bar-track>span{background:var(--mint);height:100%;display:block}.visual-bar-row:nth-child(2) .visual-bar-track>span{background:var(--coral)}.visual-bar-row:nth-child(3) .visual-bar-track>span{background:var(--sky)}.visual-bar-row:nth-child(4) .visual-bar-track>span{background:var(--sun)}.visual-number-line{min-width:520px;height:88px;margin-top:3px;position:relative;overflow:hidden}.visual-number-line:before{content:"";background:#9cb5ad;height:2px;position:absolute;top:7px;left:6%;right:6%}.number-point{z-index:1;text-align:center;justify-items:center;width:92px;display:grid;position:absolute;top:0;transform:translate(-50%)}.number-point>span{border:3px solid var(--white);background:var(--sky);border-radius:50%;width:14px;height:14px;box-shadow:0 0 0 1px #7aa1ba}.number-point:nth-child(2n)>span{background:var(--coral);box-shadow:0 0 0 1px #c87b67}.number-point strong{overflow-wrap:anywhere;max-width:90px;margin-top:7px;font-size:13px}.number-point small{overflow-wrap:anywhere;max-width:90px;color:var(--muted);margin-top:3px;font-size:13px;line-height:1.4}.visual-flow{align-items:stretch;display:flex;overflow-x:auto}.visual-flow-step{flex:none;align-items:center;display:flex}.visual-flow-step>div{background:#edf7f3;grid-template-columns:auto minmax(0,1fr);align-content:start;gap:5px 7px;width:130px;min-height:88px;padding:10px;display:grid}.visual-flow-step:nth-child(2)>div{background:#fff1ed}.visual-flow-step:nth-child(3)>div{background:#eaf4fa}.visual-flow-step:nth-child(4)>div{background:#fff7dd}.visual-flow-step>div>span{width:21px;height:21px;color:var(--white);background:var(--deep);border-radius:50%;place-items:center;font-size:13px;display:grid}.visual-flow-step strong{overflow-wrap:anywhere;align-self:center;font-size:13px}.visual-flow-step small{overflow-wrap:anywhere;color:var(--muted);grid-column:1/-1;font-size:13px;line-height:1.45}.visual-flow-step>svg{color:#8ba39b;flex:none;margin:0 6px}.sentence-blocks{flex-wrap:wrap;gap:7px;display:flex}.sentence-blocks>span{border-bottom:3px solid var(--mint);background:#edf7f3;flex-direction:column;min-width:74px;padding:9px 10px;display:flex}.sentence-blocks>span:nth-child(2n){border-color:var(--coral);background:#fff1ed}.sentence-blocks>span:nth-child(3n){border-color:var(--sky);background:#eaf4fa}.sentence-blocks strong{overflow-wrap:anywhere;font-size:13px}.sentence-blocks small{overflow-wrap:anywhere;color:var(--muted);margin-top:3px;font-size:13px}.visual-caption{color:var(--muted);margin:11px 0 0!important;font-size:13px!important;line-height:1.55!important}.next-question{color:#715b1d;border-top:1px dashed #e1cc91;align-items:flex-start;gap:7px;padding:10px 0 0;font-weight:700;display:flex;margin-top:12px!important}.next-question svg{flex:none;margin-top:3px}.chat-thinking{width:min(330px,88%);color:var(--muted);background:var(--white);border:1px solid #cbdad5;border-radius:7px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:9px 12px;padding:13px 14px 11px;display:grid;box-shadow:0 6px 18px #173f3a12}.thinking-emblem{color:#a5442c;background:#fbe8e2;border-radius:50%;place-items:center;width:38px;height:38px;display:grid;position:relative}.thinking-emblem:after{content:"";border:2px solid #d9e5e1;border-top-color:var(--coral);border-right-color:var(--mint);border-radius:50%;animation:1.25s linear infinite thinking-spin;position:absolute;inset:-3px}.thinking-copy{min-width:0}.thinking-copy p{color:#344640;align-items:baseline;margin:0;font-size:13px;font-weight:700;display:flex}.thinking-copy small{color:var(--muted);margin-top:4px;font-size:13px;display:block}.thinking-copy small strong{color:var(--deep);font-variant-numeric:tabular-nums}.thinking-dots{gap:2px;margin-left:3px;display:inline-flex}.thinking-dots i{background:var(--mint);border-radius:50%;width:3px;height:3px;animation:1.1s ease-in-out infinite thinking-dot}.thinking-dots i:nth-child(2){animation-delay:.16s}.thinking-dots i:nth-child(3){animation-delay:.32s}.thinking-progress{background:#e7efec;grid-column:1/-1;height:3px;display:block;position:relative;overflow:hidden}.thinking-progress>span{background:var(--mint);width:35%;animation:1.45s ease-in-out infinite thinking-progress;display:block;position:absolute;inset:0 auto 0 -35%}@keyframes thinking-spin{to{transform:rotate(360deg)}}@keyframes thinking-dot{0%,60%,to{opacity:.45;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}@keyframes thinking-progress{0%{left:-35%}to{left:100%}}.chat-composer{border-top:1px solid var(--line);background:var(--white);grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;padding:16px 20px;display:grid}.chat-composer textarea{resize:vertical;min-width:0;max-height:140px;color:var(--ink);font:inherit;border:1px solid #cbd9d4;border-radius:7px;outline:0;padding:11px 13px;line-height:1.5}.chat-composer textarea:focus{border-color:var(--mint);box-shadow:0 0 0 3px #dff5ed}.chat-send{width:48px;height:48px;color:var(--white);background:var(--deep);cursor:pointer;border:0;border-radius:7px;place-items:center;display:grid}.chat-send:disabled{cursor:not-allowed;opacity:.5}.short-answer{min-width:0;height:44px;color:var(--ink);border:1px solid var(--line);background:var(--white);border-radius:7px;outline:0;padding:0 13px}.short-answer:focus{border-color:var(--mint);box-shadow:0 0 0 3px #dff5ed}.runner-shell{background:#f5f8f6;grid-template-rows:auto 1fr auto;min-height:100vh;padding:24px clamp(18px,5vw,70px) 28px;display:grid}.runner-header{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;width:min(920px,100%);margin:0 auto;display:grid}.runner-header>div{min-width:0}.runner-header p{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:0 0 8px;font-size:13px;overflow:hidden}.runner-header>strong{color:var(--muted);font-size:13px}.runner-progress{background:#dfe8e4;border-radius:3px;height:6px;display:block;overflow:hidden}.runner-progress span{background:var(--mint);height:100%;transition:width .25s;display:block}.question-stage{align-self:start;width:min(760px,100%);margin:52px auto 28px}.question-kicker{flex-wrap:wrap;gap:8px;display:flex}.question-kicker span{color:#4c625b;background:#e5eeea;border-radius:5px;padding:5px 8px;font-size:13px}.question-context{color:#40514c;border-left:3px solid var(--sky);background:var(--white);margin:24px 0 0;padding:18px 20px;font-size:15px;line-height:1.9}.question-stage>h1{letter-spacing:0;margin:25px 0 28px;font-size:31px;line-height:1.55}.option-list{grid-template-columns:1fr 1fr;gap:12px;display:grid}.answer-option{min-width:0;min-height:68px;color:var(--ink);text-align:left;background:var(--white);cursor:pointer;border:1px solid #cad8d3;border-radius:7px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 16px;display:grid}.answer-option>span{background:#edf3f0;border-radius:6px;place-items:center;width:30px;height:30px;font-size:13px;display:grid}.answer-option>strong{overflow-wrap:anywhere;font-size:14px}.answer-option:hover,.answer-option.selected{border-color:var(--mint);box-shadow:0 0 0 2px #dff5ed}.answer-option.selected>span{color:var(--white);background:var(--mint)}.answer-option.correct{box-shadow:none;background:#ecf8f3;border-color:#54a98c}.short-answer{width:100%;height:54px}.hint-box,.feedback{border-radius:7px;align-items:flex-start;gap:12px;margin-top:18px;padding:15px 17px;display:flex}.hint-box{color:#6d5722;background:#fff8df;border:1px solid #ead38d}.hint-box p{margin:0;font-size:13px;line-height:1.7}.hint-box p span{display:block}.feedback{background:#edf8f4;border:1px solid #9dcdbc}.feedback.incorrect{background:#fdf1ed;border-color:#edb6a8}.feedback>span{width:29px;height:29px;color:var(--white);background:var(--mint);border-radius:50%;flex:none;place-items:center;display:grid}.feedback.incorrect>span{background:var(--coral)}.feedback h2{margin:0 0 6px;font-size:16px}.feedback p{color:#4b5b56;margin:0;font-size:13px;line-height:1.7}.runner-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;width:min(760px,100%);margin:0 auto;padding-top:18px;display:flex}.primary-action.flat{justify-content:center;min-width:130px;min-height:44px;margin:0}.hint-action{color:#7b641e;cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;min-height:44px;padding:0;font-weight:700;display:inline-flex}.result-screen{place-items:center}.session-result{text-align:center;border:1px solid var(--line);background:var(--white);border-radius:8px;width:min(650px,100%);padding:42px}.result-emblem{color:#7f5c13;background:#f9d779;border-radius:50%;place-items:center;width:72px;height:72px;margin:0 auto 18px;display:grid}.session-result>p:first-of-type{color:var(--muted);margin:0;font-size:13px}.session-result h1{letter-spacing:0;margin:7px 0 20px;font-size:27px}.session-result>strong{color:var(--deep);font-size:58px;line-height:1;display:block}.session-result>strong small{font-size:16px}.result-stats{flex-wrap:wrap;justify-content:center;gap:9px;margin:27px 0;display:flex}.result-stats span{color:#52645e;background:#edf3f0;border-radius:5px;padding:7px 10px;font-size:13px}.result-message{max-width:480px;color:var(--muted);margin:0 auto;font-size:13px;line-height:1.7}.result-actions{justify-content:center;gap:10px;margin-top:26px;display:flex}.formal-runner{min-height:100vh;color:var(--ink);background:var(--paper)}.formal-runner-header{z-index:20;border-bottom:1px solid var(--line);background:#fffffff5;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;min-height:76px;padding:12px clamp(16px,4vw,58px);display:grid;position:sticky;top:0}.formal-paper-title{flex-direction:column;min-width:0;display:flex}.formal-paper-title small{color:var(--muted);font-size:13px}.formal-paper-title strong{text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:15px;overflow:hidden}.exam-clock{min-width:126px;color:var(--deep);border-radius:var(--radius-control);background:#eef7f3;border:1px solid #bfd2cb;justify-content:center;align-items:center;gap:8px;padding:8px 12px;display:flex}.exam-clock>span{flex-direction:column;display:flex}.exam-clock small{color:var(--muted);font-size:13px}.exam-clock strong{font-variant-numeric:tabular-nums;margin-top:1px;font-size:18px}.exam-clock.warning{color:#a8432b;background:#fff0ec;border-color:#e7ad9e}.formal-runner-body{grid-template-columns:minmax(0,1fr) 280px;align-items:start;gap:20px;width:min(1180px,100% - 32px);margin:28px auto;display:grid}.formal-question-area{border:1px solid var(--line);border-radius:var(--radius-card);background:var(--white);min-width:0;min-height:680px;padding:clamp(24px,4vw,46px)}.formal-question-meta{flex-wrap:wrap;gap:7px;display:flex}.formal-question-meta span{color:#4c625b;background:#e8f0ed;border-radius:5px;padding:5px 8px;font-size:13px}.formal-question-area>h1{margin:25px 0 22px;font-size:24px;line-height:1.65}.formal-question-area>h1 small{color:var(--coral);font-size:.7em}.formal-question-context{white-space:pre-wrap;color:#3d4e49;border-left:3px solid var(--sky);background:#f6f9f8;max-height:420px;margin:0 0 24px;padding:18px 20px;font-size:18px;line-height:1.9;overflow-y:auto}.listening-control{background:#eef7fc;border:1px solid #bdd7e7;border-radius:7px;align-items:center;gap:12px;margin-bottom:20px;padding:14px;display:flex}.listening-control button{min-height:44px;color:var(--white);cursor:pointer;background:#296992;border:0;border-radius:6px;align-items:center;gap:7px;padding:0 14px;font-weight:700;display:inline-flex}.listening-control button:disabled{cursor:not-allowed;opacity:.5}.listening-control span{color:#587486;font-size:13px}.formal-option-list{gap:10px;display:grid}.formal-option-list button{min-width:0;min-height:58px;color:var(--ink);text-align:left;border-radius:var(--radius-control);background:var(--white);cursor:pointer;border:1px solid #cad8d3;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:11px 14px;display:grid}.formal-option-list button>span{background:#edf3f0;border-radius:5px;place-items:center;width:30px;height:30px;font-size:13px;display:grid}.formal-option-list button>strong{overflow-wrap:anywhere;font-size:18px;font-weight:600}.formal-option-list button:hover,.formal-option-list button.selected{border-color:var(--mint);box-shadow:0 0 0 2px #dff5ed}.formal-option-list button.selected>span{color:var(--white);background:var(--mint)}.formal-short-answer,.formal-long-answer{width:100%;color:var(--ink);font:inherit;background:#fbfdfc;border:1px solid #c7d5d0;border-radius:7px;outline:0}.formal-short-answer{height:52px;padding:0 14px}.formal-long-answer{resize:vertical;min-height:210px;padding:14px;line-height:1.75}.formal-long-answer.writing{min-height:380px}.formal-short-answer:focus,.formal-long-answer:focus{border-color:var(--mint);box-shadow:0 0 0 3px #dff5ed}.answer-count{color:var(--muted);text-align:right;margin:8px 0 0;font-size:13px}.formal-question-actions{border-top:1px solid var(--line);justify-content:space-between;gap:12px;margin-top:30px;padding-top:18px;display:flex}.formal-question-actions button:disabled{cursor:not-allowed;opacity:.45}.submit-paper{background:#a8442c}.submit-error{color:#a8442c;align-items:center;gap:7px;margin:13px 0 0;font-size:13px;display:flex}.answer-sheet{border:1px solid var(--line);border-radius:var(--radius-card);background:var(--white);max-height:calc(100vh - 120px);padding:18px;position:sticky;top:96px;overflow-y:auto}.answer-sheet>header{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.answer-sheet>header>div{flex-direction:column;display:flex}.answer-sheet>header small{color:var(--muted);font-size:13px}.answer-sheet>header strong{margin-top:3px;font-size:18px}.save-state{color:#426057;background:#e9f4f0;border-radius:4px;padding:4px 6px;font-size:13px}.save-state.saving{color:#725c20;background:#fff6d9}.save-state.offline{color:#a8442c;background:#fce8e2}.answer-sheet-sections{gap:15px;margin-top:16px;display:grid}.answer-sheet-sections section{border-top:1px solid var(--line);padding-top:13px}.answer-sheet-sections h2{color:#566762;margin:0 0 9px;font-size:13px;line-height:1.45}.answer-sheet-sections section>div{grid-template-columns:repeat(5,44px);gap:5px;display:grid}.answer-sheet-sections button{color:#566762;background:var(--white);cursor:pointer;border:1px solid #cbd8d4;border-radius:5px;width:44px;height:44px;font-size:13px;font-weight:800}.answer-sheet-sections button.answered{color:var(--deep);background:#dff2eb;border-color:#92b8ab}.answer-sheet-sections button.current{color:var(--white);border-color:var(--coral);background:var(--coral);box-shadow:0 0 0 2px #f8d8cf}.submit-exam-button{width:100%;min-height:44px;color:var(--white);cursor:pointer;background:#a8442c;border:0;border-radius:7px;justify-content:center;align-items:center;gap:7px;margin-top:20px;font-weight:800;display:flex}.formal-report-shell{background:#f3f6f5;min-height:100vh;padding:0 0 40px}.report-topbar{border-bottom:1px solid var(--line);background:var(--white);justify-content:space-between;align-items:center;gap:20px;min-height:82px;padding:14px clamp(18px,5vw,70px);display:flex}.report-topbar small{color:var(--muted);font-size:13px}.report-topbar h1{margin:5px 0 0;font-size:20px}.score-summary-band{width:min(1120px,100% - 32px);color:var(--white);background:var(--deep);border-radius:7px;grid-template-columns:auto minmax(0,1fr) minmax(180px,240px);align-items:center;gap:26px;margin:26px auto 0;padding:28px 32px;display:grid}.score-ring{text-align:center;background:#183d35;border:8px solid #65b99d;border-radius:50%;place-content:center;width:112px;height:112px;display:grid}.score-ring strong{font-size:35px;line-height:1}.score-ring small{color:#b7d0c8;margin-top:4px;font-size:13px}.score-summary-band>div:nth-child(2) p,.score-summary-band h2,.score-summary-band>div:nth-child(2) span{margin:0}.score-summary-band>div:nth-child(2) p{color:#94d7bf;font-size:13px;font-weight:800}.score-summary-band h2{margin:7px 0 9px;font-size:19px}.score-summary-band>div:nth-child(2) span{color:#bbcec8;font-size:13px}.score-summary-band>aside{color:#725415;background:#fff2c9;border-radius:6px;align-items:flex-start;gap:8px;padding:12px;font-size:13px;line-height:1.55;display:flex}.score-summary-band>aside svg{flex:none}.formal-report-grid{grid-template-columns:minmax(0,1.5fr) minmax(280px,.7fr);gap:16px;width:min(1120px,100% - 32px);margin:16px auto 0;display:grid}.section-score-report,.weak-skill-report,.question-review{border:1px solid var(--line);background:var(--white);border-radius:7px;padding:22px}.report-section-title{color:var(--deep);align-items:center;gap:8px;display:flex}.report-section-title h2{margin:0;font-size:15px}.score-bar-row{grid-template-columns:minmax(110px,180px) minmax(80px,1fr) 54px;align-items:center;gap:10px;margin-top:15px;display:grid}.score-bar-row>span{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.score-bar-row>div{background:#e7eeeb;height:7px;overflow:hidden}.score-bar-row i{background:var(--mint);height:100%;display:block}.score-bar-row strong{color:#52645e;text-align:right;font-size:13px}.weak-skill-report>div:not(.report-section-title){grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;margin-top:14px;display:grid}.weak-skill-report>div:not(.report-section-title)>span{color:#a8442c;background:#fbe8e2;border-radius:50%;place-items:center;width:28px;height:28px;font-size:13px;font-weight:800;display:grid}.weak-skill-report p{flex-direction:column;margin:0;display:flex}.weak-skill-report strong{font-size:13px}.weak-skill-report small{color:var(--muted);margin-top:3px;font-size:13px}.question-review{width:min(1120px,100% - 32px);margin:16px auto 0}.question-review>div:last-child{margin-top:12px}.question-review article{border-top:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:12px;padding:16px 0;display:grid}.question-review article>span{width:29px;height:29px;color:var(--white);background:var(--coral);border-radius:50%;place-items:center;font-size:13px;font-weight:800;display:grid}.question-review article>span.correct{background:var(--mint)}.question-review article small{color:var(--muted);font-size:13px}.question-review article h3{margin:5px 0 7px;font-size:13px;line-height:1.55}.question-review article p{color:#586963;margin:4px 0 0;font-size:13px;line-height:1.6}.question-review article>strong{font-size:13px}.report-footer{justify-content:flex-end;width:min(1120px,100% - 32px);margin:18px auto 0;display:flex}@media (max-width:780px){.topbar h1{font-size:23px}.tool-view,.parent-dashboard{margin-top:28px}.practice-row,.error-row{grid-template-columns:auto minmax(0,1fr);gap:13px;padding:16px}.practice-row .mastery{text-align:left;grid-area:2/1}.practice-row .secondary-action,.error-row .secondary-action{grid-column:2;justify-self:start}.error-row .secondary-action{grid-column:1/-1}.parent-metrics{grid-template-columns:1fr}.parent-metrics div+div{border-left:0;border-top:1px solid var(--line)}.report-band{align-items:flex-start;padding:24px}.report-band>svg{display:none}.parent-detail{grid-template-columns:1fr}.account-security{flex-direction:column;align-items:flex-start}.runner-shell{padding:17px 16px 22px}.question-stage{margin-top:34px}.option-list{grid-template-columns:1fr}.question-stage>h1{margin:20px 0 22px;font-size:23px}.runner-footer{padding:14px 0 calc(4px + env(safe-area-inset-bottom));background:#f5f8f6;position:sticky;bottom:0}.session-result{padding:30px 20px}.result-actions{flex-direction:column-reverse}.result-actions button{width:100%}.companion-dialog{width:calc(100vw - 16px);height:calc(100dvh - 16px);min-height:0}.exam-confirm-dialog{padding:22px 18px}.exam-confirm-dialog footer{grid-template-columns:1fr 1fr;display:grid}.exam-confirm-dialog footer button{min-width:0}.blocking-notice-dialog{grid-template-columns:40px minmax(0,1fr);gap:12px;padding:20px 18px}.blocking-notice-icon{width:40px;height:40px}.blocking-notice-dialog footer button{width:100%}.companion-dialog-header{min-height:68px;padding:11px 14px}.companion-transcript{padding:20px 14px}.chat-message{width:92%}.visual-bar-row{grid-template-columns:92px minmax(0,1fr)}.chat-composer{padding:11px 12px calc(11px + env(safe-area-inset-bottom))}.exam-center-head{flex-direction:column;align-items:flex-start}.active-exam-banner{grid-template-columns:auto minmax(0,1fr)}.active-exam-banner .primary-action{grid-column:1/-1;width:100%}.exam-filters{flex-direction:column;align-items:stretch;gap:15px}.segmented-control{width:100%}.segmented-control button{flex:1;min-width:0}.exam-kind-tabs{min-height:40px}.exam-kind-tabs button{flex:1;min-width:0}.paper-grid{grid-template-columns:1fr}.formal-runner-header{gap:9px;min-height:68px;padding:9px 12px}.formal-paper-title strong{max-width:42vw;font-size:13px}.exam-clock{min-width:98px;padding:6px 8px}.exam-clock strong{font-size:15px}.formal-runner-body{width:calc(100% - 20px);margin:12px auto 90px;display:block}.formal-question-area{min-height:0;padding:22px 16px}.formal-question-area>h1{margin:20px 0 18px;font-size:19px}.formal-question-context{max-height:none;padding:15px;font-size:13px}.formal-long-answer.writing{min-height:300px}.answer-sheet{z-index:18;max-height:none;padding:10px 14px calc(10px + env(safe-area-inset-bottom));border-width:1px 0 0;border-radius:0;grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid;position:fixed;inset:auto 0 0;box-shadow:0 -8px 24px #1430291a}.answer-sheet>header{align-items:center}.answer-sheet>header>div{flex-direction:row;align-items:baseline;gap:7px}.answer-sheet-sections{display:none}.submit-exam-button{width:104px;min-height:44px;margin:0 0 0 10px}.score-summary-band{grid-template-columns:auto minmax(0,1fr);gap:18px;padding:22px}.score-summary-band>aside{grid-column:1/-1}.score-ring{border-width:6px;width:86px;height:86px}.score-ring strong{font-size:28px}.formal-report-grid{grid-template-columns:minmax(0,1fr)}.formal-report-grid>section{min-width:0}.score-bar-row{grid-template-columns:minmax(0,1fr) minmax(40px,1fr) 44px;gap:8px}.question-review article{grid-template-columns:auto minmax(0,1fr)}.question-review article>strong{grid-column:2}}.login-shell{background:#edf4f1;grid-template-rows:auto 1fr auto;min-height:100vh;padding:34px clamp(20px,5vw,70px);display:grid}.login-brand{align-items:center;gap:12px;display:flex}.login-brand>span{width:46px;height:46px;color:var(--white);background:var(--deep);border-radius:8px;place-items:center;display:grid}.login-brand>div{flex-direction:column;display:flex}.login-brand strong{font-size:18px}.login-brand small{color:var(--muted);margin-top:4px;font-size:13px}.login-panel{border:1px solid #cadbd4;border-top:5px solid var(--mint);border-radius:var(--radius-card);background:var(--white);align-self:center;width:min(430px,100%);margin:44px auto;padding:32px;box-shadow:0 18px 50px #133f391a}.login-heading{align-items:center;gap:12px;display:flex}.login-heading>span{color:#8c4a1e;background:#fff0dc;border-radius:7px;place-items:center;width:43px;height:43px;display:grid}.login-heading p,.login-heading h1{margin:0}.login-heading p{color:var(--muted);font-size:13px}.login-heading h1{letter-spacing:0;margin-top:3px;font-size:25px}.login-intro{color:var(--muted);margin:20px 0 24px;font-size:13px}.login-form{display:grid}.login-form>label{color:#42524d;margin:0 0 7px;font-size:13px;font-weight:700}.login-form>input,.password-field input{width:100%;height:46px;color:var(--ink);background:var(--white);border:1px solid #cbd9d4;border-radius:7px;outline:0;padding:0 13px}.login-form>input{margin-bottom:17px}.login-form>input:focus,.password-field input:focus{border-color:var(--mint);box-shadow:0 0 0 3px #dff5ed}.password-field{position:relative}.password-field input{padding-right:48px}.password-field button{width:44px;height:44px;color:var(--muted);cursor:pointer;background:0 0;border:0;place-items:center;display:grid;position:absolute;top:1px;right:1px}.login-error{color:#ae432c;visibility:hidden;min-height:18px;margin:9px 0 7px;font-size:13px}.login-error.visible{visibility:visible}.login-submit{min-height:48px;color:var(--white);border-radius:var(--radius-control);background:var(--mint);cursor:pointer;border:0;justify-content:center;align-items:center;gap:8px;font-weight:800;display:flex;box-shadow:0 4px #0c6043}.login-submit:hover{background:#20554e}.login-footnote{color:var(--muted);text-align:center;align-self:end;margin:0;font-size:13px}@media (max-width:520px){.login-shell{padding:22px 16px}.login-panel{margin:28px auto;padding:26px 22px}}.vocab-hub{max-width:1120px;margin-top:30px}.station-hero{border-radius:var(--radius-card);background:#dbece5;min-height:520px;position:relative;overflow:hidden}.station-hero>img,.vocab-game-screen>img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.station-shade{background:linear-gradient(90deg,#0d2b25d6 0%,#0d2b257a 37%,#0000 67%),linear-gradient(#0000 54%,#0d2b253d);position:absolute;inset:0}.station-hero-copy{z-index:2;width:min(500px,100% - 48px);color:var(--white);position:absolute;top:50%;left:clamp(24px,5vw,60px);transform:translateY(-50%)}.station-hero-copy>p{color:#a8edd5;align-items:center;gap:7px;margin:0;font-size:13px;font-weight:800;display:flex}.station-hero-copy h2{letter-spacing:0;margin:13px 0 10px;font-size:clamp(34px,4.2vw,55px);line-height:1.08}.station-hero-copy>span{color:#d5e7e1;font-size:14px}.station-hero-copy>button{color:#193d35;cursor:pointer;background:#f4c45a;border:0;border-radius:7px;align-items:center;gap:9px;min-height:49px;margin-top:26px;padding:0 20px;font-weight:800;display:flex;box-shadow:0 6px #b78625}.station-error{color:#ffd7cb;margin-top:16px;line-height:1.5;display:block}.station-energy-panel{z-index:2;width:226px;color:var(--white);-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#133a32d1;border:1px solid #ffffff6b;border-radius:7px;padding:17px;position:absolute;bottom:22px;right:22px}.station-energy-panel>span{color:#c6dcd5;align-items:center;gap:7px;font-size:13px;display:flex}.station-energy-panel>strong{margin-top:5px;font-size:30px;display:block}.station-energy-panel>div{background:#ffffff38;height:6px;margin:9px 0 8px;overflow:hidden}.station-energy-panel i{background:#f4c45a;height:100%;transition:width .4s;display:block}.station-energy-panel small{color:#d5e4df;font-size:13px;line-height:1.45}.station-status-band{border:solid var(--line);background:var(--white);border-width:0 1px 1px;grid-template-columns:repeat(4,1fr);display:grid}.station-status-band>div{flex-direction:column;min-width:0;padding:20px;display:flex}.station-status-band>div+div{border-left:1px solid var(--line)}.station-status-band span,.station-status-band small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.station-status-band strong{overflow-wrap:anywhere;min-height:32px;margin:5px 0 3px;font-size:22px}.station-room-strip{grid-template-columns:repeat(4,1fr);gap:10px;margin-top:22px;display:grid}.station-room-strip>div{color:#77817e;background:#eef2f0;border:1px solid #dce3e0;border-radius:7px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;min-width:0;min-height:76px;padding:13px;display:grid}.station-room-strip>div.unlocked{color:var(--deep);background:#e8f6f1;border-color:#9ec8ba}.station-room-strip>div>span{background:#dfe6e3;border-radius:6px;place-items:center;width:32px;height:32px;display:grid}.station-room-strip .unlocked>span{color:var(--white);background:var(--mint)}.station-room-strip p{flex-direction:column;min-width:0;margin:0;display:flex}.station-room-strip small,.station-room-strip em{font-size:13px;font-style:normal}.station-room-strip strong{text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:13px;overflow:hidden}.station-room-strip em{color:var(--muted);grid-column:2}.vocab-game-screen{z-index:100;background:#d7ebe3;place-items:center;min-height:100dvh;display:grid;position:fixed;inset:0;overflow:auto}.game-scene-tint{-webkit-backdrop-filter:saturate(.84);backdrop-filter:saturate(.84);background:#0f312952;position:absolute;inset:0}.vocab-game-hud{z-index:3;min-height:76px;color:var(--white);background:linear-gradient(#0c2621db,#0c262133);grid-template-columns:45px minmax(180px,560px) auto;justify-content:space-between;align-items:center;gap:18px;padding:12px clamp(15px,3vw,40px);display:grid;position:fixed;top:0;left:0;right:0}.vocab-game-hud>button{width:43px;height:43px;color:var(--white);cursor:pointer;background:#0d30299e;border:1px solid #ffffff73;border-radius:7px;place-items:center;display:grid}.vocab-game-hud>div{grid-template-columns:auto minmax(80px,1fr) auto;align-items:center;gap:10px;font-size:13px;display:grid}.vocab-game-hud i{background:#ffffff40;height:7px;overflow:hidden}.vocab-game-hud b{background:#f5c557;height:100%;transition:width .3s;display:block}.vocab-game-hud>p{grid-template-columns:auto auto;align-items:center;column-gap:6px;margin:0;display:grid}.vocab-game-hud>p strong{font-size:18px}.vocab-game-hud>p span{color:#c9dad5;grid-column:2;font-size:13px}.vocab-task-console{z-index:2;-webkit-backdrop-filter:blur(13px);backdrop-filter:blur(13px);background:#fffffff0;border:1px solid #ffffffbd;border-radius:8px;flex-direction:column;align-items:center;width:min(690px,100% - 30px);min-height:430px;margin:104px auto 34px;padding:clamp(24px,4vw,42px);display:flex;position:relative;box-shadow:0 26px 70px #09251f47}.task-mode-label{color:#26725e;background:#e2f4ed;border-radius:5px;align-items:center;gap:5px;min-height:27px;padding:0 9px;font-size:13px;font-weight:800;display:inline-flex}.vocab-task-console>h1{text-align:center;letter-spacing:0;max-width:560px;margin:18px 0 22px;font-size:clamp(22px,3vw,32px);line-height:1.35}.sound-orb{width:112px;height:112px;color:var(--white);background:var(--deep);cursor:pointer;border:7px solid #a8d8c8;border-radius:50%;place-content:center;gap:7px;margin-bottom:21px;display:grid;box-shadow:0 0 0 9px #33a88421}.sound-orb span{font-size:13px}.vocab-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%;display:grid}.vocab-choice-grid button{min-width:0;min-height:58px;color:var(--ink);text-align:left;background:var(--white);cursor:pointer;border:1px solid #c9d8d3;border-radius:7px;grid-template-columns:31px minmax(0,1fr);align-items:center;gap:10px;padding:10px 13px;display:grid}.vocab-choice-grid button>span{background:#edf3f0;border-radius:5px;place-items:center;width:31px;height:31px;font-size:13px;display:grid}.vocab-choice-grid button strong{overflow-wrap:anywhere;font-size:13px}.vocab-choice-grid button.selected{border-color:var(--mint);box-shadow:0 0 0 3px #dff5ed}.vocab-choice-grid button.selected span{color:var(--white);background:var(--mint)}.spelling-console{justify-items:center;gap:15px;width:100%;display:grid}.context-sentence{color:#3a554d;text-align:center;border-left:3px solid var(--sky);background:#eef7fc;width:100%;margin:0 0 3px;padding:15px;font-size:17px;line-height:1.6}.spelling-console>label{color:#567168;background:var(--white);border:1px solid #b9cdc6;border-radius:7px;align-items:center;gap:10px;width:min(460px,100%);height:54px;padding:0 14px;display:flex}.spelling-console input{min-width:0;height:100%;color:var(--ink);background:0 0;border:0;outline:0;flex:1;font-size:18px}.letter-blocks{flex-wrap:wrap;justify-content:center;gap:7px;display:flex}.letter-blocks button{color:#24483f;cursor:pointer;background:#f3f8f6;border:1px solid #b3cbc3;border-bottom-width:3px;border-radius:5px;width:38px;height:40px;font-weight:800}.vocab-task-actions{justify-content:space-between;gap:14px;width:100%;margin-top:auto;padding-top:23px;display:flex}.hint-command{color:#7b5f19;cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;min-height:42px;padding:0 7px;font-size:13px;display:flex}.submit-command,.next-command{min-height:44px;color:var(--white);background:var(--deep);cursor:pointer;border:0;border-radius:7px;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-weight:800;display:inline-flex}.next-command{background:#246e5b;margin-top:18px}.pronunciation-console{justify-items:center;gap:14px;width:100%;display:grid}.pronunciation-word{color:#23574b;cursor:pointer;background:#eaf7f2;border:1px solid #a9cfc1;border-radius:7px;justify-content:center;align-items:center;gap:12px;min-width:210px;min-height:68px;padding:10px 18px;display:flex}.pronunciation-word strong{overflow-wrap:anywhere;font-size:25px}.record-command{min-width:210px;min-height:48px;color:var(--white);cursor:pointer;background:#d45d45;border:0;border-radius:7px;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-weight:800;display:inline-flex}.record-command.active{animation:1.2s ease-in-out infinite recording-pulse}.pronunciation-console small{color:var(--muted);font-size:13px}@keyframes recording-pulse{50%{box-shadow:0 0 0 9px #d45d452b}}.vocab-feedback{background:#edf8f4;border:1px solid #9fcfbe;border-radius:7px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:11px;width:100%;margin-top:18px;padding:14px 16px;display:grid}.vocab-feedback.incorrect{background:#fff0ec;border-color:#e8b2a4}.vocab-feedback>span{width:31px;height:31px;color:var(--white);background:var(--mint);border-radius:50%;place-items:center;display:grid}.vocab-feedback.incorrect>span{background:var(--coral)}.vocab-feedback strong{font-size:14px}.vocab-feedback p{color:#52645e;margin:5px 0 0;font-size:13px;line-height:1.55}.game-finished{color:var(--white)}.vocab-finish-panel{z-index:2;text-align:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#113931e3;border:1px solid #fff9;border-radius:8px;width:min(540px,100% - 30px);padding:42px 25px;position:relative}.vocab-finish-panel>span{color:#6d4e0d;background:#f5c557;border-radius:50%;place-items:center;width:64px;height:64px;margin:0 auto 16px;display:grid}.vocab-finish-panel p{color:#a9dbc9;margin:0;font-size:13px}.vocab-finish-panel h1{letter-spacing:0;margin:8px 0 20px;font-size:30px}.vocab-finish-panel>strong{color:#ffda7f;font-size:49px;display:block}.vocab-finish-panel>strong small{color:#c6d9d3;font-size:13px}.vocab-finish-panel button{min-height:44px;color:var(--deep);cursor:pointer;background:#f3f9f6;border:1px solid #c8ddd3;border-radius:7px;align-items:center;gap:8px;margin-top:25px;padding:0 16px;font-weight:800;display:inline-flex}.vocabulary-library{border:1px solid var(--line);background:var(--white);border-radius:7px;margin-top:20px;padding:24px}.vocabulary-library>header{color:var(--deep);justify-content:space-between;align-items:center;gap:15px;display:flex}.vocabulary-library>header p,.vocabulary-library>header h2{margin:0}.vocabulary-library>header p{color:var(--muted);font-size:13px}.vocabulary-library>header h2{margin-top:3px;font-size:18px}.vocab-library-controls{border:solid var(--line);border-width:1px 0;grid-template-columns:minmax(260px,1fr) 130px auto;align-items:end;gap:18px;margin-top:20px;padding:16px 0;display:grid}.vocab-library-controls label{color:var(--muted);margin-bottom:7px;font-size:13px;font-weight:700;display:block}.unit-segments{background:#eef4f1;border:1px solid #c8d7d2;border-radius:7px;gap:3px;padding:3px;display:flex}.unit-segments button{color:#53645f;cursor:pointer;background:0 0;border:0;border-radius:5px;min-width:70px;height:33px;padding:0 10px;font-size:13px;font-weight:800}.unit-segments button.active{color:var(--white);background:var(--deep)}.vocab-library-controls select{background:var(--white);border:1px solid #c4d3ce;border-radius:7px;width:100%;height:41px;padding:0 9px}.library-progress{height:41px;color:var(--muted);align-items:center;gap:14px;font-size:13px;display:flex}.library-progress strong{color:var(--deep);font-size:15px}.vocab-upload-band{background:#f6faf8;border:1px dashed #a8c6bc;border-radius:7px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;margin-top:18px;padding:16px;display:grid}.vocab-upload-band>span{color:#26725e;background:#dff3ec;border-radius:7px;place-items:center;width:42px;height:42px;display:grid}.vocab-upload-band strong{font-size:13px}.vocab-upload-band p{color:var(--muted);margin:4px 0 0;font-size:13px}.vocab-upload-band input{display:none}.ocr-processing{color:#51645e;border-left:3px solid var(--sky);background:#eef7fc;align-items:center;gap:12px;margin-top:14px;padding:15px;display:flex}.ocr-processing strong{font-size:13px}.ocr-processing p{margin:4px 0 0;font-size:13px}.vocab-review-table{border:1px solid var(--line);border-radius:7px;margin-top:18px;overflow-x:auto}.vocab-review-table>header,.vocab-review-table>div{grid-template-columns:1fr 1.25fr .65fr 82px;align-items:center;min-width:680px;display:grid}.vocab-review-table>header{color:#53645f;background:#edf3f0;padding:9px 12px;font-size:13px;font-weight:800}.vocab-review-table>div{border-top:1px solid var(--line);padding:7px 8px}.vocab-review-table>div.needs-review{background:#fff8e4}.vocab-review-table input{min-width:0;height:36px;color:var(--ink);background:0 0;border:1px solid #0000;border-radius:5px;padding:0 9px}.vocab-review-table input:focus{border-color:var(--mint);background:var(--white);outline:0}.row-confirm{color:#52645e;cursor:pointer;justify-content:center;align-items:center;gap:5px;font-size:13px;display:flex}.row-confirm input{width:16px;height:16px;accent-color:var(--mint)}.vocab-review-table footer{border-top:1px solid var(--line);background:#f8faf9;justify-content:space-between;align-items:center;gap:14px;min-width:610px;padding:12px;display:flex}.vocab-review-table footer span{color:#8d6617;font-size:13px}.vocab-review-table footer button{min-height:39px;color:var(--white);background:var(--deep);cursor:pointer;border:0;border-radius:7px;align-items:center;gap:7px;padding:0 13px;font-weight:800;display:flex}.library-message{color:#28715e;margin:13px 0 0;font-size:13px}.library-message.error{color:#a5442c}.pronunciation-report{border-top:1px solid var(--line);margin-top:18px}.pronunciation-report h3{margin:16px 0 8px;font-size:13px}.pronunciation-report>div{border-top:1px solid #edf1ef;grid-template-columns:minmax(90px,.6fr) 58px minmax(0,1.4fr);align-items:center;gap:10px;min-height:46px;padding:8px 0;display:grid}.pronunciation-report>div strong{font-size:13px}.pronunciation-report>div span{color:#256e5b;font-size:13px;font-weight:800}.pronunciation-report>div small{overflow-wrap:anywhere;color:var(--muted);font-size:13px}.assessment-library{border:1px solid var(--line);background:var(--white);border-radius:7px;margin-top:20px;padding:24px}.assessment-library>header{color:var(--deep);justify-content:space-between;align-items:center;display:flex}.assessment-library>header p,.assessment-library>header h2{margin:0}.assessment-library>header p{color:var(--muted);font-size:13px}.assessment-library>header h2{margin-top:3px;font-size:18px}.assessment-note{color:#365d52;border-left:3px solid var(--mint);background:#eef7f3;align-items:flex-start;gap:8px;margin:16px 0;padding:11px 13px;font-size:13px;line-height:1.7;display:flex}.assessment-fields{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.assessment-fields label{color:var(--muted);font-size:13px;font-weight:800}.assessment-fields label.wide{grid-column:span 2}.assessment-fields input,.assessment-fields select{width:100%;height:39px;color:var(--ink);background:var(--white);border:1px solid #c8d4d0;border-radius:6px;margin-top:6px;padding:0 9px}.assessment-upload{align-items:center;gap:12px;margin-top:14px;display:flex}.assessment-upload input{display:none}.assessment-upload span{color:var(--muted);font-size:13px}.assessment-list{border-top:1px solid var(--line);margin-top:16px}.assessment-list>p{color:var(--muted);font-size:13px}.assessment-list article{border-bottom:1px solid var(--line);grid-template-columns:108px minmax(0,1fr) auto;align-items:center;gap:13px;min-height:92px;padding:13px 0;display:grid}.assessment-list h3,.assessment-list p{margin:0}.assessment-list h3{font-size:13px}.assessment-list p,.assessment-list small{color:var(--muted);margin-top:5px;font-size:13px;line-height:1.5;display:block}.material-status{color:#52645e;background:#f2f6f4;border:1px solid #cbd8d4;border-radius:6px;justify-content:center;align-items:center;gap:6px;min-height:30px;padding:0 8px;font-size:13px;font-style:normal;font-weight:800;display:inline-flex}.material-status.ready_for_review,.material-status.reviewed{color:#216652;background:#e8f5f0;border-color:#a8cdbf}.material-status.failed{color:#9c432f;background:#fff0ec;border-color:#e7b8ad}.material-thumb{cursor:pointer;background:#eef3f1;border:1px solid #c7d5d0;border-radius:6px;width:108px;height:76px;padding:0;overflow:hidden}.material-thumb img{object-fit:cover;width:100%;height:100%;display:block}.material-state{color:#7b6552;margin-top:6px;font-size:13px;font-style:normal;font-weight:800;display:inline-flex}.material-state.ready_for_review,.material-state.reviewed{color:#26705c}.material-state.failed{color:#a0442f}.error-row em{color:#59716a;margin-top:5px;font-size:13px;font-style:normal;display:block}.error-actions{align-items:center;gap:7px;display:flex}.exam-evidence{border:1px solid var(--line);background:var(--white);border-radius:7px;margin-top:20px;padding:22px}.exam-evidence>header{justify-content:space-between;align-items:center;gap:15px;display:flex}.exam-evidence>header p,.exam-evidence>header h2{margin:0}.exam-evidence>header p{color:var(--muted);font-size:13px}.exam-evidence>header h2{margin-top:4px;font-size:17px}.exam-evidence>header>strong{color:#26705c;font-size:22px}.exam-evidence>div{background:#f7faf9;border-bottom:1px solid #cdd8d5;align-items:flex-end;gap:12px;height:125px;margin-top:18px;padding:10px 8px 0;display:flex}.exam-evidence>div span{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;min-width:28px;height:100%;display:flex}.exam-evidence>div i{background:#58aa8e;border-radius:4px 4px 0 0;width:min(42px,72%);min-height:8px;display:block}.exam-evidence>div small{color:#3e534d;margin-top:5px;font-size:13px;font-weight:800}.exam-evidence>p{color:var(--muted);margin:14px 0 0;font-size:13px;line-height:1.7}.codex-workbench{border:1px solid var(--line);background:var(--white);border-radius:7px;margin-top:20px;padding:24px}.codex-workbench>header{justify-content:space-between;align-items:center;gap:14px;display:flex}.codex-workbench>header p,.codex-workbench>header h2{margin:0}.codex-workbench>header p{color:var(--muted);font-size:13px}.codex-workbench>header h2{margin-top:3px;font-size:18px}.workbench-message{color:#2b6254;border-left:3px solid var(--mint);background:#eef7f3;margin:14px 0 0;padding:10px 12px;font-size:13px;line-height:1.6}.mcp-device-band{background:#f5f9f7;border:1px solid #c9d9d3;grid-template-columns:40px minmax(0,1fr) auto auto;align-items:center;gap:10px;margin-top:17px;padding:13px;display:grid}.mcp-device-band>span{color:#246f5b;background:#dff2eb;place-items:center;width:40px;height:40px;display:grid}.mcp-device-band>div{flex-direction:column;min-width:0;display:flex}.mcp-device-band strong{font-size:13px}.mcp-device-band small{overflow-wrap:anywhere;color:var(--muted);margin-top:4px;font-size:13px}.icon-button.danger{color:#a34a34;background:#fff4f1;border-color:#e0bcb2}.rotated-token{background:#fff8e4;border:1px solid #dec27d;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:9px;margin-top:9px;padding:9px 10px;display:grid}.rotated-token code{color:#5b4b27;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;overflow:hidden}.draft-worklist,.mcp-audit-list{border-top:1px solid var(--line);margin-top:18px}.worklist-heading{justify-content:space-between;align-items:center;gap:12px;min-height:53px;display:flex}.worklist-heading>div{flex-direction:column;display:flex}.worklist-heading strong{font-size:13px}.worklist-heading small{color:var(--muted);margin-top:3px;font-size:13px}.workbench-empty{color:var(--muted);border-top:1px solid var(--line);margin:0;padding:18px 0;font-size:13px}.draft-row{border-top:1px solid var(--line);grid-template-columns:72px minmax(0,1fr) 126px;align-items:start;gap:13px;min-height:116px;padding:14px 0;display:grid}.draft-status{color:#725d2c;background:#fff8df;border:1px solid #ddc582;justify-content:center;align-items:center;min-height:29px;padding:0 7px;font-size:13px;font-weight:800;display:inline-flex}.draft-status.published{color:#216552;background:#e9f5f1;border-color:#a8ccbf}.draft-status.archived{color:#6b7370;background:#f1f4f3;border-color:#cfd8d5}.draft-main{min-width:0}.draft-main>p,.draft-main h3{margin:0}.draft-main>p:first-child,.draft-main>small{color:var(--muted);font-size:13px}.draft-main h3{overflow-wrap:anywhere;margin:4px 0;font-size:13px}.draft-rationale{color:#4e625c;font-size:13px;line-height:1.55;margin-top:7px!important}.draft-main ul{color:#a14631;gap:4px;margin:8px 0 0;padding:0;font-size:13px;list-style:none;display:grid}.draft-main li{align-items:flex-start;gap:5px;display:flex}.draft-actions{gap:7px;display:grid}.draft-actions>button{width:100%}.validation-ok,.validation-bad{color:#26705c;justify-content:center;align-items:center;gap:5px;min-height:28px;font-size:13px;font-weight:800;display:flex}.validation-bad{color:#a14631}.mcp-audit-list>div:not(.worklist-heading){border-top:1px solid #edf1ef;grid-template-columns:42px minmax(120px,.7fr) minmax(0,1.4fr);align-items:center;gap:9px;min-height:42px;padding:7px 0;display:grid}.mcp-audit-list>div>span{color:#26705c;font-size:13px;font-weight:800}.mcp-audit-list>div>span.failed{color:#a14631}.mcp-audit-list>div>strong{overflow-wrap:anywhere;font-size:13px}.mcp-audit-list>div>small{color:var(--muted);font-size:13px}@media (max-width:780px){.vocab-hub{margin-top:22px}.station-hero{min-height:470px}.top-actions .parent-entry{place-items:center;width:42px;padding:0;font-size:0;display:grid}.station-hero>img{object-position:48% center}.station-shade{background:linear-gradient(#0d2b25a6,#0d2b2538 50%,#0d2b25bd)}.station-hero-copy{width:auto;top:32px;left:20px;right:20px;transform:none}.station-hero-copy h2{max-width:330px;font-size:36px}.station-energy-panel{width:auto;bottom:16px;left:16px;right:16px}.station-status-band{grid-template-columns:1fr 1fr}.station-status-band>div:nth-child(3){border-left:0;border-top:1px solid var(--line)}.station-status-band>div:nth-child(4){border-top:1px solid var(--line)}.station-room-strip{grid-template-columns:1fr 1fr}.vocab-game-hud{grid-template-columns:43px minmax(120px,1fr) auto;gap:9px;min-height:68px}.vocab-game-hud>div>span{display:none}.vocab-game-hud>div{grid-template-columns:minmax(70px,1fr) auto}.vocab-task-console{min-height:420px;margin-top:84px;margin-bottom:18px;padding:24px 17px}.vocab-choice-grid{grid-template-columns:1fr}.vocab-task-actions{padding:15px 0 calc(2px + env(safe-area-inset-bottom));background:#fffffff5;position:sticky;bottom:0}.vocab-library-controls{grid-template-columns:1fr 110px}.assessment-fields{grid-template-columns:1fr 1fr}.assessment-list article{grid-template-columns:88px minmax(0,1fr)}.assessment-list article>button{grid-column:1/-1;width:100%}.error-actions{flex-direction:column;align-items:stretch}.material-thumb{width:88px;height:68px}.mcp-device-band{grid-template-columns:40px minmax(0,1fr) auto}.mcp-device-band>.secondary-action{grid-column:1/-1}.draft-row{grid-template-columns:68px minmax(0,1fr)}.draft-actions{grid-column:2;grid-template-columns:1fr 1fr}.library-progress{grid-column:1/-1}.vocab-upload-band{grid-template-columns:auto minmax(0,1fr)}.vocab-upload-band .secondary-action{grid-column:1/-1;width:100%}}@media (max-width:420px){.station-room-strip{grid-template-columns:1fr}.vocab-game-hud>p span{display:none}.vocab-task-console>h1{font-size:21px}.sound-orb{width:96px;height:96px}.vocabulary-library,.assessment-library{padding:18px 14px}.assessment-fields{grid-template-columns:1fr}.assessment-fields label.wide{grid-column:auto}.assessment-upload{flex-direction:column;align-items:stretch}.codex-workbench{padding:18px 14px}.mcp-device-band{grid-template-columns:38px minmax(0,1fr)}.mcp-device-band>.secondary-action,.mcp-device-band>.icon-button{grid-column:1/-1;width:100%}.draft-row{grid-template-columns:1fr}.draft-status{width:max-content}.draft-actions{grid-column:auto}.mcp-audit-list>div:not(.worklist-heading){grid-template-columns:40px minmax(0,1fr)}.mcp-audit-list>div>small{grid-column:2}.vocab-library-controls{grid-template-columns:1fr}.vocab-library-controls>div,.vocab-library-controls>div>label{width:100%;min-width:0}.unit-segments{box-sizing:border-box;grid-template-columns:repeat(4,minmax(0,1fr));width:100%;display:grid}.unit-segments button{text-overflow:ellipsis;white-space:nowrap;width:100%;min-width:0;padding:0 2px;font-size:13px;overflow:hidden}.library-progress{grid-column:auto}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@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-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}.reward-page{min-width:0;padding-bottom:32px}.gold-coin{filter:drop-shadow(0 5px 4px #442a1729);flex-shrink:0;width:100%;height:auto;display:block}.points-badge{border-radius:var(--radius-control,14px);color:#765111;background:linear-gradient(125deg,#fffbea,#fff0c7);border:1px solid #ecd487;align-items:center;gap:7px;min-height:46px;padding:5px 13px 5px 5px;text-decoration:none;display:inline-flex;box-shadow:0 3px #eadfae}.points-badge .gold-coin{width:38px}.points-badge span{display:grid}.points-badge small{font-size:13px;font-weight:600}.points-badge strong{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:23px;line-height:1.1}.points-hero{isolation:isolate;border-radius:var(--radius-card,24px);color:#fff;min-height:210px;box-shadow:var(--shadow-card,0 6px 0 #e0eae1);background:radial-gradient(at 2% 6%,#348864 0%,#0000 56%),linear-gradient(110deg,#1b694f,#185044 85%);border:1px solid #b9dbc9;grid-template-columns:128px minmax(180px,1fr) minmax(230px,.85fr);align-items:center;gap:24px;margin:0 0 20px;padding:18px 24px;display:grid;position:relative;overflow:hidden}.points-hero:after{content:"";z-index:-1;pointer-events:none;border:35px solid #ffffff08;border-radius:50%;width:250px;height:250px;position:absolute;bottom:-150px;right:-90px}.points-companion{background:#ffffff13;border-radius:45% 48% 42% 46%;place-items:center;width:128px;height:148px;display:grid;position:relative}.points-companion>.gold-coin{width:48px;position:absolute;bottom:-5px;right:-3px;transform:rotate(13deg)}.points-total{min-width:0}.points-total>p{color:#e0f0e7;margin:0 0 5px;font-size:15px;font-weight:600}.points-total>strong{font-family:var(--font-geist-sans),sans-serif;color:#ffe49a;text-shadow:0 2px #805e2a;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;flex-wrap:wrap;align-items:baseline;gap:10px;font-size:clamp(40px,4vw,58px);font-weight:800;line-height:1.15;display:flex}.points-total>strong small{color:#ffecca;text-shadow:none;flex-shrink:0;font:600 13px sans-serif}.points-total>strong.long-balance{font-size:clamp(24px,3vw,44px)}.points-sub{color:#d7ecdd;flex-wrap:wrap;gap:7px 14px;margin:9px 0 14px;font-size:13px;display:flex}.points-sub b{color:#ffe49a}.points-start{border-radius:var(--radius-control,14px);color:#4d3c11;min-height:46px;font:inherit;cursor:pointer;background:#fff3c0;border:1px solid #f5e5a2;justify-content:center;align-items:center;gap:9px;padding:10px 21px;font-size:15px;font-weight:750;text-decoration:none;transition:transform .15s,box-shadow .15s;display:inline-flex;box-shadow:0 3px #c4a246}.points-start:hover{transform:translateY(-1px);box-shadow:0 4px #c4a246}.points-start:active{transform:translateY(2px);box-shadow:0 1px #c4a246}.points-start:disabled{opacity:.6;cursor:default}.points-retry{color:#ffe4a6;min-height:44px;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:8px 0;font-size:13px;display:block}.points-goal{background:#ffffff0f;border:1px solid #ffffff26;border-radius:18px;grid-template-columns:minmax(0,1fr) auto;align-content:center;align-self:stretch;gap:0 10px;min-width:0;padding:16px;display:grid}.points-goal>span,.points-goal h3,.points-goal p,.points-goal .gold-progress{grid-column:1}.points-goal>span{color:#d4e9d7;font-size:13px}.points-goal h3{color:#fff8dd;overflow-wrap:anywhere;margin:6px 0 10px;font-size:19px}.points-goal p{color:#e0ebd6;margin:8px 0 6px;font-size:13px;line-height:1.65}.points-goal>a{color:#ffe6a4;text-underline-offset:4px;grid-column:1/-1;align-self:flex-start;align-items:center;gap:6px;min-height:44px;font-size:13px;font-weight:650;display:inline-flex}.points-goal .goal-picture{border:1px solid #e3c87e55;grid-area:1/2/span 4;align-self:center;width:60px;height:60px;margin:0}.gold-progress{background:#ffffff26;border-radius:12px;flex-shrink:0;height:10px;overflow:hidden}.gold-progress i{background:linear-gradient(90deg,#edbf53,#ffe79f);border-radius:12px;height:100%;transition:width .45s;display:block}.points-hero.compact{min-height:178px;padding-block:20px}.compact .points-companion{height:120px}.reward-page-title{margin:0 0 14px;scroll-margin-top:100px}.gold-eyebrow{color:#9a7424;font-size:13px;font-weight:700}.reward-page-title h2{color:var(--deep);margin:5px 0;font-size:26px}.reward-page-title p{color:var(--muted);margin:6px 0 0;font-size:16px;line-height:1.6}.reward-title-row{justify-content:space-between;align-items:center;gap:18px;display:flex}.reward-title-row>a{flex-shrink:0}.reward-page .secondary-action,.reward-actions a{justify-content:center;align-items:center;gap:8px;min-height:44px;text-decoration:none;display:inline-flex}.rules-section{margin:24px 0 34px}.rules-section>header{align-items:center;gap:12px;margin-bottom:16px;display:flex}.rules-section>header>span{color:#a17629;border-bottom:2px solid #d8b259;padding:5px 0;font-size:13px;font-weight:700}.rules-section h3{margin:6px 0;font-size:20px}.rules-section>p{color:var(--muted);font-size:16px;line-height:1.8}.earn-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.earn-card{border:1px solid var(--line);background:#fff;border-radius:18px;padding:20px 17px;box-shadow:0 3px #eeebe0}.earn-card .gold-coin{width:48px;margin-bottom:8px}.earn-card>strong{color:#986511;font-size:34px}.earn-card h4{margin:9px 0;font-size:16px}.earn-card p{color:var(--muted);margin:0;font-size:13px;line-height:1.7}.rule-note{background:#f6f2e3;border-radius:14px;padding:14px 16px}.exam-earn{border-radius:var(--radius-card,24px);background:#fff7df;border:1px solid #e7ddc0;padding:22px}.exam-prizes{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;display:grid}.exam-prizes article{background:#fffdf5;border:1px solid #e9d8aa;border-radius:16px;padding:24px 20px;box-shadow:0 3px #eadebd}.exam-prizes small{color:#78694b;font-size:13px}.exam-prizes strong{color:#956212;font-variant-numeric:tabular-nums;margin-top:15px;font-size:48px;line-height:1.1;display:block}.exam-prizes strong span,.reward-examples strong span{margin-left:8px;font-size:13px;font-weight:500}.exam-prizes p{color:#78694b;margin:10px 0 0;font-size:13px}.rules-bonus{grid-template-columns:1fr 1fr;gap:24px;display:grid}.rules-bonus h4{margin:10px 0}.rules-bonus strong{color:var(--deep);font-size:16px}.rules-bonus p{color:var(--muted);font-size:14px;line-height:1.8}.exchange-steps{grid-template-columns:repeat(4,1fr);gap:12px;margin:0;padding:0;list-style:none;display:grid}.exchange-steps li{border:1px solid var(--line);background:#fff;border-radius:16px;align-items:center;gap:10px;padding:18px 12px;font-size:14px;display:flex}.exchange-steps b{color:#7d581d;background:#fff0c7;border-radius:50%;flex-shrink:0;place-items:center;width:30px;height:30px;display:grid}.reward-examples{grid-template-columns:1fr 1fr;gap:16px;display:grid}.reward-examples article{border:1px solid var(--line);background:#fff;border-radius:18px;padding:22px}.reward-examples small{color:#9b7b38;font-size:13px}.reward-examples h4{margin:12px 0;font-size:16px;line-height:1.6}.reward-examples strong{color:#8d641b;font-size:clamp(20px,2vw,28px);display:block}.reward-examples p{color:var(--muted);font-size:14px;line-height:1.8}.reward-faq details{border-bottom:1px solid var(--line);padding:17px 0}.reward-faq summary{cursor:pointer;align-items:center;min-height:44px;font-size:16px;font-weight:600;display:flex}.reward-faq p{color:var(--muted);max-width:760px;font-size:16px;line-height:1.9}.reward-actions{flex-wrap:wrap;gap:12px;margin-top:24px;display:flex}.gift-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.gift-card{border:1px solid var(--line);border-radius:var(--radius-card,24px);min-width:0;box-shadow:var(--shadow-card,0 4px 0 #e4eade);background:#fff;padding:16px}.gift-card.chosen{background:#fffdf6;border-color:#debb54;box-shadow:0 4px #eadeb4}.gift-art{color:#bc8b27;background:radial-gradient(#fff0c0,#fffaeb);border-radius:16px;justify-content:center;align-items:center;height:94px;display:flex;position:relative}.gift-art.has-picture{background:#f6f8f0;padding:8px}.gift-art .gold-coin{width:46px;margin-top:26px;margin-left:-10px}.gift-goal-tag{color:#7b5c0e;background:#fff3c3;border-radius:9px;align-items:center;gap:5px;padding:5px 8px;font-size:13px;font-weight:700;display:inline-flex;position:absolute;top:8px;left:8px;box-shadow:0 2px 7px #735c1022}.gift-heading{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:7px 12px;margin-top:12px;display:flex}.gift-heading h3{color:var(--deep);overflow-wrap:anywhere;flex:100px;margin:0;font-size:19px}.gift-heading>strong{color:#926013;font-variant-numeric:tabular-nums;align-items:baseline;gap:5px;font-size:24px;display:inline-flex}.gift-heading strong small{font-size:13px}.gift-card p{color:var(--muted);font-size:13px;line-height:1.75}.gift-balance{align-items:center;gap:6px;margin:8px 0 12px;display:flex}.gift-balance.ready{color:var(--mint);font-weight:650}.gift-card-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.gift-card-actions button{white-space:nowrap;min-height:44px;padding:10px 9px;font-size:14px}.gift-description{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8}.gift-card>.gift-description{border-top:1px dashed var(--line);margin:13px 0 0;padding-top:10px}.reward-empty{text-align:center;color:var(--muted);border-radius:var(--radius-card,24px);background:#fffdf2;border:1px dashed #d9c585;padding:28px 24px}.reward-empty>svg{margin:auto;display:block}.reward-empty h3{color:var(--deep);margin:12px 0 8px}.reward-empty p{font-size:16px;line-height:1.8}.reward-empty a{color:#8b6417;align-items:center;gap:8px;min-height:44px;font-size:15px;display:inline-flex}.reward-message{color:#6d551f;background:#fff3cf;border:1px solid #ebd28b;border-radius:14px;padding:14px 16px;font-size:16px}.reward-history{gap:12px;margin-top:26px;display:grid}.reward-disclosure{border:1px solid var(--line);background:var(--white,#fff);border-radius:18px;min-width:0;overflow:hidden}.reward-disclosure>summary{cursor:pointer;min-height:62px;color:var(--deep);align-items:center;gap:12px;padding:14px 18px;list-style:none;display:flex}.reward-disclosure>summary::-webkit-details-marker{display:none}.reward-disclosure>summary>span{font-size:16px;font-weight:700}.reward-disclosure>summary>small{color:var(--muted);margin-left:auto;font-size:13px}.reward-disclosure>summary>svg{color:#9f7a27;flex-shrink:0}.disclosure-chevron{transition:transform .15s}.reward-disclosure[open]>summary{border-bottom:1px solid var(--line);background:#f7faf4}.reward-disclosure[open] .disclosure-chevron{transform:rotate(180deg)}.reward-disclosure-body{padding:16px 18px}.reward-disclosure-body>p{margin:0;font-size:16px;line-height:1.7}.reward-disclosure-body>.secondary-action{margin-top:12px}.points-ledger,.redemption-list{border:1px solid var(--line);background:#fff;border-radius:14px;padding:0 16px}.points-ledger article,.redemption-list article{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:16px 0;display:flex}.points-ledger article:last-child,.redemption-list article:last-child{border:0}.points-ledger strong,.redemption-list strong{overflow-wrap:anywhere;font-size:16px}.points-ledger small{color:var(--muted);margin-top:5px;font-size:13px;display:block}.points-ledger b{font-variant-numeric:tabular-nums;font-size:23px}.points-ledger b.credit{color:#9a7120}.redemption-list article>div{flex:1;min-width:0}.redemption-list p,.redemption-list span{color:var(--muted);font-size:13px}.redemption-list button{border:1px solid var(--line);min-height:44px;color:var(--deep);cursor:pointer;font:inherit;background:#fff;border-radius:12px;align-items:center;gap:5px;padding:8px 12px;font-size:14px;display:inline-flex}.redemption-list .redemption-status{color:var(--deep);background:#f1f4ed;border-radius:9px;flex-shrink:0;padding:5px 9px}.redemption-status.pending{color:#7a5c1b;background:#fff3cf}.reward-picture{background:#fffdf6;border-radius:12px;width:100%;min-width:0;height:100%;display:block;overflow:hidden}.reward-picture img{object-fit:contain;width:100%;height:100%;display:block}.reward-picture-placeholder{color:#9c772a;background:#f5f1e5;flex-direction:column;justify-content:center;align-items:center;gap:8px;width:100%;height:100%;min-height:76px;display:flex}.reward-picture-placeholder small{font-size:13px}.reward-picture-placeholder button{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;min-height:44px;padding:6px;font-size:13px}.request-picture{flex-shrink:0;width:64px;height:64px}.reward-sound-controls{border:1px solid var(--line);color:var(--deep);background:#f7faf5;border-radius:14px;flex-wrap:wrap;align-items:center;gap:10px 24px;margin:0;padding:12px 16px;display:flex}.reward-sound-controls legend{padding:0 6px;font-size:14px;font-weight:700}.reward-sound-controls label{cursor:pointer;align-items:center;gap:9px;min-height:44px;font-size:16px;display:flex}.reward-sound-controls input{width:20px;height:20px;accent-color:var(--mint)}.reward-sound-controls small{color:var(--muted);font-size:13px}.reward-admin{background:var(--white,#fff);border:1px solid var(--line);border-radius:var(--radius-card,24px);margin:28px 0;padding:24px}.reward-admin>header{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.reward-admin header h2{margin:0;font-size:22px}.reward-admin p{color:var(--muted);font-size:16px;line-height:1.8}.reward-admin section{border-top:1px solid var(--line);margin:24px 0;padding-top:14px}.reward-admin input{border:1px solid var(--line);border-radius:var(--radius-control,14px);min-width:0;min-height:46px;font:inherit;color:var(--ink);background:#fff;width:100%;padding:10px 12px;font-size:16px}.reward-admin label{gap:7px;font-size:14px;display:grid}.reward-admin button{cursor:pointer;border-radius:var(--radius-control,14px);color:var(--deep);min-height:44px;font:inherit;background:#f3f8f4;border:1px solid #b8ccbe;justify-content:center;align-items:center;gap:7px;padding:10px 15px;font-size:14px;display:inline-flex}.reward-admin button:disabled{opacity:.45;cursor:default}.pin-form{gap:16px;max-width:380px;margin:20px 0;display:grid}.pin-form h3,.pin-form p{margin:0}.admin-gifts{gap:16px;display:grid}.admin-gifts .gift-editor{border:1px solid var(--line);background:#f8faf5;border-radius:18px;grid-template-columns:140px minmax(0,1fr);align-items:start;gap:20px;padding:18px;display:grid}.gift-image-editor{flex-direction:column;gap:8px;min-width:0;display:flex}.gift-image-editor>.reward-picture{border:1px solid var(--line);height:130px}.gift-image-editor>small{color:var(--muted);font-size:13px;line-height:1.6}.gift-image-editor .remove-gift-image{background:0 0;border-color:#0000;padding:4px;font-size:13px}.gift-editor-fields{grid-template-columns:minmax(0,2fr) minmax(110px,1fr);gap:14px;min-width:0;display:grid}.gift-editor-fields .gift-description-editor{grid-column:1/-1}.gift-description-editor textarea{resize:vertical;width:100%;min-height:92px;font:inherit;border:1px solid var(--line);border-radius:var(--radius-control,14px);color:var(--ink);background:#fff;padding:12px;font-size:16px;line-height:1.6}.gift-description-editor small{color:var(--muted);font-size:13px;font-weight:400}.gift-editor-actions{grid-column:1/-1;justify-content:space-between;align-items:center;gap:12px;display:flex}.reward-admin .check-label{align-items:center;min-height:44px;display:flex}.check-label input{width:20px;min-height:20px}.admin-request{background:#fffaf0;border:1px solid #eadbb8;border-radius:16px;flex-wrap:wrap;align-items:center;gap:12px;margin:12px 0;padding:16px;font-size:16px;display:flex}.admin-request>span:not(.reward-picture){flex:180px;min-width:0}.grant-form{grid-template-columns:1fr 3fr auto;align-items:end;gap:12px;display:grid}.reward-admin details{border-top:1px solid var(--line);padding:18px 0}.reward-admin summary{cursor:pointer;font-size:16px;font-weight:600}.rank-edit-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0;display:grid}.rank-edit-grid fieldset{border:1px solid var(--line);border-radius:14px;min-width:0}.rank-edit-grid label{align-items:center;gap:7px;margin:10px 0;display:flex}.rank-edit-grid input{width:70px}.exam-review-form{border:1px solid var(--line);background:#fafbf7;border-radius:18px;margin:18px 0;padding:18px}.exam-review-form fieldset{border:1px solid var(--line);border-radius:14px;min-width:0;margin:18px 0}.exam-review-form blockquote{white-space:pre-wrap;overflow-wrap:anywhere;background:#fff;margin:12px 0;padding:12px}.exam-review-form input{max-width:120px}.reward-admin.embedded{background:0 0;border:0;border-radius:0;margin:0;padding:0}.reward-admin-intro{margin:0 0 16px}.reward-admin-nav{border:1px solid var(--line);scrollbar-width:thin;background:#f1f6ed;border-radius:16px;gap:8px;margin:0;padding:5px;display:flex;overflow-x:auto}.reward-admin .reward-admin-nav button{min-height:44px;color:var(--muted);background:0 0;border:0;border-radius:12px;flex:none;padding:10px 14px;font-weight:650}.reward-admin .reward-admin-nav button[aria-current=true]{color:var(--deep);background:#fff;box-shadow:0 2px 3px #204a2512}.reward-admin-nav button small{min-width:23px;height:23px;color:var(--deep);background:#e6f0e4;border-radius:8px;place-items:center;margin-left:5px;padding:0 6px;font-size:13px;display:inline-grid}.reward-admin .reward-admin-section{border:0;margin:0;padding:24px 0 32px}.reward-admin .reward-admin-section>h3{margin-top:0}.reward-admin .reward-admin-advanced-block{border-top:1px solid var(--line);margin:22px 0 0;padding:20px 0 0}.reward-admin .reward-admin-advanced-block>h4{margin:0;font-size:18px}.reward-admin .reward-admin-advanced-block .pin-form{margin-bottom:8px}.reward-page :is(button,a,summary):focus-visible{outline:3px solid var(--mint);outline-offset:4px}.reward-admin :is(button,input,textarea,summary):focus-visible{outline:3px solid var(--mint);outline-offset:4px}.points-badge:focus-visible{outline:3px solid var(--mint);outline-offset:4px}.reward-page button:disabled{opacity:.5;cursor:default}.points-hero :is(a,button):focus-visible{outline-offset:4px;outline:3px solid #ffe49c}.reward-receipt{text-align:left;color:#ffe5a1;background:radial-gradient(at 10% 0,#3a6a50,#185044 70%);border-radius:20px;align-items:center;gap:18px;margin:22px 0;padding:22px;display:flex;box-shadow:inset 0 0 0 1px #cba35350}.reward-receipt>.gold-coin{width:82px}.reward-receipt small{color:#d4e1c2;font-size:13px}.reward-receipt strong{margin:5px 0;font-size:36px;display:block}.reward-receipt p,.reward-receipt span{color:#e0e9d6;margin:6px 0;font-size:14px;line-height:1.7}.coin-notice{z-index:90;color:#ffe6a0;pointer-events:none;background:linear-gradient(130deg,#295642,#185044);border:1px solid #cea958;border-radius:18px;align-items:center;gap:12px;width:min(390px,100vw - 32px);padding:14px 16px;animation:.3s ease-out coin-notice-enter;display:flex;position:fixed;top:20px;right:24px;box-shadow:0 15px 36px #102a2640}.coin-notice>.gold-coin{width:58px}.coin-notice strong{font-size:27px;display:block}.coin-notice span{color:#d5dfc2;margin-top:3px;font-size:13px;line-height:1.6;display:block}.coin-notice button{color:#e1d8ae;cursor:pointer;pointer-events:auto;background:0 0;border:0;flex-shrink:0;align-self:start;place-items:center;width:44px;height:44px;margin-left:auto;display:grid}.coin-flight-layer{z-index:91;pointer-events:none;--coin-start-x:calc(100vw - 160px);--coin-start-y:190px;position:fixed;inset:0}.coin-flight{pointer-events:none;background:radial-gradient(circle at 30% 20%,#fff0af,#d4a638 50%,#87521a);border:2px solid #f9df79;border-radius:50%;width:17px;height:17px;animation:1s both coin-to-balance;position:absolute;top:0;left:0;box-shadow:0 2px #805114}.flight-b{animation-delay:.12s}.flight-c{animation-delay:.24s}.coin-milestone{border:2px solid #ffdd78;box-shadow:0 12px 45px #bf902b50}.milestone-title{color:#fff0b3;margin-bottom:4px;font-size:16px;display:block}.reward-celebration{isolation:isolate;color:#fff0bb;background:radial-gradient(at 12% 40%,#54713c,#185044 70%);border:1px solid #d8b765;border-radius:24px;align-items:center;gap:18px;width:min(700px,100% - 32px);margin:20px auto;padding:22px 58px 22px 22px;animation:.28s ease-out reward-arrive;display:flex;position:relative;overflow:hidden;box-shadow:0 8px 28px #193d2424}.reward-celebration>.gold-coin{filter:drop-shadow(0 4px 12px #e4b53330);flex:none;width:80px}.reward-celebration>div{min-width:0}.reward-celebration small{color:#dce3bc;font-size:13px;display:block}.reward-celebration strong{color:#ffe08b;font-variant-numeric:tabular-nums;font-size:clamp(28px,5vw,42px);line-height:1.35;display:block}.reward-celebration p{color:#f4ecd5;margin:6px 0 0;font-size:16px;line-height:1.65}.reward-celebration button,.reward-receipt button{color:#355333;min-height:44px;font:inherit;cursor:pointer;background:#fff8d8;border:1px solid #b29553;border-radius:12px;justify-content:center;align-items:center;gap:7px;margin-top:10px;padding:9px 12px;font-size:14px;display:inline-flex}.reward-celebration .celebration-close{color:#f5e5b1;background:0 0;border-color:#0000;width:44px;margin:0;padding:0;position:absolute;top:8px;right:8px}.reward-replay{flex-wrap:wrap;align-items:center;gap:12px;margin-top:4px;display:flex}.reward-receipt .reward-replay button{color:#d3e3d0;min-width:44px;min-height:44px;box-shadow:none;background:0 0;border:0;border-radius:4px;gap:5px;margin:0;padding:6px 2px;font-size:13px;font-weight:400;line-height:1.4}.reward-receipt .reward-replay button svg{width:14px;height:14px}.reward-receipt .reward-replay button:hover{color:#fff8d8;text-underline-offset:3px;text-decoration:underline}.reward-replay small{color:#d3e3d0;font-size:13px}:is(.reward-celebration button:focus-visible,.reward-receipt button:focus-visible,.reward-sound-controls input:focus-visible){outline-offset:3px;outline:3px solid #d7b95c}.reward-coin-rain{z-index:121;pointer-events:none;contain:strict;position:fixed;inset:0;overflow:hidden}.reward-coin-rain>i{top:-70px;left:var(--rain-x);width:var(--rain-size);height:var(--rain-size);animation:reward-coin-fall var(--rain-duration) var(--rain-delay) cubic-bezier(.32,.04,.75,.58) both;position:absolute}.reward-coin-rain b{color:#b47920;text-shadow:0 1px #ffedaa;width:100%;height:100%;font-size:calc(var(--rain-size) * .54);background:radial-gradient(circle at 28% 20%,#fff8cb 0%,#efd06b 27%,#d7a133 62%,#ac6e14 100%);border:2px solid #fce6a2;border-radius:50%;place-items:center;line-height:1;animation:.67s linear infinite reward-coin-spin;display:grid;box-shadow:inset 0 0 0 3px #d6a43d,1px 3px #92601d,0 4px 9px #47300926}@keyframes coin-notice-enter{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes coin-to-balance{0%{opacity:0;transform:translate(var(--coin-start-x),var(--coin-start-y)) scale(.6)}18%{opacity:1}75%{opacity:1}to{opacity:0;transform:translate(var(--coin-end-x),var(--coin-end-y)) rotate(190deg) scale(.4)}}@keyframes reward-arrive{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes reward-coin-fall{0%{opacity:0;transform:translateY(-20px)rotate(0)}6%{opacity:.95}87%{opacity:.95}to{opacity:0;transform:translate3d(var(--rain-drift),calc(100dvh + 130px),0) rotate(var(--rain-turn))}}@keyframes reward-coin-spin{0%,to{filter:brightness();transform:scaleX(1)}45%{filter:brightness(1.2);transform:scaleX(.3)}55%{filter:brightness(.85);transform:scaleX(.3)}}.exam-rank-card{background:#fff5d9;border:1px solid #e6d5a1;border-radius:16px;margin:20px 0;padding:18px 22px}.exam-rank-card strong{color:#816021;font-size:23px}.exam-rank-card p{color:#716c5d;margin:7px 0;font-size:13px}.exam-reward-label{color:#927022;background:#fff5d9;border-radius:10px;padding:9px 12px;font-size:13px}.paper-card>footer{flex-wrap:wrap}.paper-card>footer .exam-reward-label{flex-basis:100%;margin:0 0 5px}.runner-header,.formal-runner-header{grid-template-columns:auto minmax(0,1fr) auto auto}.runner-header .points-badge{max-width:180px}.preview-points{justify-content:flex-end;margin-bottom:12px;display:flex}.preview-points .points-badge{max-width:100%}.exam-progress-card{background:#e6f3ec;border:1px solid #bad7c7;border-radius:16px;margin:20px 0;padding:18px 22px}.exam-progress-card p{margin-bottom:0;font-size:16px}.report-topbar>div{flex:1}.typing-game-hud{flex-wrap:wrap;min-height:64px;display:flex}.typing-game-hud>.typing-progress{flex:1;order:1;min-width:100px}.typing-game-hud>.typing-score{order:2}.typing-game-hud>:is(.typing-combo,.typing-hearts,.repair-phase-chip){order:3}.typing-game-hud>button:last-child{order:5}.typing-game-hud>.points-badge,.vocab-game-hud>.points-badge{flex-shrink:0;order:4;gap:5px;min-width:80px;padding:3px 10px 3px 3px;position:static}.typing-game-hud>.points-badge span,.vocab-game-hud>.points-badge span{display:grid}.typing-game-hud>.points-badge strong,.vocab-game-hud>.points-badge strong{color:#6c4613;font-size:19px}.typing-game-hud>.points-badge small,.vocab-game-hud>.points-badge small{color:#6c4613;font-size:13px}.typing-game-hud>.points-badge .gold-coin,.vocab-game-hud>.points-badge .gold-coin{width:32px}.typing-game-hud .typing-hearts{position:static}.vocab-game-hud{grid-template-columns:auto minmax(70px,1fr) auto auto}.vocab-game-hud>.points-badge{order:3;display:inline-flex}.vocab-game-hud>button{order:0}.vocab-game-hud>div:not(.points-badge){order:1}.vocab-game-hud>p{order:2}.typing-game-screen{grid-template-rows:auto minmax(0,1fr) auto}@media (max-width:1100px){.points-hero{grid-template-columns:100px minmax(160px,1fr) minmax(200px,.85fr);gap:18px;padding:22px}.points-companion{width:100px;height:130px}.points-companion>svg:first-child{width:110px;height:110px}.points-goal{padding:16px}.gift-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.earn-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.exchange-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:700px){.points-hero,.points-hero.compact{border-radius:20px;grid-template-columns:74px minmax(0,1fr);gap:12px;min-height:0;margin-bottom:22px;padding:20px 16px}.points-companion{width:74px;height:108px}.points-companion>svg:first-child{width:86px;height:86px}.points-companion>.gold-coin{width:32px;bottom:3px;right:-4px}.points-total>p{font-size:13px}.points-total>strong{gap:7px;font-size:42px}.points-total>strong small{font-size:13px}.points-sub{gap:5px;margin-bottom:12px;font-size:13px}.points-start{width:100%;padding:9px 12px}.points-goal{grid-column:1/-1;grid-template-columns:minmax(0,1fr) auto;gap:0 8px;margin-top:4px;padding:15px;display:grid}.points-goal>span,.points-goal h3,.points-goal p,.points-goal .gold-progress{grid-column:1}.points-goal h3{font-size:18px}.points-goal .goal-picture{grid-area:1/2/span 4;align-self:center;width:60px;height:60px;margin:0}.points-goal>a{grid-column:1/-1}.points-badge{gap:4px;min-height:44px;padding:3px 8px 3px 3px}.points-badge .gold-coin{width:28px}.points-badge strong{font-size:19px}.points-badge small{font-size:13px}.reward-page-title h2{font-size:24px}.reward-title-row{align-items:flex-start;gap:10px}.reward-title-row>a{padding:9px 11px;font-size:13px}.reward-page-title p{font-size:16px}.gift-grid{grid-template-columns:minmax(0,1fr);gap:16px}.gift-art{height:114px}.gift-card{padding:14px}.reward-disclosure>summary{flex-wrap:wrap;gap:8px;padding:12px 14px}.reward-disclosure>summary>span{flex:1}.reward-disclosure>summary>small{flex-basis:100%;order:3;margin:0 28px}.reward-disclosure>summary>.disclosure-chevron{margin-left:auto}.reward-disclosure-body{padding:14px}.earn-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.earn-card{padding:16px}.earn-card>strong{font-size:29px}.earn-card .gold-coin{width:42px}.exam-earn{padding:16px}.exam-prizes{grid-template-columns:minmax(0,1fr);gap:10px}.exam-prizes article{padding:16px}.exam-prizes strong{margin-top:8px;font-size:38px}.rules-bonus,.reward-examples{grid-template-columns:minmax(0,1fr);gap:12px}.exchange-steps li{padding:12px 8px;font-size:13px}.redemption-list article{flex-wrap:wrap;gap:10px}.redemption-list .redemption-status{flex-shrink:1}.reward-receipt{gap:12px;padding:16px}.reward-receipt>.gold-coin{width:55px}.reward-receipt strong{font-size:30px}.coin-notice{top:12px;right:16px}.reward-admin{padding:16px}.reward-admin .reward-admin-nav button{padding:9px 12px;font-size:14px}.reward-admin .reward-admin-section{padding-top:20px}.admin-gifts .gift-editor{grid-template-columns:minmax(0,1fr);gap:14px;padding:14px}.gift-image-editor{grid-template-columns:100px minmax(0,1fr);align-items:center;gap:6px 12px;display:grid}.gift-image-editor>.reward-picture{grid-row:1/span 3;height:110px}.gift-image-editor>small{grid-column:2;font-size:13px}.gift-editor-fields,.grant-form,.rank-edit-grid{grid-template-columns:minmax(0,1fr)}.admin-request{align-items:flex-start}.admin-request button{width:100%}.reward-celebration{border-radius:20px;gap:12px;margin:12px auto;padding:16px 52px 16px 14px}.reward-celebration>.gold-coin{width:54px}.reward-celebration p{font-size:14px}.reward-sound-controls{gap:10px 20px;padding:12px 14px}.reward-sound-controls small{flex-basis:100%}.runner-header{gap:8px}.runner-header .points-badge{max-width:140px}.formal-runner-header{flex-wrap:wrap;grid-template-columns:auto 1fr auto;gap:10px}.formal-paper-title{grid-area:2/1/auto/-1}.formal-runner-header .points-badge{justify-self:end;margin-left:auto}.runner-header p{font-size:13px}.report-topbar{flex-wrap:wrap;gap:10px}.report-topbar>div{flex-basis:100%;order:3}.report-topbar>button,.typing-game-hud>.points-badge{margin-left:auto}.vocab-game-hud{gap:6px;padding-inline:10px}.vocab-game-hud>.points-badge{min-width:0;padding-right:5px}.vocab-game-hud>.points-badge .gold-coin{width:25px}.vocab-game-hud>.points-badge strong{font-size:16px}}@media (prefers-reduced-motion:reduce){.coin-notice,.reward-celebration{animation:none}.coin-flight,.reward-coin-rain{display:none}.gold-progress i,.points-start,.disclosure-chevron{transition:none}.points-start:hover,.points-start:active{transform:none}}.platform{--p-ink:var(--ink);--p-muted:var(--muted);--p-green:var(--mint);max-width:1280px;color:var(--ink);margin:auto;padding:28px;font-family:inherit}.platform *{box-sizing:border-box}.platform h1{color:var(--deep);margin:8px 0 16px;font-size:30px;line-height:1.3}.platform h2{margin:6px 0 16px;font-size:22px;line-height:1.4}.platform h3{margin:8px 0;font-size:18px;line-height:1.5}.platform p{line-height:1.75}.platform small,.platform .muted{color:var(--muted)}.platform header,.platform .row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.platform header{justify-content:space-between;margin-bottom:20px}.platform nav{flex-wrap:wrap;gap:8px;margin:16px 0 24px;display:flex}.platform button,.platform .button{border:1px solid var(--line);border-radius:var(--radius-control);background:var(--white);min-height:44px;color:var(--deep);cursor:pointer;padding:10px 16px;font-size:14px;font-weight:600;text-decoration:none;transition:border-color .16s,background .16s,transform .16s}.platform button:hover:not(:disabled),.platform .button:hover{border-color:var(--mint);background:color-mix(in srgb, var(--mint) 5%, var(--white))}.platform button:active:not(:disabled),.platform .button:active{transform:translateY(1px)}.platform :is(button,.button,input,select,textarea,summary):focus-visible{outline:3px solid var(--sky);outline-offset:3px}.platform button.primary,.platform button[aria-current=true],.platform button[aria-current=page]{color:var(--white);background:var(--mint);border-color:var(--mint)}.platform button.primary:hover:not(:disabled){background:var(--deep);border-color:var(--deep)}.platform button:disabled{opacity:.55;cursor:not-allowed}.platform input,.platform select,.platform textarea{border:1px solid var(--line);border-radius:var(--radius-control);width:100%;min-height:44px;color:var(--ink);background:var(--white);font:inherit;min-width:0;padding:10px 12px}.platform input[type=checkbox]{width:auto;min-height:0;accent-color:var(--mint);margin-right:8px}.platform label{gap:7px;margin:12px 0;font-size:14px;display:grid}.platform label.check{display:block}.platform .grid{grid-template-columns:repeat(auto-fit,minmax(min(275px,100%),1fr));gap:20px;display:grid}.platform .card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-card);min-width:0;box-shadow:var(--shadow-card);margin-bottom:18px;padding:24px}.platform .card .card{box-shadow:none;background:var(--paper)}.platform .notice{background:color-mix(in srgb,var(--sun) 17%,var(--white));border:1px solid color-mix(in srgb,var(--sun) 38%,var(--line));border-radius:var(--radius-control);white-space:pre-wrap;overflow-wrap:anywhere;padding:14px 18px}.platform .tag{background:color-mix(in srgb,var(--mint) 9%,var(--white));color:var(--deep);border-radius:999px;margin:3px 5px 3px 0;padding:5px 10px;font-size:13px;display:inline-block}.platform .modal-backdrop{background:color-mix(in srgb,var(--deep) 65%,transparent);z-index:1000;padding:5vh 20px;position:fixed;inset:0;overflow:auto}.platform .modal{background:var(--paper);border-radius:var(--radius-card);max-width:850px;margin:0 auto;padding:25px}.platform table{border-collapse:collapse;width:100%;font-size:14px}.platform td,.platform th{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:12px 10px}.platform .scroll{overflow:auto}.platform .large{font-size:26px;font-weight:700}.platform details{margin:12px 0}.platform summary{cursor:pointer;padding:8px 0;font-weight:600}.platform .error{color:color-mix(in srgb,var(--coral) 80%,var(--ink))}.platform .narrow{max-width:520px;margin:7vh auto}.platform pre{white-space:pre-wrap;overflow-wrap:anywhere}.platform .split{grid-template-columns:1fr 1fr;gap:16px;display:grid}.family-bar{background:var(--white);border-bottom:1px solid var(--line)}.family-bar .platform{max-width:none;padding:12px 28px}.family-bar header{gap:20px;margin:0}.family-identity{align-items:center;gap:10px;min-width:0;display:flex}.family-identity-icon{width:32px;height:32px;color:var(--mint);background:var(--paper);border:1px solid var(--line);border-radius:10px;flex:0 0 32px;place-items:center;display:grid}.family-identity strong{color:var(--deep);overflow-wrap:anywhere;font-size:15px}.family-controls{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:16px;display:flex}.platform label.family-student-picker{color:var(--mint);align-items:center;gap:8px;margin:0;display:flex}.family-bar .family-student-picker select{background:var(--paper);width:auto;max-width:210px}.platform nav.family-navigation{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-control);gap:4px;margin:0;padding:4px}.family-navigation button{justify-content:center;align-items:center;gap:7px;display:inline-flex}.platform .family-navigation button{background:0 0;border-color:#0000}.platform .family-navigation button[aria-current=page]{background:var(--mint);color:var(--white)}.platform .family-logout{color:var(--muted);background:0 0;border-color:#0000;justify-content:center;align-items:center;gap:7px;display:inline-flex}.platform.family-dialog-host{max-width:none;padding:0}.platform .parent-unlock-dialog{width:min(520px,100vw - 32px)}.platform .parent-unlock-dialog .parent-gate{box-shadow:none;background:0 0;border:0;padding:0}.platform .parent-center-locked{text-align:center;max-width:620px;margin:28px auto;padding:40px 28px}.parent-center-locked>svg{color:var(--mint);margin:0 auto 12px}.parent-center-locked p{color:var(--muted)}.parent-center-locked button{margin-top:12px}.platform .course-library-heading{align-items:flex-start;margin-bottom:28px}.platform .section-eyebrow{color:var(--mint);font-size:13px;font-weight:700}.platform .course-library-heading h1{margin:5px 0 8px}.platform .course-library-heading p{color:var(--muted);margin:0;font-size:14px}.course-shelf-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.platform .course-shelf-heading h2{margin:0;font-size:20px}.course-shelf-heading>span{color:var(--muted);font-size:13px}.platform .course-shelf-card{border-top:4px solid var(--mint);flex-direction:column;margin-bottom:0;display:flex}.platform .course-shelf-card.math{border-top-color:var(--sky)}.platform .course-shelf-card.chinese{border-top-color:var(--coral)}.course-shelf-label{justify-content:space-between;align-items:center;gap:8px;margin-bottom:18px;display:flex}.course-subject-mark{color:var(--mint);align-items:center;gap:7px;font-size:13px;font-weight:700;display:inline-flex}.math .course-subject-mark{color:var(--sky)}.chinese .course-subject-mark{color:var(--coral)}.platform .course-shelf-card h3{margin:0 0 10px;font-size:21px}.platform .course-shelf-card>p{color:var(--muted);margin:0 0 8px;font-size:14px}.platform .course-shelf-card .course-shelf-progress{background:var(--paper);border-radius:var(--radius-control);color:var(--deep);margin:20px 0;padding:12px 14px;font-size:13px}.course-shelf-progress span{color:var(--muted);margin:0 5px}.course-shelf-actions{margin-top:auto}.course-shelf-actions button{flex:auto;justify-content:center}.course-version-notice{border-top:1px solid var(--line);margin-top:18px;padding-top:16px}.course-version-notice p{color:var(--muted);font-size:13px}.course-version-notice button{width:100%;font-size:13px}.course-library-empty{border:1px dashed var(--line);border-radius:var(--radius-card);background:var(--white);text-align:center;padding:46px 24px}.course-library-empty h3{margin:0 0 7px}.course-library-empty p{color:var(--muted);margin:0}.platform .tag.course-private-tag{background:color-mix(in srgb,var(--sun) 14%,var(--white));color:color-mix(in srgb,var(--sun) 48%,var(--ink))}.course-library-drawer-backdrop,.parent-settings-backdrop{z-index:1450;background:color-mix(in srgb,var(--deep) 45%,transparent);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);justify-content:flex-end;display:flex;position:fixed;inset:0}.course-library-drawer,.parent-settings-drawer{background:var(--paper);width:min(820px,100vw - 48px);height:100%;box-shadow:-24px 0 70px color-mix(in srgb,var(--deep) 20%,transparent);flex-direction:column;animation:.2s ease-out parent-drawer-in;display:flex;overflow:hidden}.platform .course-library-drawer-header,.platform .parent-settings-drawer-header{border-bottom:1px solid var(--line);background:var(--white);flex:none;margin:0;padding:24px}.course-library-drawer-header small,.parent-settings-drawer-header small{color:var(--mint);font-size:13px;font-weight:700}.platform .course-library-drawer-header h2,.platform .parent-settings-drawer-header h2{margin:4px 0 0}.platform .course-library-drawer-header>button,.platform .parent-settings-drawer-header>button{place-items:center;width:44px;padding:0;display:grid}.course-library-drawer-body,.parent-settings-drawer-body{flex:1;min-height:0;padding:24px 24px 40px;overflow-y:auto}.platform .course-library-help{color:var(--muted);margin:0 0 16px;font-size:14px}.course-library-filters{border-bottom:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px;padding:0 0 16px;display:grid}.platform .course-library-filters label{margin:8px 0}.course-library-results-heading{justify-content:space-between;align-items:baseline;gap:16px;margin:24px 0 12px;display:flex}.course-library-results-heading small{font-size:13px}.course-catalog-list{border-top:1px solid var(--line)}.course-catalog-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;padding:20px 2px;display:grid}.course-catalog-main{min-width:0}.platform .course-catalog-main h3{margin:7px 0 4px;font-size:17px}.platform .course-catalog-main p{color:var(--muted);margin:0 0 5px;font-size:13px;line-height:1.6}.course-catalog-main small{line-height:1.75;display:block}.platform .course-catalog-row>button{white-space:nowrap;min-width:126px}.course-catalog-added{min-width:90px;color:var(--mint);text-align:center;font-size:13px;font-weight:700}.course-catalog-empty{text-align:center;padding:54px 20px}.course-catalog-empty h3{margin:0 0 7px}.course-catalog-empty p{color:var(--muted);margin:0;font-size:14px}.parent-gate-wrap{max-width:480px;margin:7vh auto}.parent-gate{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow-card);color:var(--ink);padding:30px}.parent-gate.compact{margin:0}.parent-gate-heading{align-items:center;gap:13px;display:flex}.parent-gate-heading small{color:var(--mint);font-size:13px;font-weight:700;display:block}.parent-gate-heading h2{margin:3px 0 0;font-size:26px}.parent-gate-mark{border-radius:var(--radius-control);background:var(--mint);width:44px;height:44px;color:var(--white);place-items:center;font-size:20px;font-weight:700;display:grid}.parent-gate>p{color:var(--muted);margin:18px 0;line-height:1.75}.parent-pin-form{gap:12px;max-width:360px;display:grid}.parent-pin-form label{gap:7px;font-size:14px;font-weight:600;display:grid}.parent-pin-form input{border:1px solid var(--line);border-radius:var(--radius-control);width:100%;min-height:44px;color:var(--ink);background:var(--white);font:inherit;padding:12px}.parent-pin-form .parent-pin-input{letter-spacing:.45em;text-align:center;font-variant-numeric:tabular-nums;padding-left:calc(12px + .45em);font-size:25px;font-weight:700}.parent-gate .primary{border:1px solid var(--mint);border-radius:var(--radius-control);background:var(--mint);color:var(--white);font:inherit;cursor:pointer;justify-self:start;padding:11px 17px;font-weight:700}.parent-gate .primary:disabled{opacity:.55;cursor:not-allowed}.parent-gate .notice{background:color-mix(in srgb,var(--sun) 17%,var(--white));border:1px solid color-mix(in srgb,var(--sun) 38%,var(--line));border-radius:var(--radius-control);margin-top:16px;padding:14px}.parent-gate :is(button,input):focus-visible{outline:3px solid var(--sky);outline-offset:3px}.parent-gate-note{font-size:13px}.parent-gate-checking{color:var(--muted);padding:13px 0}.parent-unlocked-badge{border:1px solid var(--line);background:color-mix(in srgb,var(--mint) 6%,var(--white));color:var(--mint);border-radius:999px;padding:6px 10px;font-size:13px;font-weight:700}.parent-center-heading{justify-content:space-between;align-items:center;gap:18px;margin:7px 0 24px;display:flex}.parent-center-heading span{color:var(--mint);font-size:13px;font-weight:700}.parent-center-heading h1{margin:3px 0 5px}.parent-center-heading p{color:var(--muted);margin:0;font-size:14px}.parent-center-actions{flex-wrap:wrap;align-items:center;gap:9px;display:flex}.parent-dashboard-gate{max-width:480px}.platform .parent-settings-overview{padding:0 24px;overflow:hidden}.platform .parent-settings-overview>header{border-bottom:1px solid var(--line);align-items:flex-end;margin:0;padding:24px 0 18px}.platform .parent-settings-overview>header h2{margin:3px 0 0}.platform .parent-settings-overview>header p{color:var(--muted);margin:0;font-size:13px}.parent-settings-list article{border-bottom:1px solid var(--line);grid-template-columns:64px minmax(0,1fr) auto;align-items:center;gap:16px;min-height:90px;display:grid}.parent-settings-list article:last-child{border-bottom:0}.parent-settings-list article>span{color:var(--mint);font-size:13px;font-weight:700}.parent-settings-list article strong{font-size:16px;display:block}.parent-settings-list article p{color:var(--muted);margin:5px 0 0;font-size:13px;line-height:1.7}.platform .parent-settings-list button{background:var(--paper);white-space:nowrap;font-weight:700}.parent-settings-list article>small{white-space:nowrap}.parent-password-panel{max-width:520px}.parent-password-panel>h2{margin-bottom:6px}.parent-password-panel>p{color:var(--muted);margin-top:0;font-size:14px}.parent-password-panel form{margin-top:22px}.parent-password-panel .primary{margin-top:6px}.platform .parent-settings-dialog{width:min(820px,100vw - 32px)}.platform .parent-add-child-dialog{width:min(460px,100vw - 32px)}.parent-add-child-dialog .ui-dialog-content>p{color:var(--muted);margin:0 0 18px;font-size:14px;line-height:1.75}.parent-add-child-dialog form{gap:2px;display:grid}.parent-add-child-dialog footer{justify-content:flex-end;margin-top:12px;display:flex}@keyframes parent-drawer-in{0%{opacity:.6;transform:translate(32px)}to{opacity:1;transform:translate(0)}}.platform .course-lessons{margin:18px 0}.platform .course-lessons li{margin:8px 0;line-height:1.85}.platform .course-lessons ol{padding-left:24px;list-style:decimal}.platform .course-lessons ul{padding-left:24px;list-style:outside}.platform .course-lessons h4{margin:18px 0 8px;font-weight:700}.platform .course-evidence{overflow-wrap:anywhere;font-size:13px}.platform .course-evidence a{text-decoration:underline}.platform .lesson-detail[open]{background:var(--paper);border-color:var(--mint)}.platform .lesson-detail summary small{margin-top:5px;font-weight:400;display:block}.platform .card:has(>.course-lessons){min-width:0}.platform .grid:has(>.card>.course-lessons){grid-template-columns:1fr}.platform .course-lessons .card{max-width:1000px}.workspace .platform.course-learning-details{max-width:none;padding:16px 22px}.course-practice{border:1px solid var(--line);border-radius:var(--radius-card);background:var(--white);min-width:0;overflow:hidden}.course-practice .practice-row{border:0}@media (min-width:981px){.course-practice .practice-row{grid-template-columns:auto minmax(0,1fr) auto}}.course-learning-details>details{margin:0}.generate-scope input{flex:none;width:18px;height:18px;margin-top:3px}.generate-scope{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:12px}.generate-scope label{align-items:center;gap:8px;display:flex}.g3-word-picture{margin:0}.g3-word-picture svg{width:100%;height:auto;display:block}.g3-word-picture figcaption,.g3-reading-scene figcaption{color:var(--muted);padding:6px;font-size:12px}.g3-reading-scene{max-width:420px;margin:12px auto}.g3-reading-scene img{border-radius:16px;width:100%;height:auto}@media (max-width:900px){.family-bar .platform{padding:12px 20px}.family-controls{gap:10px}.family-bar .family-student-picker select{max-width:180px}}@media (max-width:650px){.platform{padding:20px 16px}.platform .split,.platform .grid{grid-template-columns:1fr}.platform .modal{padding:16px}.platform header{align-items:flex-start}.platform button{padding:10px 12px}.family-bar .platform{padding:10px 16px}.family-bar header{gap:12px}.family-identity{flex:1}.family-identity strong{font-size:14px}.family-controls{grid-template-columns:minmax(0,1fr) auto;gap:10px;width:100%;display:grid}.platform label.family-student-picker{min-width:0}.family-bar .family-student-picker select{width:100%;max-width:none}.platform nav.family-navigation{grid-area:2/1/auto/-1;grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.platform .family-navigation button{padding:9px 6px;font-size:13px}.platform .family-logout{min-width:44px;padding:9px 8px}.family-logout span{display:none}.course-library-heading>button{justify-content:center;width:100%}.course-shelf-heading{flex-direction:column;align-items:flex-start;gap:4px}.platform .course-shelf-card{padding:22px}.parent-gate-wrap{margin:24px auto}.parent-gate{padding:22px}.parent-gate-heading h2{font-size:23px}.parent-pin-form .parent-pin-input{letter-spacing:.35em;font-size:22px}.parent-center-heading{flex-direction:column;align-items:flex-start}.parent-center-actions{width:100%}.parent-center-actions button{flex:150px}.platform .parent-settings-overview{padding:0 18px}.platform .parent-settings-overview>header{align-items:flex-start}.platform .parent-settings-overview>header>p{display:none}.parent-settings-list article{grid-template-columns:42px minmax(0,1fr) auto;gap:10px;min-height:90px}.parent-settings-drawer,.course-library-drawer{width:100vw}.platform .parent-settings-drawer-header,.platform .course-library-drawer-header{padding:18px 16px}.parent-settings-drawer-body,.course-library-drawer-body{padding:20px 16px 32px}.course-library-filters{grid-template-columns:1fr}.course-library-results-heading{flex-direction:column;align-items:flex-start;gap:4px}.course-catalog-row{grid-template-columns:1fr;gap:12px}.platform .course-catalog-row>button{width:100%}.course-catalog-added{text-align:left}}@media (prefers-reduced-motion:reduce){.course-library-drawer,.parent-settings-drawer{animation:none}.platform button,.platform .button{transition:none}}.g3-topic-explanation{border:1px solid var(--border,#dbe5e5);border-radius:16px;margin:0 0 18px;padding:14px}.g3-topic-explanation>summary{cursor:pointer;padding:6px;font-weight:700}.g3-topic-explanation[open]>summary{margin-bottom:14px}.course-learning-lab{background:var(--white,#fff);border:1px solid var(--line);border-radius:var(--radius-card,22px);width:100%;min-width:0;color:var(--ink);overflow-wrap:anywhere;box-shadow:var(--shadow-card);padding:24px;font-size:16px}.course-learning-focused{box-shadow:none;border:0;padding:0}.course-lab-context{color:var(--muted);font-size:14px;line-height:1.8}.course-lab-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px;padding-bottom:20px;display:flex}.course-lab-header h2{margin:10px 0;font-size:25px}.course-lab-header p{color:var(--muted);margin:7px 0;font-size:14px;line-height:1.7}.course-lab-badge{color:var(--mint);white-space:nowrap;background:#e9f8f0;border-radius:24px;padding:7px 12px;font-size:13px;display:inline-block}.course-lab-unit{flex-wrap:wrap;align-items:center;gap:12px;margin:16px 0;font-weight:650;display:flex}.course-lab-unit select{border:1px solid var(--line);border-radius:var(--radius-control,12px);background:var(--white,#fff);max-width:100%;min-height:44px;color:inherit;padding:10px 14px;font-size:16px}.course-lab-tabs{flex-wrap:wrap;gap:8px;margin:18px 0;display:flex}.course-lab-tabs button{border:1px solid var(--line);border-radius:var(--radius-control,12px);background:var(--paper,#f5faf7);min-height:44px;color:var(--muted);cursor:pointer;padding:10px 15px;font-size:15px;font-weight:700}.course-lab-tabs button[aria-selected=true],.course-lab-tabs button[aria-pressed=true]{background:var(--mint);color:#fff;border-color:var(--mint)}.course-lab-tabs small{opacity:.8;margin-left:4px;font-size:13px}.course-topic-layout{grid-template-columns:210px minmax(0,1fr);gap:20px;display:grid}.course-topic-focused{grid-template-columns:minmax(0,1fr)}.course-topic-layout>nav{flex-direction:column;align-self:start;gap:8px;display:flex}.course-topic-layout>nav button{text-align:left;background:var(--paper,#f5faf7);min-height:52px;color:var(--ink);cursor:pointer;border:1px solid #0000;border-radius:12px;grid-template-columns:28px 1fr;gap:8px;padding:12px;line-height:1.6;display:grid}.course-topic-layout>nav button.active{color:var(--mint);background:#e9f8f0;border-color:#9acbb5}.course-topic-layout>nav small{grid-column:2;font-size:13px;display:block}.course-topic-layout>nav button>span{color:var(--muted);font-size:13px;font-weight:800}.course-topic-layout>nav button>strong{font-size:15px;font-weight:650}.course-topic-heading>span{color:var(--muted);font-size:13px}.course-topic-heading h3{margin:10px 0;font-size:23px;line-height:1.5}.course-topic-heading p{line-height:1.8}.illustrated-topic{min-width:0;padding:8px;scroll-margin-bottom:150px}.illustrated-topic p{white-space:pre-line;font-size:18px;line-height:1.9}.textbook-lesson-goal{background:var(--subject-tint,#e9f8f0);color:var(--deep);border-radius:14px;padding:14px 16px;font-size:16px!important}.lesson-method-prompt{color:var(--muted);font-size:14px!important}.lesson-method-map,.lesson-reasoning-track{gap:12px;list-style:none;display:grid;margin:20px 0!important;padding:0!important}.lesson-method-map li,.lesson-reasoning-track li{background:#f4f9f7;border:1px solid #d4e4e2;border-radius:16px;align-items:flex-start;gap:14px;padding:16px 20px;display:flex;position:relative}.lesson-method-map li:not(:last-child):after{content:"↓";color:var(--mint);z-index:1;background:#fff;position:absolute;bottom:-19px;left:32px}.lesson-method-map li>span,.lesson-reasoning-track li>span{color:var(--mint);background:#d9ece5;border-radius:10px;place-items:center;min-width:32px;height:32px;font-weight:800;display:grid}.lesson-method-map p{line-height:1.9;margin:1px 0!important}.lesson-reasoning-track{grid-template-columns:repeat(2,minmax(0,1fr))}.lesson-reasoning-track li{background:var(--paper,#f5faf7);color:var(--muted);min-width:0;display:block}.lesson-reasoning-track li.revealed{color:var(--ink);background:#eef7f3}.lesson-reasoning-track strong{margin-top:10px;display:block}.lesson-reasoning-track p{margin:8px 0;font-size:18px}.lesson-given{border-left:4px solid var(--sun);background:#fff7e9;border-radius:12px;padding:18px}.lesson-given strong{margin-bottom:8px;display:block}.lesson-stage{background:#eef4ff;border:1px solid #d9e6fb;border-radius:16px;margin:18px 0;padding:20px}.lesson-stage>span{color:var(--sky);font-size:13px}.lesson-stage h4{margin:7px 0;font-size:19px}.lesson-stage p{margin:8px 0;font-size:18px}.lesson-action-bar{z-index:20;border:1px solid var(--line);border-radius:var(--radius-card,18px);background:var(--white,#fff);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-top:26px;padding:14px 16px;display:flex;position:sticky;bottom:18px;box-shadow:0 8px 28px #173d3020}.lesson-action-status{flex:140px;gap:5px;min-width:0;display:grid}.lesson-action-status strong{color:var(--deep);font-size:15px}.lesson-action-status>span{color:var(--muted);font-size:13px;line-height:1.6}.lesson-stage-actions{flex-wrap:wrap;align-items:center;gap:8px;margin:0;display:flex}.lesson-stage-actions button{white-space:normal;min-height:44px;margin:0;font-size:14px}.lesson-restart{justify-content:center;width:44px;padding:0!important}.lesson-action-bar button:disabled{cursor:default;opacity:.55}.lesson-note-grid{grid-template-columns:1fr 1fr;gap:14px;margin-top:22px;display:grid}.lesson-note-grid>section{border:1px solid var(--line);background:#fffaf0;border-radius:16px;padding:17px}.lesson-note-grid h4{margin:0 0 12px;font-size:16px}.lesson-note-grid ul{padding-left:20px;font-size:18px;line-height:1.9}.lesson-note-grid p{margin-bottom:0}.lesson-next{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:20px;padding-top:14px;display:flex}.lesson-next p{color:var(--muted);flex:250px;font-size:14px!important}.course-geometry{margin:18px 0}.course-geometry svg{width:100%;height:auto;max-height:430px;display:block}.course-geometry figcaption{gap:8px;padding:12px 14px;font-size:14px;line-height:1.7;display:grid}.course-artwork{background:#f4f6f3;border-radius:16px;min-width:0;margin:0;overflow:hidden}.course-artwork img{width:100%;height:auto;display:block}.course-artwork-frame{position:relative;overflow:hidden}.course-artwork figcaption{color:var(--muted);background:#f4f7f2;padding:10px 12px;font-size:13px;line-height:1.6}.course-artwork-error{text-align:center;place-content:center;justify-items:center;min-height:200px;padding:22px;font-size:14px;display:grid}.course-scene-intro{grid-template-columns:1.15fr 1fr;align-items:center;gap:24px;margin:20px 0 30px;display:grid}.course-scene-intro h3{font-size:25px}.course-scene-intro p{color:var(--muted);font-size:18px;line-height:1.9}.course-word-cloud{flex-wrap:wrap;gap:8px;display:flex}.course-word-cloud span{color:var(--sky);background:#edf4ff;border-radius:9px;padding:7px 11px}.course-word-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.course-word-card{border:1px solid var(--line);border-radius:18px;align-self:start;min-width:0;overflow:hidden}.course-word-card>.course-artwork{border-radius:0}.course-word-card>div:not(.course-word-concept){padding:18px}.course-word-card h3{margin:0 0 12px;font-size:23px;line-height:1.4}.course-word-card summary{cursor:pointer;color:var(--mint);min-height:44px;padding:13px 0;font-size:14px}.course-word-card details p{font-size:18px;line-height:1.9}.course-word-concept{text-align:center;background:#edf4ff;flex-direction:column;justify-content:center;align-items:center;gap:7px;min-height:210px;margin:0;padding:18px;display:flex}.course-word-concept>span:first-child,.course-word-concept>small{color:var(--muted);font-size:13px}.course-word-concept strong{font-size:25px;line-height:1.4}.course-word-concept p{margin:0;font-size:18px;line-height:1.8}.course-word-concept svg{width:100%;height:170px}.course-word-concept figcaption{font-size:14px}.concept-arrow{color:var(--mint);font-size:25px}.course-month-map{grid-template-columns:repeat(6,1fr);gap:5px;width:100%;margin:10px 0;display:grid}.course-month-map>span{background:#fff;border-radius:6px;padding:4px;font-size:16px}.course-month-map small{font-size:13px;display:block}.course-month-map .active{background:var(--mint);color:#fff}.course-audio{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.course-audio button{min-height:44px;font-size:14px}.course-audio small{color:var(--muted);font-size:13px}.course-sentence-picker{flex-wrap:wrap;gap:8px;margin:20px 0;display:flex}.course-sentence-picker button{border:1px solid var(--line);background:var(--paper,#f5faf7);min-height:44px;color:var(--muted);cursor:pointer;border-radius:12px;padding:9px 14px}.course-sentence-picker button[aria-pressed=true]{background:var(--mint);color:#fff}.course-sentence-scene{grid-template-columns:1fr 1fr;align-items:start;gap:26px;display:grid}.course-sentence-scene h3{font-size:25px;line-height:1.6}.course-sentence-scene p{font-size:18px;line-height:1.9}.course-keyword{background:#fff5df;border-radius:14px;padding:15px}.course-reading>.course-artwork{max-width:540px;margin:20px auto}.course-reading-text{white-space:pre-line;border:1px solid var(--line);background:#fbfcfa;border-radius:16px;padding:24px;font-size:18px!important;line-height:2!important}.reading-evidence-map{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:0;list-style:none;display:grid}.reading-evidence-map li{border:1px solid var(--line);background:#eff8f3;border-radius:14px;padding:18px;line-height:1.8}.reading-evidence-map strong{color:var(--mint)}.reading-evidence-map p{font-size:18px}.course-word-quiz,.course-quiz-complete{background:var(--paper,#f5faf7);border:1px solid var(--line);border-radius:var(--radius-card,20px);max-width:720px;margin:24px auto;padding:24px}.course-word-quiz h3{font-size:23px;line-height:1.6}.course-word-quiz>p{font-size:18px;line-height:1.9}.course-word-quiz input{border:1px solid #c6dcd5;border-radius:12px;width:100%;min-height:44px;margin:10px 0;padding:13px;font-size:20px;display:block}.course-quiz-options{grid-template-columns:1fr 1fr;gap:12px;margin:22px 0;display:grid}.course-quiz-options button{border:1px solid var(--line);color:var(--ink);cursor:pointer;background:#fff;border-radius:14px;min-height:44px;padding:18px;font-size:18px}.course-quiz-options button[aria-pressed=true]{border-color:var(--mint);background:#e1f0e9}.course-quiz-complete{text-align:center}.course-quiz-complete svg{color:var(--mint);margin:auto}:is(.course-learning-lab button:focus-visible,.course-learning-lab select:focus-visible,.illustrated-topic button:focus-visible){outline:3px solid var(--mint);outline-offset:3px}.lesson-detail-number{width:30px;height:30px;color:var(--mint);background:#e9f8f0;border-radius:9px;place-items:center;margin-right:10px;font-size:13px;display:inline-grid}.course-lessons{font-size:16px}.course-lessons small{font-size:13px}.course-lessons .lesson-detail>summary{min-height:56px;padding:16px}@media (max-width:1000px){.course-word-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.course-topic-layout{grid-template-columns:160px minmax(0,1fr)}.course-topic-focused{grid-template-columns:minmax(0,1fr)}.course-sentence-scene,.course-scene-intro{grid-template-columns:1fr}.course-scene-intro>.course-artwork{max-width:680px}.reading-evidence-map{grid-template-columns:1fr}}.course-sentence-scene.g3-sentence-focus{border:1px solid var(--line);background:var(--white,#fff);border-radius:18px;grid-template-columns:minmax(0,1fr) minmax(0,200px);gap:24px;padding:22px}.g3-sentence-focus[data-has-illustration=false]{grid-template-columns:minmax(0,1fr)}.g3-sentence-focus .course-sentence-content{min-width:0}.g3-sentence-focus h3{margin:12px 0 16px;font-size:30px;line-height:1.5}.course-sentence-reference{min-width:0;max-width:200px}.course-sentence-reference .course-artwork figcaption{padding:8px 10px;font-size:12px}.course-sentence-reference .course-artwork-error{min-height:100px;padding:12px}.course-sentence-scene.g5-sentence-focus{border:1px solid var(--line);background:var(--white,#fff);border-radius:18px;grid-template-columns:minmax(0,1fr) minmax(0,200px);gap:24px;padding:22px}.g5-sentence-focus[data-has-illustration=false]{grid-template-columns:minmax(0,1fr)}.g5-sentence-focus .course-sentence-content{min-width:0}.g5-sentence-focus h3{margin:12px 0 16px;font-size:30px;line-height:1.5}@media (max-width:600px){.course-sentence-scene.g3-sentence-focus{grid-template-columns:minmax(0,1fr);gap:18px;padding:16px}.g3-sentence-focus h3{font-size:27px}.course-sentence-reference{justify-self:end;width:160px;max-width:100%}.course-sentence-scene.g5-sentence-focus{grid-template-columns:minmax(0,1fr);gap:18px;padding:16px}.g5-sentence-focus h3{font-size:27px}.course-learning-lab{border-radius:16px;padding:14px}.course-lab-header{display:block}.course-lab-header h2{font-size:25px}.course-lab-header .course-lab-badge{margin-top:10px}.course-topic-layout{grid-template-columns:1fr}.course-topic-layout>nav{flex-direction:row;padding-bottom:8px;overflow-x:auto}.course-topic-layout>nav button{flex:0 0 160px}.course-word-grid,.lesson-note-grid,.lesson-reasoning-track{grid-template-columns:1fr}.course-lab-tabs button{padding:9px;font-size:14px}.lesson-method-map li{padding:14px 12px}.course-reading-text{padding:15px}.course-quiz-options{grid-template-columns:1fr}.course-lab-unit select{width:100%}.course-geometry svg{min-height:200px}.illustrated-topic{padding:0}.lesson-action-bar{flex-flow:column;align-items:stretch;gap:10px;margin-top:22px;padding:12px;display:flex;position:static}.textbook-body .lesson-action-bar,.course-learning-lab .lesson-action-bar{left:16px;right:16px;bottom:calc(84px + env(safe-area-inset-bottom));max-height:calc(100dvh - 180px);margin:0;position:fixed;overflow-y:auto}.textbook-learning .textbook-body .illustrated-topic,.course-learning-lab .illustrated-topic{padding-bottom:210px}.lesson-action-status{flex:none;min-width:0}.lesson-stage-actions{grid-template-columns:44px 44px minmax(0,1fr);width:100%;display:grid}.lesson-stage-actions .lesson-previous{justify-content:center;padding:0!important}.lesson-previous>span:last-child{display:none}.lesson-stage-actions .lesson-advance{grid-column:3;padding:9px}.lesson-stage-actions .primary-action{grid-column:1/-1;justify-content:center;width:100%}.lesson-stage-actions .lesson-advance:first-child{grid-column:1/-1}.course-learning-focused{padding:0}.course-learning-focused .course-lab-header{padding-bottom:14px}.course-learning-focused .course-lab-header h2{font-size:22px}}.practice-english-actions{flex-direction:column;gap:10px;min-width:140px;display:flex}.word-training-mode{align-items:center;gap:16px;font-weight:700;display:flex}.word-training-mode select{border:1px solid var(--line,#d9e8dc);background:#fff;border-radius:12px;min-width:200px;padding:12px}.word-training{color:#203f47;max-width:1050px;margin:auto;padding:28px}.word-training>header{flex-wrap:wrap;align-items:center;gap:20px;margin-bottom:24px;display:flex}.word-training h1{margin:6px 0;font-size:24px}.word-training>header p{color:#577078;margin:0}.word-training>header>span{margin-left:auto;font-size:14px}.word-training-card{background:#fff;border:1px solid #dce8df;border-radius:24px;max-width:760px;margin:auto;padding:36px;box-shadow:0 8px #e5eddf}.word-training-card h2{font-size:24px}.word-training-eyebrow{color:#10775b;font-size:15px;font-weight:700}.word-training-meaning{font-size:25px;font-weight:700}.word-training-word{letter-spacing:2px;color:#106c54;font-size:38px}.word-training-sentence{font-size:23px;line-height:1.6}.word-training-picture{object-fit:cover;float:right;border-radius:16px;max-width:220px;max-height:150px}.word-training-input{gap:10px;margin:24px 0;font-size:15px;display:grid}.word-training-input input{color:#203f47;border:2px solid #8fb6a4;border-radius:12px;width:100%;padding:16px;font-size:26px}.word-training-actions,.word-training-audio{flex-wrap:wrap;align-items:center;gap:16px;margin:20px 0;display:flex}.word-training-actions>span,.word-training-audio>span{color:#627c76;font-size:14px}.word-training-hints{flex-wrap:wrap;gap:4px;display:flex}.word-training-letters{border:0;flex-wrap:wrap;align-items:center;gap:8px;margin:25px 0;padding:0;display:flex}.word-training-letters legend{margin-bottom:15px;font-size:14px}.word-training-letters input,.word-training-letters>span{text-align:center;width:38px;font-size:28px}.word-training-letters input{background:#f8fcf6;border:2px solid #72a28d;border-radius:9px;height:49px}.word-training-letters>span.word-training-space{width:20px}.word-training-feedback{background:#edf7ef;border-radius:16px;padding:20px}.word-training-feedback.incorrect{background:#fff5df}.word-training-result>strong{color:#9a6506;font-size:26px}.word-training-report{background:#fff;border:1px solid #dce8df;border-radius:20px;margin:20px 0;padding:24px}.word-training-report h2{align-items:center;gap:10px;display:flex}.word-training-report details p{border-top:1px solid #e5ebe3;padding:12px 0}:is(.word-training button:focus-visible,.word-training input:focus-visible){outline-offset:3px;outline:3px solid #137b5d}@media (max-width:650px){.practice-english-actions{flex-flow:wrap;width:100%}.word-training{padding:16px}.word-training>header{gap:12px}.word-training>header>span{margin:0}.word-training-card{padding:22px 18px}.word-training-picture{float:none;max-width:100%}.word-training-letters{gap:5px}.word-training-letters input,.word-training-letters>span{width:30px;font-size:24px}.word-training-mode{flex-wrap:wrap}.word-training-mode select{width:100%;min-width:0}}.english-story-shelf{min-width:0}.story-selector{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin:14px 0;display:flex}.story-selector>span{color:#63776f;font-size:13px}.story-selector label,.comic-controls label,.comic-playbar label{align-items:center;gap:8px;font-size:14px;display:flex}.story-selector select{max-width:100%}.comic-reader{--comic-ink:#28413b;--comic-green:#117b59;color:var(--comic-ink);background:#fffdf7;border:1px solid #e8e3d1;border-radius:24px;padding:24px;box-shadow:0 12px 36px #5e604309}.comic-heading{padding:2px 0 18px}.comic-kicker{letter-spacing:.08em;color:#84602f;font-size:12px;font-weight:700}.comic-heading h2{margin:7px 0;font-size:clamp(25px,3vw,36px);line-height:1.3}.comic-heading p{color:#657168;margin:5px 0;font-size:15px}.comic-heading p[lang=en]{color:#896640;font-size:18px}.comic-controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding-bottom:14px;display:flex}.comic-modes{background:#f2f0e7;border-radius:14px;flex-wrap:wrap;gap:5px;padding:5px;display:flex}.comic-modes button{cursor:pointer;color:#657168;background:0 0;border:0;border-radius:10px;padding:10px 13px;font-size:15px}.comic-modes button[aria-pressed=true]{color:#147553;background:#fff;font-weight:700;box-shadow:0 2px 8px #303d2312}.comic-playbar{border-top:1px solid #ece7da;flex-wrap:wrap;align-items:center;gap:10px;padding:14px 0 20px;display:flex}.comic-playbar>span{color:#60756c;font-size:13px}.comic-panels{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.comic-panel{background:#fff;border:1px solid #e5dfcd;border-radius:18px;transition:border-color .15s;overflow:hidden;box-shadow:0 4px 15px #474e2910}.comic-panel.is-current{border-color:#59997c;box-shadow:0 0 0 2px #59997c26}.comic-panel>img{aspect-ratio:3/2;object-fit:cover;width:100%;height:auto;display:block}.comic-panel-text{padding:17px 18px;position:relative}.comic-panel-number{letter-spacing:.07em;color:#a89576;margin-bottom:6px;font-size:12px;display:block}.comic-line{border-radius:8px;grid-template-columns:auto 1fr auto;align-items:start;gap:5px 9px;padding:8px 0;display:grid}.comic-line.is-current{background:#f1f8f1}.comic-speaker{color:#847156;white-space:nowrap;background:#f0ece3;border-radius:6px;align-self:start;margin-top:3px;padding:4px 6px;font-size:11px}.speaker-ben{color:#24714d;background:#e0efe6}.speaker-mia{color:#93642e;background:#f8ead5}.comic-line p{color:#2b413b;overflow-wrap:anywhere;font-size:clamp(16px,1.6vw,20px);line-height:1.65;margin:0!important}.comic-target{color:#126a4c;font:inherit;cursor:pointer;background:#edf5e8;border:0;border-radius:3px;padding:0 2px;font-weight:700;display:inline}.comic-line-audio{color:#2e7058;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:7px}.comic-line details{color:#67796f;grid-column:2/4;font-size:13px;line-height:1.6}.comic-line summary{cursor:pointer;color:#7b8d7d;font-size:12px}.comic-record,.comic-checks{background:#faf8ec;border:1px solid #e3dfcc;border-radius:16px;margin-top:22px;padding:20px}.comic-record h3,.comic-checks h3{margin:0 0 10px;font-size:19px}.comic-record p[lang=en]{font-size:22px;line-height:1.6}.comic-record>div{flex-wrap:wrap;gap:10px;display:flex}.comic-record small{color:#7a7e6a;margin-top:12px;display:block}.comic-checks fieldset{border:0;margin:16px 0 0;padding:0}.comic-checks legend{margin-bottom:8px;font-weight:600}.comic-checks button{color:#31493f;cursor:pointer;background:#fff;border:1px solid #d9ddce;border-radius:10px;margin:0 8px 8px 0;padding:9px 13px}.comic-checks button[aria-pressed=true]{background:#eaf5e9;border-color:#218263}.comic-checks p{color:#537461;font-size:14px}.comic-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:15px;margin-top:20px;display:flex}.comic-footer>span{color:#667d6d;font-size:13px}.comic-word-note{z-index:2;background:#fff5d5;border:1px solid #ddc477;border-radius:12px;margin-top:15px;padding:14px 20px;position:sticky;bottom:18px;box-shadow:0 5px 20px #5d56362b}.comic-word-note button{float:right;cursor:pointer;background:0 0;border:0;font-size:22px}.comic-mobile-nav{display:none}.comic-image-error{aspect-ratio:3/2;color:#7e7865;background:#f6f3e7;flex-direction:column;justify-content:center;align-items:center;gap:14px;display:flex}:is(.comic-reader button:focus-visible,.comic-reader select:focus-visible){outline-offset:3px;outline:3px solid #d9a928}@media (max-width:650px){.comic-reader{border-radius:18px;padding:14px}.comic-panels{display:block}.comic-panel:not(.is-current){display:none}.comic-mobile-nav{justify-content:space-between;align-items:center;gap:6px;margin-bottom:12px;display:flex}.comic-mobile-nav .ui-button{padding:9px 10px;font-size:13px}.comic-heading{padding-bottom:14px}.comic-heading h2{font-size:25px}.comic-controls{gap:9px}.comic-modes{gap:2px;width:100%;padding:4px}.comic-modes button{white-space:nowrap;flex:1;padding:9px 8px;font-size:13px}.comic-panel-text{padding:13px}.comic-line p{font-size:18px}.comic-record,.comic-checks{padding:15px}.comic-record p[lang=en]{font-size:19px}.comic-record>div .ui-button{padding:10px;font-size:13px}.story-selector{gap:8px}.story-selector label{flex-wrap:wrap;min-width:0}.story-selector select,.comic-footer .ui-button{width:100%}.comic-heading p{font-size:14px}.comic-playbar>span{width:100%}}.comic-reader:not([data-mode=listen]) .comic-learning-layout{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);align-items:start;gap:20px;display:grid}.comic-reader:not([data-mode=listen]) .comic-panels{display:block}.comic-reader:not([data-mode=listen]) .comic-panel:not(.is-current){display:none}.comic-reader:not([data-mode=listen]) .comic-record{margin-top:0}.comic-reader:not([data-mode=listen]) .comic-mobile-nav{justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px;display:flex}@media (max-width:850px){.comic-reader:not([data-mode=listen]) .comic-learning-layout{display:block}.comic-reader:not([data-mode=listen]) .comic-record{margin-top:18px}}@media (prefers-reduced-motion:reduce){.comic-panel{transition:none}}
