@import"https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700&family=Playfair+Display:wght@500;600;700;800&display=swap";@font-face{font-display:block;font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2) format("woff2"),url(/assets/KaTeX_AMS-Regular-DMm9YOAa.woff) format("woff"),url(/assets/KaTeX_AMS-Regular-DRggAlZN.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff) format("woff"),url(/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff) format("woff"),url(/assets/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(/assets/KaTeX_Main-Bold-Cx986IdX.woff2) format("woff2"),url(/assets/KaTeX_Main-Bold-Jm3AIy58.woff) format("woff"),url(/assets/KaTeX_Main-Bold-waoOVXN0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2) format("woff2"),url(/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff) format("woff"),url(/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2) format("woff2"),url(/assets/KaTeX_Main-Italic-BMLOBm91.woff) format("woff"),url(/assets/KaTeX_Main-Italic-3WenGoN9.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Main-Regular-B22Nviop.woff2) format("woff2"),url(/assets/KaTeX_Main-Regular-Dr94JaBh.woff) format("woff"),url(/assets/KaTeX_Main-Regular-ypZvNtVU.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2) format("woff2"),url(/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff) format("woff"),url(/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Math-Italic-t53AETM-.woff2) format("woff2"),url(/assets/KaTeX_Math-Italic-DA0__PXp.woff) format("woff"),url(/assets/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(/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff) format("woff"),url(/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:italic;font-weight:400;src:url(/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff) format("woff"),url(/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:400;src:url(/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff) format("woff"),url(/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Script-Regular-D3wIWfF6.woff2) format("woff2"),url(/assets/KaTeX_Script-Regular-D5yQViql.woff) format("woff"),url(/assets/KaTeX_Script-Regular-C5JkGWo-.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2) format("woff2"),url(/assets/KaTeX_Size1-Regular-C195tn64.woff) format("woff"),url(/assets/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(/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2) format("woff2"),url(/assets/KaTeX_Size2-Regular-oD1tc_U0.woff) format("woff"),url(/assets/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(/assets/KaTeX_Size3-Regular-CTq5MqoE.woff) format("woff"),url(/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2) format("woff2"),url(/assets/KaTeX_Size4-Regular-BF-4gkZK.woff) format("woff"),url(/assets/KaTeX_Size4-Regular-DWFBv043.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2) format("woff2"),url(/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff) format("woff"),url(/assets/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.42"}.katex .katex-mathml{clip:rect(1px,1px,1px,1px);border:0;height:1px;overflow:hidden;padding:0;position:absolute;width:1px}.katex .katex-html>.newline{display:block}.katex .base{position:relative;white-space:nowrap;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}.math-text-preline{white-space:pre-line}.bank-prompt-code{display:block;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:.9rem;line-height:1.45;margin:0 0 .45rem;padding:.45rem .6rem;border-radius:8px;background:color-mix(in srgb,var(--surface-muted) 90%,transparent);border:1px solid color-mix(in srgb,var(--border-neutral) 85%,transparent);color:var(--text-primary);white-space:pre-wrap;overflow-x:auto}.bank-prompt-prose-after-code{display:block;margin-top:.35rem;white-space:normal}.bank-prompt-prose-before-code{display:block;margin-bottom:.4rem;white-space:normal}*,:before,:after{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246 / .5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246 / .5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,*:before,*:after{box-sizing:border-box}:root{color-scheme:light;--brand-navy: #1b365d;--brand-sky: #3498db;--brand-teal: #3fb8af;--brand-lime: #7cc142;--accent-orange: #e86d2d;--brand: #2a5582;--page-gradient: radial-gradient( ellipse 70% 50% at 15% 15%, rgba(88, 48, 180, .14) 0%, transparent 55% ), radial-gradient( ellipse 60% 70% at 85% 80%, rgba(0, 180, 200, .07) 0%, transparent 55% ), linear-gradient(165deg, #050a14 0%, #0a1220 42%, #0f1828 100%);--text-on-dark: #ffffff;--muted-on-dark: rgba(255, 255, 255, .82);--border-on-dark: rgba(255, 255, 255, .35);--text-primary: #1a1a1a;--text-muted: #666666;--border-neutral: #dddddd;--surface: #ffffff;--surface-muted: #f5f5f5;--shadow-soft: 0 8px 20px rgba(0, 0, 0, .08);--shadow-minimal: 0 2px 8px rgba(0, 0, 0, .06);--text: #1a1a1a;--muted: #666666;--border: #cccccc;--card: var(--surface-muted);--error: #b23a3a}html{-webkit-font-smoothing:antialiased}html,body,#root{font-family:Plus Jakarta Sans,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}h1,h2,h3,h4{font-family:Playfair Display,Plus Jakarta Sans,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;letter-spacing:.01em}button,input,select,textarea,a,.course-tab,.btn-pill{font-family:Plus Jakarta Sans,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}body{margin:0;min-height:100vh;background:var(--page-gradient);background-attachment:fixed;color:var(--text-on-dark);position:relative}#root{position:relative;z-index:1;min-height:100vh}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.fixed{position:fixed}.relative{position:relative}.\!block{display:block!important}.block{display:block}.inline{display:inline}.table{display:table}.grid{display:grid}.hidden{display:none}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.app-shell{position:relative;z-index:1;width:min(860px,96vw);margin:0 auto;min-height:100vh;display:grid;align-content:center;gap:.1rem;text-align:left;--app-logo-height: clamp(2.25rem, 9.75vw, 4.125rem);--app-logo-max-width: min(270px, 92vw)}.app-shell.is-login-route{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;text-align:center;--app-login-logo-height: clamp(4rem, 20vw, 8rem);--app-login-logo-max-width: min(560px, 96vw)}.access-gate-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1.25rem}.access-gate-screen--loading{width:100%}.access-gate-card{width:min(22rem,100%);padding:1.25rem 1.45rem 1.5rem;border-radius:14px;background:color-mix(in srgb,var(--surface) 92%,transparent);border:1px solid rgba(255,255,255,.42);box-shadow:0 14px 48px color-mix(in srgb,var(--brand-navy) 35%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);text-align:center}.access-gate-title{margin:0 0 .45rem;font-size:1.25rem;color:var(--text-primary)}.access-gate-intro,.access-gate-hint,.access-gate-attempts{color:#444;font-size:.88rem;line-height:1.45}.access-gate-form{display:grid;gap:.55rem;margin-top:.85rem;text-align:center}.access-gate-form label{color:var(--text-muted)}.access-gate-error{margin:.65rem 0 0}.access-gate-form .btn-pill{margin-top:.25rem}.app-shell.is-login-route>main.page-panel--login{width:100%;max-width:min(520px,100%);flex:0 0 auto;margin:0 auto}.app-support-footer{width:100%;margin-top:1rem;padding:.85rem 0 1.1rem;text-align:center;font-size:.86rem;line-height:1.45;color:var(--text-muted);border-top:1px solid color-mix(in srgb,var(--border-neutral) 75%,transparent)}.app-support-footer p{margin:0}.app-copyright-notice{position:fixed;right:.55rem;bottom:.35rem;z-index:2;margin:0;max-width:min(14rem,42vw);text-align:right;font-size:.58rem;line-height:1.25;letter-spacing:.01em;color:#ffffffb8;pointer-events:none}.app-support-footer a{color:var(--brand);font-weight:600;text-decoration:none}.app-support-footer a:hover{text-decoration:underline;text-underline-offset:.12em}.app-support-footer--on-dark{color:var(--muted-on-dark);border-top-color:var(--border-on-dark)}.app-support-footer--on-dark a{color:#9fd4ff}.app-shell>.app-header,.app-shell>main,.app-shell>.app-support-footer{position:relative;z-index:1}.app-weave-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;overflow:hidden}.app-weave-braid{position:absolute;top:-12%;right:-12%;bottom:-12%;left:-12%;width:124%;height:124%;opacity:1;will-change:transform;animation:app-weave-braid-drift 48s ease-in-out infinite alternate}.braid-strand{fill:none;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke;stroke-width:2.5;stroke-dasharray:280 72;transform-box:fill-box;transform-origin:center;will-change:stroke-dashoffset,transform,opacity}.braid-strand--1{stroke:#dce4f06b;animation:braid-thread-flow 28s ease-in-out infinite,braid-lift-a 14s ease-in-out infinite}.braid-strand--2{stroke:#c8d2e157;stroke-width:2;animation:braid-thread-flow 32s ease-in-out infinite reverse,braid-lift-b 14s ease-in-out infinite}.braid-strand--3{stroke:#ebf0f861;animation:braid-thread-flow 26s ease-in-out infinite,braid-lift-b 14s ease-in-out infinite}.braid-strand--4{stroke:#bec6d44d;stroke-width:2;animation:braid-thread-flow 34s ease-in-out infinite reverse,braid-lift-a 14s ease-in-out infinite}@keyframes braid-thread-flow{0%{stroke-dashoffset:0}to{stroke-dashoffset:-704}}@keyframes braid-lift-a{0%,to{transform:translateY(-14px) scale(1.01);opacity:.65}50%{transform:translateY(14px) scale(.99);opacity:1}}@keyframes braid-lift-b{0%,to{transform:translateY(14px) scale(.99);opacity:1}50%{transform:translateY(-14px) scale(1.01);opacity:.65}}@keyframes app-weave-braid-drift{0%{transform:translate(-2%,-1%) rotate(-.4deg)}to{transform:translate(2%,1.5%) rotate(.4deg)}}@media (prefers-reduced-motion: reduce){.app-weave-braid{animation:none;opacity:.4}.braid-strand{animation:none!important;opacity:.35}}.app-shell.is-auth{align-content:start;padding-top:0;--app-header-content-gap: .09in;gap:var(--app-header-content-gap);grid-template-rows:auto 1fr auto;min-height:100vh;--app-header-logo-height: clamp(3.2rem, 11vw, 4.5rem);--app-header-logo-max-width: min(5.5rem, 100vw);--app-header-logo-optical-shift: 0;--app-header-logo-object-y: 50%}.app-header.app-header--authenticated{display:flex;flex-wrap:nowrap;align-items:center;justify-content:space-between;gap:clamp(.5rem,2vw,1rem);width:100%;box-sizing:border-box;padding:.45rem 0;min-height:0}.app-header.app-header--authenticated .app-title{display:flex;align-items:center;justify-content:flex-start;flex:0 0 auto;width:auto;min-width:0;margin:0;padding:0;line-height:1;font-size:0}.app-header.app-header--authenticated .app-logo.app-logo--header{height:var(--app-header-logo-height, clamp(1.64rem, 6.1vw, 2.8rem));width:auto;max-width:var(--app-header-logo-max-width, min(185px, 94vw));flex-shrink:0;align-self:center;margin:0;padding-bottom:0;-o-object-fit:contain;object-fit:contain;-o-object-position:left center;object-position:left center;transform:translateY(var(--app-header-logo-optical-shift, 0px))}.app-header.app-header--authenticated .logout-btn.btn-pill{flex:0 0 auto;align-self:center;margin:0}.app-header{position:relative;display:flex;flex-wrap:nowrap;align-items:center;justify-content:space-between;gap:.75rem;padding:0;margin:0;width:100%;min-height:0}.app-header .app-title{margin:0;line-height:0;text-align:left;padding:0;flex:1 1 auto;min-width:0}.app-logo{display:block;margin:0;padding:0;height:var(--app-logo-height);width:auto;max-width:var(--app-logo-max-width);-o-object-fit:contain;object-fit:contain;-o-object-position:left top;object-position:left top;filter:drop-shadow(0 2px 10px rgba(15,36,64,.4))}.app-logo.app-logo--header{-o-object-position:center center;object-position:center center}.app-title{display:block;text-align:left}.logout-btn{position:relative;flex:0 0 auto;margin:0;align-self:center}.page-panel{width:100%;background:var(--surface);border:1px solid var(--border-neutral);border-radius:14px;padding:1.35rem 1.4rem;box-shadow:var(--shadow-soft);color:var(--text-primary)}.page-panel.page-panel--login{background:transparent;border-color:transparent;box-shadow:none;padding:0 .75rem .85rem;color:var(--text-primary)}.login-brand{display:flex;justify-content:center;align-items:center;width:100%;margin:0 auto 1.15rem;padding:0;line-height:0}.app-shell.is-login-route .login-brand{margin-bottom:max(.35rem,calc(1.15rem - .25in));transform:translateY(-.25in)}.login-brand .app-logo--login{display:block;flex:0 0 auto;height:var(--app-login-logo-height, clamp(3.25rem, 17vw, 5.75rem));width:auto;max-width:var(--app-login-logo-max-width, min(380px, 96vw));margin:0;-o-object-fit:contain;object-fit:contain;-o-object-position:center center;object-position:center center;filter:drop-shadow(0 6px 28px rgba(0,0,0,.42))}.login-page--surface{display:flex;flex-direction:column;align-items:center;margin-left:auto;margin-right:auto;width:100%;padding:.75rem 1.45rem 1.5rem;border-radius:14px;background:color-mix(in srgb,var(--surface) 92%,transparent);border:1px solid rgba(255,255,255,.42);box-shadow:0 14px 48px color-mix(in srgb,var(--brand-navy) 35%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.page-panel h2,.page-panel h3{color:var(--text-primary);font-family:Playfair Display,Plus Jakarta Sans,system-ui,Segoe UI,Arial,sans-serif}h1,h2,h3,h4{font-family:Playfair Display,Plus Jakarta Sans,system-ui,Segoe UI,Arial,sans-serif}.login-page,.dashboard-page{width:min(520px,100%);margin:0 auto;text-align:center}.instructor-dashboard{width:100%;text-align:left}.instructor-dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:.9rem;margin-top:1rem}.dashboard-card{border:1px solid var(--border-neutral);border-radius:14px;padding:1rem;background:var(--surface-muted)}.dashboard-card-title{margin:0}.dashboard-card-subtitle{margin:.35rem 0 .75rem}.dashboard-card-actions{margin-bottom:.75rem}.dashboard-primary-link{display:inline-block;text-decoration:none;border:1px solid var(--border-neutral);border-radius:10px;padding:.55rem .75rem;background:#0000000a;color:var(--text-primary);font-weight:600}.dashboard-primary-link:hover{background:#00000014}.dashboard-course-preview{list-style:none;padding:0;margin:0;display:grid;gap:.35rem}.dashboard-course-link{color:var(--text-primary);text-decoration:none}.dashboard-course-link:hover{text-decoration:underline}@media (max-width: 820px){.app-body{flex-direction:column}.instructor-sidebar{width:100%;flex:0 0 auto}.instructor-dashboard-grid{grid-template-columns:1fr}}.login-page{display:flex;flex-direction:column;align-items:center}.login-page form{display:grid;gap:.55rem;width:100%;max-width:22rem;margin:0 auto;text-align:center}.login-page form .btn-pill{width:100%;justify-self:stretch}.login-page label{display:block;text-align:center;width:100%}.login-page .error-text{width:100%;max-width:28rem;margin:.75rem auto 0;text-align:center;color:#8f1f1f;background:#fff4f4;border:1px solid #e8b4b4;border-radius:8px;padding:.55rem .7rem}.login-terms-checkbox{display:flex;align-items:flex-start;gap:.55rem;text-align:left;font-size:.9rem;line-height:1.5;color:var(--text-primary)}.login-terms-checkbox input[type=checkbox]{width:auto;margin-top:.2rem;flex-shrink:0;accent-color:var(--brand)}.login-terms-checkbox span{text-align:left;color:var(--text-primary)}.login-terms-link,.login-terms-full-link{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;box-shadow:none;padding:0;margin:0;font:inherit;font-weight:600;color:var(--brand-navy);text-decoration:underline;text-underline-offset:.14em;cursor:pointer}.login-terms-link:hover,.login-terms-full-link:hover{color:var(--brand-sky)}.student-terms-modal-body,.student-terms-page-body{overflow-y:auto;padding:0 1.15rem 1rem;text-align:left;color:var(--text-primary)}.student-terms-accept-layout{display:flex;flex-direction:column;min-height:0;flex:1}.student-terms-accept-layout--accept{height:100%;max-height:min(72vh,620px)}.student-terms-accept-layout--accept .student-terms-modal-body{flex:1;min-height:0}.student-terms-accept-intro{margin:0;padding:.85rem 1.15rem 0;text-align:left;color:#444;line-height:1.5}.student-terms-modal-footer{flex-shrink:0;padding:.85rem 1.15rem 1.1rem;border-top:1px solid color-mix(in srgb,var(--brand) 18%,var(--border-neutral));background:color-mix(in srgb,var(--surface-muted) 65%,var(--surface))}.student-terms-modal-footer-error{margin:0 0 .65rem;text-align:left}.student-terms-modal-footer-actions{display:flex;flex-wrap:wrap;gap:.65rem;justify-content:flex-end}button.btn-pill.btn-pill--ghost{background:transparent;color:var(--text-primary);border:1px solid var(--border-neutral);box-shadow:none}button.btn-pill.btn-pill--ghost:hover:not(:disabled){background:var(--surface-muted)}.student-terms-page-body{max-height:min(70vh,36rem);padding-right:.25rem}.student-terms-page{width:100%;max-width:42rem;margin:0 auto;text-align:left}.student-terms-page-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:1rem}.student-terms-page-header h1{margin:0;font-size:1.35rem;color:var(--text-primary)}.student-terms-modal-meta{margin:0 0 1rem;color:#444}.student-terms-page .muted-text{color:#444}.student-terms-section{margin-bottom:1.1rem}.student-terms-section-heading{margin:0 0 .35rem;font-size:1rem;color:var(--text-primary)}.student-terms-section-body p{margin:0 0 .65rem;color:var(--text-primary);line-height:1.55;white-space:pre-line}.student-terms-modal-body .muted-text,.student-terms-modal-body .error-text{text-align:left}.student-terms-modal-body .error-text{background:#fff4f4;border:1px solid #e8b4b4;border-radius:8px;padding:.55rem .7rem}.student-terms-section-body p:last-child{margin-bottom:0}label{color:var(--text-muted);text-align:center}input{width:100%;border:1px solid var(--border);border-radius:10px;background:#fff;color:var(--text);padding:.75rem .8rem;text-align:center}input[type=checkbox],input[type=radio]{width:auto;max-width:none;min-width:0;padding:0;border:none;border-radius:0;background:transparent;box-shadow:none;text-align:left;flex-shrink:0}button{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin-top:.35rem;border:none;border-radius:0;background:transparent;color:var(--text-primary);padding:.35rem .1rem;font-size:inherit;font-family:inherit;font-weight:600;line-height:1.35;cursor:pointer;box-shadow:none;text-decoration:none;text-underline-offset:.22em;transition:color .15s ease,text-decoration-color .15s ease}button:hover:not(:disabled){color:var(--text-primary);text-decoration:underline;text-decoration-color:var(--accent-orange);text-decoration-thickness:2px;background:transparent;box-shadow:none;filter:none}button:active:not(:disabled){filter:none}button:disabled{opacity:.42;cursor:not-allowed;text-decoration:none}button:focus-visible{outline:2px solid color-mix(in srgb,var(--accent-orange) 65%,var(--text-primary));outline-offset:3px}button.btn-pill{margin-top:.35rem;border:1px solid color-mix(in srgb,var(--accent-orange) 50%,rgba(0,0,0,.25));border-radius:10px;background:color-mix(in srgb,var(--accent-orange) 88%,white);color:#fff;padding:.65rem .95rem;font-size:1.05rem;font-weight:600;line-height:1.25;box-shadow:0 2px 8px #78281938;text-decoration:none;transition:background .15s ease,box-shadow .15s ease,filter .15s ease}button.btn-pill:hover:not(:disabled){color:#fff;text-decoration:none;background:color-mix(in srgb,var(--accent-orange) 96%,#1a0503);box-shadow:0 3px 12px #7828194d;filter:none}button.btn-pill:active:not(:disabled){filter:brightness(.97)}button.btn-pill:disabled{opacity:.55;cursor:not-allowed;text-decoration:none}button.btn-pill:focus-visible{outline:2px solid #ffffff;outline-offset:2px}.logout-btn.btn-pill,button.btn-pill.btn-pill--compact{margin-top:0;font-size:.9rem;padding:.45rem .85rem}.instructor-courses-add-row .btn-pill,.chapter-bank-actions--inline .btn-pill,.skill-practice-actions .btn-pill,.admin-instructor-form .btn-pill{margin-top:0}.role-links{display:flex;justify-content:center;gap:.7rem;flex-wrap:wrap}.role-links a{color:var(--text-primary);text-decoration:none;font-weight:600}.role-links a:hover{color:var(--text-primary);text-decoration:underline;text-underline-offset:.15em}.error-text{color:var(--error);text-align:center;font-weight:600}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.dashboard-admin-note{max-width:28rem;margin:.75rem auto 0;font-size:.88rem;line-height:1.45;text-align:center}.admin-instructors-page{text-align:left;max-width:42rem;margin:0 auto}.admin-students-page{max-width:64rem}.admin-students-section-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem 1rem;margin-bottom:.75rem}.admin-students-section-header h3{margin:0}.admin-student-search-label{flex:1 1 12rem;max-width:18rem;margin-left:auto}.admin-student-search{width:100%;padding:.55rem .75rem;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);font-size:.9rem;text-align:left}.admin-student-search:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 25%,transparent)}.admin-students-table-wrap{border:1px solid color-mix(in srgb,var(--brand) 22%,var(--border));border-radius:12px;background:var(--surface);overflow:hidden}.admin-students-table-scroll{--admin-student-row-height: 2.75rem;--admin-student-header-height: 2.5rem;height:calc(var(--admin-student-header-height) + 10 * var(--admin-student-row-height));overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scrollbar-gutter:stable}.admin-students-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;margin:0;font-size:.92rem}.admin-students-table thead th{position:sticky;top:0;z-index:2;height:var(--admin-student-header-height);box-sizing:border-box;padding:.5rem .75rem;text-align:left;font-weight:700;font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:#fff;background-color:var(--brand);border-bottom:2px solid color-mix(in srgb,var(--brand) 70%,black);box-shadow:0 2px 4px #0028371f}.admin-students-table thead th:first-child{width:32%}.admin-students-table thead th:nth-child(2){width:auto}.admin-students-table thead th:last-child{width:5.5rem;text-align:center}.admin-students-table tbody tr{height:var(--admin-student-row-height)}.admin-students-table-cell{box-sizing:border-box;height:var(--admin-student-row-height);padding:.45rem .75rem;border-bottom:1px solid color-mix(in srgb,var(--brand) 18%,var(--border));vertical-align:middle;background-color:inherit}.admin-students-table tbody tr:nth-child(odd){background-color:color-mix(in srgb,var(--brand) 8%,var(--surface))}.admin-students-table tbody tr:nth-child(2n){background-color:color-mix(in srgb,var(--brand) 14%,var(--surface))}.admin-students-table tbody tr:last-child .admin-students-table-cell{border-bottom:none}.admin-students-table-name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-students-table-email{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:.88rem}.admin-students-table-remove{text-align:center}.admin-students-table-remove .admin-instructor-remove-btn{margin:0 auto}.admin-students-table-empty{height:var(--admin-student-row-height);padding:.45rem .75rem;text-align:center;color:var(--muted);font-size:.9rem;vertical-align:middle}@media (max-width: 560px){.admin-student-search-label{flex:1 1 100%;max-width:none;margin-left:0}}.admin-accounts-page{max-width:64rem}.admin-accounts-columns{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem 2rem;align-items:start}@media (max-width: 768px){.admin-accounts-columns{grid-template-columns:1fr}}.admin-accounts-column .admin-column-intro{margin:0 0 .75rem;font-size:.9rem}.admin-instructors-intro,.admin-instructors-section{margin-bottom:1.25rem}.admin-instructor-form{display:grid;gap:.45rem;margin-top:.5rem}.admin-instructor-form label,.admin-instructor-form input{text-align:left}.admin-instructor-list{list-style:none;padding:0;margin:.5rem 0 0;display:grid;gap:.5rem}.admin-instructor-list li{display:flex;flex-direction:row;align-items:flex-start;justify-content:space-between;gap:.65rem;padding:.5rem .65rem;border:1px solid var(--border-neutral);border-radius:10px;background:var(--surface);color:var(--text)}.admin-instructor-list-main{display:flex;flex-direction:column;gap:.15rem;min-width:0;flex:1}.admin-instructors-page .admin-instructor-remove-btn{flex-shrink:0;margin-top:.1rem}.admin-instructor-name{font-weight:600}.admin-instructor-flag{display:inline-block;margin-top:.2rem;font-size:.78rem;font-weight:600;padding:.2rem .5rem;border-radius:6px;width:-moz-fit-content;width:fit-content;background:color-mix(in srgb,var(--accent-orange) 18%,var(--surface-muted));color:var(--text)}.admin-instructor-flag--ok{font-weight:500;background:color-mix(in srgb,var(--brand) 12%,var(--surface-muted));color:var(--muted)}.login-mode-toggle{margin:1.25rem auto 0;padding-top:.5rem;text-align:center;width:100%;max-width:28rem}.login-mode-toggle .link-like-button{display:inline-block;text-align:center}.link-like-button{margin-top:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent!important;border:none!important;border-radius:0;box-shadow:none!important;color:var(--text-muted);font-size:.9rem;font-weight:400;font-family:inherit;line-height:1.4;text-decoration:none;cursor:pointer;padding:.25rem 0;transition:color .15s ease,text-decoration-color .15s ease}.link-like-button:hover{color:var(--text-primary);text-decoration:underline;text-decoration-color:var(--accent-orange);text-decoration-thickness:2px;text-underline-offset:.2em;box-shadow:none!important;filter:none}.link-like-button:active{filter:none}.link-like-button:focus-visible{outline:2px solid color-mix(in srgb,var(--brand) 70%,white);outline-offset:3px;border-radius:2px}.muted-text{color:var(--text-muted);margin:.35rem 0}.instructor-courses-page{width:100%;max-width:520px;margin:0 auto;text-align:center}.instructor-courses-page--wide{max-width:min(720px,100%);margin:0 auto;text-align:left}.instructor-courses-page--wide .course-card-list{margin-top:.5rem}.instructor-courses-add-row{display:flex;justify-content:flex-end;margin-bottom:.65rem}.instructor-profile-tab-panel{max-width:28rem;margin-left:auto;margin-right:auto;text-align:center}.instructor-profile-tab-panel .course-create-quiz-label{text-align:left}.course-detail-page{width:100%;max-width:min(720px,100%);margin:0 auto;text-align:left}.course-create-quiz-form{max-width:24rem;margin:0 auto 1.35rem;display:grid;gap:.6rem;text-align:left}.course-create-quiz-lead{font-size:.88rem;text-align:left;margin:0 0 .25rem}.course-create-quiz-lead code{font-size:.85em}.course-create-quiz-label{display:grid;gap:.3rem;color:var(--text-muted);font-size:.9rem}.course-create-quiz-select{width:100%;border:1px solid var(--border);border-radius:10px;background:#fff;color:var(--text);padding:.55rem .65rem;font-size:1rem}.course-create-quiz-success{margin:.35rem 0 0;font-weight:600;color:color-mix(in srgb,#2d7a4d 75%,var(--text-primary))}.course-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;display:flex;align-items:center;justify-content:center;padding:1rem;background:#0f232a80;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.course-modal-dialog{width:100%;max-width:26rem;max-height:min(90vh,36rem);overflow:auto;padding:1.25rem 1.35rem 1.35rem;border-radius:14px;background:var(--surface);color:var(--text-primary);box-shadow:var(--shadow-soft);border:1px solid var(--border-neutral);text-align:left}.course-modal-title{margin:0 0 .75rem;font-size:1.2rem;color:var(--text-primary)}.course-modal-dialog .course-create-quiz-form{margin:0;max-width:none}.course-modal-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.55rem;margin-top:.35rem}.course-modal-actions .secondary-button{margin-top:0}.course-modal-error{margin:.5rem 0 0}.course-create-quiz-open{flex-shrink:0;font-weight:650}.course-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;text-align:left;margin-top:.25rem}.course-title{margin:0}.course-subtitle{margin:.35rem 0 0}.course-header .icon-btn{margin-top:0;flex-shrink:0}.course-tabs{margin-top:.75rem;display:flex;justify-content:flex-start;gap:.25rem;border:none;border-radius:0;padding:0;background:transparent;border-bottom:1px solid var(--border-neutral)}.course-tab{position:relative;overflow:hidden;border:none!important;background:transparent!important;box-shadow:none!important;color:color-mix(in srgb,var(--text-primary) 70%,var(--muted));font-weight:650;padding:.65rem 1.25rem!important;cursor:pointer;letter-spacing:.01em;border-radius:10px 10px 0 0;margin-top:0!important;text-decoration:none!important}.course-tab:hover{color:var(--text-primary);background:color-mix(in srgb,var(--brand-teal) 14%,transparent)!important;box-shadow:none!important;text-decoration:none!important}.course-tab.is-active{color:var(--text-primary)}.course-tab-label{display:inline-block;position:relative;z-index:1}.course-tab-underline{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:10px 10px 0 0;background:linear-gradient(180deg,color-mix(in srgb,var(--brand-teal) 22%,#ffffff),color-mix(in srgb,var(--brand-sky) 10%,#ffffff));z-index:0;pointer-events:none}.admin-page-tabs{margin-top:0;margin-bottom:.35rem}.course-section{text-align:left;margin-top:.55rem}.course-section-header{display:flex;align-items:center;justify-content:space-between;gap:.8rem}.course-section-header .section-heading{margin:0}.course-section-header .secondary-button{margin-top:0}.course-metrics-grid{margin-top:.85rem;display:grid;grid-template-columns:1fr;gap:.9rem}.metrics-placeholder-card{border:1px solid color-mix(in srgb,var(--brand) 35%,#a8c9d4);border-radius:12px;background:color-mix(in srgb,var(--brand) 14%,#ffffff);box-shadow:var(--shadow-minimal);padding:.9rem .95rem}.metrics-placeholder-card h4{margin:0 0 .35rem;font-size:1.02rem;color:var(--text-primary)}.metrics-placeholder-card p{margin:0;color:var(--muted);line-height:1.45;font-weight:500}@media (min-width: 820px){.course-metrics-grid{grid-template-columns:1fr 1fr}}.instructor-courses-header{margin-bottom:.5rem;text-align:left}.instructor-courses-header h2{margin:0 0 .25rem}.instructor-courses-header .muted-text{margin-top:0}.instructor-profile-email-field{opacity:.88;cursor:not-allowed}.instructor-profile-password-heading{font-weight:600;margin:.75rem 0 .35rem;font-size:.95rem}.instructor-profile-password-form{margin-top:.25rem}.instructor-change-password-page{min-height:40vh}.instructor-forced-password-intro{margin-top:0;margin-bottom:1rem}.course-card-list{list-style:none;margin:.75rem 0 0;padding:0;display:flex;flex-direction:column;gap:.6rem}.course-quiz-row{display:flex;align-items:stretch;gap:.55rem}.course-quiz-card-link{flex:1;min-width:0}.course-quiz-delete{flex:0 0 auto;align-self:center;margin-top:0!important;padding:.35rem .1rem!important;font-size:.88rem!important;font-weight:600!important;border:none!important;border-radius:0!important;background:transparent!important;color:var(--muted)!important;cursor:pointer;box-shadow:none!important;text-decoration:none!important}.course-quiz-delete:hover:not(:disabled){background:transparent!important;color:var(--error)!important;text-decoration:underline!important;text-decoration-color:var(--accent-orange)!important;text-decoration-thickness:2px!important;box-shadow:none!important;filter:none!important}.course-quiz-delete:disabled{opacity:.6;cursor:not-allowed}.course-card{position:relative;overflow:hidden;display:block;text-align:center;padding:.85rem 1rem;border-radius:10px;border:1px solid var(--border-neutral);background:var(--surface);color:var(--text);text-decoration:none;box-shadow:var(--shadow-minimal);transition:border-color .22s ease,box-shadow .22s ease,color .22s ease}.course-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:linear-gradient(180deg,color-mix(in srgb,var(--brand-teal) 22%,#ffffff),color-mix(in srgb,var(--brand-sky) 10%,#ffffff));opacity:0;transition:opacity .22s ease;z-index:0;pointer-events:none}.course-card:hover{color:var(--text-primary);border-color:color-mix(in srgb,var(--brand-teal) 36%,var(--border-neutral));box-shadow:0 4px 16px color-mix(in srgb,var(--brand-teal) 14%,rgba(0,0,0,.06))}.course-card:hover:before{opacity:1}.course-card-title{display:block;position:relative;z-index:1;font-weight:700}.course-card-desc{display:block;position:relative;z-index:1;font-size:.9rem;color:var(--muted);margin-top:.25rem}.course-card:hover .course-card-desc{color:color-mix(in srgb,var(--muted) 82%,var(--text-primary) 18%)}.course-detail-footer{margin-top:2.25rem;padding-top:1.25rem;border-top:1px solid var(--border-neutral);text-align:center}.course-delete-link{background:none;border:none;padding:0;margin:0;font:inherit;font-size:.92rem;font-weight:500;color:var(--muted);cursor:pointer;text-decoration:none;text-underline-offset:.2em;transition:color .15s ease,text-decoration-color .15s ease}.course-delete-link:hover:not(:disabled){color:var(--error);text-decoration:underline;text-decoration-color:#c53030;text-decoration-thickness:2px}.course-delete-link:disabled{opacity:.65;cursor:not-allowed}.back-link-wrap{margin:0 0 1rem}.back-link-wrap a{color:var(--text-muted)}.back-link-wrap a:hover{color:var(--text-primary)}.course-detail-page .back-link-wrap{text-align:left;width:100%;margin-left:0;margin-right:0}.section-heading{margin:1.25rem 0 .5rem;font-size:1.05rem;color:var(--text-primary);font-weight:700}.secondary-button{margin-top:.5rem;font-size:.95rem;font-weight:600;padding:.35rem .1rem;background:transparent;border:none;box-shadow:none;color:var(--text-primary);text-decoration:none}.secondary-button:hover:not(:disabled){background:transparent;text-decoration:underline;text-decoration-color:var(--accent-orange);text-decoration-thickness:2px;box-shadow:none;filter:none}a.secondary-button{display:inline-block;text-decoration:none;color:var(--text-primary)}a.secondary-button:hover{text-decoration:underline;text-decoration-color:var(--accent-orange);text-decoration-thickness:2px;color:var(--text-primary)}.student-roster{list-style:none;padding:0;margin:1rem 0 0;text-align:center}.student-roster-item{padding:.55rem .75rem;border-bottom:1px solid var(--border)}.course-detail-page .student-roster-panel{margin-top:.85rem;border:1px solid color-mix(in srgb,var(--brand) 40%,#a8c9d4);border-radius:12px;background:color-mix(in srgb,var(--brand) 14%,#ffffff);box-shadow:var(--shadow-minimal);overflow:hidden;text-align:left}.course-detail-page .student-roster-search-row{display:flex;flex-direction:column;gap:.35rem;padding:.65rem .75rem;border-bottom:1px solid color-mix(in srgb,var(--brand) 28%,#ffffff);background:color-mix(in srgb,var(--brand) 24%,#ffffff)}.course-detail-page .student-roster-search-label{font-size:.8rem;font-weight:600;color:var(--muted)}.course-detail-page .student-roster-search-input{width:100%;text-align:left;padding:.5rem .65rem;font-size:.95rem;border-radius:10px}.course-detail-page .student-roster-meta{margin:0;font-size:.78rem;color:var(--muted)}.course-detail-page .student-roster-scroll{max-height:min(45vh,18rem);overflow-y:auto;overflow-x:hidden;padding:0 .65rem .65rem;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scrollbar-gutter:stable;isolation:isolate}.course-detail-page .student-roster-scroll::-webkit-scrollbar{width:8px}.course-detail-page .student-roster-scroll::-webkit-scrollbar-track{background:color-mix(in srgb,var(--brand) 12%,#f0f4f6);border-radius:4px}.course-detail-page .student-roster-scroll::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--brand) 45%,#9aa8b0);border-radius:4px}.course-detail-page .student-roster-scroll::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--brand) 55%,#7a8890)}.course-detail-page .student-roster-empty{margin:.5rem 0;text-align:center;font-size:.9rem;color:var(--muted)}.course-detail-page .student-roster-grid{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;margin:0;font-size:.92rem}.course-detail-page .student-roster-grid thead th{position:sticky;top:0;z-index:3;background-color:var(--brand);border-bottom:2px solid color-mix(in srgb,var(--brand) 70%,black);box-shadow:0 2px 4px #0028371f;padding:.5rem .55rem;text-align:left;font-weight:700;font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:#fff}.course-detail-page .student-roster-grid thead th:first-child{width:40%}.course-detail-page .student-roster-grid thead th:last-child{width:5.5rem;text-align:center}.course-detail-page .student-roster-grid tbody .student-grid-cell{padding:.5rem .55rem;border-bottom:1px solid color-mix(in srgb,var(--brand) 22%,#ffffff);vertical-align:top;word-wrap:break-word;background-color:inherit}.course-detail-page .student-roster-grid tbody tr:nth-child(odd){background-color:color-mix(in srgb,var(--brand) 10%,#ffffff)}.course-detail-page .student-roster-grid tbody tr:nth-child(2n){background-color:color-mix(in srgb,var(--brand) 18%,#ffffff)}.course-detail-page .student-roster-grid tbody tr:last-child .student-grid-cell{border-bottom:none}.course-detail-page .student-grid-name{font-weight:600;color:var(--text)}.course-detail-page .student-grid-email{word-break:break-all;color:var(--muted);font-size:.88rem}.course-detail-page .student-grid-actions{text-align:center}.course-detail-page .student-grid-remove-btn{margin-top:0}.student-name{display:block;font-weight:600}.student-email{display:block;font-size:.9rem;color:var(--muted)}.quiz-question-list{list-style:decimal;padding-left:1.25rem;margin:1rem 0;text-align:left}.quiz-question-card{border:1px solid var(--border-neutral);border-radius:10px;background:var(--surface);margin-bottom:.8rem;padding:.75rem .9rem;box-shadow:var(--shadow-minimal);color:var(--text)}.quiz-question-title{margin:0 0 .55rem;font-weight:600;color:var(--text)}.quiz-options{display:grid;gap:.45rem}.quiz-option-row{display:flex;align-items:center;gap:.45rem;color:var(--text);cursor:pointer}.quiz-option-row span{color:var(--text)}.quiz-option-row input[type=radio]{width:auto;padding:0;margin:0;accent-color:var(--accent-orange)}.quiz-result-box{margin-top:1rem;border:1px solid var(--border-neutral);border-radius:10px;padding:.75rem .85rem;background:var(--surface-muted);box-shadow:var(--shadow-minimal);color:var(--text)}.quiz-result-box .section-heading{color:var(--text)}.course-section-lead{margin:.25rem 0 0;max-width:42rem}.subsection-heading{margin:1.25rem 0 .5rem;font-size:1rem;font-weight:600;color:var(--text)}.chapter-bank-upload-form{margin-bottom:1.5rem;padding:1rem 1.1rem;border:1px solid var(--border-neutral);border-radius:10px;background:var(--surface-muted);max-width:40rem}.chapter-bank-upload-actions{margin-top:.75rem}.chapter-bank-upload-actions button{margin-top:0}.add-student-modal-actions{display:flex;justify-content:center}.remove-student-confirm,.create-course-modal-form,.create-course-modal-label,.create-course-modal-label input,.create-course-modal-label textarea{text-align:center}.create-course-modal-label textarea{width:100%;border:1px solid var(--border);border-radius:10px;background:#fff;color:var(--text);padding:.75rem .8rem;resize:vertical}.create-course-ta-fieldset{margin:0;padding:0;border:0}.create-course-ta-legend{font-weight:600;margin-bottom:.35rem}.create-course-ta-hint{margin:0 0 .75rem}.course-create-no-ta-checkbox{display:flex;align-items:flex-start;gap:.5rem;margin-top:.75rem;font-size:.95rem;line-height:1.4}.course-create-no-ta-checkbox input{margin-top:.2rem}.course-ta-panel{margin-bottom:1.5rem;padding:.75rem 1rem;border:1px solid var(--border-subtle, rgba(0, 0, 0, .12));border-radius:.5rem}.course-ta-name{margin:0 0 .25rem;font-weight:600}.course-ta-email{margin:0 0 .5rem}.course-ta-note{margin:0;font-size:.9rem}.skill-dropdown-toolbar .text-link-button{margin-top:0}.chapter-bank-list{margin-top:1rem}.chapter-bank-card{display:flex;flex-direction:column;gap:.5rem;padding:1rem 1.1rem;border:1px solid var(--border-neutral);border-radius:10px;background:var(--surface);box-shadow:var(--shadow-minimal);margin-bottom:.75rem}.chapter-bank-card-header-row{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1rem;width:100%}.chapter-bank-card-main-text{flex:1 1 auto;min-width:min(100%,10rem)}.chapter-bank-card-main-text .chapter-bank-title{margin:0 0 .2rem}.chapter-bank-card-main-text .chapter-bank-meta{margin:0}.chapter-bank-title{margin:0 0 .35rem;font-size:1.05rem;color:var(--text)}.chapter-bank-meta{margin:0 0 .5rem;font-size:.9rem}.chapter-bank-skills{margin:0;padding-left:1.1rem;color:var(--muted);font-size:.88rem}.chapter-bank-actions{display:flex;flex-direction:column;gap:.45rem;align-items:stretch;min-width:12rem}.chapter-bank-skill-check{font-size:.85rem;padding:.35rem .6rem;border-radius:6px;border:1px solid var(--border-neutral);background:var(--surface-muted);color:var(--text);cursor:pointer;text-align:left}.chapter-bank-skill-check:hover:not(:disabled){border-color:var(--brand)}.chapter-bank-skill-check:disabled{opacity:.65;cursor:wait}.adaptive-session-form{margin-top:1rem;max-width:40rem}.adaptive-session-meta{margin-bottom:.5rem}.adaptive-session-feedback{margin-top:.75rem}.adaptive-session-done{margin-top:1rem}.ui-overlay-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2800;display:flex;align-items:center;justify-content:center;padding:1.25rem;background:#0f232d73;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.ui-overlay-backdrop--light{background:#0f232d61}.ui-overlay-panel{position:relative;width:100%;max-width:26rem;min-width:0;max-height:min(88vh,640px);overflow:hidden;display:flex;flex-direction:column;border-radius:14px;border:1px solid color-mix(in srgb,var(--brand) 28%,var(--border-neutral));background:var(--surface);box-shadow:0 18px 48px #001e2d38;color:var(--text)}.ui-overlay-panel--wide{max-width:32rem}.ui-overlay-panel--terms{max-width:min(44rem,96vw);max-height:min(92vh,760px)}.ui-overlay-panel--terms .ui-overlay-body{display:flex;flex-direction:column;overflow:hidden;padding:0;min-height:0}.ui-overlay-panel--context{max-width:22rem}.ui-overlay-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;padding:1rem 1rem .5rem 1.15rem;border-bottom:1px solid color-mix(in srgb,var(--brand) 15%,transparent)}.ui-overlay-header--center-title{position:relative;justify-content:center}.ui-overlay-header--center-title .ui-overlay-title{text-align:center}.ui-overlay-header--center-title .ui-overlay-close{position:absolute;right:.8rem;top:.55rem}.ui-overlay-title{margin:0;font-size:1.1rem;font-weight:700;color:var(--text);line-height:1.3}.ui-overlay-close{flex-shrink:0;width:auto;min-width:2rem;height:auto;border:none;border-radius:0;background:transparent;color:var(--muted);font-size:1.5rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;margin-top:0;padding:.15rem .25rem;text-decoration:none}.ui-overlay-close:hover:not(:disabled){background:transparent;color:var(--text-primary);text-decoration:underline;text-decoration-color:var(--accent-orange);text-decoration-thickness:2px}.ui-overlay-body{padding:1rem 1.15rem 1.15rem;overflow-y:auto;overflow-x:hidden;text-align:left;min-width:0}.chapter-bank-upload-form--modal{margin:0;padding:0;border:none;background:transparent;max-width:none}.course-section-header--row{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap}.chapter-bank-fab{flex-shrink:0;margin-top:0;margin-left:auto;white-space:nowrap}.chapter-bank-fab:hover:not(:disabled){text-decoration:none}.chapter-bank-details-btn{margin-top:.35rem;padding:0;font-size:.88rem}.chapter-bank-dropdown-btn--trailing{margin-top:0;margin-left:auto;flex-shrink:0;align-self:center}.chapter-bank-inline-details{overflow:hidden;margin-top:.25rem;padding:.45rem .55rem;border-radius:8px;background:color-mix(in srgb,var(--brand) 10%,#ffffff);border:1px solid color-mix(in srgb,var(--brand) 24%,#ffffff)}.chapter-tab-panel{width:100%}.chapter-bank-inline-details-meta{margin:0;font-size:.82rem}.chapter-detail-tabs{display:flex;align-items:center;gap:.35rem;margin:.1rem 0 .7rem;border-bottom:1px solid var(--border-neutral)}.chapter-detail-tab{margin-top:0;padding:.4rem .7rem;border-bottom:2px solid transparent;color:var(--muted)}.chapter-detail-tab:hover:not(:disabled){text-decoration:none;color:var(--text);border-bottom-color:color-mix(in srgb,var(--accent-orange) 45%,transparent)}.chapter-detail-tab.is-active{color:var(--text);border-bottom-color:var(--accent-orange)}.chapter-bank-actions--inline{flex-direction:row;flex-wrap:wrap;min-width:auto;justify-content:flex-end}.chapter-bank-actions--inline .btn-pill{white-space:nowrap}.chapter-detail-skill-list{margin:.75rem 0 0;padding-left:1.2rem;color:var(--text);line-height:1.5}.chapter-detail-subheading{margin:0;font-size:.95rem;font-weight:650;color:var(--text)}.chapter-detail-subheading-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin:1.25rem 0 .5rem}.chapter-tab-panel--paths{padding-bottom:.25rem}.chapter-tab-panel--paths-student{display:flex;flex-direction:column;max-height:min(72vh,32rem);min-height:0}.skill-paths-student-shell{display:flex;flex-direction:column;flex:1;min-height:0}.progression-loading-block{display:flex;flex-direction:column;align-items:flex-start;gap:.6rem;padding:.4rem 0 .35rem}.progression-loading-dots{display:flex;gap:.4rem;align-items:center}.progression-loading-dot{width:.5rem;height:.5rem;border-radius:50%;background:var(--brand-sky);animation:progression-dot-pulse 1s ease-in-out infinite}.progression-loading-dot:nth-child(2){animation-delay:.15s;background:var(--brand-lime)}.progression-loading-dot:nth-child(3){animation-delay:.3s;background:var(--accent-orange)}.progression-loading-label{margin:0;font-size:.88rem}.progression-loading-label--emphasis{font-weight:600;color:var(--text-primary, #1a2a32)}.progression-loading-block--centered{align-items:center;text-align:center;width:100%;padding:1.25rem 1rem}.progression-loading-block--centered .progression-loading-label{text-align:center}.progression-loading-block--compact{gap:.45rem;padding:.2rem 0 .15rem}@keyframes progression-dot-pulse{0%,to{transform:translateY(0) scale(.82);opacity:.45}50%{transform:translateY(-.28rem) scale(1);opacity:1}}@media (prefers-reduced-motion: reduce){.progression-loading-dot{animation:none;opacity:.85}}.skill-paths-subtabs{display:flex;flex-wrap:wrap;gap:.2rem;margin:.25rem 0 .4rem;flex-shrink:0;border-bottom:1px solid var(--border-neutral);padding-bottom:.3rem}.skill-paths-subtab{margin:0;padding:.32rem .6rem;border:none;border-bottom:2px solid transparent;background:transparent;font-size:.8rem;font-weight:550;color:var(--muted);cursor:pointer;border-radius:6px 6px 0 0}.skill-paths-subtab:hover{color:var(--text)}.skill-paths-subtab.is-active{color:var(--text);border-bottom-color:var(--accent-orange)}.skill-paths-tab-scroll{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding-right:.3rem;overscroll-behavior:contain}.skill-paths-tab-panel-inner{padding-bottom:.35rem}.skill-paths-tab-hint{margin:0 0 .65rem;font-size:.8rem;line-height:1.45}.skill-paths-custom-toolbar{display:flex;gap:.75rem;margin-bottom:.45rem}.skill-paths-custom-checklist{list-style:none;margin:0 0 .65rem;padding:0}.skill-paths-custom-checklist li{padding:.2rem 0}.skill-paths-custom-actions{padding-top:.2rem}.skill-paths-instructor-note,.skill-paths-lead{margin:0 0 .85rem;font-size:.88rem;line-height:1.45}.skill-paths-static-list{list-style:none;margin:0;padding:0}.skill-paths-static-list>li{margin-bottom:.75rem}.skill-paths-tier-label{display:block;font-size:.82rem;font-weight:650;color:var(--text);margin-bottom:.25rem}.chapter-bank-xp-panel{margin-bottom:.35rem}.chapter-bank-xp-summary{display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem .75rem;margin-bottom:.45rem}.chapter-bank-xp-total{font-size:1.05rem;font-weight:700;color:var(--text)}.chapter-bank-xp-caption{font-size:.8rem}.chapter-bank-xp-bar-track{position:relative;height:10px;border-radius:999px;background:color-mix(in srgb,var(--surface-muted) 88%,var(--border-neutral));box-shadow:inset 0 1px 2px #0000000f;margin-bottom:.6rem}.chapter-bank-xp-bar-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--brand-sky) 0%,var(--brand-lime) 50%,var(--accent-orange) 100%);transition:width .25s ease}.chapter-bank-xp-milestone{display:none}.chapter-bank-xp-legend{margin:.35rem 0 .75rem;font-size:.74rem}.skill-tier-gate-callouts{margin:.6rem 0 .85rem;display:flex;flex-direction:column;gap:.4rem}.skill-tier-gate-callout{margin:0;padding:.55rem .7rem;font-size:.82rem;line-height:1.4;border-radius:8px;border:1px solid color-mix(in srgb,var(--brand-sky) 35%,var(--border-neutral));background:color-mix(in srgb,var(--brand-sky) 12%,var(--surface-elevated))}.skill-tier-skills-aggregate{margin:.35rem 0 .25rem;font-size:.76rem;line-height:1.35}.skill-tier-skill-list{margin:.15rem 0 0;padding:0 0 0 1rem;font-size:.74rem;line-height:1.38}.skill-tier-skill-row{margin:.3rem 0}.skill-tier-skill-name{display:block;font-weight:600;margin-bottom:.12rem}.skill-tier-skill-status{display:block}.skill-tier-skill-status--done{color:color-mix(in srgb,var(--brand-lime) 85%,var(--text-primary))}.skill-tier-skill-status--todo{color:var(--muted-text)}.skill-tier-skill-row--compact{margin:.18rem 0;line-height:1.25}.skill-tier-skill-row--compact .skill-tier-skill-name{display:inline;margin-right:.35rem;font-size:.72rem}.skill-tier-skill-compact-metrics{display:inline-flex;flex-wrap:wrap;gap:.35rem .65rem;font-size:.7rem;vertical-align:baseline}.skill-tier-skill-compact-line{display:inline;font-size:.7rem}.skill-tier-skill-metric{white-space:nowrap;color:var(--muted-text)}.student-progress-accordion-scroll{max-height:min(70vh,32rem);overflow-y:auto;padding-right:.15rem;margin-top:.35rem}.student-progress-accordion-panel .student-progress-accordion-scroll{padding-bottom:.35rem}.student-progress-chapter-mastery-heading{margin:0 0 .35rem;font-size:.82rem;font-weight:650}.student-progress-chapter-mastery-block{margin-bottom:.85rem;padding-bottom:.65rem;border-bottom:1px solid var(--border-subtle, rgba(0, 0, 0, .08))}.student-progress-chapter-skills-block{margin-top:.35rem}.student-progress-chapter-skills-empty{margin:.35rem 0 0;font-size:.85rem}.student-progress-chapter-tier-lines{margin:0;padding-left:1rem;font-size:.78rem;line-height:1.35}.student-progress-tier-path-wrap{margin-top:.25rem}.chapter-bank-xp-panel>.skill-tier-card-grid{margin-top:.15rem}.skill-tier-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(11rem,1fr));gap:.65rem;margin-bottom:1rem}.skill-tier-card-grid--equal{align-items:stretch}.skill-tier-card{display:flex;flex-direction:column;height:100%;min-height:100%;border:1px solid var(--border-neutral);border-radius:10px;padding:.65rem .7rem;background:color-mix(in srgb,var(--surface-elevated) 88%,transparent)}.skill-tier-card-main{flex:1 1 auto;display:flex;flex-direction:column;min-height:0}.skill-tier-card-lock-area{flex:1 1 auto;min-height:2.6rem}.skill-tier-card-footer{flex-shrink:0;margin-top:auto;padding-top:.45rem}.skill-tier-card--locked{opacity:.88;background:color-mix(in srgb,var(--surface-muted) 55%,var(--surface-elevated))}.skill-tier-card--locked .skill-tier-card-start:disabled,.skill-tier-card--locked .skill-tier-card-start.btn-pill:disabled{opacity:.45;cursor:not-allowed;filter:grayscale(.25);box-shadow:none}.skill-tier-card-title{margin:0 0 .25rem;font-size:.92rem;font-weight:650}.skill-tier-card-meta{margin:0 0 .35rem;font-size:.78rem;line-height:1.35}.skill-tier-card-lock{margin:0;font-size:.76rem;line-height:1.35}.skill-tier-card-start{width:100%;margin-top:0}.skill-paths-subheading{margin:.5rem 0 .4rem}.skill-paths-per-skill-list{list-style:none;margin:0;padding:0}.skill-paths-per-skill-row{display:flex;align-items:flex-start;justify-content:space-between;gap:.65rem;padding:.5rem 0;border-bottom:1px solid color-mix(in srgb,var(--border-neutral) 70%,transparent)}.skill-paths-per-skill-row:last-child{border-bottom:none}.skill-paths-per-skill-name{font-weight:550;margin-right:.35rem}.skill-paths-per-skill-badge{display:inline-block;font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;padding:.12rem .35rem;border-radius:4px;margin-right:.35rem}.skill-paths-per-skill-badge--beginner{background:var(--brand-sky);color:#fff;box-shadow:0 0 0 1px color-mix(in srgb,var(--brand-navy) 22%,transparent)}.skill-paths-per-skill-badge--intermediate{background:var(--brand-lime);color:#15320f;box-shadow:0 0 0 1px color-mix(in srgb,#15320f 18%,transparent)}.skill-paths-per-skill-badge--advanced{background:color-mix(in srgb,var(--accent-orange) 35%,#c0392b 65%);color:#fff;box-shadow:0 0 0 1px color-mix(in srgb,var(--brand-navy) 20%,transparent)}.skill-paths-per-skill-stats{display:block;margin-top:.2rem;font-size:.78rem}.btn-pill--small{padding:.28rem .65rem;font-size:.78rem;flex-shrink:0}.chapter-bank-files-heading-actions{display:flex;align-items:center;gap:.35rem;flex-shrink:0}.chapter-bank-file-input-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.chapter-bank-files-section{margin-top:1rem;padding-top:.75rem;border-top:1px solid var(--border-neutral)}.chapter-bank-file-list{list-style:none;margin:.5rem 0 0;padding:0;display:flex;flex-direction:column;gap:.5rem}.chapter-bank-file-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;padding:.55rem .65rem;border-radius:10px;background:var(--surface-muted);border:1px solid var(--border-neutral);min-width:0}.chapter-bank-file-info{display:flex;flex-direction:column;gap:.15rem;min-width:0;flex:1}.chapter-bank-file-name{font-weight:600;font-size:.92rem;word-break:break-word}.chapter-bank-file-meta{font-size:.82rem}.chapter-bank-file-actions{display:flex;align-items:center;gap:.25rem;flex-shrink:0}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;padding:0;border-radius:8px;border:1px solid var(--border-neutral);background:var(--surface);color:var(--text);cursor:pointer;transition:background .15s,border-color .15s,color .15s}.icon-btn:hover:not(:disabled){background:var(--surface-muted);border-color:var(--accent-orange);color:var(--accent-orange)}.icon-btn:disabled{opacity:.45;cursor:not-allowed}.icon-btn--danger:hover:not(:disabled){border-color:#c53030;color:#c53030;background:#c530300f}.icon-btn--topic{width:2.5rem;height:2.5rem}.icon-btn-spinner{display:inline-block;width:1rem;height:1rem;border:2px solid var(--border-neutral);border-top-color:var(--accent-orange);border-radius:50%;animation:chapter-icon-spin .7s linear infinite}@keyframes chapter-icon-spin{to{transform:rotate(360deg)}}.chapter-bank-json-preview{margin:0;max-height:min(70vh,520px);overflow:auto;padding:.75rem 1rem;font-size:.78rem;line-height:1.45;background:var(--surface-muted);border-radius:8px;border:1px solid var(--border-neutral);white-space:pre-wrap;word-break:break-word}.upload-toast{margin:.5rem 0 0}.text-link-button{background:none;border:none;padding:0;margin-top:0;color:var(--text-primary);text-decoration:none;cursor:pointer;font:inherit;font-weight:600;text-underline-offset:.22em}.text-link-button:hover{text-decoration:underline;text-decoration-color:var(--accent-orange);text-decoration-thickness:2px;color:var(--text-primary);background:transparent;box-shadow:none}.skill-dropdown-wrap{position:relative;margin:1rem 0;text-align:left;min-width:0;width:100%;box-sizing:border-box}.skill-dropdown-trigger{width:100%;display:flex;align-items:center;justify-content:flex-start;gap:.5rem;padding:.55rem .75rem;border-radius:10px;border:1px solid var(--border-neutral);background:var(--surface-muted);color:var(--text);font:inherit;text-align:left;cursor:pointer;margin-top:0}.skill-dropdown-trigger:hover:not(:disabled){border-color:color-mix(in srgb,var(--brand) 40%,var(--border-neutral));text-decoration:none;background:var(--surface-muted);box-shadow:none}.skill-dropdown-chevron{opacity:.65;font-size:.75rem;margin-left:auto;flex-shrink:0}.skill-dropdown-panel{margin-top:.35rem;padding:.5rem 0;border-radius:10px;border:1px solid var(--border-neutral);background:var(--surface);box-shadow:var(--shadow-minimal);max-height:240px;overflow-x:hidden;overflow-y:auto;text-align:left;min-width:0;width:100%;box-sizing:border-box}.skill-dropdown-toolbar{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:1rem;padding:0 .75rem .5rem;border-bottom:1px solid color-mix(in srgb,var(--brand) 12%,transparent);margin-bottom:.35rem;text-align:left}.skill-checkbox-list{list-style:none;margin:0;padding:0;text-align:left}.skill-checkbox-list li{margin:0;padding:0;text-align:left}.skill-checkbox-row{display:flex;flex-direction:row;align-items:flex-start;justify-content:flex-start;gap:.6rem;padding:.4rem .75rem;border-radius:0;cursor:pointer;color:var(--text);width:100%;max-width:100%;min-width:0;box-sizing:border-box;text-align:left}.skill-checkbox-row span{flex:1 1 0;min-width:0;text-align:left;line-height:1.4}.skill-checkbox-row:hover{background:color-mix(in srgb,var(--brand) 8%,transparent);text-decoration:none}.skill-checkbox-row input[type=checkbox]{flex:0 0 1.05rem;width:1.05rem;height:1.05rem;margin:.2rem 0 0;align-self:flex-start;accent-color:var(--accent-orange)}.skill-practice-actions{margin-top:1rem;text-align:left}.skill-practice-actions button{margin-top:0}.skill-practice-actions button:disabled{opacity:.55;cursor:not-allowed;text-decoration:none}.adaptive-player-layout{display:flex;align-items:flex-start;gap:.5rem .65rem;width:100%;margin-left:-.15rem}.adaptive-player-layout--single .adaptive-player-main-col{flex:1 1 100%;min-width:0}.adaptive-player-num-col{flex:0 0 auto;min-width:1.25rem;max-width:2.25rem;display:flex;flex-direction:column;align-items:flex-start;padding-top:.35rem;padding-left:0}.adaptive-player-num-col__value{display:block;text-align:left}.adaptive-player-num-col .quiz-session-question-index{flex-shrink:0}.adaptive-player-main-col{flex:1 1 0;min-width:0}.adaptive-player-heading{display:flex;align-items:center;justify-content:flex-start;gap:.75rem;flex-wrap:wrap}.adaptive-player-heading-title{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem .75rem;min-width:0}.quiz-session-question-index{font-variant-numeric:tabular-nums;font-size:.88rem;font-weight:600;line-height:1.3;color:var(--muted);padding:.15rem .1rem;display:inline-flex;align-items:center}.quiz-session-question-index--fraction{font-size:.88rem;font-weight:600;line-height:1.3;color:var(--muted)}.quiz-session-question-index--denom{font-size:.88rem;font-weight:600;line-height:1.3;color:var(--muted);opacity:.9}.quiz-session-question-sep{margin:0 .12rem;font-weight:600;font-size:.88rem;line-height:1.3;color:var(--muted);opacity:.65}.quiz-form-progress{margin:0 0 1rem;display:flex;align-items:center;flex-wrap:wrap;gap:0;justify-content:flex-end}.adaptive-player-heading h2{margin:0}.adaptive-player-sub{margin:.25rem 0 0}.adaptive-context-trigger{width:auto;height:auto;border-radius:0;border:none;background:transparent;color:var(--muted);font-size:.88rem;font-weight:600;line-height:1.3;cursor:pointer;display:inline-flex;align-items:center;justify-content:flex-start;margin-top:0;padding:.15rem .1rem;text-decoration:none}.adaptive-context-trigger:hover:not(:disabled){border:none;background:transparent;color:var(--text-primary);text-decoration:underline;text-decoration-color:var(--accent-orange);text-decoration-thickness:2px}.adaptive-context-dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:.35rem 1rem;font-size:.92rem}.adaptive-context-dl dt{margin:0;color:var(--muted);font-weight:600}.adaptive-context-dl dd{margin:0;color:var(--text)}.auth-transition-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2600;display:flex;align-items:center;justify-content:center;background:#0c181e47;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.auth-transition-card{min-width:13rem;padding:1rem 1.15rem;border-radius:12px;border:1px solid color-mix(in srgb,var(--brand) 30%,#ffffff);background:var(--surface);box-shadow:var(--shadow-soft);display:flex;flex-direction:column;align-items:center;gap:.55rem;color:var(--text)}.auth-transition-spinner{width:1.35rem;height:1.35rem;border:2px solid color-mix(in srgb,var(--brand) 25%,#c8d8de);border-top-color:var(--accent-orange);border-radius:50%;animation:auth-spin .72s linear infinite}.auth-transition-text{margin:0;font-weight:600;color:var(--text-primary)}@keyframes auth-spin{to{transform:rotate(360deg)}}.quiz-completion-overlay{z-index:2650}.quiz-completion-card{min-width:14.5rem}.course-detail-page.student-metrics-page{max-width:min(720px,100%);padding:.15rem 0 1.5rem}.student-metrics-header{text-align:center;margin-bottom:1.5rem}.student-metrics-title{margin:0 0 .35rem;font-size:1.45rem;letter-spacing:-.02em}.student-metrics-sub{margin:0 auto;max-width:28rem;line-height:1.45}.student-metrics-overall{margin:.85rem 0 0;font-size:1.02rem;font-variant-numeric:tabular-nums}.student-metrics-overall-value{font-variant-numeric:tabular-nums;letter-spacing:-.02em}.student-metrics-overall-pct{font-size:.92em;font-weight:700;margin-left:.06em;opacity:.88}.student-metrics-status{text-align:center;margin:.5rem 0 0}.student-metrics-panel{margin-top:.25rem;padding:1.35rem 1.1rem 1.25rem;border-radius:12px;border:1px solid var(--border-neutral, #e2e8ec);background:var(--surface, #ffffff);box-shadow:var(--shadow-minimal, 0 2px 12px rgba(15, 35, 45, .05))}.student-metrics-panel--stack{display:flex;flex-direction:column;gap:1.75rem}.combined-difficulty-chart{width:100%}.combined-difficulty-chart__main{display:flex;flex-direction:row;flex-wrap:wrap;align-items:flex-start;gap:1.25rem 1.5rem}.combined-difficulty-chart__rows{flex:1 1 min(320px,100%);display:flex;flex-direction:column;gap:.75rem}.combined-difficulty-chart__row{display:grid;grid-template-columns:4.25rem 1fr 3.25rem;gap:.5rem .65rem;align-items:center}.combined-difficulty-chart__row-label{font-size:.88rem;font-weight:700;color:var(--text-primary, #1a2a32);letter-spacing:.02em}.combined-difficulty-chart__track{height:.65rem;border-radius:999px;background:color-mix(in srgb,var(--border-neutral) 65%,#ffffff);overflow:hidden;min-width:0}.combined-difficulty-chart__fill{height:100%;border-radius:999px;transition:width .05s linear;min-width:0}.combined-difficulty-chart__row-pct{font-size:.9rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--text-primary, #1a2a32);text-align:right}.combined-difficulty-chart__legend{flex:0 0 auto;min-width:8.5rem;padding:.65rem .75rem;border-radius:10px;border:1px solid color-mix(in srgb,var(--border-neutral) 80%,var(--brand) 20%);background:color-mix(in srgb,var(--surface) 94%,var(--brand) 6%)}.combined-difficulty-chart__legend-title{margin:0 0 .4rem;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted, #5a6f78)}.combined-difficulty-chart__legend-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem;font-size:.85rem;font-weight:600;color:var(--text-primary, #1a2a32)}.combined-difficulty-chart__legend-list li{display:flex;align-items:center;gap:.45rem}.combined-difficulty-chart__legend-swatch{width:.65rem;height:.65rem;border-radius:2px;flex-shrink:0}.topic-proficiency-section{padding-top:.25rem;border-top:1px solid color-mix(in srgb,var(--border-neutral) 90%,transparent)}.topic-proficiency-section__title{margin:0 0 .35rem;font-size:1.05rem;font-weight:700;color:var(--text-primary, #1a2a32)}.topic-proficiency-section__lead{margin:0 0 1rem;font-size:.92rem;line-height:1.45;max-width:36rem}.topic-proficiency-section--bare{padding-top:0;border-top:none}.topic-proficiency-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.topic-proficiency-card{display:flex;flex-direction:column;align-items:stretch;gap:.4rem;padding:.65rem .85rem;border-radius:10px;border:1px solid var(--border-neutral, #e2e8ec);background:color-mix(in srgb,var(--surface) 97%,var(--brand) 3%)}.topic-proficiency-card__main{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:1rem}.topic-proficiency-card__name{font-weight:600;font-size:.95rem;color:var(--text-primary, #1a2a32);line-height:1.3;flex:1;min-width:0}.topic-proficiency-card__score{font-size:.92rem;font-variant-numeric:tabular-nums;color:var(--text-muted, #5a6f78);white-space:nowrap}.topic-proficiency-card__score--course{white-space:normal;text-align:right;max-width:min(100%,22rem)}.topic-proficiency-card__triple{display:inline-flex;flex-wrap:wrap;justify-content:flex-end;gap:.15rem .35rem;font-size:.84rem;line-height:1.35}.topic-proficiency-card__triple-item{white-space:nowrap}.topic-proficiency-card__triple-sep{opacity:.45;-webkit-user-select:none;-moz-user-select:none;user-select:none}.topic-proficiency-card__wrong-count{color:color-mix(in srgb,var(--accent-orange) 88%,#7a2810)}.topic-proficiency-card__empty-topic{margin:.15rem 0 0;font-size:.8rem}.course-metrics-sources-note{margin:.35rem 0 0;font-size:.88rem;max-width:40rem}.course-metrics-no-topics{margin-top:.75rem}.topic-proficiency-card__correct{color:var(--text-primary, #1a2a32);font-size:1rem}.topic-proficiency-card__of{opacity:.9}.topic-proficiency-card__suffix{margin-left:.2rem;font-size:.82rem}.topic-proficiency-band-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.28rem;font-size:.82rem;line-height:1.45;font-variant-numeric:tabular-nums}.topic-proficiency-band-row{display:flex;flex-wrap:wrap;align-items:baseline;gap:.35rem .65rem;color:var(--text-muted, #5a6f78)}.topic-proficiency-band-row__label{font-weight:700;min-width:3.25rem}.topic-proficiency-band-row__counts{flex:1;min-width:0}.topic-proficiency-band-row__correct{color:color-mix(in srgb,var(--brand-lime) 72%,var(--text-primary));font-weight:600}.topic-proficiency-band-row__incorrect{color:color-mix(in srgb,var(--accent-orange) 85%,#8a3018);font-weight:600}.topic-proficiency-band-row__sep{opacity:.55;font-weight:400}.topic-proficiency-band-row__legacy{opacity:.92}.topic-proficiency-band--easy{color:color-mix(in srgb,var(--brand-lime) 85%,var(--brand))}.topic-proficiency-band--medium{color:var(--brand)}.topic-proficiency-band--hard{color:color-mix(in srgb,var(--accent-orange) 90%,#b83820)}.circular-metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.35rem 1rem;align-items:stretch}@media (max-width: 720px){.circular-metric-grid{grid-template-columns:1fr;max-width:260px;margin:0 auto;gap:1.15rem}}.circular-metric-card{background:color-mix(in srgb,var(--surface, #ffffff) 92%,var(--brand) 8%);border:1px solid color-mix(in srgb,var(--border-neutral, #e2e8ec) 88%,var(--brand) 12%);border-radius:12px;padding:1.15rem .85rem 1rem;box-shadow:none;display:flex;flex-direction:column;align-items:center;text-align:center}.circular-metric-ring-wrap{position:relative;width:120px;height:120px;margin-bottom:.55rem}.circular-metric-svg{display:block}.circular-metric-center{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;pointer-events:none}.circular-metric-value-row{display:inline-flex;flex-direction:row;align-items:baseline;justify-content:center;gap:.04em;font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;min-width:4.1ch}.circular-metric-num{font-size:1.7rem;font-weight:700;line-height:1;color:var(--text-primary, #1a2a32);font-variant-numeric:tabular-nums;letter-spacing:-.03em;text-align:right;min-width:2.35ch}.circular-metric-pct-symbol{font-size:1.05rem;font-weight:700;line-height:1;color:var(--text-primary, #1a2a32);opacity:.82;transform:translateY(.02em)}.circular-metric-label{margin:0;font-size:.98rem;font-weight:600;letter-spacing:.02em;text-transform:capitalize;color:var(--text-primary, #1a2a32)}.course-metrics-difficulty-root{width:100%}.course-metrics-difficulty-header{margin-bottom:1rem}.course-metrics-difficulty-header .course-section-lead{margin-top:.35rem}.course-metrics-subtab-lead{margin-top:0;margin-bottom:.5rem;max-width:42rem}.course-metrics-overall-inline{margin-top:.65rem;text-align:left}.student-progress-session-stats{margin:1rem 0;padding:.75rem 1rem;border-radius:8px;background:var(--surface-muted, rgba(0, 0, 0, .04))}.student-progress-session-stats p{margin:.35rem 0}.recent-sessions-mini-list{margin:.35rem 0 0 1.1rem;padding:0}.recent-sessions-table-wrap{margin-top:.5rem}.recent-sessions-table-intro{margin:0 0 .35rem;font-size:.88rem}.recent-sessions-table{width:100%;max-width:22rem;border-collapse:collapse;font-size:.86rem}.recent-sessions-table-caption{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.recent-sessions-table th,.recent-sessions-table td{text-align:left;padding:.4rem .55rem;border-bottom:1px solid color-mix(in srgb,var(--border-neutral) 75%,transparent)}.recent-sessions-table th{font-weight:600;font-size:.78rem;text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted, var(--muted))}.recent-sessions-table tbody tr:last-child th,.recent-sessions-table tbody tr:last-child td{border-bottom:none}.student-chapter-mastery-explainer{margin:0 0 .85rem;line-height:1.5;font-size:.88rem}.tier-mastery-fraction-hint{font-family:ui-monospace,monospace;font-size:.9em;padding:.05rem .25rem;border-radius:4px;background:var(--surface-muted)}.student-chapter-mastery-section{margin:1.25rem 0}.student-chapter-tier-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.75rem;margin-top:.75rem}.student-chapter-tier-block{padding:.65rem .75rem;border-radius:8px;border:1px solid var(--border-subtle, rgba(0, 0, 0, .08))}.student-chapter-tier-block h5{margin:0 0 .4rem;font-size:.95rem}.tier-mastery-mini{margin:0;padding-left:1rem;font-size:.88rem}.class-progress-summary-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.75rem;margin-bottom:1.25rem}.class-progress-stat-card{padding:.75rem;border-radius:8px;border:1px solid var(--border-subtle, rgba(0, 0, 0, .08))}.class-progress-stat-card h4{margin:0 0 .35rem;font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;opacity:.85}.class-progress-stat-value{margin:0;font-size:1.35rem;font-weight:700}.class-progress-stat-note{margin:.35rem 0 0;font-size:.8rem}.class-progress-table{width:100%;border-collapse:collapse;margin-top:.5rem;font-size:.9rem}.class-progress-table th,.class-progress-table td{text-align:left;padding:.45rem .5rem;border-bottom:1px solid var(--border-subtle, rgba(0, 0, 0, .08))}.instructor-class-progress-panel .instructor-class-progress-section-title{margin:0 0 .35rem;font-size:1.02rem}.instructor-class-progress-panel .instructor-class-progress-lead{margin:0 0 .85rem;max-width:40rem;font-size:.88rem;line-height:1.45}.instructor-class-progress-overview{margin-bottom:1.35rem}.instructor-class-progress-topic-row{margin-top:.5rem}.class-progress-stat-value--topic{font-size:1.05rem;font-weight:650;line-height:1.35;word-break:break-word}.class-progress-stat-card--strongest{border-color:color-mix(in srgb,var(--brand-lime) 35%,var(--border-subtle, rgba(0, 0, 0, .08)));background:color-mix(in srgb,var(--brand-lime) 8%,var(--surface-elevated, #fff))}.class-progress-stat-card--weakest{border-color:color-mix(in srgb,var(--accent-orange) 40%,var(--border-subtle, rgba(0, 0, 0, .08)));background:color-mix(in srgb,var(--accent-orange) 10%,var(--surface-elevated, #fff))}.instructor-class-progress-chapters{margin-bottom:1.35rem}.instructor-class-progress-table-wrap{overflow-x:auto}.instructor-student-progress-list{list-style:none;margin:.75rem 0 0;padding:0}.instructor-student-progress-item{margin-bottom:.5rem}.instructor-student-progress-details{border:1px solid var(--border-subtle, rgba(0, 0, 0, .1));border-radius:8px;padding:.25rem .5rem;background:var(--surface-muted, rgba(0, 0, 0, .03))}.instructor-student-progress-summary{cursor:pointer;list-style:none;display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem 1rem;padding:.35rem .25rem}.instructor-student-progress-summary::-webkit-details-marker{display:none}.instructor-student-progress-name{font-weight:600}.instructor-student-progress-mini{font-size:.85rem}.instructor-student-progress-body{padding:.5rem .5rem .75rem 1rem;border-top:1px solid var(--border-subtle, rgba(0, 0, 0, .06));font-size:.9rem}.course-section--progress .course-progress-lead{margin-top:.35rem;max-width:42rem}.course-section--progress-snapshot{margin-top:.5rem}.course-progress-snapshot-card{border-radius:10px;overflow:hidden;border:1px solid var(--border-neutral, rgba(0, 0, 0, .12));background:var(--surface-elevated, #fff)}.course-progress-snapshot-body{padding:.85rem 1rem 1.1rem;background:var(--surface-elevated, #fff)}.instructor-student-metrics-page .instructor-student-metrics-page-title{margin:.35rem 0 .65rem;font-size:1.25rem;font-weight:650;color:var(--text, #1a2a32);letter-spacing:-.02em}.course-progress-skill-paths-panel{min-height:2rem}.course-progress-tiered-list{margin-top:.15rem}.course-progress-square-bullets{list-style:square;margin:.2rem 0 0 1.15rem;padding:0;font-size:.88rem;line-height:1.5;color:var(--text, #1a2a32)}.course-progress-square-bullets li{margin:.1rem 0}.course-progress-panel-silent,.course-progress-panel-silent.course-progress-panel-silent{margin:0;font-size:.88rem;color:var(--muted, #5a6b73)}.course-progress-panel-silent.progress-panel-status{padding:.25rem 0}.student-roster-skill-extremes{margin:0 0 .5rem;line-height:1.5;font-size:.9rem}.student-roster-view-more-wrap{margin:.65rem 0 0}.student-roster-view-more-link{font-size:.9rem;font-weight:600;color:var(--accent-orange, #e07020);text-decoration:none}.student-roster-view-more-link:hover{text-decoration:underline}.course-progress-subtabs{display:inline-flex;gap:.25rem;margin-bottom:1rem;padding:.2rem;border-radius:10px;background:var(--surface-muted, rgba(0, 0, 0, .05))}.course-progress-subtab{border:none;background:transparent;padding:.45rem .9rem;border-radius:8px;font-size:.9rem;font-weight:600;color:var(--text-secondary, #5a6b73);cursor:pointer}.course-progress-subtab:hover{color:var(--text-primary, #1a2a32)}.course-progress-subtab.is-active{background:var(--surface-elevated, #fff);color:var(--text-primary, #1a2a32);box-shadow:0 1px 2px #0000000f}.student-roster-actions{display:inline-flex;align-items:center;gap:.35rem}.student-roster-expand-btn{color:var(--text-secondary, #5a6b73)}.student-roster-expand-row .student-roster-expand-cell{padding:.65rem .85rem .85rem;background:var(--surface-muted, rgba(0, 0, 0, .03));border-bottom:1px solid var(--border-subtle, rgba(0, 0, 0, .06));vertical-align:top}.student-roster-metrics-body{max-width:40rem;font-size:.9rem}.student-roster-metrics-scores{margin:0 0 .35rem}.student-roster-metrics-lifetime{margin:0 0 .5rem}.student-roster-recent-sessions{margin:.5rem 0 0}.student-roster-metrics-footnote{margin:.65rem 0 0;font-size:.82rem}.progress-panel-status{margin:.5rem 0}.progress-panel-hint{margin:0 0 1rem;max-width:40rem}.progress-subsection-heading{margin-top:1.25rem}.instructor-student-progress-list--compact{margin-top:.75rem}.instructor-student-progress-item--inline{display:flex;flex-wrap:wrap;align-items:baseline;gap:.35rem 1rem;padding:.35rem 0;border-bottom:1px solid var(--border-subtle, rgba(0, 0, 0, .06));list-style:none}.student-metrics-page-header{margin-bottom:1rem}.student-metrics-page-header h2{margin-bottom:.35rem}
