@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-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-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,::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]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.m-3{margin:calc(var(--spacing) * 3)}.block{display:block}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.border{border-style:var(--tw-border-style);border-width:1px}.italic{font-style:italic}.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)}.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))}}@font-face{font-display:block;font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(../media/KaTeX_AMS-Regular.0p1vbqd84i2~o.woff2)format("woff2"),url(../media/KaTeX_AMS-Regular.0b~8ki5y928w2.woff)format("woff"),url(../media/KaTeX_AMS-Regular.173t6ktr7uf-w.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(../media/KaTeX_Caligraphic-Bold.01-pzluls4zgb.woff2)format("woff2"),url(../media/KaTeX_Caligraphic-Bold.0x2v1lwn~880f.woff)format("woff"),url(../media/KaTeX_Caligraphic-Bold.16zv5fax0h0ka.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(../media/KaTeX_Caligraphic-Regular.0rysu1t-ncjq8.woff2)format("woff2"),url(../media/KaTeX_Caligraphic-Regular.10927swgekwun.woff)format("woff"),url(../media/KaTeX_Caligraphic-Regular.02i3z7wig438t.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(../media/KaTeX_Fraktur-Bold.0w23i72~hprpq.woff2)format("woff2"),url(../media/KaTeX_Fraktur-Bold.0e-16u10iuyyf.woff)format("woff"),url(../media/KaTeX_Fraktur-Bold.0et27v~3~4uhe.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(../media/KaTeX_Fraktur-Regular.0rekyoa-52fj_.woff2)format("woff2"),url(../media/KaTeX_Fraktur-Regular.0b.riegzdfue2.woff)format("woff"),url(../media/KaTeX_Fraktur-Regular.0vjwa15znhk~4.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(../media/KaTeX_Main-Bold.16pfc63_du6mx.woff2)format("woff2"),url(../media/KaTeX_Main-Bold.09lmynrorhcbw.woff)format("woff"),url(../media/KaTeX_Main-Bold.09i7~607shf-h.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(../media/KaTeX_Main-BoldItalic.0d54rk08rx11s.woff2)format("woff2"),url(../media/KaTeX_Main-BoldItalic.0cp37g7x1q8h6.woff)format("woff"),url(../media/KaTeX_Main-BoldItalic.15j6k~hix2t_0.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(../media/KaTeX_Main-Italic.06o5nq0_91v60.woff2)format("woff2"),url(../media/KaTeX_Main-Italic.0382gqciexmbu.woff)format("woff"),url(../media/KaTeX_Main-Italic.0su4i6mm18-wo.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(../media/KaTeX_Main-Regular.0kaf-ag2_wkm-.woff2)format("woff2"),url(../media/KaTeX_Main-Regular.0diheg01zyoph.woff)format("woff"),url(../media/KaTeX_Main-Regular.08zh8z.7shijf.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(../media/KaTeX_Math-BoldItalic.0ja97dn.cpc87.woff2)format("woff2"),url(../media/KaTeX_Math-BoldItalic.0ck1myuerwyqw.woff)format("woff"),url(../media/KaTeX_Math-BoldItalic.0ajzxypnbx1h1.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(../media/KaTeX_Math-Italic.0zrha2c4sl2je.woff2)format("woff2"),url(../media/KaTeX_Math-Italic.09xkhecjcn5r9.woff)format("woff"),url(../media/KaTeX_Math-Italic.0x23a-bmp-5tg.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:700;src:url(../media/KaTeX_SansSerif-Bold.05a9.pc1j_zx9.woff2)format("woff2"),url(../media/KaTeX_SansSerif-Bold.0jcl-ayi1uun0.woff)format("woff"),url(../media/KaTeX_SansSerif-Bold.0re8y.dm7.mt5.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:italic;font-weight:400;src:url(../media/KaTeX_SansSerif-Italic.0a0234dc3s62j.woff2)format("woff2"),url(../media/KaTeX_SansSerif-Italic.0judofdln9731.woff)format("woff"),url(../media/KaTeX_SansSerif-Italic.10z1iap9pfus8.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:400;src:url(../media/KaTeX_SansSerif-Regular.0v6gcj32-czft.woff2)format("woff2"),url(../media/KaTeX_SansSerif-Regular.0h9yjlugq4q_e.woff)format("woff"),url(../media/KaTeX_SansSerif-Regular.0zm18kga42ebc.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(../media/KaTeX_Script-Regular.0c4.h-mer83d_.woff2)format("woff2"),url(../media/KaTeX_Script-Regular.0ze6v4r_-99oy.woff)format("woff"),url(../media/KaTeX_Script-Regular.0q14y6zkzlpob.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(../media/KaTeX_Size1-Regular.013x6a4ierotp.woff2)format("woff2"),url(../media/KaTeX_Size1-Regular.0kidw0oi.m68o.woff)format("woff"),url(../media/KaTeX_Size1-Regular.0m6y-i6wfokni.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(../media/KaTeX_Size2-Regular.0d5inmyp-tyv3.woff2)format("woff2"),url(../media/KaTeX_Size2-Regular.0blpmluwilgbg.woff)format("woff"),url(../media/KaTeX_Size2-Regular.0wnhnvj-.k9d5.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(../media/KaTeX_Size3-Regular.0iukctyhw5j56.woff2)format("woff2"),url(../media/KaTeX_Size3-Regular.01h0xm_sfctj3.woff)format("woff"),url(../media/KaTeX_Size3-Regular.0jl8mqyf4gzpn.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(../media/KaTeX_Size4-Regular.0w3.rb_c4stzk.woff2)format("woff2"),url(../media/KaTeX_Size4-Regular.12tvaesf3.zl3.woff)format("woff"),url(../media/KaTeX_Size4-Regular.0wr_9l81-mu06.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(../media/KaTeX_Typewriter-Regular.0c4zdxz~8frhm.woff2)format("woff2"),url(../media/KaTeX_Typewriter-Regular.0cgrzn5l3kao5.woff)format("woff"),url(../media/KaTeX_Typewriter-Regular.128~qc3858otl.ttf)format("truetype")}.katex{text-indent:0;text-rendering:auto;font:1.21em/1.2 KaTeX_Main,Times New Roman,serif;position:relative}.katex *{border-color:currentColor;-ms-high-contrast-adjust:none!important}.katex .katex-version:after{content:"0.18.4"}.katex .katex-mathml{clip-path:inset(50%);border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.katex .katex-html>.katex-newline{display:block}.katex .katex-base{white-space:nowrap;width:min-content;position:relative}.katex .katex-base,.katex .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 .katex-vbox{flex-direction:column;align-items:baseline;display:inline-flex}.katex .katex-thinbox{flex-direction:row;width:0;max-width:0;display:inline-flex}.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 .katex-hdashline,.katex .katex-hline,.katex .katex-overline .overline-line,.katex .katex-rule,.katex .katex-underline .underline-line,.katex .mfrac .frac-line{min-height:1px}.katex .mspace{display:inline-block}.katex .katex-smash{line-height:0;display:inline}.katex .clap,.katex .llap,.katex .rlap{width:0;position:relative}.katex .clap>.katex-inner,.katex .llap>.katex-inner,.katex .rlap>.katex-inner{position:absolute}.katex .clap>.katex-fix,.katex .llap>.katex-fix,.katex .rlap>.katex-fix{display:inline-block}.katex .llap>.katex-inner{right:0}.katex .clap>.katex-inner,.katex .rlap>.katex-inner{left:0}.katex .clap>.katex-inner>span{margin-left:-50%;margin-right:50%}.katex .katex-rule{border:0 solid;display:inline-block;position:relative}.katex .katex-hline,.katex .katex-overline .overline-line,.katex .katex-underline .underline-line{border-bottom-style:solid;width:100%;display:inline-block}.katex .katex-hdashline{border-bottom-style:dashed;width:100%;display:inline-block}.katex .sqrt>.katex-root{margin-left:.277778em;margin-right:-.555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .katex-sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .katex-sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .katex-sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .katex-sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .katex-sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .katex-sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .katex-sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .katex-sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .katex-sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .katex-sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .katex-sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .katex-sizing.reset-size2.size1{font-size:.833333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .katex-sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .katex-sizing.reset-size2.size3{font-size:1.16667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .katex-sizing.reset-size2.size4{font-size:1.33333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .katex-sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .katex-sizing.reset-size2.size6{font-size:1.66667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .katex-sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .katex-sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .katex-sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .katex-sizing.reset-size2.size10{font-size:3.45667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .katex-sizing.reset-size2.size11{font-size:4.14667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .katex-sizing.reset-size3.size1{font-size:.714286em}.katex .fontsize-ensurer.reset-size3.size2,.katex .katex-sizing.reset-size3.size2{font-size:.857143em}.katex .fontsize-ensurer.reset-size3.size3,.katex .katex-sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .katex-sizing.reset-size3.size4{font-size:1.14286em}.katex .fontsize-ensurer.reset-size3.size5,.katex .katex-sizing.reset-size3.size5{font-size:1.28571em}.katex .fontsize-ensurer.reset-size3.size6,.katex .katex-sizing.reset-size3.size6{font-size:1.42857em}.katex .fontsize-ensurer.reset-size3.size7,.katex .katex-sizing.reset-size3.size7{font-size:1.71429em}.katex .fontsize-ensurer.reset-size3.size8,.katex .katex-sizing.reset-size3.size8{font-size:2.05714em}.katex .fontsize-ensurer.reset-size3.size9,.katex .katex-sizing.reset-size3.size9{font-size:2.46857em}.katex .fontsize-ensurer.reset-size3.size10,.katex .katex-sizing.reset-size3.size10{font-size:2.96286em}.katex .fontsize-ensurer.reset-size3.size11,.katex .katex-sizing.reset-size3.size11{font-size:3.55429em}.katex .fontsize-ensurer.reset-size4.size1,.katex .katex-sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .katex-sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .katex-sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .katex-sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .katex-sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .katex-sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .katex-sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .katex-sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .katex-sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .katex-sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .katex-sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .katex-sizing.reset-size5.size1{font-size:.555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .katex-sizing.reset-size5.size2{font-size:.666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .katex-sizing.reset-size5.size3{font-size:.777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .katex-sizing.reset-size5.size4{font-size:.888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .katex-sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .katex-sizing.reset-size5.size6{font-size:1.11111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .katex-sizing.reset-size5.size7{font-size:1.33333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .katex-sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .katex-sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .katex-sizing.reset-size5.size10{font-size:2.30444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .katex-sizing.reset-size5.size11{font-size:2.76444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .katex-sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .katex-sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .katex-sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .katex-sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .katex-sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .katex-sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .katex-sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .katex-sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .katex-sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .katex-sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .katex-sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .katex-sizing.reset-size7.size1{font-size:.416667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .katex-sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .katex-sizing.reset-size7.size3{font-size:.583333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .katex-sizing.reset-size7.size4{font-size:.666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .katex-sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .katex-sizing.reset-size7.size6{font-size:.833333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .katex-sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .katex-sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .katex-sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .katex-sizing.reset-size7.size10{font-size:1.72833em}.katex .fontsize-ensurer.reset-size7.size11,.katex .katex-sizing.reset-size7.size11{font-size:2.07333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .katex-sizing.reset-size8.size1{font-size:.347222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .katex-sizing.reset-size8.size2{font-size:.416667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .katex-sizing.reset-size8.size3{font-size:.486111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .katex-sizing.reset-size8.size4{font-size:.555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .katex-sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .katex-sizing.reset-size8.size6{font-size:.694444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .katex-sizing.reset-size8.size7{font-size:.833333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .katex-sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .katex-sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .katex-sizing.reset-size8.size10{font-size:1.44028em}.katex .fontsize-ensurer.reset-size8.size11,.katex .katex-sizing.reset-size8.size11{font-size:1.72778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .katex-sizing.reset-size9.size1{font-size:.289352em}.katex .fontsize-ensurer.reset-size9.size2,.katex .katex-sizing.reset-size9.size2{font-size:.347222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .katex-sizing.reset-size9.size3{font-size:.405093em}.katex .fontsize-ensurer.reset-size9.size4,.katex .katex-sizing.reset-size9.size4{font-size:.462963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .katex-sizing.reset-size9.size5{font-size:.520833em}.katex .fontsize-ensurer.reset-size9.size6,.katex .katex-sizing.reset-size9.size6{font-size:.578704em}.katex .fontsize-ensurer.reset-size9.size7,.katex .katex-sizing.reset-size9.size7{font-size:.694444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .katex-sizing.reset-size9.size8{font-size:.833333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .katex-sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .katex-sizing.reset-size9.size10{font-size:1.20023em}.katex .fontsize-ensurer.reset-size9.size11,.katex .katex-sizing.reset-size9.size11{font-size:1.43981em}.katex .fontsize-ensurer.reset-size10.size1,.katex .katex-sizing.reset-size10.size1{font-size:.24108em}.katex .fontsize-ensurer.reset-size10.size2,.katex .katex-sizing.reset-size10.size2{font-size:.289296em}.katex .fontsize-ensurer.reset-size10.size3,.katex .katex-sizing.reset-size10.size3{font-size:.337512em}.katex .fontsize-ensurer.reset-size10.size4,.katex .katex-sizing.reset-size10.size4{font-size:.385728em}.katex .fontsize-ensurer.reset-size10.size5,.katex .katex-sizing.reset-size10.size5{font-size:.433944em}.katex .fontsize-ensurer.reset-size10.size6,.katex .katex-sizing.reset-size10.size6{font-size:.48216em}.katex .fontsize-ensurer.reset-size10.size7,.katex .katex-sizing.reset-size10.size7{font-size:.578592em}.katex .fontsize-ensurer.reset-size10.size8,.katex .katex-sizing.reset-size10.size8{font-size:.694311em}.katex .fontsize-ensurer.reset-size10.size9,.katex .katex-sizing.reset-size10.size9{font-size:.833173em}.katex .fontsize-ensurer.reset-size10.size10,.katex .katex-sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .katex-sizing.reset-size10.size11{font-size:1.19961em}.katex .fontsize-ensurer.reset-size11.size1,.katex .katex-sizing.reset-size11.size1{font-size:.200965em}.katex .fontsize-ensurer.reset-size11.size2,.katex .katex-sizing.reset-size11.size2{font-size:.241158em}.katex .fontsize-ensurer.reset-size11.size3,.katex .katex-sizing.reset-size11.size3{font-size:.281351em}.katex .fontsize-ensurer.reset-size11.size4,.katex .katex-sizing.reset-size11.size4{font-size:.321543em}.katex .fontsize-ensurer.reset-size11.size5,.katex .katex-sizing.reset-size11.size5{font-size:.361736em}.katex .fontsize-ensurer.reset-size11.size6,.katex .katex-sizing.reset-size11.size6{font-size:.401929em}.katex .fontsize-ensurer.reset-size11.size7,.katex .katex-sizing.reset-size11.size7{font-size:.482315em}.katex .fontsize-ensurer.reset-size11.size8,.katex .katex-sizing.reset-size11.size8{font-size:.578778em}.katex .fontsize-ensurer.reset-size11.size9,.katex .katex-sizing.reset-size11.size9{font-size:.694534em}.katex .fontsize-ensurer.reset-size11.size10,.katex .katex-sizing.reset-size11.size10{font-size:.833601em}.katex .fontsize-ensurer.reset-size11.size11,.katex .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 .katex-accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .katex-accent .accent-body{position:relative}.katex .katex-accent .accent-body:not(.accent-full){width:0}.katex .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;height:inherit;width:100%;display:block;position:absolute}.katex svg path{stroke:none}.katex svg{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}.katex img{border-style:none;min-width:0;max-width:none;min-height:0;max-height:none}.katex .katex-stretchy{width:100%;display:block;position:relative;overflow:hidden}.katex .katex-stretchy:after,.katex .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 .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>.katex-tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.katex-tag{left:0;right:auto}.katex-display.fleqn>.katex{text-align:left;padding-left:2em}body{counter-reset:katexEqnNo mmlEqnNo}.math-text{white-space:pre-wrap}.math-text.block{display:block}.math-formula{vertical-align:-.12em;max-width:100%;display:inline-block}.math-formula.display{margin:.55em 0;display:block;overflow:auto hidden}.math-fallback{color:#243a31;font-family:Cambria Math,Times New Roman,serif}.question-figure{object-fit:contain;border-radius:6px;width:auto;max-width:min(100%,420px);max-height:340px;margin:14px 0;display:block}.question-figure.inline{vertical-align:middle;border-radius:0;max-width:24px;max-height:24px;margin:0 .08em;display:inline-block}.question-data-table{border-collapse:collapse;white-space:normal;width:auto;max-width:100%;margin:12px 0;font-size:.96em}.question-data-table td{text-align:center;vertical-align:middle;border:1px solid #9eaaa4;min-width:92px;padding:7px 14px}.question-data-table tr td:first-child{text-align:left}.question-option-grid{white-space:normal;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:9px 16px;margin:14px 0 4px;display:grid}.question-option{background:#fbfdfc;border:1px solid #dfe7e2;border-radius:9px;align-items:flex-start;gap:9px;min-width:0;padding:9px 12px;line-height:1.55;display:flex}.question-option-label{color:#315f4a;background:#edf4f0;border-radius:7px;flex:0 0 24px;place-items:center;width:24px;height:24px;font-size:.82em;font-weight:700;display:grid}.question-option>.math-text{min-width:0}.katex{font-size:1.04em}.student-answer-render{gap:4px;min-width:0;max-width:100%;display:grid;overflow:hidden}.student-answer-render>.math-text{min-width:0;display:block}.student-answer-render .math-formula.display{max-width:100%;margin:2px 0;overflow:auto hidden}.student-answer-render .katex-display{text-align:left;margin:0}.student-answer-render .katex-display>.katex{text-align:left;white-space:nowrap;display:inline-block}.mistake-figure{contain:layout paint;isolation:isolate}.mistake-figure canvas{object-fit:contain;max-height:280px!important}.match-error{background:#fff1ee;border-radius:8px;padding:10px 12px;line-height:1.6;color:#ad4e3e!important;margin:12px 0 0!important;font-size:11px!important}:root{--ink:#1f2925;--muted:#75807a;--green:#286b51;--deep:#154a38;--cream:#f5f7f3;--line:#e2e8e3;--gold:#e4a936;--coral:#df745f}.practice-preview>.match-reason{color:#3f6955;background:#edf5f1;border-radius:7px;margin:8px 0 0;padding:7px 9px;font-size:9px;line-height:1.6}*{box-sizing:border-box}html,body{background:var(--cream);color:var(--ink);margin:0;font-family:Microsoft YaHei,PingFang SC,system-ui,sans-serif}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.55}.app-shell{grid-template-columns:238px 1fr;min-height:100vh;display:grid}.sidebar{border-right:1px solid var(--line);z-index:10;background:#fff;flex-direction:column;width:238px;padding:28px 18px 20px;display:flex;position:fixed;inset:0 auto 0 0}.brand{align-items:center;gap:12px;padding:0 10px 28px;display:flex}.brand-mark{color:#fff;background:var(--green);border-radius:13px 13px 13px 4px;place-items:center;width:40px;height:40px;font:700 19px Georgia,serif;display:grid;box-shadow:0 6px 16px #2e72572f}.brand-mark.large{width:54px;height:54px;font-size:25px}.brand b,.brand small{display:block}.brand small{color:#98a19c;margin-top:2px;font-size:10px}.sidebar nav{flex-direction:column;gap:5px;display:flex}.sidebar nav button{color:#66706b;text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:13px;height:46px;padding:0 14px;font-size:14px;display:flex;position:relative}.sidebar nav button>span{text-align:center;color:#8a948f;width:18px;font-size:18px}.sidebar nav button:hover{color:var(--deep);background:#f3f6f4}.sidebar nav button.active{color:var(--deep);background:#e9f2ed;font-weight:700}.sidebar nav button.active:before{content:"";background:var(--green);border-radius:0 3px 3px 0;width:3px;height:22px;position:absolute;left:-18px}.sidebar nav em{background:var(--coral);color:#fff;border-radius:20px;margin-left:auto;padding:1px 7px;font-size:11px;font-style:normal}.side-card{background:linear-gradient(145deg,#edf6f0,#f8fbf9);border:1px solid #dcebe2;border-radius:15px;margin-top:auto;padding:18px}.side-card b,.side-card strong,.side-card small{display:block}.side-card b{color:#5f6c65;font-size:12px}.side-card strong{color:var(--green);margin:8px 0 4px;font:700 28px Georgia,serif}.side-card small{color:#89948e;font-size:10px;line-height:1.7}main{grid-column:2;min-width:0}.topbar{border-bottom:1px solid var(--line);z-index:5;background:#fff;justify-content:space-between;align-items:center;height:76px;padding:0 42px;display:flex;position:sticky;top:0}.topbar>div:first-child b,.topbar>div:first-child small{display:block}.topbar>div:first-child small{color:#9aa39e;margin-top:3px;font-size:10px}.student{align-items:center;gap:10px;display:flex}.student>span{width:36px;height:36px;color:var(--deep);background:#dcebe3;border-radius:50%;place-items:center;font-weight:700;display:grid}.student b,.student small{font-size:12px;display:block}.student small{color:#98a19c;margin-top:2px;font-size:10px}.student a,.student button{color:#7f8a84;background:0 0;border:0;margin-left:10px;padding:0;font-size:11px;text-decoration:none}.content{max-width:1200px;margin:auto;padding:38px 42px 70px}.welcome,.page-head,.practice-head{justify-content:space-between;align-items:center;gap:20px;margin-bottom:25px;display:flex}.welcome small{color:#99a19d;font-size:11px}.welcome h1,.page-head h1,.panel h1{letter-spacing:.5px;margin:7px 0;font-family:Georgia,Songti SC,serif;font-size:27px}.welcome p,.page-head p,.panel-head p{color:var(--muted);margin:0;font-size:13px;line-height:1.7}.primary{background:var(--green);color:#fff;border:0;border-radius:9px;padding:11px 18px;font-size:12px;font-weight:700}.primary:hover{background:var(--deep)}.primary.wide{width:100%;height:48px;margin-top:20px;display:block}.ghost{border:1px solid var(--line);color:#68736d;background:#fff;border-radius:9px;padding:10px 16px}.hero-grid{grid-template-columns:1.25fr 1fr;gap:16px;display:grid}.hero-card{color:#fff;background:linear-gradient(125deg,#15543f,#31785b);border-radius:20px;min-height:210px;padding:30px;position:relative;overflow:hidden;box-shadow:0 12px 30px #194f3e20}.hero-card:after{content:"";border:1px solid #ffffff18;border-radius:50%;width:210px;height:210px;position:absolute;top:-75px;right:-60px;box-shadow:0 0 0 40px #ffffff08,0 0 0 80px #ffffff05}.hero-card.light{color:var(--ink);border:1px solid var(--line);box-shadow:none;background:#fff}.hero-card>span{color:#aad2bc;letter-spacing:2px;font:700 11px Georgia}.hero-card.light>span{color:var(--green)}.hero-card h2{margin:18px 0 10px;font:700 22px Georgia,Songti SC,serif}.hero-card p{color:#d7e8df;max-width:520px;font-size:12px;line-height:1.8}.hero-card.light p{color:var(--muted)}.hero-card button{color:inherit;z-index:1;background:0 0;border:0;padding:0;font-size:12px;font-weight:700;position:absolute;bottom:26px;left:30px}.stats{grid-template-columns:repeat(4,1fr);gap:14px;margin-top:20px;display:grid}.stats article{border:1px solid var(--line);background:#fff;border-radius:14px;padding:20px}.stats small,.stats b,.stats em{display:block}.stats small{color:#8d9792;font-size:10px}.stats b{margin:7px 0;font:700 25px Georgia,serif}.stats em{color:#9da59f;font-size:9px;font-style:normal}.panel{border:1px solid var(--line);background:#fff;border-radius:20px;max-width:760px;margin:0 auto;padding:34px}.panel-head,.page-head>div{position:relative}.step{width:30px;height:30px;color:var(--green);background:#e8f3ed;border-radius:9px;place-items:center;margin-bottom:8px;font:700 12px Georgia;display:inline-grid}.upload-box{cursor:pointer;text-align:center;background:#f8fbf9;border:1.5px dashed #a9c6b7;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;height:260px;margin-top:26px;transition:all .2s;display:flex}.upload-box:hover,.upload-box.has-file{border-color:var(--green);background:#f0f7f3}.upload-box input{display:none}.upload-box>span{width:48px;height:48px;color:var(--green);background:#fff;border-radius:14px;place-items:center;font-size:22px;display:grid;box-shadow:0 8px 20px #183d2d10}.upload-box b{margin:14px 0 6px;font-size:14px}.upload-box small{color:#95a09a;font-size:10px}.privacy-note{background:#f5f9f6;border-left:3px solid #7caf92;margin-top:18px;padding:13px 16px}.privacy-note b{font-size:11px}.privacy-note p{color:#748179;margin:4px 0 0;font-size:10px;line-height:1.6}.review-list,.practice-list{flex-direction:column;gap:16px;display:flex}.review-card{border:1px solid var(--line);background:#fff;border-radius:16px;grid-template-columns:46px 1fr;padding:22px;display:grid}.review-num{width:34px;height:34px;color:var(--green);background:#edf5f0;border-radius:10px;place-items:center;font:700 14px Georgia;display:grid}.tags{flex-wrap:wrap;gap:7px;display:flex}.tags span{color:#4d6a5c;background:#eff5f1;border-radius:5px;padding:4px 7px;font-size:9px}.review-main h2{white-space:pre-wrap;margin:12px 0;font-size:14px;line-height:1.8}.review-main>p{color:#65706a;font-size:12px}.review-main details,.practice-group details{background:#f8faf8;border-radius:10px;margin-top:10px;padding:12px 14px}.review-main summary,.practice-group summary{cursor:pointer;color:var(--green);font-size:11px;font-weight:700}.review-main details div,.practice-group details p{white-space:pre-wrap;color:#59665f;font-size:12px;line-height:1.8}.card-actions{justify-content:flex-end;gap:10px;margin-top:17px;display:flex}.empty{color:#98a39d;background:#fff;border:1px dashed #cfd9d3;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;height:250px;display:flex}.empty span{color:#75a48b;font-size:28px}.empty p{font-size:12px}.review-workspace{grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr);align-items:start;gap:18px;display:grid}.review-sheet-pane{background:#e9eeeb;border:1px solid #d9e1dc;border-radius:16px;max-height:calc(100vh - 120px);padding:12px;position:sticky;top:98px;overflow:auto}.sheet-preview{gap:12px;display:grid}.sheet-canvas{background:#fff;position:relative;box-shadow:0 6px 24px #233c3120}.sheet-canvas img,.sheet-canvas canvas{width:100%;height:auto;display:block}.sheet-annotations{pointer-events:none;position:absolute;inset:0}.sheet-mark{border:2px solid;border-radius:6px;position:absolute}.sheet-mark.correct{background:#25845f0a;border-color:#25845f66}.sheet-mark.wrong{background:#c9473d0c;border-color:#c9473d88}.sheet-mark>span{background:#fff;border-radius:50%;place-items:center;width:28px;height:28px;font:800 24px/1 Georgia;display:grid;position:absolute;top:2px;right:2px;box-shadow:0 2px 8px #243b3133}.sheet-mark.correct>span{color:#25845f}.sheet-mark.wrong>span{color:#c9473d}.sheet-mark small{color:#a43e36;white-space:normal;background:#fff;border:1px solid #ecc3bf;border-radius:5px;max-width:210px;padding:4px 6px;font-size:9px;line-height:1.45;position:absolute;top:34px;right:2px}.sheet-source-fallback{color:#7a8780;background:#fff;border-radius:12px;place-items:center;min-height:160px;padding:24px;font-size:11px;display:grid}.recognized-list{gap:12px;display:grid}.recognized-card{border:1px solid var(--line);background:#fff;border-radius:16px;min-width:0;padding:18px}.recognized-card>header{align-items:center;gap:10px;display:flex}.recognized-card>header b,.recognized-card>header small{display:block}.recognized-card>header b{font-size:12px}.recognized-card>header small{color:#8a958f;margin-top:3px;font-size:9px}.result-mark{color:#25845f;background:#edf7f1;border-radius:50%;place-items:center;width:31px;height:31px;font:800 22px Georgia;display:grid}.recognized-card h2{margin:13px 0;font-size:13px;line-height:1.75}.recognized-card>p{color:#5e6a64;margin:5px 0;font-size:11px;line-height:1.7}.correct-note{color:#37775a;background:#edf7f1;border-radius:8px;margin-top:12px;padding:9px 11px;font-size:10px}.question-controls{grid-template-columns:1fr 1fr;gap:8px;margin-top:13px;display:grid}.question-controls label{color:#6c7771;gap:5px;font-size:9px;display:grid}.question-controls select,.inline-filters select{color:#405149;background:#fff;border:1px solid #d8e2dc;border-radius:7px;height:34px;padding:0 8px;font-size:10px}.practice-preview{background:#f6f9f7;border-radius:10px;margin-top:10px;padding:12px}.practice-preview>header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.practice-preview>header b{color:var(--green);font-size:10px}.practice-preview button,.inline-filters button{color:var(--green);background:#fff;border:1px solid #cbded3;border-radius:7px;padding:6px 9px;font-size:9px}.practice-preview>.math-text{font-size:11px;line-height:1.7}.practice-preview>small,.practice-preview>em{color:#89948e;margin-top:7px;font-size:8px;display:block}.practice-preview>em{color:#68766e;font-style:normal}.inline-filters{align-items:center;gap:6px;margin-left:auto;display:flex}.source-label{margin-top:5px;font-style:normal;display:block;color:#7c8982!important;font-size:9px!important}.export-actions{gap:9px;display:flex}.export-actions button{border:1px solid var(--line);background:#fff;border-radius:9px;padding:10px 15px;font-size:11px}.export-actions .primary{background:var(--green);border-color:var(--green)}.practice-group{border:1px solid var(--line);background:#fff;border-radius:16px;overflow:hidden}.practice-group>header{background:#eff5f1;align-items:center;gap:12px;padding:15px 20px;display:flex}.practice-group>header>span{color:var(--green);border:1px solid #bcd2c6;border-radius:5px;padding:3px 6px;font-size:9px}.practice-group>header>b{font-size:11px;line-height:1.8}.practice-group>article{border-top:1px solid var(--line);padding:18px 20px;position:relative}.practice-group article>label{cursor:pointer;grid-template-columns:20px 30px 1fr;align-items:flex-start;gap:10px;display:grid}.practice-group input{accent-color:var(--green);margin-top:5px}.choice-index{width:25px;height:25px;color:var(--green);background:#eef4f0;border-radius:8px;place-items:center;font:700 11px Georgia;display:grid}.practice-group h3{white-space:pre-wrap;margin:0;font-size:13px;line-height:1.8}.practice-group label p{color:#758079;margin:7px 0 4px;font-size:10px}.practice-group label small{color:#9ca59f;font-size:9px}.practice-group details{margin-left:60px;margin-right:110px}.done{color:var(--green);background:#edf6f1;border:1px solid #cfe0d7;border-radius:7px;padding:7px 10px;font-size:9px;position:absolute;bottom:18px;right:20px}.taxonomy{flex-direction:column;gap:12px;display:flex}.taxonomy details{border:1px solid var(--line);background:#fff;border-radius:14px;overflow:hidden}.taxonomy summary{cursor:pointer;align-items:center;gap:12px;padding:16px 18px;list-style:none;display:flex}.taxonomy summary::-webkit-details-marker{display:none}.taxonomy summary:before{content:"›";color:#8fa098;transition:all .2s}.taxonomy details[open]>summary:before{transform:rotate(90deg)}.taxonomy summary>b,.taxonomy summary>div{font-size:13px}.taxonomy summary>div b,.taxonomy summary>div small{display:block}.taxonomy summary>div small{color:#929e98;margin-top:3px;font-size:9px}.taxonomy-level{flex-direction:column;gap:9px;padding:0 14px 14px 42px;display:flex}.taxonomy-level .taxonomy-level{padding-left:34px}.level-badge{color:#397158;background:#dff0e6;border-radius:5px;padding:4px 6px;font-size:8px}.level-badge.l2{color:#5b6f98;background:#e9eef8}.level-badge.l3{color:#766393;background:#f2ebfa}.level-badge.l4{color:#9b6b35;background:#fff0df}.stars{align-items:center;gap:2px;margin-left:auto;display:flex}.stars i{color:#dfe4e1;font-size:11px;font-style:normal}.stars small{color:#8c9791;margin-left:6px;font-size:9px}.leaf-list{padding:0 16px 14px 48px}.leaf{border-top:1px dashed #e5eae6;align-items:center;gap:11px;padding:12px 8px;display:flex}.leaf>div b,.leaf>div small{display:block}.leaf>div b{font-size:11px}.leaf>div small{color:#96a09b;margin-top:3px;font-size:8px}.toast{color:#fff;z-index:50;background:#173e32;border-radius:10px;max-width:420px;padding:13px 18px;font-size:12px;position:fixed;bottom:28px;right:28px;box-shadow:0 12px 35px #173e3245}.signin-page{background:#fff;grid-template-columns:1.08fr .92fr;min-height:100vh;display:grid}.signin-card{flex-direction:column;justify-content:center;align-items:flex-start;padding:54px clamp(40px,9vw,140px);display:flex}.signin-card .eyebrow{letter-spacing:3px;color:var(--green);margin:22px 0 0;font-size:10px;font-weight:700}.signin-card h1{margin:8px 0 14px;font:700 clamp(34px,4vw,58px)/1.22 Georgia,Songti SC,serif}.signin-card>p:not(.eyebrow):not(.auth-error){max-width:540px;color:var(--muted);margin:0;font-size:13px;line-height:1.8}.auth-tabs{border-bottom:1px solid var(--line);gap:24px;width:min(100%,420px);margin-top:28px;display:flex}.auth-tabs button{color:#8b9690;background:0 0;border:0;padding:10px 2px;font-size:13px;position:relative}.auth-tabs button.active{color:var(--deep);font-weight:700}.auth-tabs button.active:after{content:"";background:var(--green);border-radius:2px;height:2px;position:absolute;bottom:-1px;left:0;right:0}.auth-form{gap:13px;width:min(100%,420px);margin-top:20px;display:grid}.auth-form label{color:#59665f;gap:6px;font-size:11px;font-weight:700;display:grid}.auth-form input,.auth-form select{width:100%;height:43px;color:var(--ink);background:#fbfcfb;border:1px solid #d9e2dc;border-radius:9px;outline:none;padding:0 12px}.auth-form input:focus,.auth-form select:focus{border-color:#75a78e;box-shadow:0 0 0 3px #e6f1eb}.auth-form input:disabled{color:#7d8882;background:#f2f4f2}.security-question{color:var(--deep);background:#edf5f1;border-radius:9px;margin:0;padding:11px 13px;font-size:12px;line-height:1.7}.auth-error{background:#fff1ee;border-radius:8px;width:min(100%,420px);padding:9px 11px;color:#b34f3f!important;margin:0!important;font-size:11px!important;line-height:1.5!important}.signin-button{background:var(--green);color:#fff;border:0;border-radius:10px;width:100%;height:45px;margin-top:3px;padding:0 20px;font-size:13px;font-weight:700}.signin-button:hover{background:var(--deep)}.forgot{color:var(--green);background:0 0;border:0;margin-top:14px;padding:0;font-size:11px}.signin-card>.auth-note{color:#9ca49f;margin-top:12px;font-size:10px}.signin-visual{color:#fff;background:linear-gradient(145deg,#174d3b,#347a5e);justify-content:center;align-items:center;padding:8vw;display:flex}.signin-visual>div{background:#ffffff0a;border:1px solid #ffffff28;border-radius:24px;padding:42px;box-shadow:0 30px 80px #102d2255}.signin-visual b,.signin-visual strong{display:block}.signin-visual b{color:#c8e2d4;font-size:13px}.signin-visual strong{margin:16px 0;font:700 48px Georgia}.signin-visual p{color:#d1e4da;font-size:12px;line-height:1.8}@media (max-width:900px){.app-shell{grid-template-columns:82px 1fr}.sidebar{width:82px;padding:25px 10px}.brand{padding:0 11px 26px}.brand>span:last-child,.side-card{display:none}.sidebar nav button{justify-content:center;padding:0;font-size:0}.sidebar nav button>span{font-size:18px}.sidebar nav button.active:before{left:-10px}main{grid-column:2}.stats{grid-template-columns:repeat(2,1fr)}.signin-page{grid-template-columns:1fr}.signin-visual{display:none}}@media (max-width:1050px){.review-workspace{grid-template-columns:1fr}.review-sheet-pane{max-height:none;position:static}.inline-filters{width:100%;margin:8px 0 0}.practice-group>header{flex-wrap:wrap}}@media (max-width:680px){.app-shell{display:block}.sidebar{z-index:20;flex-direction:row;width:auto;height:68px;padding:7px;inset:auto 0 0}.brand,.side-card{display:none}.sidebar nav{flex-direction:row;justify-content:space-around;width:100%}.sidebar nav button{width:54px;height:54px}.sidebar nav button.active:before{width:22px;height:3px;top:-7px;left:50%;transform:translate(-50%)}main{display:block}.topbar{height:62px;padding:0 16px}.content{padding:24px 16px 92px}.hero-grid,.stats{grid-template-columns:1fr}.welcome,.page-head{align-items:flex-start}.welcome h1,.page-head h1{font-size:22px}.welcome>.primary{display:none}.panel{padding:24px 18px}.upload-box{height:220px}.review-card{grid-template-columns:1fr}.review-num{margin-bottom:10px}.card-actions{flex-direction:column}.practice-head{display:block}.export-actions{margin-top:14px}.practice-group details{margin-left:0;margin-right:0}.done{margin:10px 0 0 60px;position:static}.taxonomy-level,.taxonomy-level .taxonomy-level,.leaf-list{padding-left:14px}.stars i{font-size:9px}.signin-card{justify-content:flex-start;padding:34px 8vw}.signin-card h1{font-size:36px}.auth-tabs{margin-top:22px}.toast{bottom:82px;left:16px;right:16px}.question-controls{grid-template-columns:1fr}.inline-filters{grid-template-columns:1fr 1fr;display:grid}.inline-filters button{grid-column:1/-1}.recognized-card{padding:14px}.sheet-mark small{max-width:140px}}.portal-switch{background:#f4f7f5;border:1px solid #dce6e0;border-radius:12px;grid-template-columns:1fr 1fr;width:min(100%,420px);margin-bottom:26px;padding:4px;display:grid}.portal-switch a,.portal-switch span{color:#748078;border-radius:8px;justify-content:center;align-items:center;min-height:38px;font-size:12px;font-weight:700;text-decoration:none;display:flex}.portal-switch a:hover{color:var(--deep);background:#eaf1ed}.portal-switch .active{color:#fff;background:var(--green);box-shadow:0 4px 12px #1f61472b}.admin-recover-link{color:var(--green);margin-top:12px;font-size:11px;text-decoration:none}.admin-auth-page{background:#fff;grid-template-columns:1fr .82fr;min-height:100vh;display:grid}.admin-auth-card{flex-direction:column;justify-content:center;align-items:flex-start;padding:50px clamp(38px,8vw,120px);display:flex}.admin-auth-card .eyebrow{letter-spacing:3px;color:var(--green);margin:20px 0 0;font-size:10px;font-weight:700}.admin-auth-card h1{margin:8px 0 12px;font:700 clamp(30px,3.5vw,48px) Georgia,Songti SC,serif}.admin-auth-card>p{max-width:560px;color:var(--muted);margin:0;font-size:12px;line-height:1.8}.admin-auth-hint,.admin-auth-warning{border-radius:9px;width:min(100%,420px);margin-top:16px;padding:10px 12px;font-size:10px;line-height:1.6}.admin-auth-hint{color:#476555;background:#edf5f1}.admin-auth-warning{color:#a35544;background:#fff2ed}.admin-auth-visual{color:#fff;background:linear-gradient(145deg,#173d31,#25634c);justify-content:center;align-items:center;padding:7vw;display:flex}.admin-auth-visual>div{background:#ffffff0a;border:1px solid #ffffff2b;border-radius:24px;padding:40px}.admin-auth-visual small,.admin-auth-visual strong{display:block}.admin-auth-visual small{color:#bbdacb;letter-spacing:3px}.admin-auth-visual strong{margin:16px 0;font:700 34px Georgia,Songti SC,serif}.admin-auth-visual p{color:#cee1d7;font-size:12px;line-height:1.8}.admin-shell{background:#f3f6f3;grid-template-columns:220px 1fr;min-height:100vh;display:grid}.admin-sidebar{color:#fff;z-index:10;background:#173d31;flex-direction:column;width:220px;padding:27px 17px;display:flex;position:fixed;inset:0 auto 0 0}.admin-sidebar .brand{padding-left:7px}.admin-sidebar .brand small{color:#8fb4a2}.admin-sidebar nav{gap:6px;display:grid}.admin-sidebar nav button{color:#b8cec3;text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:12px;height:46px;padding:0 14px;font-size:12px;display:flex}.admin-sidebar nav button span{color:#8eb49f;width:22px;font-weight:700}.admin-sidebar nav button:hover,.admin-sidebar nav button.active{color:#fff;background:#ffffff13}.admin-sidebar nav button.active{font-weight:700}.admin-side-link{color:#bcd1c6;border:1px solid #ffffff20;border-radius:9px;margin-top:auto;padding:11px 13px;font-size:11px;text-decoration:none}.admin-main{grid-column:2;min-width:0}.admin-topbar{border-bottom:1px solid var(--line);z-index:5;background:#fff;justify-content:space-between;align-items:center;height:72px;padding:0 36px;display:flex;position:sticky;top:0}.admin-topbar>div:first-child b,.admin-topbar>div:first-child small{display:block}.admin-topbar>div:first-child small{color:#99a39e;margin-top:3px;font-size:9px}.admin-content{max-width:1260px;margin:0 auto;padding:34px 36px 70px}.admin-welcome small{color:#86938c;font-size:10px}.admin-welcome h1{margin:8px 0;font:700 29px Georgia,Songti SC,serif}.admin-welcome p,.admin-page-head p{color:var(--muted);margin:0;font-size:12px;line-height:1.7}.admin-stat-grid{grid-template-columns:repeat(4,1fr);gap:14px;margin-top:25px;display:grid}.admin-stat-grid article{border:1px solid var(--line);background:#fff;border-radius:15px;padding:20px}.admin-stat-grid small,.admin-stat-grid b,.admin-stat-grid em{display:block}.admin-stat-grid small{color:#86918b;font-size:10px}.admin-stat-grid b{margin:9px 0 5px;font:700 28px Georgia}.admin-stat-grid em{color:#96a19b;font-size:9px;font-style:normal}.admin-overview-grid{grid-template-columns:repeat(3,1fr);gap:14px;margin-top:16px;display:grid}.admin-overview-grid article{color:#fff;background:linear-gradient(145deg,#1f5a45,#2e7257);border-radius:17px;min-height:180px;padding:25px}.admin-overview-grid article:nth-child(2){color:var(--ink);border:1px solid var(--line);background:#fff}.admin-overview-grid article:nth-child(3){color:var(--ink);background:#f4eee2}.admin-overview-grid span{letter-spacing:2px;color:#b9d8c8;font-size:9px}.admin-overview-grid article:nth-child(n+2) span{color:var(--green)}.admin-overview-grid h2{margin:20px 0 8px;font:700 19px Georgia,Songti SC,serif}.admin-overview-grid p{color:#d4e5dc;font-size:11px;line-height:1.8}.admin-overview-grid article:nth-child(n+2) p{color:var(--muted)}.admin-page-head{justify-content:space-between;align-items:center;gap:18px;margin-bottom:20px;display:flex}.admin-page-head h1{margin:0 0 7px;font:700 27px Georgia,Songti SC,serif}.admin-page-head>button,.admin-filters button,.table-actions button,.question-admin-list article>button{border:1px solid var(--line);color:#526159;background:#fff;border-radius:8px;padding:9px 13px;font-size:10px}.admin-page-head>button.primary{background:var(--green);color:#fff;border-color:var(--green)}.admin-table-wrap{border:1px solid var(--line);background:#fff;border-radius:15px;overflow:auto}.admin-table{border-collapse:collapse;width:100%;min-width:850px}.admin-table th{text-align:left;color:#7b8780;letter-spacing:1px;background:#f8faf8;padding:13px 16px;font-size:9px}.admin-table td{vertical-align:middle;border-top:1px solid #edf0ed;padding:15px 16px;font-size:11px}.admin-table td b,.admin-table td small{display:block}.admin-table td small{color:#929d97;margin-top:4px;font-size:9px;line-height:1.6}.admin-table select,.admin-table input{background:#fff;border:1px solid #dce3de;border-radius:7px;height:34px;padding:0 8px;font-size:10px}.admin-table input{width:82px}.table-actions{gap:6px;display:flex}.table-actions button:first-child{color:#fff;background:var(--green);border-color:var(--green)}.admin-empty{text-align:center;color:#94a098;padding:50px 20px;font-size:11px}.question-form{border:1px solid var(--line);background:#fff;border-radius:15px;gap:12px;margin-bottom:16px;padding:20px;display:grid}.question-form>div{grid-template-columns:1fr 1fr 120px 150px;gap:10px;display:grid}.question-form label{color:#5d6962;gap:6px;font-size:10px;font-weight:700;display:grid}.question-form input,.question-form select,.question-form textarea,.admin-filters input,.admin-filters select{font:inherit;background:#fbfcfb;border:1px solid #dbe3de;border-radius:8px;outline:none;padding:9px 11px;font-size:11px}.question-form textarea{resize:vertical;line-height:1.6}.question-form .primary{justify-self:end}.admin-filters{grid-template-columns:1fr 170px auto;gap:9px;margin-bottom:14px;display:grid}.question-admin-list{gap:12px;display:grid}.question-admin-list article{border:1px solid var(--line);background:#fff;border-radius:14px;padding:18px 150px 18px 19px;position:relative}.question-admin-list header{align-items:center;gap:9px;display:flex}.question-admin-list header span{border-radius:5px;padding:4px 7px;font-size:8px}.question-admin-list .reviewed{color:#357153;background:#e7f3eb}.question-admin-list .pending{color:#9a693b;background:#fff0e3}.question-admin-list header small{color:#94a099;font-size:9px}.question-admin-list h3{white-space:pre-wrap;margin:12px 0 7px;font-size:12px;line-height:1.75}.question-admin-list>article>p{color:var(--green);font-size:10px}.question-admin-list details{background:#f7f9f7;border-radius:8px;padding:10px 12px}.question-admin-list summary{color:#52705f;cursor:pointer;font-size:10px}.question-admin-list details p{white-space:pre-wrap;color:#68756e;font-size:10px;line-height:1.7}.question-admin-list article>button{color:var(--green);border-color:#cfe0d6;position:absolute;top:50%;right:18px;transform:translateY(-50%)}.ai-status-card{border:1px solid var(--line);background:#fff;border-radius:18px;max-width:760px;padding:25px}.status-ok,.status-off{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding-bottom:20px;display:flex}.status-ok>span,.status-off>span{background:#42a26e;border-radius:50%;width:12px;height:12px;box-shadow:0 0 0 6px #e8f5ed}.status-off>span{background:#d8785e;box-shadow:0 0 0 6px #fff0ec}.status-ok small,.status-ok b,.status-off small,.status-off b{display:block}.status-ok small,.status-off small{color:#89958e;margin-bottom:4px;font-size:9px}.status-ok b,.status-off b{font-size:14px}.ai-status-card dl{margin:5px 0 20px}.ai-status-card dl div{border-bottom:1px dashed #e5eae6;justify-content:space-between;gap:20px;padding:15px 0;display:flex}.ai-status-card dt{color:#7d8982;font-size:10px}.ai-status-card dd{color:#385b4a;text-align:right;margin:0;font:700 11px ui-monospace,monospace}.ai-config-note{background:#f3f8f5;border-left:3px solid #79a98e;padding:13px 15px}.ai-config-note b{font-size:10px}.ai-config-note p{color:#6f7d75;margin:4px 0 0;font-size:10px;line-height:1.7}@media (max-width:900px){.admin-auth-page{grid-template-columns:1fr}.admin-auth-visual{display:none}.admin-shell{grid-template-columns:78px 1fr}.admin-sidebar{width:78px;padding:24px 10px}.admin-sidebar .brand>span:last-child,.admin-side-link{display:none}.admin-sidebar nav button{justify-content:center;padding:0;font-size:0}.admin-sidebar nav button span{width:auto;font-size:11px}.admin-main{grid-column:2}.admin-stat-grid{grid-template-columns:repeat(2,1fr)}.admin-overview-grid{grid-template-columns:1fr}.question-form>div{grid-template-columns:1fr 1fr}}@media (max-width:680px){.admin-shell{display:block}.admin-sidebar{width:auto;height:66px;padding:7px;inset:auto 0 0}.admin-sidebar .brand,.admin-side-link{display:none}.admin-sidebar nav{grid-template-columns:repeat(4,1fr)}.admin-sidebar nav button{height:52px}.admin-main{display:block}.admin-topbar{height:62px;padding:0 15px}.admin-content{padding:23px 14px 88px}.admin-stat-grid{grid-template-columns:1fr 1fr}.admin-page-head{align-items:flex-start}.question-form>div,.admin-filters{grid-template-columns:1fr}.question-admin-list article{padding:16px}.question-admin-list article>button{margin-top:12px;position:static;transform:none}.admin-auth-card{justify-content:flex-start;padding:32px 8vw}.admin-auth-card h1{font-size:34px}}.question-bank-summary{grid-template-columns:150px 150px 1fr;align-items:center;gap:12px;margin-bottom:14px;display:grid}.question-bank-summary>div{border:1px solid var(--line);background:#fff;border-radius:11px;align-items:baseline;gap:8px;padding:13px 15px;display:flex}.question-bank-summary strong{color:var(--green);font:700 21px Georgia}.question-bank-summary span{color:#7f8b84;font-size:9px}.question-bank-summary>small{color:#849088;font-size:9px;line-height:1.7}.admin-filters.question-bank-filters{grid-template-columns:minmax(220px,1fr) minmax(250px,1.2fr) 150px auto}.question-admin-list header small{color:#75847b;line-height:1.6}.question-pagination{justify-content:center;align-items:center;gap:14px;margin-top:20px;display:flex}.question-pagination button{border:1px solid var(--line);color:var(--green);background:#fff;border-radius:8px;padding:9px 13px;font-size:10px}.question-pagination button:disabled{color:#a8b1ac}.question-pagination span{color:#75817a;font-size:10px}@media (max-width:900px){.question-bank-summary{grid-template-columns:1fr 1fr}.question-bank-summary>small{grid-column:1/-1}.admin-filters.question-bank-filters{grid-template-columns:1fr 1fr}}@media (max-width:680px){.admin-filters.question-bank-filters{grid-template-columns:1fr}}.student-bank-summary{gap:12px;margin-bottom:14px;display:flex}.student-bank-summary>div{border:1px solid var(--line);background:#fff;border-radius:11px;align-items:baseline;gap:8px;padding:13px 16px;display:flex}.student-bank-summary strong{color:var(--green);font:700 22px Georgia}.student-bank-summary span{color:#7f8b84;font-size:9px}.student-bank-filters{grid-template-columns:minmax(220px,1fr) minmax(260px,1.2fr) auto;gap:9px;margin-bottom:16px;display:grid}.student-bank-filters input,.student-bank-filters select{color:#405149;font:inherit;background:#fff;border:1px solid #d8e2dc;border-radius:8px;outline:none;padding:10px 11px;font-size:11px}.student-bank-filters button{border:1px solid var(--green);background:var(--green);color:#fff;border-radius:8px;padding:9px 16px;font-size:11px}.student-question-list{gap:12px;display:grid}.student-question-list article{border:1px solid var(--line);background:#fff;border-radius:15px;padding:19px}.student-question-list header{align-items:center;gap:9px;display:flex}.student-question-list header>span{color:#357153;background:#e7f3eb;border-radius:5px;padding:4px 7px;font-size:8px}.student-question-list header small{color:#75847b;font-size:9px;line-height:1.6}.student-question-list h3{margin:14px 0 8px;font-size:13px;line-height:1.85}.student-question-knowledge{color:var(--green);font-size:10px;font-weight:700}.student-question-list details{background:#f7f9f7;border-radius:9px;margin-top:12px;padding:11px 13px}.student-question-list summary{color:#52705f;cursor:pointer;font-size:10px;font-weight:700}.student-question-list details>div,.question-admin-list details>div{color:#59665f;margin-top:11px;font-size:11px;line-height:1.8}.student-question-list details>div>b,.question-admin-list details>div>b{color:#365a48;margin-bottom:5px;font-size:10px;display:block}.student-question-list .math-text,.question-admin-list .math-text{max-width:100%}@media (max-width:680px){.student-bank-summary{grid-template-columns:1fr 1fr;display:grid}.student-bank-filters{grid-template-columns:1fr}.student-question-list article{padding:15px}.student-question-list header{align-items:flex-start}.sidebar nav button{width:46px}}.review-head-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.mistake-book-head{align-items:flex-end}.book-filters{background:#edf2ef;border-radius:10px;gap:6px;padding:4px;display:flex}.book-filters button{color:#69766f;background:0 0;border:0;border-radius:7px;padding:8px 11px;font-size:10px}.book-filters button.active{color:var(--deep);background:#fff;font-weight:700;box-shadow:0 2px 8px #294c3c12}.mistake-book-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;display:grid}.mistake-book-card{border:1px solid var(--line);background:#fff;border-radius:17px;min-width:0;padding:20px}.mistake-book-card>header{align-items:center;gap:10px;display:flex}.mistake-book-card>header>div{min-width:0}.mistake-book-card>header b,.mistake-book-card>header small{display:block}.mistake-book-card>header b{color:#365a48;font-size:11px}.mistake-book-card>header small{color:#8d9892;margin-top:4px;font-size:9px}.mistake-book-card>header>em{border-radius:20px;margin-left:auto;padding:5px 9px;font-size:8px;font-style:normal}.mistake-book-card>header>em.ready{color:#357153;background:#e7f3eb}.mistake-book-card>header>em.review{color:#9a693b;background:#fff0e3}.book-number{width:32px;height:32px;color:var(--green);background:#edf5f0;border-radius:9px;place-items:center;font:700 12px Georgia;display:grid}.mistake-book-card>h2{white-space:pre-wrap;margin:16px 0;font-size:13px;line-height:1.85}.mistake-answer-grid{grid-template-columns:1fr 1fr;gap:9px;margin-top:12px;display:grid}.mistake-answer-grid>div{background:#f7f9f7;border-radius:9px;min-width:0;padding:11px;font-size:10px;line-height:1.7}.mistake-answer-grid>div>b{color:#456352;margin-bottom:5px;font-size:9px;display:block}.error-reason{color:#7e5346;background:#fff5f1;border-left:3px solid #d8785e;padding:10px 12px;font-size:10px;line-height:1.7}.mistake-book-card>details,.mistake-editor{background:#f7f9f7;border-radius:9px;margin-top:10px;padding:11px 13px}.mistake-book-card>details summary,.mistake-editor summary{cursor:pointer;color:#52705f;font-size:10px;font-weight:700}.mistake-book-card>details>.math-text{margin-top:10px;font-size:11px;line-height:1.8;display:block}.mistake-editor form{gap:9px;margin-top:11px;display:grid}.mistake-editor label{color:#65716a;gap:5px;font-size:9px;font-weight:700;display:grid}.mistake-editor textarea{resize:vertical;color:#36433c;background:#fff;border:1px solid #d8e2dc;border-radius:7px;width:100%;padding:9px;font:10px/1.65 ui-monospace,Cascadia Mono,monospace}.mistake-editor form>small{color:#8a958f;font-size:8px}.mistake-editor form>.primary{justify-self:end}.recognized-card>.mistake-editor{margin-top:12px}.mistake-figure{background:#fff;border:1px solid #dce5df;border-radius:11px;margin:12px 0 4px;overflow:hidden}.mistake-figure figcaption{color:#69766f;background:#f4f7f5;align-items:center;gap:8px;padding:8px 10px;font-size:8px;display:flex}.mistake-figure figcaption span{color:#2d6c52;font-weight:800}.mistake-figure canvas{object-fit:contain;width:100%;height:auto;max-height:360px;display:block}.mistake-figure svg{background:#fff;width:100%;max-height:360px;padding:12px;display:block}.mistake-figure svg line,.mistake-figure svg polyline,.mistake-figure svg>g>circle:not(.point){fill:none;stroke:#24332c;stroke-width:1.2px;vector-effect:non-scaling-stroke}.mistake-figure svg .dashed{stroke-dasharray:4 3}.mistake-figure svg .point{fill:#24332c}.mistake-figure svg text{fill:#1e2b25;font:5px Songti SC,serif}.figure-note{color:#748078;background:#f6f8f6;border-radius:8px;padding:9px 11px;font-size:9px}@media (max-width:900px){.mistake-book-list{grid-template-columns:1fr}}@media (max-width:680px){.upload-review-section{margin-top:28px}.review-head-actions{justify-content:flex-start;width:100%}.mistake-book-head{display:block}.book-filters{margin-top:14px;overflow:auto}.mistake-book-list,.mistake-answer-grid{grid-template-columns:1fr}.mistake-book-card{padding:15px}}.upload-box.is-busy{pointer-events:none;opacity:.72}.upload-progress-card{background:linear-gradient(135deg,#f2f8f5,#e9f3ee);border:1px solid #bdd4c8;border-radius:14px;margin-top:14px;padding:16px 18px;box-shadow:0 8px 24px #234c3810}.upload-progress-copy{justify-content:space-between;align-items:center;gap:18px;display:flex}.upload-progress-copy b,.upload-progress-copy small{display:block}.upload-progress-copy b{color:#234f3c;font-size:12px}.upload-progress-copy small{color:#718078;margin-top:5px;font-size:9px}.upload-progress-copy strong{color:#176a49;text-align:right;min-width:64px;font:700 25px Georgia}.upload-progress-track{background:#d7e5de;border-radius:999px;height:12px;margin-top:14px;overflow:hidden;box-shadow:inset 0 1px 2px #27473718}.upload-progress-track>span{border-radius:inherit;background:linear-gradient(90deg,#2c7658,#5ca57f);height:100%;transition:width .55s;display:block;position:relative}.upload-progress-track>span:after{content:"";background:linear-gradient(105deg,#0000 25%,#ffffff70 45%,#0000 65%);animation:1.5s linear infinite progress-shine;position:absolute;inset:0}.upload-progress-steps{grid-template-columns:repeat(4,1fr);gap:8px;margin-top:10px;display:grid}.upload-progress-steps span{color:#9aa59f;text-align:center;font-size:8px}.upload-progress-steps span.active{color:#286c50;font-weight:800}@keyframes progress-shine{0%{transform:translate(-100%)}to{transform:translate(100%)}}@media (max-width:680px){.upload-progress-card{padding:14px}.upload-progress-copy{align-items:flex-start}.upload-progress-copy strong{font-size:22px}.upload-progress-steps{gap:3px}.upload-progress-steps span{font-size:7px}}.correct-result-actions{justify-content:space-between;align-items:center;gap:10px;margin-top:12px;display:flex}.correct-result-actions .correct-note{flex:1;margin:0}.correct-result-actions button{color:var(--green);background:#fff;border:1px solid #bfd8ca;border-radius:8px;flex:none;padding:8px 11px;font-size:9px}.correct-result-actions button.saved{color:#6d7b73;background:#edf5f1;border-color:#0000}.correct-result-actions button:disabled{cursor:default;opacity:.8}.mistake-library{gap:12px;display:grid}.book-chapter{border:1px solid var(--line);background:#fff;border-radius:15px;overflow:hidden}.book-chapter>summary{cursor:pointer;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;padding:16px 19px;list-style:none;display:grid}.book-chapter>summary::-webkit-details-marker{display:none}.book-entry>summary::-webkit-details-marker{display:none}.book-chapter-index{width:36px;height:36px;color:var(--green);background:#fff;border-radius:9px;place-items:center;font:700 12px Georgia;display:grid}.book-chapter-heading b,.book-chapter-heading small{display:block}.book-chapter-heading b{color:#294f3e;font-size:13px}.book-chapter-heading small{color:#7e8b84;margin-top:4px;font-size:9px}.book-chapter>summary>em{color:#567062;background:#fff;border-radius:20px;padding:6px 9px;font-size:9px;font-style:normal}.book-chapter-body{padding:5px 19px 17px}.book-section-group>header{border-bottom:1px solid #e8edea;justify-content:space-between;align-items:center;gap:12px;padding:15px 3px 9px;display:flex}.book-section-group>header span b,.book-section-group>header span small{display:block}.book-section-group>header span b{color:#365a48;font-size:11px}.book-section-group>header span small{color:#96a099;margin-top:3px;font-size:8px}.book-section-group>header>em{color:#88948d;font-size:8px;font-style:normal}.book-entry-list{margin:0;padding:0;list-style:none}.book-entry-list>li{border-bottom:1px solid #eef1ef}.book-entry-list>li:last-child{border-bottom:0}.book-entry>summary{cursor:pointer;grid-template-columns:30px minmax(0,1fr) auto;align-items:start;gap:10px;padding:13px 3px;list-style:none;display:grid}.book-entry-number{width:25px;height:25px;color:var(--green);background:#f0f5f2;border-radius:7px;place-items:center;font:700 10px Georgia;display:grid}.book-entry-title{min-width:0}.book-entry-title>.math-text{max-height:3.4em;font-size:11px;line-height:1.7;overflow:hidden}.book-entry[open] .book-entry-title>.math-text{max-height:none}.book-entry-title>small{color:#909a94;margin-top:4px;font-size:8px;display:block}.book-entry>summary>em{white-space:nowrap;border-radius:20px;padding:5px 8px;font-size:8px;font-style:normal}.book-entry>summary>em.review{color:#9a693b;background:#fff0e3}.book-entry-body{padding:0 3px 17px 43px}.book-entry-body>details{background:#f7f9f7;border-radius:9px;margin-top:10px;padding:11px 13px}.book-entry-body>details summary{cursor:pointer;color:#52705f;font-size:10px;font-weight:700}.book-entry-body>details>.math-text{margin-top:10px;font-size:11px;line-height:1.8;display:block}.saved-only-note{color:#6e7c74;background:#f1f5f2;border-radius:8px;padding:8px 10px;font-size:9px}.export-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center}.answer-export-option{color:#58665e;white-space:nowrap;align-items:center;gap:7px;font-size:9px;display:flex}.answer-export-option input{accent-color:var(--green)}.practice-group .multi-filter{background:0 0;border:1px solid #cbded3;border-radius:7px;margin:0;padding:0;position:relative}.practice-group .multi-filter>summary{min-width:105px;color:var(--green);white-space:nowrap;padding:8px 25px 8px 9px;font-size:9px;list-style:none;position:relative}.practice-group .multi-filter>summary::-webkit-details-marker{display:none}.practice-group .multi-filter>summary:after{content:"⌄";position:absolute;right:9px}.practice-group .multi-filter>div{z-index:12;background:#fff;border:1px solid #d6e1da;border-radius:9px;gap:7px;min-width:135px;padding:10px;display:grid;position:absolute;top:calc(100% + 5px);right:0;box-shadow:0 12px 28px #1e49352a}.practice-group .multi-filter label{color:#4b5c53;cursor:pointer;align-items:center;gap:7px;font-size:9px;display:flex}.practice-group .multi-filter input{accent-color:var(--green);margin:0}@media (max-width:680px){.correct-result-actions{flex-direction:column;align-items:stretch}.book-chapter>summary{grid-template-columns:36px minmax(0,1fr) auto;padding:13px}.book-chapter-body{padding:4px 13px 13px}.book-entry>summary{grid-template-columns:28px minmax(0,1fr)}.book-entry>summary>em{grid-column:2}.book-entry-body{padding-left:38px}.export-actions{justify-content:flex-start}.answer-export-option{width:100%}.inline-filters{flex-wrap:wrap;display:flex}.practice-group .multi-filter{flex:130px}.practice-group .multi-filter>summary{min-width:0}.inline-filters>button{flex:100%}}html,body{background-color:var(--cream);background-image:radial-gradient(circle at 20px 20px,#efdcae55 2px,#0000 2.5px);background-size:32px 32px}.app-shell{background:linear-gradient(120deg,#fffaf0dd,#f5fbf7dd)}.sidebar{background:#fff4cf;border-right:2px solid #315c4d;padding-top:25px;box-shadow:5px 0 #dcece3}.brand-mark{background:var(--coral);border:2px solid #315c4d;border-radius:14px 14px 14px 5px;transform:rotate(-3deg);box-shadow:4px 4px #f5c75e}.brand b{color:#26493e;font-weight:900}.brand small{color:#6f796f}.sidebar nav button{border:2px solid #0000;border-radius:13px;font-weight:650;transition:transform .16s,box-shadow .16s,background .16s}.sidebar nav button:hover{background:#fff;border-color:#8db6a4;transform:translate(2px)}.sidebar nav button.active{color:#245a4b;background:#fff;border-color:#315c4d;box-shadow:3px 3px #f4c55b}.sidebar nav button.active:before{display:none}.sidebar nav button>span{color:#e66f5b}.sidebar nav em{border:1.5px solid #6c3b32;font-weight:800}.side-card{background:#fff;border:2px solid #4f7869;border-radius:18px;box-shadow:4px 4px #b9d9ca}.side-card strong{color:#e46d58}.topbar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffdf7e8;border-bottom:2px solid #d8e3dc;height:78px}.student>span{background:var(--sky);border:2px solid #315c4d;box-shadow:2px 2px #f3c35c}.student a,.student button{text-underline-offset:4px;-webkit-text-decoration:underline wavy;text-decoration:underline wavy}.welcome h1:after,.page-head h1:after{content:"";background:var(--gold);border-radius:9px;width:42px;height:7px;margin-top:7px;display:block;transform:rotate(-2deg)}.primary,.ghost,.export-actions button,.student-bank-filters button,.question-pagination button,.card-actions button{border:2px solid #315c4d;border-radius:11px;font-weight:800;transition:transform .13s,box-shadow .13s;box-shadow:3px 3px #bdd8ca}.primary{background:var(--green);color:#fff}.primary:hover{background:#286c5a;transform:translate(-1px,-1px);box-shadow:5px 5px #bdd8ca}.primary:active,.ghost:active,.export-actions button:active{transform:translate(2px,2px);box-shadow:1px 1px #bdd8ca}.hero-grid{gap:20px}.hero-card{background:radial-gradient(circle at 88% 20%,#ffe48c 0 28px,#0000 29px),linear-gradient(135deg,#35836d,#225f50);border:2px solid #315c4d;border-radius:24px;box-shadow:7px 7px #bcd9cb}.hero-card:after{box-shadow:none;border:3px dashed #ffffff70}.hero-card.light{background:radial-gradient(circle at 92% 18%,#f7cabf 0 22px,#0000 23px),#fff;border:2px solid #315c4d;box-shadow:7px 7px #eadcae}.hero-card>span,.hero-card.light>span{color:#29584a;background:#fff4c8;border:1.5px solid #315c4d;border-radius:20px;padding:5px 10px;display:inline-block;transform:rotate(-1deg)}.stats{gap:18px}.stats article{border:2px solid #52796b;border-radius:18px;box-shadow:4px 4px #d2e6dc}.stats article:nth-child(2n){box-shadow:4px 4px #f0dca8}.stats article:nth-child(3n){box-shadow:4px 4px #dfd6f4}.stats b{color:#296d59}.panel{border:2px solid #416c5d;border-radius:24px;box-shadow:7px 7px #d7e9df}.step{background:var(--gold);color:#315c4d;border:2px solid #315c4d;border-radius:11px;width:34px;height:34px;transform:rotate(-3deg);box-shadow:2px 2px #f2ae98}.upload-box{background:#f4fbf7;border:2px dashed #4c8c73;border-radius:22px;box-shadow:inset 0 0 0 5px #fff}.upload-box>span{background:#fff4c8;border:2px solid #315c4d;transform:rotate(2deg);box-shadow:4px 4px #b9dccd}.upload-box:hover,.upload-box.has-file{background:#edfaf4;border-color:#e77762}.upload-progress-card{border:2px solid #4b7a67;border-radius:18px;box-shadow:4px 4px #cce3d7}.upload-progress-track{background:#fff;border:1.5px solid #5a786b}.recognized-card,.student-question-list article,.question-admin-list article{border:2px solid #54786b;border-radius:20px;box-shadow:4px 4px #d9e9e1}.correct-note,.saved-only-note{border:1.5px dashed #5d9178}.book-filters{background:#dcece3;border:2px solid #638777}.book-filters button.active{border:1.5px solid #315c4d;box-shadow:2px 2px #f1c45d}.book-chapter{border:2px solid #496f61;border-radius:19px;box-shadow:5px 5px #d6e8df}.book-chapter[open]>summary{background:linear-gradient(90deg,#eaf7f0,#fff5cf)}.book-chapter-index{background:var(--gold);border:2px solid #315c4d;transform:rotate(-2deg);box-shadow:2px 2px #f1a995}.book-entry-number,.choice-index{background:#fff2c6;border:1.5px solid #507766}.book-entry>summary>em.ready{border:1px solid #5d8e75}.book-entry>summary>em.review{border:1px solid #ca7658}.practice-group{border:2px solid #496f61;border-radius:20px;box-shadow:5px 5px #d6e8df}.practice-group>header>span{background:#fff;border:1.5px solid #315c4d;transform:rotate(-2deg)}.practice-group>article{background:#fffdf9}.practice-group>article:nth-child(odd){background:#fbf8ff}.answer-export-option{background:#fff4c8;border:1.5px solid #6c8c7d;border-radius:10px;padding:8px 10px}.signin-page{background:#fff9ed radial-gradient(circle at 18px 18px,#f0dba650 2px,#0000 2.5px) 0 0/30px 30px}.signin-button{border:2px solid #315c4d;border-radius:12px;box-shadow:4px 4px #f4c55b}.admin-sidebar nav button{border-radius:12px}@media (max-width:680px){.sidebar{background:#fff4cf;border-top:2px solid #315c4d;border-right:0;box-shadow:0 -4px #dcece3}.sidebar nav button.active{box-shadow:2px 2px #f4c55b}.topbar{padding:0 16px}.content{background:0 0}.hero-card,.hero-card.light,.panel,.book-chapter,.practice-group{box-shadow:4px 4px #d5e6dd}.welcome h1:after,.page-head h1:after{height:5px}}html,body{color:var(--ink);background-color:#f8fafc;background-image:linear-gradient(#edf1f6 1px,#0000 1px),linear-gradient(90deg,#edf1f6 1px,#0000 1px);background-position:0 0;background-repeat:repeat;background-size:40px 40px;background-attachment:scroll;background-origin:padding-box;background-clip:border-box}body{font-family:Inter,Segoe UI,Microsoft YaHei UI,PingFang SC,system-ui,sans-serif}.app-shell{background:linear-gradient(115deg,#ffffffed 0%,#f8fafce8 65%,#f4f8ffdf 100%);grid-template-columns:222px minmax(0,1fr)}.sidebar{background:#fff;border:1px solid #e3e8ef;border-radius:22px;width:190px;height:auto;padding:22px 14px;inset:16px auto 16px 16px;box-shadow:0 18px 50px #0f172a12}.brand{padding:0 8px 24px}.brand-mark{background:linear-gradient(135deg,#111827,#2563eb);border:0;border-radius:11px;width:38px;height:38px;transform:none;box-shadow:0 8px 22px #2563eb32}.brand b{color:#111827;letter-spacing:1px;font-size:17px}.brand small{color:#98a2b3;font-size:9px}.sidebar nav{gap:4px}.sidebar nav button{height:44px;box-shadow:none;color:#667085;border:0;border-radius:11px;font-size:12px;font-weight:600;transition:background .2s,color .2s,transform .2s;transform:none}.sidebar nav button:hover{color:#1d4ed8;background:#f2f6ff;border:0;transform:translate(3px)}.sidebar nav button.active{color:#1d4ed8;box-shadow:none;background:#edf4ff;border:0}.sidebar nav button.active:before{background:#2563eb;border-radius:50%;width:5px;height:5px;display:block;left:auto;right:8px;box-shadow:0 0 0 5px #dbeafe}.sidebar nav button>span{color:#98a2b3;font-size:15px}.sidebar nav button.active>span{color:#2563eb}.sidebar nav em{background:#ef4444;border:0;font-weight:700}.side-card{box-shadow:none;background:linear-gradient(145deg,#f8fbff,#fff);border:1px solid #dfe7f1;border-radius:14px;padding:15px}.side-card b{color:#667085;text-transform:uppercase;letter-spacing:1px;font-size:9px}.side-card strong{color:#2563eb;font:700 24px/1.1 Segoe UI,sans-serif}.side-card small{color:#98a2b3;font-size:8px}main{grid-column:2}.topbar{height:76px;box-shadow:none;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffd9;border:0;border-bottom:1px solid #eef1f5;padding:0 52px}.topbar>div:first-child b{letter-spacing:.08em;text-transform:uppercase;font-size:12px}.student>span{width:34px;height:34px;box-shadow:none;color:#1d4ed8;background:#edf4ff;border:1px solid #c9dcff}.student a,.student button{color:#98a2b3;text-decoration:none;transition:color .2s}.student a:hover,.student button:hover{color:#2563eb}.welcome,.page-head,.practice-head{margin-bottom:28px}.welcome small{color:#2563eb;text-transform:uppercase;letter-spacing:.16em;font:600 9px ui-monospace,Cascadia Code,monospace}.welcome h1,.page-head h1,.panel h1,.hero-card h2{letter-spacing:-.025em;font-family:Inter,Segoe UI,Microsoft YaHei UI,sans-serif;font-weight:720}.welcome h1{max-width:790px;font-size:34px;line-height:1.25}.page-head h1,.panel h1{font-size:30px}.welcome h1:after,.page-head h1:after{content:none}.welcome p,.page-head p,.panel-head p{color:#667085}.primary,.ghost,.export-actions button,.student-bank-filters button,.question-pagination button,.card-actions button{border:1px solid #d8e0ea;border-radius:9px;font-weight:650;transition:transform .18s,box-shadow .18s,border-color .18s,background .18s;transform:none;box-shadow:0 1px 2px #1018280d}.primary{background:#2563eb;border-color:#2563eb}.ghost,.export-actions button,.question-pagination button{color:#344054;background:#fff}.ghost:hover,.export-actions button:hover,.question-pagination button:hover{border-color:#a9c4f6;transform:translateY(-2px);box-shadow:0 8px 22px #10182812}.primary:active,.ghost:active,.export-actions button:active{box-shadow:none;transform:scale(.98)}.hero-card,.hero-card.light{color:#101828;isolation:isolate;background:#fff;border:1px solid #e1e7ef;border-radius:18px;min-height:238px;padding:34px;transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s,border-color .3s;box-shadow:0 16px 45px #0f172a0d}.hero-card:before{content:"";z-index:-1;background:radial-gradient(circle at 82% 18%,#dbeafe 0,#0000 30%),linear-gradient(120deg,#0000 60%,#f5f9ff 60%);position:absolute;inset:0}.hero-card:after{opacity:.75;border:1px solid #bad0f8;border-radius:18px;width:150px;height:150px;top:44px;right:24px;transform:rotate(8deg);box-shadow:24px -24px 0 -23px #2563eb,48px 24px 0 -47px #14b8a6}.hero-card>span,.hero-card.light>span{color:#2563eb;letter-spacing:.14em;background:0 0;border:0;border-radius:0;padding:0;font:600 10px ui-monospace,Cascadia Code,monospace;display:inline-block;transform:none}.hero-card h2{margin-top:46px;font-size:23px}.hero-card p,.hero-card.light p{color:#667085}.hero-card button{color:#2563eb;transition:transform .2s}.hero-card button:hover{transform:translate(5px)}.stats{background:#fff;border:1px solid #e4e9f0;border-radius:16px;grid-template-columns:repeat(4,1fr);gap:0;margin-top:14px;padding:8px 6px;display:grid;box-shadow:0 10px 34px #0f172a0a}.stats article{box-shadow:none;background:0 0;border:0;border-right:1px solid #edf0f4;border-radius:0;padding:17px 22px;transition:background .2s;position:relative}.stats article:last-child{border-right:0}.stats article:hover{background:#f8fbff}.stats small{text-transform:uppercase;letter-spacing:.08em;font-size:8px}.stats b{color:#101828;font:700 27px/1.15 Segoe UI,sans-serif}.stats em{color:#98a2b3}.panel{background:#fff;border:1px solid #e2e8f0;border-radius:18px;grid-template-columns:minmax(250px,.62fr) minmax(420px,1.38fr);gap:18px;max-width:none;padding:26px;display:grid;box-shadow:0 18px 50px #0f172a0c}.panel-head{color:#fff;background:linear-gradient(145deg,#0f172a,#172554);border-radius:14px;grid-row:1/span 2;padding:22px 24px}.step{width:31px;height:31px;box-shadow:none;color:#1d4ed8;background:#eff6ff;border:1px solid #bfd6ff;border-radius:8px;font-family:ui-monospace,Cascadia Code,monospace;transform:none}.panel-head .step{color:#93c5fd;background:#ffffff14;border-color:#ffffff2b}.upload-box{height:218px;box-shadow:none;background:#fbfdff;border:1px dashed #93b4eb;border-radius:14px;margin:0;transition:border-color .25s,background .25s,transform .25s}.upload-box>span{width:45px;height:45px;box-shadow:none;color:#2563eb;background:#edf4ff;border:1px solid #c9dcff;border-radius:11px;transition:transform .25s;transform:none}.upload-box:hover>span{transform:translateY(-4px)}.primary.wide{grid-column:2;height:46px;margin:0}.upload-progress-card{box-shadow:none;background:#f8fbff;border:1px solid #d9e5f7;border-radius:13px;grid-column:2;margin:0}.upload-progress-track{background:#e9eef5;border:0;height:8px}.review-sheet-pane{background:#f1f4f8;border:1px solid #e1e7ef;border-radius:16px;box-shadow:0 14px 38px #0f172a0b}.recognized-list{gap:10px}.recognized-card,.student-question-list article,.question-admin-list article{background:#fff;border:1px solid #e3e8ef;border-radius:14px;transition:transform .22s,box-shadow .22s,border-color .22s;box-shadow:0 8px 24px #0f172a0a}.recognized-card:hover,.student-question-list article:hover{border-color:#c6d7f2;transform:translateY(-3px);box-shadow:0 16px 36px #0f172a12}.result-mark{border:0}.correct-note,.saved-only-note{background:#ecfdf5;border:0}.empty{background:#fff;border:1px dashed #cbd5e1;border-radius:16px}.book-filters{background:#f1f4f8;border:1px solid #e2e8f0;border-radius:9px;padding:3px}.book-filters button{font-weight:600}.book-filters button.active{color:#1d4ed8;background:#fff;border:0;box-shadow:0 2px 8px #0f172a12}.mistake-library{gap:9px}.book-chapter{box-shadow:none;border:1px solid #e1e7ef;border-radius:14px;transition:border-color .2s,box-shadow .2s}.book-chapter-index{box-shadow:none;color:#2563eb;background:#edf4ff;border:1px solid #c7d9fa;border-radius:8px;font-family:ui-monospace,Cascadia Code,monospace;transform:none}.book-section-group>header{border-bottom:1px solid #edf0f4}.book-entry-number,.choice-index{color:#2563eb;background:#f2f6fc;border:0}.book-entry>summary{transition:background .2s}.book-entry>summary>em.ready{color:#047857;background:#ecfdf5;border:0}.book-entry>summary>em.review{color:#c2410c;background:#fff7ed;border:0}.practice-group{border:1px solid #e1e7ef;border-radius:15px;overflow:visible;box-shadow:0 10px 30px #0f172a0b}.practice-group>header{background:#f8fbff;border-bottom:1px solid #e5eaf1}.practice-group>header>span{color:#2563eb;background:#fff;border:1px solid #c8d9f3;transform:none}.practice-group>article,.practice-group>article:nth-child(odd){background:#fff;transition:background .2s,transform .2s}.practice-group>article:hover{background:#fafcff;transform:translate(3px)}.practice-group .multi-filter{background:#fff;border:1px solid #d7dee8}.practice-group .multi-filter>div{border:1px solid #d9e1ec;box-shadow:0 16px 36px #0f172a18}.practice-group details{background:#f8fafc;border:0}.taxonomy>details{box-shadow:none;border:1px solid #e1e7ef!important;border-radius:14px!important}.taxonomy summary{background:#fff}.taxonomy details[open]>summary{background:#f8fbff}.leaf-list li{border-left:2px solid #bfdbfe}.stars i.on{color:#2563eb;text-shadow:none}.student-bank-summary>div{border:1px solid #e1e7ef;border-radius:12px;box-shadow:0 8px 22px #0f172a08}.student-bank-filters input,.student-bank-filters select{background:#fff;border:1px solid #d8e0ea}.student-bank-filters input:focus,.student-bank-filters select:focus{border-color:#8bb3f7;box-shadow:0 0 0 4px #dbeafe80}.signin-page{background-color:#fff;background-image:linear-gradient(#f0f3f7 1px,#0000 1px),linear-gradient(90deg,#f0f3f7 1px,#0000 1px);background-position:0 0;background-repeat:repeat;background-size:42px 42px;background-attachment:scroll;background-origin:padding-box;background-clip:border-box}.signin-card{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffed}.signin-card h1{font-family:Inter,Segoe UI,Microsoft YaHei UI,sans-serif;font-weight:720}.signin-visual>div{border:1px solid #ffffff26;border-radius:22px;box-shadow:0 28px 80px #0006}.signin-button{background:#2563eb;border:1px solid #2563eb;border-radius:9px;box-shadow:0 8px 24px #2563eb30}.auth-form input,.auth-form select{border:1px solid #d8e0ea;border-radius:9px}.auth-tabs button.active:after{background:#2563eb;border-radius:2px;height:2px;bottom:-1px}.admin-sidebar{background:#0f172a;border-right:0}.admin-sidebar nav button.active{color:#fff;background:#ffffff12}.admin-topbar{border-bottom:1px solid #e6eaf0}.admin-stat-grid article,.admin-overview-grid article,.admin-table-wrap,.question-form,.ai-status-card{border:1px solid #e1e7ef;border-radius:14px;box-shadow:0 10px 28px #0f172a0a}.hero-grid{animation-delay:50ms!important}.stats{animation-delay:.1s!important}.toast{animation:.32s cubic-bezier(.22,1,.36,1) both tech-toast}.upload-box.is-busy>span{animation:1.25s ease-in-out infinite tech-scan}.upload-progress-track>span:after{animation:1.35s linear infinite tech-shimmer}@keyframes tech-enter{0%{opacity:0;filter:blur(3px);transform:translateY(14px)}to{opacity:1;filter:none;transform:none}}@keyframes tech-reveal{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}@keyframes tech-toast{0%{opacity:0;transform:translateY(14px)scale(.97)}to{opacity:1;transform:none}}@keyframes tech-scan{0%,to{transform:translateY(0);box-shadow:0 0 #2563eb22}50%{transform:translateY(-5px);box-shadow:0 0 0 10px #2563eb00}}@keyframes tech-shimmer{0%{transform:translate(-110%)}to{transform:translate(110%)}}@media (max-width:1050px){.app-shell{grid-template-columns:206px minmax(0,1fr)}.sidebar{width:174px}.content,.topbar{padding-left:34px;padding-right:34px}.panel{grid-template-columns:1fr}.panel-head{grid-row:auto}.panel-head h1{margin-top:18px}.primary.wide,.upload-progress-card{grid-column:auto}.hero-grid{grid-template-columns:1fr 1fr}}@media (max-width:680px){html,body{background-size:32px 32px}.app-shell{display:block}.sidebar{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffffed;border:0;border-top:1px solid #e1e7ef;border-radius:16px 16px 0 0;width:auto;height:68px;padding:7px;inset:auto 0 0;box-shadow:0 -10px 35px #0f172a12}.sidebar nav button{border:0}.sidebar nav button.active{box-shadow:none}.sidebar nav button.active:before{top:3px;right:50%;transform:translate(50%)}.topbar{height:64px;padding:0 16px}.content{padding:24px 16px 92px}.welcome h1{font-size:26px}.hero-grid{grid-template-columns:1fr}.hero-card,.hero-card.light,.panel,.book-chapter,.practice-group{box-shadow:none}.stats{grid-template-columns:1fr 1fr}.stats article:nth-child(2){border-right:0}.stats article:nth-child(-n+2){border-bottom:1px solid #edf0f4}.panel{padding:14px}.panel-head{padding:19px}.welcome>.primary{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.sidebar nav button.active:before{top:50%;transform:translateY(-50%)}@media (max-width:680px){.sidebar nav button.active:before{top:3px;transform:translate(50%)}}.student-bank-filters{grid-template-columns:minmax(190px,1.35fr) repeat(3,minmax(130px,1fr)) auto}.student-source-catalog{gap:9px;margin:0 0 18px;display:grid}.student-source-catalog>details{background:#fff;border-radius:18px;overflow:hidden}.student-source-catalog>details>summary{cursor:pointer;justify-content:space-between;align-items:center;padding:14px 17px;list-style:none;display:flex}.student-source-catalog>details>summary b{font-size:11px}.student-source-catalog>details>summary span{color:#e65330;font-size:9px}.student-source-catalog>details>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:0 12px 12px;display:grid}.student-source-catalog section{background:#f3f5f6;border-radius:13px;overflow:hidden}.student-source-catalog section>header{color:#56606d;justify-content:space-between;padding:11px 13px;font-size:9px;display:flex}.student-source-catalog ol{gap:1px;margin:0;padding:0 10px 10px;list-style:none;display:grid}.student-source-catalog li{border-top:1px solid #dfe4e8;justify-content:space-between;align-items:center;gap:14px;padding:9px 10px;font-size:9px;display:flex}.student-source-catalog li>span{gap:3px;display:grid}.student-source-catalog li small{color:#8a919b;line-height:1.45}.student-source-catalog li em{color:#727b87;white-space:nowrap;font-style:normal}.student-source-catalog li.missing{background:#fff7f4;border:1px dashed #e65330;border-radius:10px;margin-top:4px}.student-source-catalog li.missing em{color:#e65330;font-weight:700}.student-bank-filters.admin-question-catalog-filters{grid-template-columns:minmax(220px,1.35fr) repeat(4,minmax(125px,1fr)) auto}.admin-question-catalog-note{color:#75817a;margin:-5px 0 14px;font-size:9px;line-height:1.7}.admin-source-catalog{margin-bottom:16px}@media (max-width:980px){.student-bank-filters,.student-bank-filters.admin-question-catalog-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.student-bank-filters button{grid-column:1/-1}.student-source-catalog>details>div{grid-template-columns:1fr}}@media (max-width:680px){.student-bank-summary,.student-bank-filters,.student-bank-filters.admin-question-catalog-filters{grid-template-columns:1fr}.student-bank-filters button{grid-column:auto}.student-source-catalog li{align-items:flex-start}}:root{--ink:#1f2937;--muted:#7a838f;--green:#e65330;--deep:#243041;--cream:#e9edf0;--line:#d9dee3;--gold:#6ea7d2;--coral:#e65330;--sky:#dfeaf3;--lavender:#e2e6eb}html,body{min-height:100%;color:var(--ink);background:#96a0b8}body{padding:clamp(18px,4.2vw,58px);font-family:Inter,Segoe UI,Microsoft YaHei UI,PingFang SC,system-ui,sans-serif}.app-shell{background:#e9edf0;border:1px solid #fff6;border-radius:30px;max-width:1460px;min-height:calc(100vh - clamp(36px,8.4vw,116px));margin:0 auto;display:block;position:relative;overflow:hidden;box-shadow:0 32px 90px #3440572e}.sidebar{width:auto;height:96px;box-shadow:none;z-index:12;background:0 0;border:0;border-radius:0;flex-direction:row;align-items:center;padding:0 32px;display:flex;position:absolute;inset:0 300px auto 0}.brand{flex:0 0 174px;gap:10px;padding:0}.brand-mark{width:31px;height:31px;box-shadow:none;background:#e65330;border-radius:50% 50% 50% 10px;font-size:15px}.brand b{letter-spacing:.02em;font-size:13px}.brand small{display:none}.sidebar nav{flex-direction:row;flex:1;align-items:center;gap:2px;min-width:0;display:flex}.sidebar nav button{color:#59616d;white-space:nowrap;width:auto;height:50px;box-shadow:none;background:0 0;border:0;border-radius:0;justify-content:center;gap:0;padding:0 13px;font-size:11px;font-weight:500;transform:none}.sidebar nav button>span{display:none}.sidebar nav button:hover{color:#111827;background:0 0;transform:none}.sidebar nav button.active{color:#111827;box-shadow:none;background:0 0}.sidebar nav button.active:before{width:auto;height:2px;box-shadow:none;background:#7896b5;border-radius:3px;inset:auto 13px 7px;transform:none}.sidebar nav em{background:#e65330;padding:1px 5px;font-size:8px;position:absolute;top:4px;right:4px}.side-card{display:none}main{padding-top:96px;display:block}.topbar{width:300px;height:96px;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;z-index:13;background:0 0;border:0;padding:0 32px 0 8px;position:absolute;top:0;right:0}.topbar>div:first-child{display:none}.student{margin-left:auto}.student>span{color:#273142;background:#fff;border:0;order:2;width:35px;height:35px;box-shadow:0 5px 18px #47556918}.student>div{text-align:right}.student b{font-size:10px}.student small{color:#8b949f;font-size:8px}.student button{color:#7f8791;order:3;margin-left:4px;font-size:9px}.content{max-width:none;padding:0 32px 34px}.welcome{margin:0 0 18px;padding:0 2px}.welcome small{color:#e65330}.welcome h1{letter-spacing:-.03em;max-width:850px;margin:4px 0 5px;font-size:27px;font-weight:650}.welcome p{font-size:11px}.welcome>.primary{min-width:112px}.page-head,.practice-head{margin-bottom:18px}.page-head h1,.panel h1{font-size:27px;font-weight:650}.page-head p,.panel-head p{font-size:11px}.step{color:#e65330;width:29px;height:29px;box-shadow:none;background:#fff;border:1px solid #d9dee4;border-radius:8px}.primary,.ghost,.export-actions button,.student-bank-filters button,.question-pagination button,.card-actions button{box-shadow:none;color:#313a47;background:#fff;border:1px solid #d1d7dd;border-radius:22px;font-size:10px;font-weight:600}.primary{color:#fff;background:#263142;border-color:#263142}.primary:hover{background:#e65330;border-color:#e65330;transform:translateY(-2px);box-shadow:0 9px 20px #e6533026}.ghost:hover,.export-actions button:hover,.question-pagination button:hover{box-shadow:none;border-color:#aeb7c1;transform:translateY(-2px)}.card-actions .danger{color:#b53b2d;background:#fff;border-color:#f2c7c0}.card-actions .danger:hover{color:#912b20;background:#fff5f2;border-color:#e65330;transform:translateY(-2px)}.card-actions button:disabled{cursor:not-allowed;opacity:.55;transform:none}.hero-grid{grid-template-columns:minmax(0,1.58fr) minmax(300px,.92fr);gap:16px}.hero-card,.hero-card.light{min-height:310px;box-shadow:none;color:#1f2937;background:#fff;border:0;border-radius:26px;padding:32px}.hero-card:before{background:linear-gradient(#0000 58%,#f7f8f9 58%)}.hero-card.light:before{background:radial-gradient(circle at 76% 70%,#dbe3e9 0,#0000 39%),linear-gradient(150deg,#f9fafb,#e3e8ec)}.hero-card:after{width:190px;height:120px;box-shadow:none;opacity:.75;background:repeating-linear-gradient(90deg,#0000 0 15px,#cfd7de 15px 17px);border:0;border-radius:0;top:116px;right:44px;transform:none}.hero-card.light:after{opacity:.55;background:radial-gradient(circle,#fffa 1px,#0000 1.5px) 0 0/9px 9px}.hero-card:hover,.hero-card.light:hover{border-color:#0000;transform:translateY(-4px);box-shadow:0 18px 38px #43516917}.hero-card>span,.hero-card.light>span{color:#e65330;font-size:9px}.hero-card h2{max-width:490px;margin:28px 0 8px;font-size:31px;font-weight:620}.hero-card.light h2{max-width:250px;font-size:22px}.hero-card p,.hero-card.light p{color:#818996;max-width:460px;font-size:11px}.hero-card button{color:#263142;padding:8px 0;font-size:11px;bottom:28px;left:32px}.hero-card button:hover{color:#e65330}.stats{box-shadow:none;background:#f4f6f7;border:0;border-radius:24px;margin-top:16px;padding:4px 8px}.stats article{border-right:1px solid #dfe3e7;min-height:92px;padding:17px 22px}.stats article:hover{background:#fff;border-radius:18px}.stats small{color:#89919c}.stats b{font-size:24px}.stats em{font-size:8px}.panel{box-shadow:none;background:#f1f3f4;border:0;border-radius:25px;grid-template-columns:minmax(230px,.55fr) minmax(420px,1.45fr);gap:20px;padding:22px}.panel-head{color:#1f2937;background:#fff;border-radius:21px;padding:26px}.panel-head .step{color:#e65330;background:#f1f3f5;border:0}.panel-head h1{margin-top:36px}.panel-head p{color:#838b96}.upload-box{background:#fff;border:1px dashed #bcc4cc;border-radius:21px;height:230px}.upload-box:hover,.upload-box.has-file{background:#fff;border-color:#e65330;transform:translateY(-2px)}.upload-box>span{color:#e65330;background:#f1f3f5;border:0}.primary.wide{height:44px}.upload-progress-card{background:#fff;border:0;border-radius:18px}.upload-progress-track>span{background:linear-gradient(90deg,#e65330,#76a9d0)}.upload-review-section{margin-top:24px}.review-workspace{grid-template-columns:minmax(0,1.38fr) minmax(340px,.62fr);gap:16px}.review-sheet-pane{box-shadow:none;background:#dfe3e6;border:0;border-radius:22px}.recognized-card,.student-question-list article,.question-admin-list article{box-shadow:none;border:0;border-radius:19px}.recognized-card:hover,.student-question-list article:hover{border-color:#0000;box-shadow:0 14px 30px #47556914}.recognized-card.is-correct{border-left:4px solid #76a9d0}.recognized-card.is-wrong{border-left:4px solid #e65330}.result-mark{color:#6f9dc2;background:#eef2f4}.is-wrong .result-mark{color:#e65330;background:#fff0ec}.correct-note{color:#547b9a;background:#eef5fa}.book-filters{background:#dde2e6;border:0;border-radius:22px}.book-filters button{border-radius:18px}.book-filters button.active{color:#1f2937}.book-chapter{background:#f8f9fa;border:0;border-radius:18px}.book-chapter:hover{border-color:#0000;box-shadow:0 12px 26px #47556910}.book-chapter[open]>summary{background:#fff;border-bottom:1px solid #e4e7ea}.book-chapter-index{color:#e65330;background:#edf0f2;border:0}.book-chapter>summary>em{color:#69727e;background:#edf0f2}.book-entry>summary:hover{background:#f5f7f8}.book-entry-number,.choice-index{color:#6d9bc1;background:#edf0f2}.book-entry>summary>em.ready{color:#567e9d;background:#e8f1f7}.practice-group{box-shadow:none;border:0;border-radius:22px}.practice-group>header{background:#dfe4e8;border:0;padding:18px 22px}.practice-group>header>span{color:#e65330;border:0;border-radius:14px}.practice-group>article:hover{background:#f7f8f9}.practice-group .multi-filter{border:0;border-radius:18px}.practice-group .multi-filter>div{border:0;border-radius:15px;box-shadow:0 18px 40px #47556922}.practice-group details{background:#f3f5f6;border-radius:14px}.answer-export-option{background:#fff;border:0;border-radius:18px}.student-bank-summary>div{box-shadow:none;background:#fff;border:0;border-radius:18px}.student-bank-summary strong{color:#e65330}.student-bank-filters input,.student-bank-filters select{background:#fff;border:0;border-radius:18px}.student-bank-filters input:focus,.student-bank-filters select:focus{box-shadow:0 0 0 3px #7896b52e}.student-bank-filters button{color:#fff;background:#263142;border:0}.taxonomy>details{background:#fff;border:0!important;border-radius:18px!important}.taxonomy summary,.taxonomy details[open]>summary{background:#fff}.stars i.on{color:#e65330}.leaf-list li{border-left-color:#8eb6d5}.signin-page{background:#e9edf0;border-radius:30px;min-height:calc(100vh - clamp(36px,8.4vw,116px));overflow:hidden;box-shadow:0 32px 90px #3440572e}.signin-card{background:#eef1f3}.signin-visual{background:radial-gradient(circle at 75% 25%,#7ba7cc 0 8%,#0000 8.5%),linear-gradient(145deg,#2b3544,#69768a)}.signin-visual>div{box-shadow:none;background:#ffffff10;border:0;border-radius:26px}.signin-button{box-shadow:none;background:#263142;border:0;border-radius:22px}.auth-form input,.auth-form select{background:#fff;border:0;border-radius:17px}.auth-tabs button.active:after{background:#7896b5}.admin-shell{background:#e9edf0}.admin-sidebar{background:#2a3443}.admin-stat-grid article,.admin-overview-grid article,.admin-table-wrap,.question-form,.ai-status-card{box-shadow:none;border:0;border-radius:19px}.content>section,.content>section+section{animation:.5s cubic-bezier(.22,1,.36,1) both canvas-rise}.hero-card,.stats article,.recognized-card,.book-chapter,.practice-group{transition:transform .28s cubic-bezier(.22,1,.36,1),box-shadow .28s,background .2s}.hero-card:after{animation:5s ease-in-out infinite alternate chart-drift}.book-chapter[open] .book-chapter-body,.book-entry[open] .book-entry-body{animation:.3s both soft-unfold}@keyframes canvas-rise{0%{opacity:0;transform:translateY(18px)scale(.992)}to{opacity:1;transform:none}}@keyframes chart-drift{0%{transform:translateY(0)}to{transform:translateY(-7px)}}@keyframes soft-unfold{0%{opacity:0;transform:translateY(-7px)}to{opacity:1;transform:none}}@media (max-width:1050px){body{padding:18px}.app-shell{min-height:calc(100vh - 36px)}.sidebar{padding:0 22px;inset:0 250px auto 0}.brand{flex-basis:115px}.sidebar nav button{padding:0 8px;font-size:10px}.topbar{width:250px;padding-right:22px}.student>div{display:none}.content{padding-left:22px;padding-right:22px}.hero-grid{grid-template-columns:1.35fr .8fr}.panel{grid-template-columns:1fr}.panel-head{grid-row:auto}.panel-head h1{margin-top:18px}}@media (max-width:680px){body{background:#e9edf0;padding:0}.app-shell{min-height:100vh;box-shadow:none;border:0;border-radius:0}.sidebar{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#eef1f3f2;border-top:1px solid #d7dce1;border-radius:18px 18px 0 0;width:auto;height:68px;padding:7px;position:fixed;inset:auto 0 0;box-shadow:0 -10px 30px #47556912}.brand,.side-card{display:none}.sidebar nav{justify-content:space-around;width:100%}.sidebar nav button{border-radius:14px;width:52px;height:52px;padding:0;font-size:0}.sidebar nav button>span{font-size:16px;display:block}.sidebar nav button.active{background:#fff}.sidebar nav button.active:before{width:5px;height:5px;inset:4px auto auto 50%;transform:translate(-50%)}main{padding-top:0}.topbar{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#eef1f3e8;width:auto;height:64px;padding:0 16px;position:sticky;top:0}.topbar>div:first-child{display:block}.student>div{display:none}.content{padding:20px 14px 90px}.hero-grid{grid-template-columns:1fr}.hero-card,.hero-card.light{min-height:270px}.hero-card h2{font-size:25px}.stats{grid-template-columns:1fr 1fr}.panel{padding:12px}.review-workspace{grid-template-columns:1fr}.signin-page{min-height:100vh;box-shadow:none;border-radius:0}}.ask-home{flex-direction:column;justify-content:center;align-items:center;min-height:calc(100vh - clamp(210px,17vw,255px));padding:72px 20px 120px;display:flex}.ask-home-copy{text-align:center;max-width:760px}.ask-home-copy small{color:#e65330;letter-spacing:.16em;font:650 9px/1 ui-monospace,Cascadia Code,monospace}.ask-home-copy h1{letter-spacing:-.055em;color:#1f2937;margin:16px 0 9px;font-size:clamp(34px,4vw,56px);font-weight:630}.ask-home-copy p{color:#7d8692;margin:0 auto;font-size:12px;line-height:1.75}.ask-bar{background:#fff;border:1px solid #d9dee3;border-radius:25px;align-items:center;gap:10px;width:min(900px,100%);min-height:74px;margin-top:34px;padding:8px 9px 8px 11px;transition:border-color .22s,box-shadow .22s,transform .22s;display:flex;box-shadow:0 24px 60px #47556918}.ask-bar:focus-within{border-color:#aeb9c5;transform:translateY(-2px);box-shadow:0 28px 68px #47556922}.ask-bar.has-file{border-color:#e6533070}.ask-attachment{color:#525c68;cursor:pointer;background:#f0f2f4;border-radius:50%;flex:0 0 44px;place-items:center;height:44px;transition:background .2s,color .2s,transform .2s;display:grid}.ask-attachment:hover{color:#e65330;background:#e6eaed;transform:rotate(8deg)}.ask-attachment input{display:none}.ask-attachment span{font-size:24px;font-weight:300;line-height:1}.ask-input-wrap{flex:1;gap:3px;min-width:0;display:grid}.ask-input-wrap input{color:#222b36;background:0 0;border:0;outline:0;width:100%;height:46px;padding:0 4px;font:500 14px/1.4 inherit}.ask-input-wrap input::placeholder{color:#9aa2ab}.ask-input-wrap input:disabled{color:#7a838d}.ask-mode{color:#e65330;text-overflow:ellipsis;white-space:nowrap;font-size:9px;font-weight:650;overflow:hidden}.ask-clear{color:#7d8690;background:#f1f3f4;border:0;border-radius:50%;flex:0 0 30px;height:30px;font-size:17px}.ask-clear:hover{color:#e65330;background:#ffece7}.ask-send{color:#fff;background:#263142;border:0;border-radius:18px;flex:none;height:50px;padding:0 20px;font-size:11px;font-weight:650;transition:background .2s,transform .2s,box-shadow .2s}.ask-send span{margin-left:11px;transition:transform .2s;display:inline-block}.ask-send:hover:not(:disabled){background:#e65330;transform:translateY(-1px);box-shadow:0 10px 24px #e6533026}.ask-send:hover:not(:disabled) span{transform:translate(4px)}.ask-send:disabled{cursor:not-allowed;opacity:.45}.ask-hints{flex-wrap:wrap;justify-content:center;align-items:center;gap:7px;width:min(900px,100%);margin-top:14px;display:flex}.ask-hints>span{color:#9aa1aa;font-size:9px}.ask-hints button{color:#6d7580;background:#eef1f3;border:1px solid #d8dde2;border-radius:18px;padding:7px 11px;font-size:9px;transition:background .2s,color .2s,transform .2s}.ask-hints button:hover{color:#303947;background:#fff;transform:translateY(-2px)}.tutor-response{background:#fff;border-radius:22px;width:min(900px,100%);margin-top:24px;padding:24px 26px;animation:.42s cubic-bezier(.22,1,.36,1) both answer-arrive;box-shadow:0 16px 42px #47556912}.tutor-response header{align-items:center;gap:10px;margin-bottom:17px;display:flex}.tutor-response header>span{color:#fff;background:#e65330;border-radius:50% 50% 50% 8px;place-items:center;width:29px;height:29px;font-weight:700;display:grid}.tutor-response header>b{font-size:11px}.tutor-response>.math-text{color:#3f4854;font-size:12px;line-height:1.9}.thinking-lines{gap:9px;display:grid}.thinking-lines i{background:linear-gradient(90deg,#edf0f2 20%,#dfe4e8 45%,#edf0f2 70%) 0 0/220% 100%;border-radius:8px;height:9px;animation:1.25s linear infinite thinking-shimmer}.thinking-lines i:nth-child(2){width:82%}.thinking-lines i:nth-child(3){width:61%}@keyframes answer-arrive{0%{opacity:0;transform:translateY(12px)scale(.99)}to{opacity:1;transform:none}}@keyframes thinking-shimmer{to{background-position:-220% 0}}.ask-only{color:#4f5965;background:#fff;border:1px solid #d6dce1;border-radius:15px;flex:none;height:44px;padding:0 14px;font-size:10px;font-weight:650}.ask-only:hover:not(:disabled){color:#e65330;border-color:#e65330}.ask-only:disabled{opacity:.45}.tutor-follow-up-turn{border-top:1px solid #edf0f2;margin-top:18px;padding-top:17px}.tutor-follow-up-turn>p{color:#394453;align-items:flex-start;gap:9px;margin:0 0 12px;font-size:11px;line-height:1.7;display:flex}.tutor-follow-up-turn>p b{color:#65707c;background:#eef1f3;border-radius:7px;flex:none;padding:3px 7px;font-size:8px}.tutor-follow-up-turn>div{color:#3f4854;font-size:12px;line-height:1.9}.follow-up-thinking{margin-top:18px}.tutor-response-actions{justify-content:flex-end;margin-top:18px;display:flex}.tutor-response-actions button{color:#53606d;background:#f5f7f8;border:1px solid #d6dce1;border-radius:10px;height:34px;padding:0 12px;font-size:9px}.tutor-response-actions button:hover:not(:disabled){color:#e65330;border-color:#e65330}.tutor-response-actions button:disabled{opacity:.55}.tutor-follow-up-form{background:#f2f4f5;border:1px solid #e0e4e7;border-radius:14px;gap:8px;margin-top:12px;padding:7px;display:flex}.tutor-follow-up-form input{color:#343e4a;background:0 0;border:0;outline:0;flex:1;min-width:0;height:38px;padding:0 9px;font-size:11px}.tutor-follow-up-form button{color:#fff;background:#263142;border:0;border-radius:10px;height:38px;padding:0 13px;font-size:9px}.tutor-follow-up-form button:disabled{opacity:.42}.tutor-history{background:#f4f6f7;border:1px solid #dce1e5;border-radius:20px;width:min(900px,100%);margin-top:20px;padding:20px 22px}.tutor-history>header{justify-content:space-between;align-items:center;gap:14px;display:flex}.tutor-history>header small{color:#e65330;letter-spacing:.12em;font:650 8px/1 ui-monospace,Cascadia Code,monospace}.tutor-history h2{margin:5px 0 0;font-size:16px}.tutor-history>header button{color:#8a929b;background:0 0;border:0;font-size:9px}.tutor-history>header button:hover{color:#e65330}.tutor-history>p{color:#929aa3;margin:18px 0 2px;font-size:10px}.tutor-history-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:14px;display:grid}.tutor-history-list>button{text-align:left;background:#fff;border:1px solid #e0e4e7;border-radius:13px;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;min-width:0;padding:12px 13px;transition:border-color .2s,transform .2s,box-shadow .2s;display:grid}.tutor-history-list>button:hover{border-color:#c5cdd4;transform:translateY(-1px);box-shadow:0 9px 22px #47556912}.tutor-history-list time{color:#9aa1a9;white-space:nowrap;font-size:8px}.tutor-history-list b{color:#404957;text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:550;overflow:hidden}.tutor-history-list span{color:#e65330;white-space:nowrap;font-size:8px}@media (max-width:680px){.ask-home{justify-content:flex-start;min-height:calc(100vh - 154px);padding:70px 0 40px}.ask-home-copy h1{font-size:35px}.ask-home-copy p{font-size:10px}.ask-bar{border-radius:21px;flex-wrap:wrap;gap:6px;min-height:66px;margin-top:26px;padding:7px}.ask-attachment{flex-basis:40px;height:40px}.ask-input-wrap{min-width:140px}.ask-input-wrap input{font-size:12px}.ask-only{flex:1;order:4}.ask-send{border-radius:15px;height:44px;padding:0 14px}.ask-send span{display:none}.ask-hints{flex-wrap:nowrap;justify-content:flex-start;padding-bottom:5px;overflow:auto}.ask-hints button{white-space:nowrap}.tutor-response{border-radius:18px;padding:19px}.tutor-follow-up-form input{font-size:10px}.tutor-history{padding:17px}.tutor-history-list{grid-template-columns:1fr}.tutor-history-list>button{grid-template-columns:auto 1fr}.tutor-history-list span{display:none}}.tikz-figure-shell{background:#fff;min-height:220px;position:relative}.tikz-figure-host{place-items:center;min-height:220px;padding:12px;display:grid;overflow:auto}.tikz-figure-host .tikzjax-wrapper{max-width:100%;margin:0;overflow:auto}.tikz-figure-host svg.tikz,.tikz-figure-host svg.tikzjax{max-width:100%;height:auto;display:block}.tikz-figure-shell>p{color:#718096;background:#ffffffd9;place-items:center;margin:0;font-size:10px;display:grid;position:absolute;inset:0}.tikz-figure-shell>.tikz-figure-error{color:#a54f45;background:#fff7f5}@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-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}
