@font-face{font-display:block;font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(./KaTeX_AMS-Regular.BQhdFMY1.woff2) format("woff2"),url(./KaTeX_AMS-Regular.DMm9YOAa.woff) format("woff"),url(./KaTeX_AMS-Regular.DRggAlZN.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(./KaTeX_Caligraphic-Bold.Dq_IR9rO.woff2) format("woff2"),url(./KaTeX_Caligraphic-Bold.BEiXGLvX.woff) format("woff"),url(./KaTeX_Caligraphic-Bold.ATXxdsX0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(./KaTeX_Caligraphic-Regular.Di6jR-x-.woff2) format("woff2"),url(./KaTeX_Caligraphic-Regular.CTRA-rTL.woff) format("woff"),url(./KaTeX_Caligraphic-Regular.wX97UBjC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(./KaTeX_Fraktur-Bold.CL6g_b3V.woff2) format("woff2"),url(./KaTeX_Fraktur-Bold.BsDP51OF.woff) format("woff"),url(./KaTeX_Fraktur-Bold.BdnERNNW.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(./KaTeX_Fraktur-Regular.CTYiF6lA.woff2) format("woff2"),url(./KaTeX_Fraktur-Regular.Dxdc4cR9.woff) format("woff"),url(./KaTeX_Fraktur-Regular.CB_wures.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(./KaTeX_Main-Bold.Cx986IdX.woff2) format("woff2"),url(./KaTeX_Main-Bold.Jm3AIy58.woff) format("woff"),url(./KaTeX_Main-Bold.waoOVXN0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(./KaTeX_Main-BoldItalic.DxDJ3AOS.woff2) format("woff2"),url(./KaTeX_Main-BoldItalic.SpSLRI95.woff) format("woff"),url(./KaTeX_Main-BoldItalic.DzxPMmG6.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(./KaTeX_Main-Italic.NWA7e6Wa.woff2) format("woff2"),url(./KaTeX_Main-Italic.BMLOBm91.woff) format("woff"),url(./KaTeX_Main-Italic.3WenGoN9.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(./KaTeX_Main-Regular.B22Nviop.woff2) format("woff2"),url(./KaTeX_Main-Regular.Dr94JaBh.woff) format("woff"),url(./KaTeX_Main-Regular.ypZvNtVU.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(./KaTeX_Math-BoldItalic.CZnvNsCZ.woff2) format("woff2"),url(./KaTeX_Math-BoldItalic.iY-2wyZ7.woff) format("woff"),url(./KaTeX_Math-BoldItalic.B3XSjfu4.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(./KaTeX_Math-Italic.t53AETM-.woff2) format("woff2"),url(./KaTeX_Math-Italic.DA0__PXp.woff) format("woff"),url(./KaTeX_Math-Italic.flOr_0UB.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:700;src:url(./KaTeX_SansSerif-Bold.D1sUS0GD.woff2) format("woff2"),url(./KaTeX_SansSerif-Bold.DbIhKOiC.woff) format("woff"),url(./KaTeX_SansSerif-Bold.CFMepnvq.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:italic;font-weight:400;src:url(./KaTeX_SansSerif-Italic.C3H0VqGB.woff2) format("woff2"),url(./KaTeX_SansSerif-Italic.DN2j7dab.woff) format("woff"),url(./KaTeX_SansSerif-Italic.YYjJ1zSn.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:400;src:url(./KaTeX_SansSerif-Regular.DDBCnlJ7.woff2) format("woff2"),url(./KaTeX_SansSerif-Regular.CS6fqUqJ.woff) format("woff"),url(./KaTeX_SansSerif-Regular.BNo7hRIc.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(./KaTeX_Script-Regular.D3wIWfF6.woff2) format("woff2"),url(./KaTeX_Script-Regular.D5yQViql.woff) format("woff"),url(./KaTeX_Script-Regular.C5JkGWo-.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(./KaTeX_Size1-Regular.mCD8mA8B.woff2) format("woff2"),url(./KaTeX_Size1-Regular.C195tn64.woff) format("woff"),url(./KaTeX_Size1-Regular.Dbsnue_I.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(./KaTeX_Size2-Regular.Dy4dx90m.woff2) format("woff2"),url(./KaTeX_Size2-Regular.oD1tc_U0.woff) format("woff"),url(./KaTeX_Size2-Regular.B7gKUWhC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(data:font/woff2;base64,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) format("woff2"),url(./KaTeX_Size3-Regular.CTq5MqoE.woff) format("woff"),url(./KaTeX_Size3-Regular.DgpXs0kz.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(./KaTeX_Size4-Regular.Dl5lxZxV.woff2) format("woff2"),url(./KaTeX_Size4-Regular.BF-4gkZK.woff) format("woff"),url(./KaTeX_Size4-Regular.DWFBv043.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(./KaTeX_Typewriter-Regular.CO6r4hn1.woff2) format("woff2"),url(./KaTeX_Typewriter-Regular.C0xS9mPB.woff) format("woff"),url(./KaTeX_Typewriter-Regular.D3Ib7_Hf.ttf) format("truetype")}.katex{font: 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;position:relative;text-indent:0;text-rendering:auto}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.16.47"}.katex .katex-mathml{border:0;-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;overflow:hidden;padding:0;position:absolute;width:1px}.katex .katex-html>.newline{display:block}.katex .base{position:relative;white-space:nowrap;width:-webkit-min-content;width:-moz-min-content;width:min-content}.katex .base,.katex .strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;display:inline-table;table-layout:fixed}.katex .vlist-r{display:table-row}.katex .vlist{display:table-cell;position:relative;vertical-align:bottom}.katex .vlist>span{display:block;height:0;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{overflow:hidden;width:0}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{display:table-cell;font-size:1px;min-width:2px;vertical-align:bottom;width:2px}.katex .vbox{align-items:baseline;display:inline-flex;flex-direction:column}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{display:inline-flex;flex-direction:row}.katex .thinbox{max-width:0;width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .smash{display:inline;line-height:0}.katex .clap,.katex .llap,.katex .rlap{position:relative;width:0}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.katex .sqrt>.root{margin-left:.2777777778em;margin-right:-.5555555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.1666666667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.6666666667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.4566666667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.1466666667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.7142857143em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.8571428571em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.1428571429em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.2857142857em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.4285714286em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.7142857143em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.0571428571em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.4685714286em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.9628571429em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.5542857143em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.7777777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.8888888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.1111111111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.3044444444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.7644444444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.5833333333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.7283333333em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.0733333333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.4861111111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.4402777778em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.7277777778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.2893518519em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.4050925926em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.462962963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.5208333333em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.5787037037em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.2002314815em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.4398148148em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.2410800386em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.2892960463em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.337512054em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.3857280617em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.4339440694em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.4821600771em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.5785920926em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.6943105111em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.8331726133em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.1996142719em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.2009646302em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.2411575563em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.2813504823em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.3215434084em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.3617363344em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.4019292605em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.4823151125em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.578778135em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.6945337621em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.8336012862em}.katex .fontsize-ensurer.reset-size11.size11,.katex .sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{display:inline-block;width:.12em}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{display:inline-block;min-width:1px}.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;display:block;height:inherit;position:absolute;width:100%}.katex svg path{stroke:none}.katex svg{fill-rule:nonzero;fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1}.katex img{border-style:none;max-height:none;max-width:none;min-height:0;min-width:0}.katex .stretchy{display:block;overflow:hidden;position:relative;width:100%}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{overflow:hidden;position:relative;width:100%}.katex .halfarrow-left{left:0;overflow:hidden;position:absolute;width:50.2%}.katex .halfarrow-right{overflow:hidden;position:absolute;right:0;width:50.2%}.katex .brace-left{left:0;overflow:hidden;position:absolute;width:25.1%}.katex .brace-center{left:25%;overflow:hidden;position:absolute;width:50%}.katex .brace-right{overflow:hidden;position:absolute;right:0;width:25.1%}.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{border:.04em solid;box-sizing:border-box}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{border-right:.049em solid;border-top:.049em solid;box-sizing:border-box;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{display:inline-block;position:absolute;right:calc(50% + .3em);text-align:left}.katex .cd-label-right{display:inline-block;left:calc(50% + .3em);position:absolute;text-align:right}.katex-display{display:block;margin:1em 0;text-align:center}.katex-display>.katex{display:block;text-align:center;white-space:nowrap}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{padding-left:2em;text-align:left}body{counter-reset:katexEqnNo mmlEqnNo}:root{--bg: #f8fafc;--card: #ffffff;--text: #0f172a;--muted: #64748b;--border: #e2e8f0;--accent: #4338ca;--accent-hover: #3730a3;--accent-soft: #eef2ff;--warm: #c2410c;--warm-soft: #fff7ed;--ok: #15803d;--ok-soft: #dcfce7;--danger: #b91c1c;--danger-soft: #fef2f2;--user-bubble: #4338ca;--user-text: #ffffff;--shadow: 0 1px 2px rgba(15, 23, 42, .04), 0 4px 16px rgba(15, 23, 42, .05);--radius: 14px;--font-body: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-display: "Fraunces", Georgia, "Times New Roman", serif;font-family:var(--font-body);font-size:17px;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;background:var(--bg);line-height:1.55}h1,h2,h3{font-family:var(--font-display);font-weight:600;letter-spacing:-.01em;line-height:1.2}h1{font-size:1.65rem;margin:.25rem 0 .5rem}h2{font-size:1.2rem;margin:0 0 .75rem}a{color:var(--accent)}.page{max-width:860px;margin:0 auto;padding:1.25rem 1rem 3rem}.center{text-align:center}.muted{color:var(--muted);font-size:.92rem}.small{font-size:.82rem}.hint{margin:.6rem 0 0}.error{color:var(--danger);background:var(--danger-soft);padding:.55rem .8rem;border-radius:8px;margin:0}.notice{background:var(--accent-soft);padding:.75rem 1rem;border-radius:10px}.clamp{display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:1.35rem;margin-bottom:1rem;box-shadow:var(--shadow)}.brand,.auth-brand{display:inline-flex;align-items:center;gap:.55rem;font-family:var(--font-display);font-weight:600;font-size:1.2rem;color:var(--text);text-decoration:none}.brand-mark{display:block;width:30px;height:30px;flex-shrink:0}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem;gap:1rem}.topbar-right{display:flex;gap:1rem;align-items:center}.greeting{font-size:2rem;margin:.5rem 0 1.25rem}.button{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;background:var(--accent);color:#fff;border:none;border-radius:10px;padding:.65rem 1.15rem;font:inherit;font-weight:600;font-size:.98rem;cursor:pointer;text-decoration:none;transition:background .15s ease,transform .15s ease}.button:hover{background:var(--accent-hover)}.button:active{transform:translateY(1px)}.button:disabled{opacity:.5;cursor:default}.button.secondary{background:var(--accent-soft);color:var(--accent)}.button.secondary:hover{background:#e0e7ff}.button.wide{width:100%}.button-row{display:flex;flex-wrap:wrap;gap:.75rem;margin:1rem 0}.link-button{background:none;border:none;color:var(--accent);cursor:pointer;font:inherit;font-size:.95rem;padding:0;text-decoration:none;text-align:left}input,textarea{width:100%;font:inherit;padding:.65rem .8rem;border:1px solid var(--border);border-radius:10px;background:#fff;color:var(--text);transition:border-color .15s ease,box-shadow .15s ease}select{width:100%;font:inherit;padding:.65rem 2.2rem .65rem .8rem;border:1px solid var(--border);border-radius:10px;color:var(--text);cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%236b7280' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right .85rem center;transition:border-color .15s ease,box-shadow .15s ease}select:disabled{cursor:default;opacity:.6}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #4338ca26}label{display:block;font-size:.9rem;font-weight:500;color:var(--muted)}label input,label textarea,label select{margin-top:.3rem}.stack{display:flex;flex-direction:column;gap:.9rem}.tabs{display:flex;gap:.35rem;margin-bottom:1rem;background:var(--bg);padding:.3rem;border-radius:12px;border:1px solid var(--border)}.tabs button{flex:1;padding:.5rem;border:none;background:none;border-radius:9px;cursor:pointer;font:inherit;font-size:.93rem;font-weight:500;color:var(--muted)}.tabs button.active{background:#fff;color:var(--accent);box-shadow:var(--shadow)}.loading-screen{display:flex;align-items:center;justify-content:center;min-height:100vh;min-height:100dvh}.spinner{width:40px;height:40px;border:4px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}.spinner.small{width:18px;height:18px;border-width:3px}@keyframes spin{to{transform:rotate(360deg)}}.working{display:flex;gap:.6rem;align-items:center;margin-top:.9rem;color:var(--muted)}.auth-page{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1rem;background:radial-gradient(1200px 500px at 50% -10%,var(--accent-soft),transparent)}.auth-brand{margin-bottom:1.5rem}.auth-card{width:100%;max-width:420px;background:var(--card);border:1px solid var(--border);border-radius:18px;padding:2rem;box-shadow:var(--shadow)}.auth-card h1{margin-top:0}.auth-card>.muted{margin-top:0;margin-bottom:1.4rem}.auth-switch{text-align:center;margin:1.3rem 0 0;font-size:.93rem;color:var(--muted)}.strength{display:flex;align-items:center;gap:.6rem;margin-top:-.4rem}.strength-bar{flex:1;height:5px;background:var(--border);border-radius:3px;overflow:hidden}.strength-fill{height:100%;transition:width .2s ease}.strength-fill.s1{background:#f59e0b}.strength-fill.s2{background:#84cc16}.strength-fill.s3{background:var(--ok)}.continue{display:flex;justify-content:space-between;align-items:center;gap:1rem;background:linear-gradient(135deg,var(--accent-soft),#fff)}.continue-topic{font-weight:600;font-size:1.1rem}.request-row{display:flex;gap:.5rem}.request-row input{flex:1}.subject-list,.topic-list,.subject-grid{list-style:none;margin:0;padding:0}.subject-list li a,.topic-list li a{display:block;padding:.85rem;border-radius:10px;color:inherit;text-decoration:none}.subject-list li a:hover,.topic-list li a:hover{background:var(--bg)}.subject-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.75rem}.subject-grid li a{display:flex;flex-direction:column;gap:.3rem;height:100%;padding:1rem;border:1px solid var(--border);border-radius:12px;color:inherit;text-decoration:none;transition:border-color .15s ease,box-shadow .15s ease}.subject-grid li a:hover{border-color:var(--accent);box-shadow:var(--shadow)}.subject-name{font-weight:600}.progress-bar{height:6px;background:var(--border);border-radius:3px;margin-top:.45rem;overflow:hidden}.progress-bar div{height:100%;background:var(--ok)}.inline-row{display:flex;gap:.5rem;margin-top:.3rem}.inline-row input{flex:1;margin-top:0}.email-line{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-top:1.1rem;padding-top:1rem;border-top:1px solid var(--border)}.field-label{font-size:.9rem;font-weight:500;color:var(--muted)}.danger-card{border-color:#fecaca}.danger-card h2{color:var(--danger)}.button.danger{background:var(--danger)}.button.danger:hover{background:#991b1b}.auth-divider{display:flex;align-items:center;gap:.75rem;margin:1.1rem 0;color:var(--muted);font-size:.85rem}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--border)}.google-button{display:flex;justify-content:center;min-height:44px}.method-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.8rem 0;border-bottom:1px solid var(--border)}.method-row:last-of-type{border-bottom:none}.method-row .field-label{display:flex;align-items:center;gap:.4rem}.method-google{flex-shrink:0}.method-google .google-button{justify-content:flex-end}.g-mark{display:inline-grid;place-items:center;width:18px;height:18px;border-radius:50%;border:1px solid var(--border);font-size:.7rem;font-weight:700;color:#4285f4;background:#fff}.forgot-link{align-self:flex-end;margin-top:-.5rem;font-size:.88rem;text-decoration:none}.verify-banner{display:flex;justify-content:space-between;align-items:center;gap:1rem;background:var(--warm-soft);border:1px solid #fed7aa;border-radius:12px;padding:.75rem 1rem;margin-bottom:1rem;font-size:.93rem}.verify-banner strong{display:block;margin-top:.25rem;font-weight:500;color:var(--warm)}.verify-banner .button{flex-shrink:0;padding:.45rem .9rem;font-size:.88rem}.mode-badge{display:inline-block;font-size:.76rem;font-weight:600;border-radius:999px;padding:.15rem .6rem;white-space:nowrap}.mode-course{background:var(--accent-soft);color:var(--accent)}.mode-skill{background:var(--warm-soft);color:var(--warm)}.mode-skill_plus{background:#fef3c7;color:#92400e}.path-row-head{display:flex;justify-content:space-between;align-items:center;gap:.75rem}.path-hero h1{margin:.5rem 0 1rem;font-size:1.9rem}.path-kicker{display:flex;align-items:center;flex-wrap:wrap;gap:.6rem}.path-kicker a{text-decoration:none}.path-progress{display:flex;align-items:center;gap:.9rem;margin-bottom:1.25rem}.path-progress .progress-bar{flex:1;margin-top:0}.progress-bar.big{height:9px;border-radius:5px}.mode-options{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.mode-option{display:flex;flex-direction:column;gap:.35rem;text-align:left;font:inherit;color:var(--text);background:#fff;border:1.5px solid var(--border);border-radius:12px;padding:1rem;cursor:pointer;transition:border-color .15s ease,background .15s ease}.mode-option span{color:var(--muted);font-size:.9rem}.mode-option:hover:not(:disabled){border-color:var(--accent)}.mode-option.active{border-color:var(--accent);background:var(--accent-soft)}.mode-option:disabled:not(.active){opacity:.55;cursor:default}.purpose-row{display:flex;gap:.5rem}.purpose-row input{flex:1}.role-chip{display:inline-block;margin-left:.4rem;font-size:.72rem;font-weight:600;color:#92400e;background:#fef3c7;border-radius:6px;padding:.05rem .4rem;vertical-align:1px}.topic-button{display:block;width:100%;text-align:left;font:inherit;color:inherit;background:none;border:none;padding:.85rem;border-radius:10px;cursor:pointer}.topic-button:hover:not(:disabled){background:var(--bg)}.topic-button:disabled{cursor:default;opacity:.7}.learn-this{margin-top:.4rem;font-size:.85rem;font-weight:600;color:var(--accent);opacity:0;transition:opacity .15s ease}.topic-button:hover .learn-this,.topic-button:focus-visible .learn-this{opacity:1}@media(hover:none){.learn-this{opacity:1}}.topic-list li{border-bottom:1px solid var(--border)}.topic-list li:last-child{border-bottom:none}.topic-head{display:flex;justify-content:space-between;gap:1rem}.topic-name{font-weight:600}.prereqs{font-size:.85rem;color:var(--muted);margin-top:.25rem}.note{font-size:.85rem;margin-top:.35rem;background:var(--warm-soft);padding:.4rem .6rem;border-radius:8px}.tag{display:inline-block;font-size:.8rem;background:var(--danger-soft);color:var(--danger);border-radius:6px;padding:.1rem .45rem;margin-top:.3rem}.tag.homework{background:var(--accent-soft);color:var(--accent)}.level{font-size:.78rem;font-weight:500;white-space:nowrap;padding:.18rem .55rem;border-radius:999px;background:var(--border);height:fit-content}.level-1{background:#fef3c7;color:#92400e}.level-2{background:#dbeafe;color:#1e40af}.level-3{background:var(--ok-soft);color:var(--ok)}.learn-layout{display:grid;grid-template-columns:360px minmax(0,1fr);grid-template-rows:minmax(0,1fr);height:100vh;height:100dvh;overflow:hidden}.learn-layout>.progress-panel,.learn-layout>.chat-page{min-height:0}.learn-layout .chat-page{height:100%;max-width:none;width:100%;padding:0 1.5rem}.progress-panel{border-right:1px solid var(--border);background:#fff;padding:1rem .75rem 1.5rem;overflow-y:auto}.panel-head{padding:0 .35rem .4rem}.panel-back{font-size:.85rem}.panel-title-row{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem;margin-top:.35rem}.panel-title{font-family:var(--font-display);font-weight:600;font-size:1.08rem;color:var(--text);text-decoration:none}.panel-title:hover{color:var(--accent)}.panel-sub{font-size:.8rem;margin-top:.2rem}.panel-head .progress-bar{margin:.45rem 0 .6rem}.panel-group{font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:1rem 0 .3rem .6rem}.trow{border-radius:10px;margin-bottom:2px;transition:background .15s ease}.trow.active{background:var(--accent-soft)}.trow.outside .tname{color:var(--muted)}.trow-head{display:flex;align-items:center;gap:.55rem;width:100%;padding:.55rem;border:none;background:none;font:inherit;color:inherit;text-align:left;cursor:pointer;border-radius:10px}.trow:not(.active) .trow-head:hover{background:var(--bg)}.tname{font-size:.9rem;font-weight:500;flex:1;line-height:1.3}.trow.active .tname{font-weight:700;color:var(--accent)}.here{font-size:.7rem;font-weight:700;color:var(--accent);background:#fff;border-radius:6px;padding:.05rem .4rem;white-space:nowrap}.chev{color:#94a3b8;font-size:1.1rem;line-height:1;transition:transform .15s ease}.chev.open{transform:rotate(90deg)}.ico{width:18px;height:18px;border-radius:50%;flex-shrink:0;display:grid;place-items:center;font-size:10px;font-weight:700;box-sizing:border-box}.ico-l0{border:2px solid #cbd5e1}.ico-l1{border:2px solid #f59e0b;background:conic-gradient(#f59e0b 0 33%,transparent 0)}.ico-l2{border:2px solid #3b82f6;background:conic-gradient(#3b82f6 0 66%,transparent 0)}.ico-l3{background:#16a34a;color:#fff}.ico-stuck{border:2px solid var(--danger);color:var(--danger);font-size:8px;letter-spacing:-1px}.trow-bars{display:flex;flex-wrap:wrap;gap:.3rem .55rem;margin:-.2rem 0 .35rem 2.15rem}.mini-track{display:inline-flex;align-items:center;gap:.25rem;font-size:.68rem;color:var(--muted)}.trow-detail{margin:0 .55rem .55rem 2.15rem;font-size:.82rem;background:#fff;border:1px solid var(--border);border-radius:10px;padding:.65rem}.trow.active .trow-detail{border-color:#c7d2fe}.detail-row{display:flex;justify-content:space-between;gap:.5rem;margin-bottom:.2rem}.trow-detail .note{margin:.45rem 0}.detail-status{font-size:.78rem;margin-top:.3rem}.detail-button{width:100%;margin-top:.5rem;padding:.45rem .7rem;font-size:.85rem}.trow.pulse{animation:row-pulse 1.6s ease 2}.upd-mark{display:inline-grid;place-items:center;width:18px;height:18px;border-radius:50%;flex-shrink:0;color:var(--ok);background:var(--ok-soft);cursor:help}.upd-mark.fresh{animation:upd-pop .6s ease 2}@keyframes upd-pop{50%{transform:scale(1.35)}}.detail-latest{font-size:.8rem;color:var(--ok);background:var(--ok-soft);border-radius:8px;padding:.35rem .55rem;margin:.35rem 0}@keyframes row-pulse{0%,to{box-shadow:none}50%{box-shadow:0 0 0 4px #16a34a47}}.progress-strip,.sheet-grab,.sheet-close,.sheet-scrim,.chat-back{display:none}.chat-page{display:flex;flex-direction:column;height:100vh;height:100dvh;max-width:860px;margin:0 auto;padding:0 1rem}.chat-header{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;padding:1rem 0 .75rem;border-bottom:1px solid var(--border)}.chat-title{min-width:0}.chat-title h1{overflow-wrap:anywhere}.level-meters{display:flex;flex-direction:column;gap:.3rem;flex-shrink:0}.level-meter{display:grid;grid-template-columns:5.2rem auto 1fr;align-items:center;gap:.5rem;font-size:.85rem}.meter-name{font-weight:600;color:var(--text)}.meter-bars{display:inline-flex;gap:3px}.meter-bars span{display:inline-block;width:22px;height:7px;border-radius:4px;background:var(--border)}.meter-bars span.filled{background:var(--ok)}.level-meter .muted{font-size:.82rem;white-space:nowrap}.tracks{display:flex;flex-wrap:wrap;gap:.4rem;margin:.35rem 0 .2rem}.track-chip{display:inline-flex;align-items:center;gap:.4rem;font-size:.8rem;color:var(--muted);background:var(--bg);border:1px solid var(--border);border-radius:999px;padding:.15rem .6rem}.track-name{font-weight:600;color:var(--text)}.mini-meter{display:inline-flex;gap:2px}.mini-meter i{display:inline-block;width:10px;height:5px;border-radius:3px;background:var(--border)}.mini-meter i.on{background:var(--ok)}.mini-mem{display:inline-flex;gap:3px;align-items:center}.mini-mem i{display:inline-block;width:6px;height:6px;border-radius:50%;border:1.5px solid #7c3aed;box-sizing:border-box}.mini-mem i.on{background:#7c3aed}.meter-bars.memory span{width:9px;height:9px;border-radius:50%;background:#fff;border:2px solid #7c3aed;box-sizing:border-box;margin-right:13px}.meter-bars.memory span.filled{background:#7c3aed}.ico-retained{background:#7c3aed;color:#fff;font-size:9px}.seg-retained{background:#7c3aed}.mem-tag{font-size:.66rem;font-weight:700;border-radius:999px;padding:0 .45rem;white-space:nowrap;margin-left:auto}.mem-tag.due{color:#b45309;background:var(--warm-soft);border:1px solid #fed7aa}.mem-tag.later{color:var(--muted, #6b7280);background:transparent;border:1px dashed #d1d5db;font-weight:600}.mem-tag.kept{color:#6d28d9;background:#f5f3ff;border:1px solid #ddd6fe}.mem-tag+.here,.mem-tag+.chev,.mem-tag+.upd-mark{margin-left:.3rem}.review-strip{display:inline-flex;align-items:center;gap:.5rem;margin:.35rem .4rem 0 0;font-size:.85rem;font-weight:600;color:#5b21b6;background:#f5f3ff;border:1px solid #ddd6fe;border-radius:999px;padding:.25rem .8rem}.review-dots{display:inline-flex;gap:4px}.review-dots i{width:8px;height:8px;border-radius:50%;background:#ddd6fe;display:inline-block}.review-dots i.done{background:#7c3aed}.due-link{display:inline-block;margin:.35rem .4rem 0 0;font-size:.8rem;font-weight:600;color:#6d28d9;background:#f5f3ff;border:1px solid #ddd6fe;border-radius:999px;padding:.2rem .7rem;text-decoration:none}.due-link:hover{background:#ede9fe}.checkin-card{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;background:#f5f3ff;border:1px solid #ddd6fe;border-radius:var(--radius);padding:.9rem 1.1rem}.checkin-card.slipped{background:var(--warm-soft);border-color:#fed7aa}.checkin-text b{display:block;font-family:var(--font-display);font-size:1.08rem;margin-bottom:.15rem}.checkin-text>span{font-size:.92rem;color:#44403c}.checkin-results{display:grid;grid-template-columns:auto 1fr;gap:.2rem 1rem;font-size:.9rem;margin-top:.3rem}.checkin-results .held{color:var(--ok);font-weight:600}.checkin-results .slip{color:#b45309;font-weight:600}.checkin-actions{display:flex;gap:.5rem;flex-wrap:wrap}@media(max-width:600px){.checkin-results{grid-template-columns:1fr;gap:0 0}.checkin-results span:nth-child(2n){margin-bottom:.35rem}}.checkin-next,.checkin-card .button{background:#6d28d9}.checkin-card .button.secondary{background:#fff;color:#6d28d9}.warmup-card{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;background:linear-gradient(135deg,#f5f3ff,#fff);border-color:#ddd6fe}.warmup-card b{font-family:var(--font-display);font-size:1.15rem}.warmup-card .button{background:#6d28d9}.warmup-topics{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}.warmup-topics span{font-size:.78rem;border:1px solid var(--border);border-radius:999px;padding:.1rem .6rem;background:#fff}.messages{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:1rem 0}.chat-header,.updates,.banner,.composer{flex-shrink:0}.message{display:flex;margin-bottom:.85rem}.message.user{justify-content:flex-end}.bubble{max-width:85%;padding:.75rem 1rem;border-radius:16px;background:var(--card);border:1px solid var(--border);line-height:1.55;overflow-x:auto;box-shadow:var(--shadow)}.message.assistant .bubble{border-top-left-radius:6px}.message.user .bubble{background:var(--user-bubble);color:var(--user-text);border-color:var(--user-bubble);border-top-right-radius:6px}.bubble p{margin:.35rem 0}.bubble p:first-child{margin-top:0}.bubble p:last-child{margin-bottom:0}.bubble pre{background:#f1f5f9;color:var(--text);padding:.6rem;border-radius:8px;overflow-x:auto}.bubble .katex-display{margin:.6rem 0;overflow-x:auto;overflow-y:hidden}.bubble.typing{color:var(--muted)}.tutor-figure{margin:.7rem 0 .2rem}.figure-button{display:block;width:100%;max-width:560px;padding:0;border:1px solid var(--border);border-radius:10px;background:#fff;cursor:zoom-in;overflow:hidden;max-width:100%}.figure-button img{display:block;width:100%;min-width:min(360px,100%);max-width:560px;height:auto}.tutor-figure.enlarged .figure-button{cursor:zoom-out;max-width:900px}.bubble:has(.tutor-figure.enlarged){max-width:100%}.tutor-figure.enlarged .figure-button img{max-width:min(900px,100%)}.tutor-figure figcaption{font-size:.85rem;color:var(--muted);margin-top:.4rem;display:flex;flex-direction:column;gap:.1rem}.tutor-figure figcaption b{color:var(--text);font-weight:600}.updates{display:flex;flex-wrap:wrap;gap:.4rem;padding-bottom:.5rem}.update{font-size:.8rem;background:var(--ok-soft);color:var(--ok);border-radius:999px;padding:.2rem .65rem}.banner{display:flex;align-items:center;justify-content:space-between;gap:1rem;background:var(--accent-soft);padding:.75rem 1rem;border-radius:12px;margin-bottom:.5rem}.next-chip{display:inline-flex;align-items:center;gap:.35rem;margin-top:.35rem;font:inherit;font-size:.85rem;font-weight:600;color:var(--ok);background:var(--ok-soft);border:1px solid #bbf7d0;border-radius:999px;padding:.25rem .8rem;cursor:pointer;text-decoration:none;max-width:100%}.next-chip:hover:not(:disabled){background:#bbf7d0}.next-chip.defer{color:#b45309;background:var(--warm-soft);border-color:#fed7aa}.next-chip.defer:hover:not(:disabled){background:#fed7aa}.next-chip.basic{color:var(--accent);background:var(--accent-soft);border-color:#c7d2fe}.next-chip.basic:hover:not(:disabled){background:#c7d2fe}.next-chip.fresh{animation:chip-pop .7s ease 2}@keyframes chip-pop{50%{transform:scale(1.06);box-shadow:0 0 0 4px #16a34a2e}}.next-chip:disabled{opacity:.7;cursor:default}.composer{padding:.4rem 0 calc(1rem + env(safe-area-inset-bottom))}.tc{font-weight:600}.tc-blue{color:#1d4ed8}.tc-green{color:#15803d}.tc-red{color:#b91c1c}.tc-purple{color:#7e22ce}.message.user .tc{color:inherit}.note-card{margin-top:.8rem;border:1px solid #e5e0cf;border-left:4px solid #d4a72c;border-radius:10px;background:#fffdf5;padding:.7rem .95rem .8rem}.note-head{display:flex;align-items:center;gap:.35rem;font-size:.75rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#a16207}.note-title{font-family:var(--font-display);font-weight:600;font-size:1.02rem;margin:.2rem 0 .35rem}.note-card ol,.note-card ul{margin:.2rem 0 0;padding-left:1.35rem}.note-card li{margin:.2rem 0}.cornell{display:grid;grid-template-columns:minmax(0,.38fr) minmax(0,.62fr);margin-top:.3rem;border-top:1px solid #e5e0cf}.cornell-cue,.cornell-note{padding:.4rem .6rem .4rem 0;border-bottom:1px solid #efe9d6}.cornell-cue{font-weight:600;font-size:.9rem;color:#57534e;border-right:2px solid #f0b4b4}.cornell-note{padding-left:.7rem}.note-prompt{margin-top:.55rem;font-size:.9rem;color:#57534e}.note-prompt:before{content:"Your turn: ";font-weight:700;color:#a16207}.color-legend{display:flex;flex-wrap:wrap;gap:.35rem .8rem;align-items:center;padding:.8rem .25rem .4rem;margin-top:.4rem;border-top:1px solid var(--border);font-size:.78rem;color:var(--muted);cursor:help}.legend-title{width:100%;font-weight:600;font-size:.72rem;letter-spacing:.04em;text-transform:uppercase}.legend-item{display:inline-flex;align-items:center;gap:.3rem}.legend-item i{width:.6rem;height:.6rem;border-radius:50%;display:inline-block}.touch-grass{display:flex;align-items:center;gap:.9rem;background:var(--ok-soft);border:1px solid #bbf7d0;border-radius:var(--radius);padding:.9rem 1.1rem;color:#14532d}.touch-grass .grass{flex-shrink:0;color:var(--ok)}.touch-grass b{display:block;font-family:var(--font-display);font-size:1.1rem;font-weight:600;margin-bottom:.15rem}.touch-grass span{font-size:.92rem}.touch-grass.compact{margin-top:.9rem}.usage-note{display:inline-block;margin:.35rem .4rem 0 0;font-size:.8rem;font-weight:600;color:#b45309;background:var(--warm-soft);border:1px solid #fed7aa;border-radius:999px;padding:.2rem .7rem;cursor:help}.study-meters{display:grid;gap:.9rem;margin:.6rem 0 .8rem}.study-meter-top{display:flex;justify-content:space-between;gap:1rem;font-size:.95rem}.study-meter .progress-bar div.full{background:#d97706}.admin-page{max-width:1180px}.admin-lede{margin-top:-.4rem}.admin-days{margin-bottom:0}.admin-days button,.admin-section-head .tabs button{padding:.35rem .75rem;white-space:nowrap}.admin-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin:1rem 0}.admin-tile{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:.85rem 1rem;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:.15rem}.admin-tile span{font-size:.82rem;color:var(--muted)}.admin-tile b{font-size:1.45rem;font-family:var(--font-display)}.admin-tile small{font-size:.78rem;color:var(--muted)}.admin-tile.bad b{color:var(--danger)}.admin-section-head{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}.admin-section-head h2{margin:0 0 1rem}.admin-section-head .tabs{max-width:100%;overflow-x:auto}.admin-table-wrap{overflow-x:auto;margin:0 -.35rem}.admin-table{width:100%;border-collapse:collapse;font-size:.88rem}.admin-table th{text-align:left;font-weight:600;font-size:.78rem;color:var(--muted);padding:.4rem .5rem;border-bottom:1px solid var(--border);white-space:nowrap}.admin-table td{padding:.55rem .5rem;border-bottom:1px solid var(--border);vertical-align:top}.admin-table .num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.admin-table tr.flagged td{background:#fffbeb}.admin-table select{width:auto;font-size:.85rem;padding:.2rem 1.8rem .2rem .4rem;border-radius:6px;background-position:right .5rem center}.admin-user{font-weight:600}.admin-flag{display:inline-block;white-space:nowrap;margin:.25rem .3rem 0 0;font-size:.72rem;font-weight:600;border-radius:999px;padding:.05rem .5rem;background:var(--warm-soft);color:#b45309}.admin-flag.flag-costs_more_than_pays{background:var(--danger-soft);color:var(--danger)}.admin-flag.flag-paused{background:var(--accent-soft);color:var(--accent)}.limit-cell.warning{color:#b45309;font-weight:600}.limit-cell.paused{color:var(--danger);font-weight:600}.standing{font-size:.8rem;font-weight:600;white-space:nowrap}.standing-ok{color:var(--ok)}.standing-warn{color:#b45309}.standing-bad{color:var(--danger)}.standing-muted{color:var(--muted)}.admin-actions{white-space:nowrap}.admin-actions .link-button{display:block;font-size:.85rem;margin-bottom:.3rem}@media(max-width:760px){.admin-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}.composer-box{display:flex;align-items:flex-end;gap:.5rem;background:#fff;border:1px solid var(--border);border-radius:18px;padding:.55rem .55rem .55rem 1rem;box-shadow:0 1px 2px #0f172a0a,0 6px 20px #0f172a12;cursor:text;transition:border-color .15s ease,box-shadow .15s ease}.composer-box:focus-within{border-color:#a5b4fc;box-shadow:0 0 0 3px #6366f11f,0 6px 20px #0f172a12}.composer-box.disabled{background:var(--bg);cursor:default}.composer-box textarea{flex:1;border:none;outline:none;resize:none;background:transparent;padding:.35rem 0;margin:0;font:inherit;line-height:1.5;min-height:24px;max-height:40vh;overflow-y:hidden;box-shadow:none}.composer-box textarea:focus{box-shadow:none}.send-button{flex-shrink:0;width:36px;height:36px;border-radius:12px;border:none;display:grid;place-items:center;background:var(--accent);color:#fff;cursor:pointer;transition:background .15s ease,opacity .15s ease}.send-button:hover:not(:disabled){background:#3730a3}.send-button:disabled{opacity:.35;cursor:default}.role-chip.suggested{color:#6d28d9;background:#ede9fe}.trow-branch{display:flex;align-items:center;gap:.35rem;margin:-.25rem .55rem .4rem 2.15rem;font-size:.78rem;color:#b45309;line-height:1.3}.branch-count{margin-left:auto;font-size:.68rem;font-weight:700;color:#92400e;background:#fef3c7;border-radius:6px;padding:.05rem .4rem;white-space:nowrap}.branch-count.second{color:var(--danger);background:var(--danger-soft)}.tangent-start{display:flex;align-items:center;flex-wrap:wrap;gap:.45rem;margin:.4rem 0 .6rem}.tangent-pill{font-size:.8rem;font-weight:600;color:#b45309;background:#fef3c7;border-radius:12px;padding:.2rem .7rem}.tangent-verdict{font-size:.75rem;color:var(--muted);border:1px solid var(--border);border-radius:999px;padding:.12rem .55rem}.tangent-verdict.worth{color:#047857;border-color:#a7f3d0;background:#ecfdf5}.message.in-tangent{border-left:2px dashed #f59e0b;padding-left:.75rem;margin-left:.2rem}.message.in-tangent.assistant .bubble{background:#fffbeb;border-color:#fde68a}.message.in-tangent.user .bubble{background:#d97706;border-color:#d97706}.tangent-suggest{display:flex;align-items:center;justify-content:space-between;gap:1rem;background:#fff;border:1.5px solid #fde68a;border-radius:14px;padding:.8rem 1rem;margin:0 0 .85rem .2rem;box-shadow:var(--shadow)}.tangent-suggest b{display:block;margin-bottom:.2rem}.tangent-suggest span{font-size:.88rem;color:var(--muted)}.tangent-actions{display:flex;gap:.5rem;flex-shrink:0}.tangent-actions .button{padding:.5rem .85rem;font-size:.88rem}.tangent-added{font-size:.85rem;color:var(--ok);background:var(--ok-soft);border-radius:10px;padding:.45rem .8rem;margin:0 0 .85rem .2rem}.tangent-end{display:flex;align-items:center;gap:.6rem;font-size:.78rem;color:var(--muted);margin:.2rem 0 .9rem}.tangent-end:before{content:"";width:28px;height:2px;border-radius:1px;background:#f59e0b}.tangent-end:after{content:"";flex:1;height:1px;background:var(--border)}.report-kicker{font-size:.76rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent)}.report-hero .path-progress{margin-bottom:.6rem}.small-print{font-size:.85rem;margin:.35rem 0}.group-counts{display:flex;flex-wrap:wrap;gap:.5rem 1.1rem;margin:.8rem 0 .4rem;font-size:.9rem}.group-count{display:inline-flex;align-items:center;gap:.4rem;color:var(--muted)}.group-count b{color:var(--text)}.dot{width:10px;height:10px;border-radius:50%;display:inline-block}.dot-understood{background:#16a34a}.dot-in_progress{background:#3b82f6}.dot-stuck{background:var(--danger)}.dot-not_started{background:#cbd5e1}.report-paths{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.7rem}.path-link{font-size:.82rem;font-weight:600;text-decoration:none;background:var(--accent-soft);border-radius:999px;padding:.2rem .7rem}.tutor-summary{border-color:#c7d2fe}.tutor-summary h3,.report-page h3{font-size:.8rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);margin:1.1rem 0 .45rem}.tutor-summary .overview{font-size:1.02rem;line-height:1.6}.tutor-summary .overview p{margin:0 0 .5rem}.tutor-summary li p{margin:0;display:inline}.writing{display:flex;align-items:center;gap:.6rem}.sg-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 1.5rem}.sg-col ul{list-style:none;padding:0;margin:0}.sg-col li{position:relative;padding:.3rem 0 .3rem 1.5rem;line-height:1.5}.sg-col li:before{position:absolute;left:0;top:.3rem;font-weight:700}.strengths li:before{content:"✓";color:var(--ok)}.gaps li:before{content:"→";color:#d97706}.next-steps{margin:0;padding-left:1.3rem}.next-steps li{padding:.3rem 0;line-height:1.5}.step-link{display:inline-block;margin-left:.4rem;font-size:.88rem;font-weight:600;text-decoration:none;white-space:nowrap}.summary-foot{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .8rem;margin-top:1.1rem;padding-top:.8rem;border-top:1px solid var(--border);font-size:.85rem}.stale-note{color:#b45309}.small-button{padding:.35rem .8rem;font-size:.85rem}.track-compare{display:flex;flex-direction:column;gap:.55rem}.track-row{display:grid;grid-template-columns:5.5rem 1fr 3.5rem;align-items:center;gap:.75rem;font-size:.9rem}.track-row .track-name{font-weight:600}.track-value{white-space:nowrap}.track-meter{height:9px;background:var(--border);border-radius:5px;overflow:hidden}.track-meter div{height:100%;background:var(--accent)}.track-meter.procedure div{background:#0d9488}.filter-chips{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.6rem}.filter-chip{font:inherit;font-size:.85rem;font-weight:600;color:var(--muted);background:var(--bg);border:1px solid var(--border);border-radius:999px;padding:.3rem .8rem;cursor:pointer}.filter-chip span{font-weight:500;margin-left:.2rem}.filter-chip.active{color:var(--accent);background:var(--accent-soft);border-color:#c7d2fe}.report-topics{list-style:none;padding:0;margin:0}.rtopic{border-bottom:1px solid var(--border)}.rtopic:last-child{border-bottom:none}.rtopic-head{display:flex;align-items:center;gap:.75rem;width:100%;padding:.75rem .4rem;border:none;background:none;font:inherit;color:inherit;text-align:left;cursor:pointer;border-radius:10px}.rtopic-head:hover{background:var(--bg)}.rtopic-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:.15rem}.rtopic-name{font-weight:600}.rtopic-status{font-size:.82rem;color:var(--muted)}.group-stuck .rtopic-status{color:var(--danger)}.group-understood .rtopic-status{color:var(--ok)}.group-not_started .rtopic-name{color:var(--muted);font-weight:500}.rtopic-tracks{display:flex;flex-direction:column;align-items:flex-end;gap:.2rem}.rtopic-detail{margin:0 .4rem .9rem 2.35rem;font-size:.9rem}.rtopic-detail>p:first-child{margin-top:0}.history{margin:.7rem 0 .2rem;font-size:.85rem}.history ol{list-style:none;padding:0;margin:.3rem 0 0;border-left:2px solid var(--border)}.history li{padding:.15rem 0 .15rem .75rem}.history-date{display:inline-block;min-width:3.6rem;font-weight:600;color:var(--muted)}.rtopic-detail .detail-button{width:auto}.confirm-name{display:flex;flex-direction:column;gap:.35rem}.confirm-row{display:flex;align-items:center;flex-wrap:wrap;gap:.6rem}.confirm-title{font-family:inherit;font-weight:600;background:var(--danger-soft);color:var(--danger);border-radius:6px;padding:.2rem .55rem;overflow-wrap:anywhere;-webkit-user-select:all;user-select:all}.match-card{margin-top:1rem;border:1.5px solid #c7d2fe;background:#fbfbff;border-radius:14px;padding:1rem 1.1rem .8rem}.match-kicker{font-size:.74rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent)}.match-name{font-family:var(--font-display);font-size:1.3rem;margin:.25rem 0 .4rem}.profile-chips{display:flex;flex-wrap:wrap;gap:.35rem;margin:.3rem 0 .5rem}.profile-chip{display:inline-block;font-size:.78rem;font-weight:600;color:#3730a3;background:var(--accent-soft);border-radius:10px;padding:.15rem .6rem}.small-chip{font-size:.7rem;padding:.1rem .5rem;margin:.2rem 0 .3rem}.match-scope{margin:.2rem 0 .5rem;font-size:.92rem}.match-summary{margin:.4rem 0 .2rem}.match-card .button-row{align-items:center;margin:.8rem 0 .4rem}.match-browse{font-size:.9rem}.match-cancel{font-size:.85rem;color:var(--muted)}.report-link{font-size:.85rem;font-weight:600;text-decoration:none}.print-button{padding:.4rem .9rem;font-size:.88rem}@media print{body{background:#fff}.topbar,.filter-chips,.detail-button,.summary-foot button,.step-link,.chev{display:none!important}.card{box-shadow:none;break-inside:avoid}.rtopic{break-inside:avoid}}@media(max-width:860px){.learn-layout{display:block;max-width:none}.learn-layout .chat-page{padding:0 .75rem}.chat-back{display:inline}.panel-back{display:none}.chat-header{flex-direction:column;align-items:stretch;gap:.45rem}.progress-strip{display:flex;align-items:center;gap:.55rem;width:100%;background:#fff;border:1px solid var(--border);border-radius:12px;padding:.45rem .6rem;font:inherit;cursor:pointer}.strip-segments{display:flex;gap:4px;flex:1}.seg{flex:1;height:7px;border-radius:4px;background:var(--border)}.seg-l1{background:#fcd34d}.seg-l2{background:#93c5fd}.seg-l3{background:#16a34a}.seg-stuck{background:#fca5a5}.seg.current{outline:2px solid var(--accent);outline-offset:1px}.seg.pulse{animation:seg-pulse 1.6s ease 2}@keyframes seg-pulse{50%{transform:scaleY(1.8)}}.strip-count{font-size:.78rem;color:var(--muted);white-space:nowrap}.strip-chev{color:var(--accent);font-size:.8rem}.strip-new{width:8px;height:8px;border-radius:50%;background:var(--ok);box-shadow:0 0 0 3px var(--ok-soft);flex-shrink:0}.progress-panel{position:fixed;left:0;right:0;bottom:0;z-index:40;height:82vh;height:82dvh;border-right:none;border-radius:18px 18px 0 0;box-shadow:0 -8px 30px #0f172a2e;padding:0 1rem calc(1.25rem + env(safe-area-inset-bottom));transform:translateY(105%);visibility:hidden;transition:transform .25s ease,visibility 0s linear .25s}.progress-panel.open{transform:none;visibility:visible;transition:transform .25s ease}.sheet-grab{display:block;width:100%;border:none;padding:.6rem 0 .7rem;position:sticky;top:0;background:#fff;z-index:1;touch-action:none;cursor:pointer}.sheet-grab span{display:block;width:40px;height:5px;border-radius:3px;background:#cbd5e1;margin:0 auto}.sheet-close{display:block;background:none;border:none;font-size:1.6rem;line-height:1;color:var(--muted);cursor:pointer;padding:0 .2rem}.sheet-scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;background:#0f172a73;border:none;padding:0;cursor:pointer}.panel-title{font-size:1.15rem}.trow-head{padding:.7rem .55rem}.tname{font-size:.97rem}.ico{width:20px;height:20px}.detail-button{padding:.65rem;font-size:.95rem}}@media(prefers-reduced-motion:reduce){.trow.pulse,.seg.pulse,.upd-mark.fresh,.next-chip.fresh{animation:none}.progress-panel,.progress-panel.open{transition:none}}@media(max-width:600px){.request-row{flex-direction:column}.continue{flex-direction:column;align-items:flex-start}.greeting{font-size:1.6rem}.page{padding-top:.75rem}.card{padding:1.1rem}.topic-head{flex-wrap:wrap;gap:.4rem}.chat-page{padding:0 .75rem}.chat-header{flex-direction:column;align-items:stretch;gap:.4rem;padding:.6rem 0}.chat-header h1{font-size:1.25rem;margin:.15rem 0 0}.level-meters{gap:.2rem}.level-meter{grid-template-columns:4.6rem auto 1fr;font-size:.8rem}.meter-bars span{width:18px;height:6px}.messages{padding:.75rem 0}.bubble{max-width:92%;padding:.65rem .85rem}.banner{padding:.55rem .75rem;gap:.6rem;font-size:.92rem}.banner .button{padding:.45rem .8rem;font-size:.88rem;flex-shrink:0}.composer-box{padding-left:.85rem}.mode-options{grid-template-columns:1fr}.verify-banner{flex-direction:column;align-items:flex-start}.inline-row,.purpose-row{flex-direction:column}.path-hero h1{font-size:1.5rem}.path-progress{flex-direction:column;align-items:stretch;gap:.4rem}.path-progress .progress-bar{flex:none;width:100%}.tangent-suggest{flex-direction:column;align-items:stretch}.sg-grid{grid-template-columns:1fr}.method-row{flex-direction:column;align-items:stretch}.method-google .google-button{justify-content:flex-start}.rtopic-head{flex-wrap:wrap}.rtopic-tracks{order:3;flex-direction:row;flex-wrap:wrap;gap:.6rem;width:100%;padding-left:2.1rem;align-items:center}.rtopic-detail{margin-left:.4rem}.track-row{grid-template-columns:5rem 1fr 3.2rem}.tangent-actions .button{flex:1}}.cs-done{--cs: #16a34a;--cs-soft: #dcfce7;--cs-text: #15803d}.cs-done_late{--cs: #84cc16;--cs-soft: #ecfccb;--cs-text: #4d7c0f}.cs-in_progress{--cs: #60a5fa;--cs-soft: #dbeafe;--cs-text: #1d4ed8}.cs-stuck{--cs: #f59e0b;--cs-soft: #fef3c7;--cs-text: #b45309}.cs-late{--cs: #dc2626;--cs-soft: #fee2e2;--cs-text: #b91c1c}.cs-not_started{--cs: #e2e8f0;--cs-soft: #f1f5f9;--cs-text: #64748b}.class-status{display:inline-block;font-size:.72rem;font-weight:700;border-radius:999px;padding:.05rem .55rem;background:var(--cs-soft);color:var(--cs-text);white-space:nowrap}.class-status-side{display:inline-flex;gap:.35rem;align-items:center;flex-shrink:0}.due-chip{font-size:.72rem;font-weight:600;color:var(--muted);background:var(--bg);border:1px solid var(--border);border-radius:999px;padding:.02rem .5rem;white-space:nowrap}.due-chip.late{color:var(--danger);background:var(--danger-soft);border-color:#fecaca}.mode-badge.mode-class{background:#fef3c7;color:#92400e}.class-note{margin:-.3rem 0 .8rem}.class-list{list-style:none;margin:0;padding:0}.class-item{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.35rem 1rem;padding:.8rem 0;border-bottom:1px solid var(--border)}.class-item:last-child{border-bottom:none}.class-head{display:flex;flex-direction:column;gap:.1rem;text-decoration:none;color:inherit;min-width:0}.class-head .subject-name{color:var(--accent)}.class-due{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.25rem;min-width:14rem}.class-due li{display:flex;justify-content:space-between;gap:.6rem;font-size:.9rem}.class-due a{color:var(--text);text-decoration:none}.class-due a:hover{color:var(--accent)}.join-row{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-top:.8rem;padding-top:.8rem;border-top:1px solid var(--border)}.join-row input{width:8rem;text-transform:uppercase;letter-spacing:.08em}.join-card{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;padding:.9rem 1.2rem}.join-card>span{flex:1;min-width:14rem}.join-card input{width:9rem;text-transform:uppercase;letter-spacing:.08em;font-weight:600}.join-error{width:100%;margin:0}.class-code{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-weight:700;letter-spacing:.06em;color:#92400e;background:#fef3c7;border-radius:6px;padding:.1rem .45rem;white-space:nowrap}.class-code.big{font-size:1rem;padding:.3rem .7rem}.section-head{display:flex;justify-content:space-between;align-items:center;gap:1rem}.section-head h2{margin-bottom:.5rem}.class-page{max-width:none;padding-left:1.5rem;padding-right:1.5rem}.class-title{margin-bottom:.2rem}.class-sub{margin:0 0 1rem}.class-tabs{width:fit-content;max-width:100%;overflow-x:auto}.class-tabs button{white-space:nowrap;flex:0 0 auto;padding:.5rem .85rem}.help-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem}.help-card h3{margin:0 0 .5rem;font-size:1rem}.help-card ul{margin:0;padding-left:1.1rem}.help-card li{margin:.25rem 0;font-size:.92rem}.grid-card{padding:1rem}.grid-legend{display:flex;flex-wrap:wrap;gap:.4rem 1rem;font-size:.8rem;color:var(--muted);margin-bottom:.7rem}.grid-legend span{display:inline-flex;align-items:center;gap:.35rem}.grid-legend .cell{width:12px;height:12px}.grid-wrap{overflow-x:auto}.class-grid{border-collapse:separate;border-spacing:0;font-size:.85rem}.class-grid th,.class-grid td{padding:.3rem .35rem;border-bottom:1px solid var(--border);background:#fff}.class-grid th{font-size:.72rem;font-weight:600;color:var(--muted);vertical-align:bottom;text-align:left;background:transparent}.class-grid th.grid-student{background:#fff}.class-grid .num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;padding-right:.8rem}.grid-student{position:sticky;left:0;z-index:1;min-width:10rem;max-width:14rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.grid-student a{color:var(--text);text-decoration:none;font-weight:600}.grid-student a:hover{color:var(--accent)}.grid-topic{width:2.7rem;min-width:2.7rem;max-width:2.7rem;height:9.5rem;position:relative}.grid-topic-name{position:absolute;left:1.15rem;bottom:1.5rem;width:10.5rem;transform-origin:0 100%;transform:rotate(-58deg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;font-size:.74rem;color:var(--text);font-weight:500}.grid-due{position:absolute;bottom:.25rem;left:-.4rem;right:-.4rem;text-align:center;font-size:.62rem;color:var(--muted);white-space:nowrap}.grid-cell{text-align:center}.cell{display:inline-block;width:22px;height:22px;border-radius:5px;background:var(--cs);vertical-align:middle}a.cell:hover{outline:2px solid var(--text);outline-offset:1px}.topic-table{width:100%;border-collapse:collapse;font-size:.9rem}.topic-table th{text-align:left;font-size:.75rem;font-weight:600;color:var(--muted);padding:.4rem;border-bottom:1px solid var(--border);white-space:nowrap}.topic-table td{padding:.4rem;border-bottom:1px solid var(--border);vertical-align:middle}.topic-table tr.excluded .topic-name-cell{color:var(--muted);text-decoration:line-through}.topic-table select,.topic-table input[type=date]{width:auto;font:inherit;font-size:.85rem;padding:.25rem .35rem;border:1px solid var(--border);border-radius:6px;background-color:#fff}.topic-table select{padding-right:1.8rem;background-position:right .5rem center;margin-top:0}.topic-name-cell{min-width:14rem}.save-state{font-size:.78rem;color:var(--ok);white-space:nowrap;width:4.5rem}.people-list{list-style:none;margin:.5rem 0 0;padding:0}.people-list li{display:flex;align-items:baseline;gap:.5rem;flex-wrap:wrap;padding:.45rem 0;border-bottom:1px solid var(--border)}.people-list li:last-child{border-bottom:none}.people-list .danger-link{margin-left:auto}.danger-link{color:var(--danger);font-size:.85rem}.invite-row{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.8rem}.invite-row input{flex:1;min-width:14rem}.invite-row select{width:auto;padding:.45rem 2.2rem .45rem .6rem}.settings-row{display:flex;gap:1rem;flex-wrap:wrap}.settings-row label{flex:1;min-width:14rem}.settings-row select{padding:.5rem 2.2rem .5rem .7rem;margin-top:.3rem}.student-topics{list-style:none;margin:0;padding:0}.student-topics>li{border-bottom:1px solid var(--border)}.student-topics>li:last-child{border-bottom:none}.st-head{display:flex;align-items:center;gap:.7rem;width:100%;padding:.65rem .2rem;border:none;background:none;font:inherit;color:inherit;text-align:left;cursor:pointer}.st-head .class-status{min-width:6.5rem;text-align:center}.st-name{flex:1;font-weight:600}.st-time{min-width:4.5rem;text-align:right}.st-detail{padding:0 .2rem 1rem 7.4rem}.st-convo-title{font-size:.95rem;margin:1rem 0 .5rem}.transcript{display:flex;flex-direction:column;gap:.6rem;max-height:32rem;overflow-y:auto;padding:.6rem;background:var(--bg);border-radius:12px}.msg-time{font-size:.7rem;opacity:.7;margin-bottom:.2rem}.transcript-figure{max-width:100%;margin-top:.5rem;border:1px solid var(--border);border-radius:8px;background:#fff}@media(max-width:760px){.st-detail{padding-left:.2rem}.class-page{padding-left:1rem;padding-right:1rem}.class-due{min-width:0;width:100%}}.check-row{display:flex;gap:.55rem;align-items:flex-start;font-weight:400}.check-row input{margin-top:.3rem}.stack>.tabs{margin-bottom:0}.join-note{width:100%;margin:0}.safety-banner{display:flex;align-items:center;gap:.6rem;padding:.75rem 1rem;margin:0 0 1rem;border-radius:var(--radius);border:1px solid #fed7aa;background:var(--warm-soft);color:var(--warm);font-weight:600;text-decoration:none}.safety-banner.urgent{border-color:#fecaca;background:var(--danger-soft);color:var(--danger)}.safety-banner:hover{filter:brightness(.98)}.safety-dot{width:10px;height:10px;border-radius:50%;background:currentColor;flex-shrink:0}.safety-banner.urgent .safety-dot{animation:safety-pulse 1.6s ease-in-out infinite}@keyframes safety-pulse{0%,to{opacity:1}50%{opacity:.35}}.safety-go{margin-left:auto;font-weight:500;white-space:nowrap}.safety-tabs{max-width:26rem}.safety-flag{border-left:4px solid var(--border)}.safety-flag.sf-concern{border-left-color:var(--warm)}.safety-flag.sf-urgent{border-left-color:var(--danger)}.safety-flag.reviewed{opacity:.75;border-left-color:var(--border)}.safety-flag.focused{box-shadow:0 0 0 3px #4338ca2e,var(--shadow)}.sf-head{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem}.sf-head .muted{margin-left:auto}.sf-urgency{font-size:.78rem;font-weight:600;padding:.15rem .55rem;border-radius:999px;background:var(--bg);color:var(--muted);border:1px solid var(--border)}.sf-u-concern{background:var(--warm-soft);color:var(--warm);border-color:#fed7aa}.sf-u-urgent{background:var(--danger-soft);color:var(--danger);border-color:#fecaca}.sf-who{display:flex;align-items:baseline;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.sf-summary{margin:.5rem 0 .75rem}.sf-conversation{display:flex;flex-direction:column;gap:.5rem;padding:.75rem;background:var(--bg);border:1px solid var(--border);border-radius:10px;margin-bottom:.5rem}.sf-message{font-size:.93rem;padding:.5rem .7rem;border-radius:8px;background:#fff;border:1px solid var(--border)}.sf-message.flagged{border-color:var(--danger);box-shadow:inset 3px 0 0 var(--danger)}.sf-message p{margin:.2rem 0}.sf-role{display:block;font-size:.78rem;font-weight:600;color:var(--muted);margin-bottom:.15rem}.sf-reviewed{margin-top:.5rem;padding:.6rem .8rem;border-radius:10px;background:var(--ok-soft);color:var(--ok);font-size:.9rem}.sf-reviewed p{margin:.3rem 0;color:var(--text)}.help-lines{margin-top:.8rem;padding:.7rem .9rem;border-radius:10px;background:var(--accent-soft);border:1px solid #c7d2fe;color:var(--text);font-size:.92rem}.help-lines-head{font-weight:600;color:var(--accent);margin-bottom:.3rem}.help-lines ul{margin:0;padding-left:1.1rem}.help-lines li{margin:.2rem 0}.order-cell{white-space:nowrap}.order-controls{display:inline-flex;align-items:center;gap:.2rem}.order-button{font:inherit;font-size:.9rem;line-height:1;width:1.7rem;height:1.7rem;border:1px solid var(--border);border-radius:6px;background:#fff;color:var(--accent);cursor:pointer;padding:0}.order-button:hover:not(:disabled){border-color:var(--accent)}.order-button:disabled{color:var(--border);cursor:default}.topic-table input.order-input{width:3.2rem;font:inherit;font-size:.85rem;padding:.25rem .3rem;border:1px solid var(--border);border-radius:6px;text-align:center}.topic-table tr.moving td{background:var(--accent-soft)}.topic-divider td{font-size:.75rem;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;padding-top:1.1rem}.topic-divider td span{text-transform:none;letter-spacing:0;font-weight:400;font-size:.8rem}.start-midway{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1.25rem;padding:.85rem 1rem;margin:.75rem 0 1rem;border:1px dashed var(--border);border-radius:12px;background:var(--bg)}.start-midway>div:first-child{flex:1 1 22rem;display:flex;flex-direction:column;gap:.2rem}.start-midway-controls{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem}.start-midway-controls select{max-width:16rem}.role-chip.teacher-topic{color:var(--accent);background:var(--accent-soft)}.edit-topic-link{margin-left:.5rem}.order-warning{font-size:.78rem;color:#92400e;background:#fef3c7;border-radius:6px;padding:.2rem .45rem;margin-top:.3rem;max-width:26rem}.topic-edit-row td{background:var(--bg)}.topic-form{max-width:40rem}.topic-form textarea{resize:vertical}.delete-topic-link{margin-left:auto;align-self:center}.alerts-card{padding-bottom:.9rem}.alert-list{list-style:none;margin:0;padding:0}.alert-list.dismissed{margin-top:.6rem;padding-top:.4rem;border-top:1px dashed var(--border);opacity:.75}.alert-item{--sev: var(--accent);--sev-soft: var(--accent-soft);display:flex;align-items:flex-start;gap:.7rem;padding:.7rem 0;border-bottom:1px solid var(--border)}.alert-item:last-child{border-bottom:none}.alert-item.sev-urgent{--sev: var(--danger);--sev-soft: var(--danger-soft)}.alert-item.sev-warning{--sev: #b45309;--sev-soft: #fef3c7}.alert-mark{width:10px;height:10px;margin-top:.4rem;border-radius:50%;background:var(--sev);box-shadow:0 0 0 4px var(--sev-soft);flex-shrink:0}.alert-body{display:flex;flex-direction:column;gap:.2rem;min-width:0;flex:1}.alert-link{text-decoration:none;color:inherit}.alert-link:hover .alert-title{color:var(--accent)}.alert-title{font-weight:600}.alert-detail{font-size:.88rem;color:var(--muted)}.alert-class{font-size:.75rem;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.alert-people{display:flex;flex-wrap:wrap;gap:.3rem;align-items:center}.alert-person{font-size:.8rem;text-decoration:none;background:var(--bg);border:1px solid var(--border);border-radius:999px;padding:.05rem .55rem}.alert-person:hover{border-color:var(--accent)}.alert-dismiss{flex-shrink:0;color:var(--muted)}.alert-dismiss:hover{color:var(--accent)}.class-side{display:inline-flex;align-items:center;gap:.5rem}.alert-badge{display:inline-block;font-size:.75rem;font-weight:700;white-space:nowrap;text-decoration:none;color:#92400e;background:#fef3c7;border-radius:999px;padding:.1rem .55rem}.alert-badge.urgent{color:var(--danger);background:var(--danger-soft)}.alert-badge.small-badge{margin-left:.35rem;font-size:.7rem;padding:.02rem .45rem;vertical-align:1px}.alerts-card .section-head .link-button{white-space:nowrap}.topic-links{display:flex;flex-wrap:wrap;align-items:center;gap:.3rem;margin-top:.3rem}.link-chip{display:inline-flex;align-items:center;gap:.25rem;font-size:.78rem;background:var(--accent-soft);color:var(--accent);border-radius:999px;padding:.05rem .25rem .05rem .55rem}.link-chip-x{font:inherit;font-size:.95rem;line-height:1;border:none;background:none;color:var(--muted);cursor:pointer;padding:0 .2rem}.link-chip-x:hover{color:var(--danger)}.link-topic-link{display:block;margin-top:.3rem}.link-panel{display:flex;flex-direction:column;gap:.6rem;max-width:44rem}.link-panel input[type=search]{font:inherit;padding:.5rem .7rem;border:1px solid var(--border);border-radius:8px}.link-suggest-note{margin:0}.link-results{list-style:none;margin:0;padding:0;border:1px solid var(--border);border-radius:10px;background:#fff}.link-results li{display:flex;justify-content:space-between;align-items:center;gap:.8rem;padding:.55rem .75rem;border-bottom:1px solid var(--border)}.link-results li:last-child{border-bottom:none}.link-result-text{min-width:0}.cell.has-prior{position:relative}.cell.has-prior:after{content:"";position:absolute;top:-3px;right:-3px;width:8px;height:8px;border-radius:50%;background:var(--accent);border:2px solid #fff}.prior-line{color:var(--accent);background:var(--accent-soft);border-radius:8px;padding:.35rem .55rem}.link-chip .muted{font-size:inherit}.link-button.link-topic-link,.link-button.edit-topic-link{font-size:.82rem}.topic-edit-row td>*{position:sticky;left:.4rem;max-width:min(44rem,calc(100vw - 5rem))}.plan-form{display:flex;flex-wrap:wrap;gap:.8rem 1rem;align-items:flex-end}.plan-form label,.plan-more label{display:flex;flex-direction:column;gap:.25rem;font-size:.9rem}.plan-form input,.plan-form select,.plan-more input{width:auto;font:inherit;font-size:.9rem;padding:.4rem .55rem;border:1px solid var(--border);border-radius:8px}.plan-form select{padding-right:2rem;margin-top:0}.plan-more{display:flex;flex-direction:column;gap:.5rem;margin:.6rem 0;padding:.8rem;background:var(--bg);border-radius:10px}.plan-breaks{display:flex;flex-direction:column;gap:.4rem;align-items:flex-start}.break-row{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem}.break-row input{width:auto;font:inherit;font-size:.85rem;padding:.3rem .45rem;border:1px solid var(--border);border-radius:6px}.plan-preview{margin-top:.8rem;transition:opacity .15s ease}.plan-preview.stale{opacity:.55}.plan-summary{margin:0 0 .4rem}.plan-weeks{list-style:none;margin:.5rem 0 0;padding:0;border:1px solid var(--border);border-radius:10px;max-height:26rem;overflow-y:auto}.plan-weeks li{display:flex;gap:.8rem;padding:.45rem .75rem;border-bottom:1px solid var(--border);font-size:.88rem}.plan-weeks li:last-child{border-bottom:none}.plan-weeks li.empty{background:var(--bg)}.plan-due{flex:0 0 9.5rem;font-weight:600;white-space:nowrap}.plan-topics{min-width:0}.plan-topics .changed{color:var(--accent)}@media(max-width:560px){.plan-weeks li{flex-direction:column;gap:.1rem}.plan-due{flex-basis:auto}}.plan-form{align-items:flex-start}.plan-more label{align-self:flex-start}.plan-more input[type=date]{max-width:12rem}.today-card .notice{margin:.2rem 0 .6rem}.today-list,.plan-items,.student-plan-days{list-style:none;margin:.4rem 0 0;padding:0}.today-list li{display:flex;align-items:center;justify-content:space-between;gap:.8rem;padding:.6rem 0;border-bottom:1px solid var(--border)}.today-list li:last-child{border-bottom:none}.today-text{display:flex;flex-direction:column;min-width:0}.today-name{font-weight:600}.today-list li.tight .today-name:after,.plan-item.tight .plan-item-name:after{content:" · tight";color:#b45309;font-weight:500;font-size:.85em}.this-week .due-group{margin-top:.6rem}.this-week .due-group h3{margin:0 0 .2rem;font-size:.85rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.this-week .due-group.overdue h3{color:var(--danger)}.this-week ul{list-style:none;margin:0;padding:0}.this-week li{padding:.25rem 0}.this-week li.done a{color:var(--muted);text-decoration:line-through}.tick{color:var(--ok);font-weight:700;margin-right:.3rem}.plan-intro{margin:.2rem 0 .8rem}.plan-warnings{margin-bottom:.6rem}.plan-warnings .order-warning{max-width:none;margin:0 0 .4rem}.week-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(6.5rem,1fr));gap:.6rem;margin:.6rem 0}.week-grid label{display:flex;flex-direction:column;gap:.2rem;font-size:.85rem;font-weight:600}.week-grid select{font:inherit;font-size:.9rem;padding:.35rem 1.8rem .35rem .5rem;margin-top:0}.plan-days{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:.9rem}.plan-day{margin-bottom:0;padding:1rem}.plan-day.today{border-color:var(--accent)}.plan-day-head{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.plan-day-head h3{margin:0;font-size:1.05rem}.day-minutes{width:auto;font:inherit;font-size:.8rem;padding:.2rem 1.7rem .2rem .45rem;margin-top:0}.fill-bar{height:5px;background:var(--border);border-radius:3px;margin:.55rem 0 .25rem;overflow:hidden}.fill-bar div{height:100%;background:var(--accent)}.fill-bar div.over{background:#b45309}.plan-item{border:1px solid var(--border);border-radius:10px;margin-top:.45rem;background:#fff}.plan-item.check-in{background:var(--accent-soft);border-color:transparent}.plan-item.test{border-style:dashed}.plan-item.tight{border-color:#fcd34d}.plan-item-head{display:flex;flex-direction:column;gap:.1rem;width:100%;text-align:left;font:inherit;color:inherit;background:none;border:none;padding:.55rem .7rem;cursor:pointer}.plan-item-name{font-weight:600}.plan-item-actions{display:flex;flex-direction:column;align-items:flex-start;gap:.4rem;padding:0 .7rem .7rem}.move-chips{display:flex;flex-wrap:wrap;gap:.3rem}.move-chip{font:inherit;font-size:.8rem;border:1px solid var(--border);background:#fff;color:var(--accent);border-radius:999px;padding:.2rem .6rem;cursor:pointer}.move-chip:hover:not(:disabled){border-color:var(--accent)}.move-chip:disabled{color:var(--muted);cursor:default}.move-chip.current{background:var(--accent-soft)}.student-plan-days>li{padding:.45rem 0;border-bottom:1px solid var(--border)}.student-plan-days>li:last-child{border-bottom:none}.student-plan-days ul{list-style:disc;margin:.2rem 0 0;padding-left:1.2rem}.student-plan-days li.tight{color:#b45309}.today-list .button,.plan-item-actions .button{white-space:nowrap;flex-shrink:0}.page.plan-page{max-width:1760px;padding-left:1.5rem;padding-right:1.5rem}.plan-page .study-time-card,.plan-page .plan-intro,.plan-page .plan-warnings{max-width:980px}.plan-days{grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}@media(min-width:1500px){.plan-days{grid-template-columns:repeat(7,minmax(0,1fr));gap:.7rem}.plan-day{padding:.85rem}}.plan-day-head{flex-wrap:wrap}.plan-day-head h3{white-space:nowrap}.day-minutes{max-width:100%}.plan-item-name{overflow-wrap:anywhere}@media(max-width:760px){.page.plan-page{padding-left:1rem;padding-right:1rem}}.plan-day-head{flex-direction:column;align-items:flex-start;gap:.35rem}.page{max-width:1440px;padding-left:1.5rem;padding-right:1.5rem}.page.narrow{max-width:460px}.admin-page{max-width:1760px}.page p,.page li p{max-width:80ch}.page .card>p.error,.page .card>p.notice,.page .order-warning{max-width:none}.page form.stack,.page .stack{max-width:46rem}.page textarea{max-width:100%}.home-grid{display:block}@media(min-width:1100px){.home-grid.two{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1.25rem;align-items:start}.home-grid.two .home-side{display:flex;flex-direction:column}.home-grid.two .home-side>.continue{order:-1}}@media(min-width:1100px){.student-layout{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:1.25rem;align-items:start}.student-layout>.student-plan{grid-column:2;grid-row:1;position:sticky;top:1rem}.student-layout>.student-topics-card{grid-column:1;grid-row:1}.student-layout>.student-topics-card:only-child{grid-column:1 / -1}}@media(min-width:1000px){.account-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1.25rem;align-items:start}.account-grid>.danger-card{grid-column:1 / -1}}@media(min-width:1500px){.account-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.learn-layout .bubble{max-width:min(85%,780px)}.learn-layout .bubble:has(.tutor-figure.enlarged){max-width:100%}@media(max-width:760px){.page{padding-left:1rem;padding-right:1rem}}@media(max-width:560px){.st-head{flex-wrap:wrap;row-gap:.25rem}.st-head .class-status{min-width:0}.st-name{flex-basis:calc(100% - 7rem)}.st-time{min-width:0}}.meeting-row{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin:.4rem 0}.meeting-row select,.meeting-row input{width:auto;font:inherit;font-size:.9rem;padding:.35rem .5rem;margin-top:0}.meeting-row select{padding-right:2rem}.meeting-minutes{display:inline-flex;align-items:center;gap:.3rem;font-size:.9rem}.meeting-minutes input{width:4.5rem}.week-nav{display:inline-flex;align-items:center;gap:.8rem}.meeting-sheets{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.9rem;margin-top:.8rem}.meeting-sheet{border:1px solid var(--border);border-radius:12px;padding:.9rem 1rem;background:#fff;display:flex;flex-direction:column;gap:.35rem}.meeting-sheet h3{margin:.3rem 0 .1rem;font-size:1.02rem}.meeting-when{font-weight:700}.meeting-sheet .button{align-self:flex-start;margin-top:auto}.sheet-points{margin:.2rem 0 .4rem;padding-left:1.1rem;font-size:.88rem}.sheet-points li{margin:.2rem 0}.facts-box{margin-top:1rem}.facts-box summary{cursor:pointer;font-weight:600;color:var(--accent)}.facts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;margin-top:.6rem}.facts-grid h4{margin:0 0 .3rem;font-size:.85rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.facts-grid ul{margin:0;padding-left:1.1rem;font-size:.88rem}.briefing-loading{flex-direction:column;gap:1rem;text-align:center;padding:1rem}.briefing-page{max-width:8.5in;margin:0 auto;padding:1rem 1rem 3rem}.briefing-toolbar{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.8rem}.print-sheet{background:#fff;color:#111;border:1px solid var(--border);border-radius:10px;padding:.55in .6in;margin:0 0 1.2rem;box-shadow:var(--shadow);font-size:11pt;line-height:1.45}.sheet-head{border-bottom:2px solid #111;padding-bottom:.5rem;margin-bottom:.8rem}.sheet-class{font-size:9.5pt;text-transform:uppercase;letter-spacing:.06em;color:#555}.sheet-head h1{font-size:17pt;margin:.1rem 0 0}.sheet-focus{font-size:10pt;color:#444}.sheet-title{font-size:13pt;margin:.45rem 0 0;font-family:var(--font-display)}.sheet-label{display:block;font-size:8.5pt;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#555;margin-bottom:.15rem}.sheet-opener{border-left:3px solid #111;padding:.2rem 0 .2rem .7rem;margin:.6rem 0 .9rem}.sheet-wrap{margin-top:1rem}.sheet-section{margin:.9rem 0;break-inside:avoid-page}.sheet-section h3{font-size:10pt;text-transform:uppercase;letter-spacing:.06em;margin:0 0 .35rem;color:#222;border-bottom:1px solid #ccc;padding-bottom:.15rem}.sheet-list{margin:0;padding-left:1.3rem}.sheet-list li{margin:.3rem 0}.sheet-checks{list-style:none;margin:0;padding:0}.sheet-checks li{position:relative;padding-left:1.5rem;margin:.35rem 0}.sheet-checks li:before{content:"";position:absolute;left:0;top:.25em;width:.8em;height:.8em;border:1.5px solid #333;border-radius:2px}.example-problem{margin-bottom:.4rem}.example-problem p{margin:.2rem 0}.example-steps{width:100%;border-collapse:collapse;font-size:10.5pt}.example-steps td{border-top:1px solid #ddd;padding:.35rem .5rem;vertical-align:middle}.example-steps tr:last-child td{border-bottom:1px solid #ddd}.step-n{width:1.6rem;color:#777;text-align:right}.step-say{width:45%;border-right:1px solid #ddd}.example-watch{margin:.5rem 0 0}.sheet-facts{margin-top:1rem;padding-top:.5rem;border-top:1px dashed #bbb;font-size:9pt;color:#444}.sheet-facts ul{margin:0;padding-left:1.1rem}.sheet-written{margin-top:.5rem;font-size:8.5pt;color:#777}.print-sheet .katex{font-size:1.05em}@media print{@page{size:letter;margin:.5in}body{background:#fff!important}.no-print,.topbar{display:none!important}.briefing-page{max-width:none;padding:0;margin:0}.print-sheet{border:none;border-radius:0;box-shadow:none;padding:0;margin:0}.print-sheet+.print-sheet{break-before:page}}@media(max-width:600px){.print-sheet{padding:1rem}.step-say{width:auto}}.sheet-end{break-inside:avoid-page}@media print{.print-sheet{font-size:10.5pt;line-height:1.38}.sheet-section{margin:.7rem 0}.sheet-opener{margin:.5rem 0 .7rem}.example-steps td{padding:.28rem .5rem}}.page.day-page{max-width:1240px}.day-chips{display:flex;flex-wrap:wrap;gap:.4rem;margin:0 0 1rem}.day-chips .move-chip{font-size:.88rem;padding:.3rem .8rem}.day-chips .move-chip.current{background:var(--accent);color:#fff;border-color:var(--accent)}.day-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:1rem;align-items:start}.cal-card{padding:1rem 1rem .75rem;margin-bottom:0}.cal-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:.5rem 1rem}.cal-title{font-family:var(--font-display);font-size:1.6rem;margin:0}.cal-head p{margin:.15rem 0 0}.cal-tools{display:flex;align-items:center;gap:1rem}.every-check{display:flex;align-items:center;gap:.4rem;font-size:.92rem;cursor:pointer;white-space:nowrap}.every-check input{width:auto;margin:0}.cal-scroll{max-height:70vh;overflow-y:auto;margin-top:.75rem;border-top:1px solid var(--border)}.cal-grid{position:relative;display:flex;margin-top:10px;margin-bottom:10px}.cal-hours{width:52px;flex:none;position:relative}.cal-hours span{position:absolute;right:8px;transform:translateY(-50%);font-size:.72rem;color:var(--muted);white-space:nowrap}.cal-area{flex:1;position:relative;border-left:1px solid var(--border);cursor:crosshair;user-select:none;-webkit-user-select:none;touch-action:pan-y;background-image:linear-gradient(to bottom,var(--border) 1px,transparent 1px),linear-gradient(to bottom,#f1f5f9 1px,transparent 1px);background-size:100% 64px,100% 32px}.cal-area.busy{cursor:progress}.cal-past{position:absolute;left:0;right:0;top:0;background:#94a3b821;pointer-events:none}.cal-free{position:absolute;left:0;right:0;background:#4f46e514;border-left:3px solid #a5b4fc}.cal-remove{position:absolute;top:3px;right:4px;z-index:3;width:22px;height:22px;border-radius:50%;border:1px solid var(--border);background:#fff;color:var(--muted);font:inherit;font-size:1rem;line-height:1;padding:0;cursor:pointer}.cal-remove:hover{color:#b91c1c;border-color:#fecaca}.cal-event{position:absolute;left:8px;right:34px;z-index:2;display:flex;flex-direction:column;overflow:hidden;padding:.25rem 4.8rem .25rem .6rem;border-radius:8px;background:var(--accent);color:#fff;text-decoration:none;font-size:.82rem;line-height:1.3;box-shadow:0 1px 3px #0f172a2e}.cal-event:hover{filter:brightness(1.08)}.cal-event.check-in{background:#7c3aed}.cal-event.test{background:#0f766e}.cal-event.tight{background:#b45309}.cal-event.compact{flex-direction:row;align-items:center;padding-top:0;padding-bottom:0}.cal-event-name{font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-event-time,.cal-event-meta{font-size:.76rem;opacity:.92;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-event-name .cal-event-time{font-weight:400}.cal-event-go{position:absolute;right:.6rem;top:.3rem;font-size:.74rem;font-weight:700;white-space:nowrap}.cal-event.compact .cal-event-go{top:50%;transform:translateY(-50%)}.cal-select{position:absolute;left:4px;right:4px;z-index:4;pointer-events:none;padding:.2rem .5rem;border:2px solid var(--accent);border-radius:8px;background:#4f46e52e;color:var(--accent);font-size:.8rem;font-weight:700}.cal-now{position:absolute;left:-6px;right:0;height:2px;z-index:5;background:#ea4335;pointer-events:none}.cal-now:before{content:"";position:absolute;left:0;top:-4px;width:10px;height:10px;border-radius:50%;background:#ea4335}.cal-hint{margin:.5rem 0 0}.day-side{display:flex;flex-direction:column;gap:1rem}.day-side .order-warning{margin:0}.side-card{padding:1rem;margin-bottom:0}.side-card h2{font-size:1.05rem;margin:0 0 .4rem}.done-list{list-style:none;margin:.4rem 0 0;padding:0;display:flex;flex-direction:column;gap:.35rem}.done-tick{color:var(--ok);font-weight:700;margin-right:.3rem}.today-links{display:inline-flex;gap:1rem}.day-hours-line{margin:.15rem 0 .3rem}@media(max-width:900px){.day-layout{grid-template-columns:1fr}.cal-scroll{max-height:65vh}}@media(max-width:520px){.cal-event{right:30px;padding-right:.6rem}.cal-event-go{display:none}}.plan-day-link{text-decoration:none;color:inherit;border-radius:8px}.plan-day-link span{color:var(--accent);font-weight:600}.plan-day-link:hover h3{color:var(--accent)}.plan-day .day-hours-line{display:block;margin:.15rem 0 .35rem;text-decoration:none}.plan-day .day-hours-line:hover{text-decoration:underline}.usual-hours{list-style:none;margin:.5rem 0 0;padding:0;display:flex;flex-wrap:wrap;gap:.4rem 1.25rem;font-size:.92rem}.reading-age-row{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;margin:-.25rem 0 1rem}.reading-age-row select{width:auto}.curriculum-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:1rem;align-items:start}.curriculum-list{list-style:none;margin:.75rem 0;padding:0;display:flex;flex-direction:column;gap:.6rem}.curriculum-topic{border:1px solid var(--border);border-radius:12px;padding:.75rem .9rem;background:#fff}.curriculum-topic-head{display:flex;align-items:flex-start;gap:.65rem}.curriculum-num{flex:none;width:1.7rem;height:1.7rem;border-radius:50%;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent);font-weight:700;font-size:.82rem}.curriculum-topic-title{flex:1;display:flex;flex-direction:column;gap:.25rem;min-width:0}.curriculum-tags{display:flex;flex-wrap:wrap;gap:.3rem}.tag-chip{font-size:.72rem;font-weight:600;border-radius:999px;padding:.05rem .55rem;background:var(--bg);color:var(--muted);border:1px solid var(--border)}.tag-chip.mine{color:#6d28d9;background:#f5f3ff;border-color:#ddd6fe}.tag-chip.changed{color:#b45309;background:var(--warm-soft);border-color:#fed7aa;cursor:help}.curriculum-desc{margin:.45rem 0 .25rem 2.35rem;color:#334155;font-size:.93rem}.curriculum-meta{margin:0 0 .2rem 2.35rem}.curriculum-topic>.link-button{margin-left:2.35rem}.curriculum-edit{margin:.6rem 0 0 2.35rem;display:flex;flex-direction:column;gap:.5rem}.curriculum-edit textarea{width:100%}.curriculum-hidden{margin:.4rem 0 0;padding-left:1.2rem;color:var(--muted);font-size:.9rem}.curriculum-chat{position:sticky;top:1rem;display:flex;flex-direction:column;max-height:calc(100vh - 2rem)}.chat-thread{flex:1;min-height:12rem;overflow-y:auto;display:flex;flex-direction:column;gap:.75rem;padding:.5rem .1rem;margin:.5rem 0}.chat-msg{display:flex;flex-direction:column;align-items:flex-start;max-width:100%}.chat-msg.mine{align-items:flex-end}.chat-author{font-size:.72rem;color:var(--muted);margin-bottom:.15rem}.chat-bubble{background:var(--bg);border:1px solid var(--border);border-radius:12px;padding:.55rem .8rem;font-size:.93rem;max-width:92%}.chat-bubble p{margin:.2rem 0}.chat-msg.mine .chat-bubble{background:var(--accent);color:#fff;border-color:var(--accent)}.chat-bubble.thinking{display:flex;align-items:center;gap:.5rem;color:var(--muted)}.chat-starters{display:flex;flex-direction:column;gap:.4rem}.chat-starter{text-align:left;font:inherit;font-size:.9rem;padding:.55rem .75rem;border-radius:10px;border:1px dashed var(--border);background:#fff;color:var(--accent);cursor:pointer}.chat-starter:hover:not(:disabled){border-color:var(--accent)}.change-cards{list-style:none;margin:.45rem 0 0;padding:0;width:100%;display:flex;flex-direction:column;gap:.4rem}.change-card{display:grid;grid-template-columns:auto 1fr auto;gap:.6rem;align-items:start;padding:.55rem .7rem;border-radius:10px;border:1px solid #c7d2fe;background:#fff}.change-card.applied{border-color:#bbf7d0;background:#f0fdf4}.change-card.failed{border-color:#fecaca}.change-tag{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--accent);background:var(--accent-soft);border-radius:6px;padding:.1rem .4rem;white-space:nowrap}.change-text{display:flex;flex-direction:column;gap:.15rem;font-size:.9rem;min-width:0}.change-detail{color:#334155;font-size:.86rem}.change-done{color:var(--ok);font-weight:700;font-size:.85rem;white-space:nowrap}.apply-all{margin-top:.35rem}.chat-compose{display:flex;gap:.5rem;align-items:flex-end}.chat-compose textarea{flex:1;resize:vertical}@media(max-width:960px){.curriculum-layout{grid-template-columns:1fr}.curriculum-chat{position:static;max-height:none}.chat-thread{max-height:60vh}}@media(max-width:520px){.change-card{grid-template-columns:1fr}.curriculum-desc,.curriculum-meta,.curriculum-edit,.curriculum-topic>.link-button{margin-left:0}}.composer-links{display:flex;justify-content:flex-end;padding:.2rem .3rem 0;font-size:.8rem}.composer-links .link-button{color:var(--muted)}.composer-links .link-button:hover{color:var(--accent)}.bubble.practice-problem{border-color:#c7d2fe;border-left:4px solid var(--accent)}.checked-note{margin-top:.5rem;font-size:.78rem;font-weight:600;color:var(--ok);cursor:help}.problems-page h1{margin:0 0 .4rem}.problems-page .check-head{margin:1.1rem 0 .2rem}.paste-label{display:block;margin-top:.9rem;font-weight:600;font-size:.9rem}.paste-label textarea{width:100%;resize:vertical;font-weight:400;min-height:9rem}.problems-page .button-row{align-items:center;margin-bottom:0}.problems-page .button .spinner.small{display:inline-block;vertical-align:-3px;margin-right:.35rem;border-color:#fff6;border-top-color:#fff}.paste-note{flex:1;min-width:14rem}.sorted-list{list-style:none;margin:.6rem 0 0;padding:0;display:flex;flex-direction:column;gap:.6rem;counter-reset:sorted}.sorted-item{border:1px solid var(--border);border-radius:12px;padding:.7rem .9rem;background:#fff;counter-increment:sorted}.sorted-text{font-size:.95rem;overflow-x:auto}.sorted-text:before{content:counter(sorted) ".";float:left;margin-right:.45rem;font-weight:700;color:var(--muted)}.sorted-text p{margin:.2rem 0;max-width:none}.sorted-controls{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.5rem 1rem;margin-top:.55rem;padding-top:.55rem;border-top:1px dashed var(--border)}.sorted-controls label{display:flex;flex-direction:column;color:var(--muted)}.sorted-controls select,.bank-actions select{width:auto;max-width:16rem;font-size:.85rem;padding:.25rem 1.8rem .25rem .5rem;border-radius:8px;background-position:right .5rem center;margin-top:.15rem}.sorted-controls .link-button{margin-left:auto}.tag-chip.picture{color:#b45309;background:var(--warm-soft);border-color:#fed7aa;cursor:help}.bank-head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem}.bank-head h2{margin:0}.bank-topic{margin-top:1.1rem;padding-top:.9rem;border-top:1px solid var(--border)}.bank-topic-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:.3rem .8rem}.bank-topic-head h3{margin:0;font-size:1.02rem}.bank-topic-head .link-button{margin-left:auto}.bank-topic-head .tag-chip{margin-left:auto;cursor:help}.bank-list{list-style:none;margin:.5rem 0 0;padding:0;display:flex;flex-direction:column;gap:.45rem}.bank-item{border:1px solid var(--border);border-radius:10px;padding:.55rem .75rem;background:#fff}.bank-item.mastered{border-color:#bbf7d0;background:#f0fdf4}.bank-text{display:block;width:100%;text-align:left;background:none;border:none;padding:0;font:inherit;font-size:.93rem;color:var(--text);cursor:pointer;overflow-x:auto}.bank-text p{margin:.2rem 0;max-width:none}.bank-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .6rem;margin-top:.4rem}.bank-actions{margin-left:auto;display:flex;align-items:center;gap:.7rem}.bank-actions select{margin-top:0}.problems-link{margin:.9rem 0 0}.class-problems{align-self:center;white-space:nowrap}@media(max-width:560px){.bank-actions{margin-left:0;width:100%;justify-content:space-between}.sorted-controls .link-button{margin-left:0}}.page.test-page{max-width:860px}.test-page h1{margin:.1rem 0 .4rem}.test-kicker{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--accent)}.test-list{list-style:none;margin:0;padding:0}.test-item{padding:1rem 1.15rem}.test-item-head{display:flex;align-items:center;gap:.6rem;margin-bottom:.45rem}.test-number{width:1.7rem;height:1.7rem;border-radius:50%;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent);font-weight:700;font-size:.85rem;flex-shrink:0}.test-text{overflow-x:auto}.test-text p{margin:.3rem 0;max-width:none}.answer-label{display:block;margin-top:.7rem;color:var(--muted)}.answer-label textarea{width:100%;resize:vertical;min-height:2.9rem}.test-foot{position:sticky;bottom:0;display:flex;flex-wrap:wrap;align-items:center;gap:.6rem 1rem;padding:.8rem 1rem;margin-top:.5rem;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 -2px 16px #0f172a14}.test-foot>span{flex:1;min-width:10rem}.test-foot .button .spinner.small{display:inline-block;vertical-align:-3px;margin-right:.35rem;border-color:#fff6;border-top-color:#fff}.test-score h1{font-size:1.9rem}.topic-scores{list-style:none;margin:.8rem 0;padding:0;display:flex;flex-direction:column;gap:.4rem;max-width:34rem}.topic-scores li{display:grid;grid-template-columns:minmax(6rem,14rem) 1fr auto;align-items:center;gap:.7rem}.topic-score-name{font-size:.92rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topic-score-bar{height:8px;border-radius:999px;background:var(--border);overflow:hidden}.topic-score-bar i{display:block;height:100%;background:var(--ok);border-radius:999px}.result-badge{font-size:.75rem;font-weight:700;border-radius:999px;padding:.1rem .6rem}.result-badge.correct{color:var(--ok);background:var(--ok-soft)}.result-badge.incorrect{color:#b45309;background:var(--warm-soft)}.result-badge.blank{color:var(--muted);background:var(--bg);border:1px solid var(--border)}.test-item.result-correct{border-left:4px solid var(--ok)}.test-item.result-incorrect{border-left:4px solid #f59e0b}.your-answer,.stored-answer{margin-top:.6rem;padding:.45rem .7rem;border-radius:10px;background:var(--bg);border:1px solid var(--border)}.stored-answer{background:#f0fdf4;border-color:#bbf7d0}.your-answer p,.stored-answer p,.test-feedback p,.worked p{margin:.15rem 0;max-width:none}.test-feedback{margin-top:.6rem;padding:.45rem .7rem;border-left:3px solid #f59e0b;background:var(--warm-soft);border-radius:0 10px 10px 0;font-size:.94rem}.worked{margin-top:.6rem;font-size:.94rem}.worked summary{cursor:pointer;color:var(--accent);font-weight:600;font-size:.88rem}.worked>div{margin-top:.4rem;padding-left:.8rem;border-left:2px solid var(--border);overflow-x:auto}.test-item-foot{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.4rem 1rem;margin-top:.7rem}@media(max-width:560px){.topic-scores li{grid-template-columns:1fr auto}.topic-score-bar{grid-column:1 / -1;order:3}.test-foot .button{width:100%}}.tag-chip.teacher{color:#6d28d9;background:#f5f3ff;border-color:#ddd6fe;cursor:help}.target-row{display:flex;flex-direction:column;gap:.3rem;margin:1rem 0 .4rem;padding:.8rem .9rem;border:1px solid var(--border);border-radius:12px;background:var(--bg);max-width:54rem}.target-row>label{font-weight:600;color:var(--text);font-size:.9rem}.target-input{display:flex;gap:.5rem;align-items:center}.target-input input{flex:1;margin:0}.prepare-row{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem;margin:.7rem 0 0;padding:.6rem .8rem;border:1px solid #fed7aa;background:var(--warm-soft);border-radius:12px;font-size:.9rem}.prepare-row>span{flex:1;min-width:14rem}.prepare-row .working{margin:0}.missed-strip{margin-top:.9rem;padding:.6rem .8rem;border-left:3px solid #f59e0b;background:var(--warm-soft);border-radius:0 10px 10px 0;font-size:.92rem}.missed-strip ul{list-style:none;margin:.3rem 0 0;padding:0;display:flex;flex-direction:column;gap:.2rem}.answer-key{margin-top:.35rem;font-size:.88rem;color:var(--ok)}.answer-key.unprepared{color:var(--muted)}.tag-chip.also{color:#0369a1;background:#f0f9ff;border-color:#bae6fd;cursor:help}.tag-chip.doubt{color:#b45309;background:var(--warm-soft);border-color:#fed7aa}.version-list{list-style:none;margin:.5rem 0 0;padding:0;display:flex;flex-direction:column;gap:.5rem}.version{border:1px solid var(--border);border-radius:10px;padding:.55rem .75rem;background:var(--bg)}.version.doubt{border-color:#fed7aa;background:var(--warm-soft)}.version-head{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.version p{max-width:none}.version-text{margin-top:.25rem;font-size:.95rem}.version-solution{margin-top:.35rem;font-size:.9rem}.version-solution summary{cursor:pointer;color:var(--accent)}.warn-text{color:#b45309}.help-card .link-button{margin-top:.35rem}.answer-key p{margin:0;max-width:none}
