@font-face{font-display:block;font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(./KaTeX_AMS-Regular-BQhdFMY1.woff2) format("woff2"),url(./KaTeX_AMS-Regular-DMm9YOAa.woff) format("woff"),url(./KaTeX_AMS-Regular-DRggAlZN.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(./KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2) format("woff2"),url(./KaTeX_Caligraphic-Bold-BEiXGLvX.woff) format("woff"),url(./KaTeX_Caligraphic-Bold-ATXxdsX0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(./KaTeX_Caligraphic-Regular-Di6jR-x-.woff2) format("woff2"),url(./KaTeX_Caligraphic-Regular-CTRA-rTL.woff) format("woff"),url(./KaTeX_Caligraphic-Regular-wX97UBjC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(./KaTeX_Fraktur-Bold-CL6g_b3V.woff2) format("woff2"),url(./KaTeX_Fraktur-Bold-BsDP51OF.woff) format("woff"),url(./KaTeX_Fraktur-Bold-BdnERNNW.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(./KaTeX_Fraktur-Regular-CTYiF6lA.woff2) format("woff2"),url(./KaTeX_Fraktur-Regular-Dxdc4cR9.woff) format("woff"),url(./KaTeX_Fraktur-Regular-CB_wures.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(./KaTeX_Main-Bold-Cx986IdX.woff2) format("woff2"),url(./KaTeX_Main-Bold-Jm3AIy58.woff) format("woff"),url(./KaTeX_Main-Bold-waoOVXN0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(./KaTeX_Main-BoldItalic-DxDJ3AOS.woff2) format("woff2"),url(./KaTeX_Main-BoldItalic-SpSLRI95.woff) format("woff"),url(./KaTeX_Main-BoldItalic-DzxPMmG6.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(./KaTeX_Main-Italic-NWA7e6Wa.woff2) format("woff2"),url(./KaTeX_Main-Italic-BMLOBm91.woff) format("woff"),url(./KaTeX_Main-Italic-3WenGoN9.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(./KaTeX_Main-Regular-B22Nviop.woff2) format("woff2"),url(./KaTeX_Main-Regular-Dr94JaBh.woff) format("woff"),url(./KaTeX_Main-Regular-ypZvNtVU.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(./KaTeX_Math-BoldItalic-CZnvNsCZ.woff2) format("woff2"),url(./KaTeX_Math-BoldItalic-iY-2wyZ7.woff) format("woff"),url(./KaTeX_Math-BoldItalic-B3XSjfu4.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(./KaTeX_Math-Italic-t53AETM-.woff2) format("woff2"),url(./KaTeX_Math-Italic-DA0__PXp.woff) format("woff"),url(./KaTeX_Math-Italic-flOr_0UB.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:700;src:url(./KaTeX_SansSerif-Bold-D1sUS0GD.woff2) format("woff2"),url(./KaTeX_SansSerif-Bold-DbIhKOiC.woff) format("woff"),url(./KaTeX_SansSerif-Bold-CFMepnvq.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:italic;font-weight:400;src:url(./KaTeX_SansSerif-Italic-C3H0VqGB.woff2) format("woff2"),url(./KaTeX_SansSerif-Italic-DN2j7dab.woff) format("woff"),url(./KaTeX_SansSerif-Italic-YYjJ1zSn.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:400;src:url(./KaTeX_SansSerif-Regular-DDBCnlJ7.woff2) format("woff2"),url(./KaTeX_SansSerif-Regular-CS6fqUqJ.woff) format("woff"),url(./KaTeX_SansSerif-Regular-BNo7hRIc.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(./KaTeX_Script-Regular-D3wIWfF6.woff2) format("woff2"),url(./KaTeX_Script-Regular-D5yQViql.woff) format("woff"),url(./KaTeX_Script-Regular-C5JkGWo-.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(./KaTeX_Size1-Regular-mCD8mA8B.woff2) format("woff2"),url(./KaTeX_Size1-Regular-C195tn64.woff) format("woff"),url(./KaTeX_Size1-Regular-Dbsnue_I.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(./KaTeX_Size2-Regular-Dy4dx90m.woff2) format("woff2"),url(./KaTeX_Size2-Regular-oD1tc_U0.woff) format("woff"),url(./KaTeX_Size2-Regular-B7gKUWhC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(data:font/woff2;base64,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) format("woff2"),url(./KaTeX_Size3-Regular-CTq5MqoE.woff) format("woff"),url(./KaTeX_Size3-Regular-DgpXs0kz.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(./KaTeX_Size4-Regular-Dl5lxZxV.woff2) format("woff2"),url(./KaTeX_Size4-Regular-BF-4gkZK.woff) format("woff"),url(./KaTeX_Size4-Regular-DWFBv043.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(./KaTeX_Typewriter-Regular-CO6r4hn1.woff2) format("woff2"),url(./KaTeX_Typewriter-Regular-C0xS9mPB.woff) format("woff"),url(./KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf) format("truetype")}.katex{font: 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;position:relative;text-indent:0;text-rendering:auto}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.16.47"}.katex .katex-mathml{border:0;-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;overflow:hidden;padding:0;position:absolute;width:1px}.katex .katex-html>.newline{display:block}.katex .base{position:relative;white-space:nowrap;width:-webkit-min-content;width:-moz-min-content;width:min-content}.katex .base,.katex .strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;display:inline-table;table-layout:fixed}.katex .vlist-r{display:table-row}.katex .vlist{display:table-cell;position:relative;vertical-align:bottom}.katex .vlist>span{display:block;height:0;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{overflow:hidden;width:0}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{display:table-cell;font-size:1px;min-width:2px;vertical-align:bottom;width:2px}.katex .vbox{align-items:baseline;display:inline-flex;flex-direction:column}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{display:inline-flex;flex-direction:row}.katex .thinbox{max-width:0;width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .smash{display:inline;line-height:0}.katex .clap,.katex .llap,.katex .rlap{position:relative;width:0}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.katex .sqrt>.root{margin-left:.2777777778em;margin-right:-.5555555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.1666666667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.6666666667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.4566666667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.1466666667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.7142857143em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.8571428571em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.1428571429em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.2857142857em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.4285714286em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.7142857143em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.0571428571em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.4685714286em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.9628571429em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.5542857143em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.7777777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.8888888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.1111111111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.3044444444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.7644444444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.5833333333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.7283333333em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.0733333333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.4861111111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.4402777778em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.7277777778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.2893518519em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.4050925926em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.462962963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.5208333333em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.5787037037em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.2002314815em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.4398148148em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.2410800386em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.2892960463em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.337512054em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.3857280617em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.4339440694em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.4821600771em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.5785920926em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.6943105111em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.8331726133em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.1996142719em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.2009646302em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.2411575563em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.2813504823em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.3215434084em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.3617363344em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.4019292605em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.4823151125em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.578778135em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.6945337621em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.8336012862em}.katex .fontsize-ensurer.reset-size11.size11,.katex .sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{display:inline-block;width:.12em}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{display:inline-block;min-width:1px}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;display:block;height:inherit;position:absolute;width:100%}.katex svg path{stroke:none}.katex svg{fill-rule:nonzero;fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1}.katex img{border-style:none;max-height:none;max-width:none;min-height:0;min-width:0}.katex .stretchy{display:block;overflow:hidden;position:relative;width:100%}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{overflow:hidden;position:relative;width:100%}.katex .halfarrow-left{left:0;overflow:hidden;position:absolute;width:50.2%}.katex .halfarrow-right{overflow:hidden;position:absolute;right:0;width:50.2%}.katex .brace-left{left:0;overflow:hidden;position:absolute;width:25.1%}.katex .brace-center{left:25%;overflow:hidden;position:absolute;width:50%}.katex .brace-right{overflow:hidden;position:absolute;right:0;width:25.1%}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{border:.04em solid;box-sizing:border-box}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{border-right:.049em solid;border-top:.049em solid;box-sizing:border-box;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{display:inline-block;position:absolute;right:calc(50% + .3em);text-align:left}.katex .cd-label-right{display:inline-block;left:calc(50% + .3em);position:absolute;text-align:right}.katex-display{display:block;margin:1em 0;text-align:center}.katex-display>.katex{display:block;text-align:center;white-space:nowrap}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{padding-left:2em;text-align:left}body{counter-reset:katexEqnNo mmlEqnNo}pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*!
  Theme: GitHub Dark
  Description: Dark theme as seen on github.com
  Author: github.com
  Maintainer: @Hirse
  Updated: 2021-05-15

  Outdated base version: https://github.com/primer/github-syntax-dark
  Current colors taken from GitHub's CSS
*/.hljs{color:#c9d1d9;background:#0d1117}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#ff7b72}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#d2a8ff}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-variable,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id{color:#79c0ff}.hljs-regexp,.hljs-string,.hljs-meta .hljs-string{color:#a5d6ff}.hljs-built_in,.hljs-symbol{color:#ffa657}.hljs-comment,.hljs-code,.hljs-formula{color:#8b949e}.hljs-name,.hljs-quote,.hljs-selector-tag,.hljs-selector-pseudo{color:#7ee787}.hljs-subst{color:#c9d1d9}.hljs-section{color:#1f6feb;font-weight:700}.hljs-bullet{color:#f2cc60}.hljs-emphasis{color:#c9d1d9;font-style:italic}.hljs-strong{color:#c9d1d9;font-weight:700}.hljs-addition{color:#aff5b4;background-color:#033a16}.hljs-deletion{color:#ffdcd7;background-color:#67060c}:root{--bg: #f7f6f2;--bg-elev: #ffffff;--bg-sunken: #f1f0ea;--fg: #1a1a2e;--fg-muted: #64748b;--fg-faint: #94a3b8;--line: #e2e0d8;--shadow: 0 1px 3px rgba(0, 0, 0, .08), 0 4px 12px rgba(0, 0, 0, .06);--accent: #00a651;--accent-dk: #007a3d;--accent-soft: #e8f5ee;--link: #007a3d;--ok: #007a3d;--ok-soft: #e8f5ee;--warn: #b45309;--warn-soft: #fffbeb;--bad: #be123c;--bad-soft: #fff1f2;--info: #1e40af;--info-soft: #eff6ff;--header-bg: #0f0e23;--header-fg: #ffffff;--header-muted: #9aa3c4;--header-line: #00a651;--code-bg: #0d1117;--code-fg: #c9d1d9;--code-line: #30363d;--inline-code-bg: #f1f5f9;--inline-code-fg: #c2185b;--callout-def-bg: #eff6ff;--callout-def-line: #3b82f6;--callout-def-border: #bfdbfe;--callout-example-border: #cbd5e1;--callout-example-title: #007a3d;--callout-note-bg: #e8f5ee;--callout-note-line: #00a651;--callout-steps-bg: #fffbeb;--callout-steps-line: #f59e0b;--callout-insight-bg: #eff6ff;--callout-insight-border: #93c5fd;--callout-insight-fg: #1e40af;--callout-caution-bg: #fff1f2;--callout-caution-border: #fca5a5;--callout-caution-fg: #9f1239;--blk-stmt-bg: #f5f3ff;--blk-stmt-line: #7c3aed;--blk-stmt-border: #ddd6fe;--sim-surface: #ffffff;--sim-controls-bg: #f8f7f3;--sim-note-bg: #f0faf4;--sim-note-fg: #2d6a45;--sim-note-line: #c8e6d5;--font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--mono: "SFMono-Regular", ui-monospace, Menlo, Consolas, monospace;--radius: 10px;--radius-sm: 6px;--measure: 76ch;--sidebar: 300px;--dom-math-calculus: #3b6fd6;--dom-math-linear-algebra: #5b8def;--dom-math-discrete: #7c5cd6;--dom-theory: #a04fb5;--dom-probability: #d65c8c;--dom-statistics: #d67f3b;--dom-programming: #2f9e7a;--dom-algorithms: #3f8f4f;--dom-systems: #7a8a3b;--dom-data: #2f8fa3;--dom-ml: #c9a227}:root[data-theme=dark]{--bg: #121417;--bg-elev: #1a1d22;--bg-sunken: #0e1013;--fg: #e6e6e3;--fg-muted: #a3a8b1;--fg-faint: #6f7580;--line: #2a2e35;--shadow: none;--accent: #34c47a;--accent-dk: #5fd393;--accent-soft: #16301f;--link: #5fd393;--ok: #5fc48b;--ok-soft: #16301f;--warn: #e0a84a;--warn-soft: #3a2c12;--bad: #ef6b6b;--bad-soft: #3d1b1b;--info: #9dbcff;--info-soft: #1d2740;--header-bg: #0b0b14;--header-fg: #ffffff;--header-muted: #9aa3c4;--header-line: #34c47a;--code-bg: #0d1117;--code-fg: #c9d1d9;--code-line: #30363d;--inline-code-bg: #1f242c;--inline-code-fg: #f0a3c2;--callout-def-bg: #1d2740;--callout-def-line: #7ea2ff;--callout-def-border: #2b3a5e;--callout-example-border: #3a4150;--callout-example-title: #5fd393;--callout-note-bg: #16301f;--callout-note-line: #34c47a;--callout-steps-bg: #3a2c12;--callout-steps-line: #e0a84a;--callout-insight-bg: #1d2740;--callout-insight-border: #2b3a5e;--callout-insight-fg: #c9d8ff;--callout-caution-bg: #3d1b1b;--callout-caution-border: #5a2a2a;--callout-caution-fg: #ffb4b4;--blk-stmt-bg: #241d3a;--blk-stmt-line: #a78bfa;--blk-stmt-border: #3b2f5e;--sim-surface: #1a1f2e;--sim-controls-bg: #151a27;--sim-note-bg: #151a27;--sim-note-fg: #a3a8b1;--sim-note-line: #232d3f}*{box-sizing:border-box}html{color-scheme:light}:root[data-theme=dark]{color-scheme:dark}body{margin:0;font-family:var(--font);font-size:15px;line-height:1.55;color:var(--fg);background:var(--bg)}a{color:var(--link);text-decoration:none}a:hover{color:var(--accent-dk);text-decoration:underline}h1,h2,h3,h4{line-height:1.25;margin:1.6em 0 .5em}h1{font-size:1.7rem;margin-top:.4em}h2{font-size:1.3rem;padding-bottom:.35em;border-bottom:2px solid var(--accent)}h3{font-size:1.08rem}h4{font-size:1rem;color:var(--fg-muted)}code,pre,kbd{font-family:var(--mono);font-size:.88em}code{background:var(--inline-code-bg);color:var(--inline-code-fg);padding:.1em .35em;border-radius:4px}pre{background:var(--code-bg);color:var(--code-fg);border:1px solid var(--code-line);padding:.9em 1.1em;border-radius:var(--radius);overflow-x:auto;line-height:1.55;box-shadow:var(--shadow)}pre code{background:none;color:inherit;padding:0;font-size:.84rem}table{border-collapse:collapse;margin:.8em 0;font-size:.93em}.unit-body table{display:block;max-width:100%;overflow-x:auto}th,td{border:1px solid var(--line);padding:.35em .7em;text-align:left;vertical-align:top}th{background:var(--bg-sunken)}hr{border:0;border-top:1px solid var(--line);margin:2em 0}.shell{display:flex;flex-direction:column;min-height:100vh}.topbar{display:flex;align-items:center;gap:1.2rem;flex-wrap:wrap;padding:max(.65rem,env(safe-area-inset-top)) max(1.25rem,env(safe-area-inset-right)) .65rem max(1.25rem,env(safe-area-inset-left));border-bottom:2px solid var(--header-line);background:var(--header-bg);position:sticky;top:0;z-index:20}.topbar .brand{font-weight:700;letter-spacing:.01em;color:var(--header-fg);font-size:1.05rem}.topbar .brand:hover{color:var(--accent);text-decoration:none}.topbar nav{display:flex;gap:1.1rem;flex-wrap:wrap}.topbar nav a{color:var(--header-muted);padding:.2em 0;border-bottom:2px solid transparent;font-size:.92rem}.topbar nav a:hover{color:var(--header-fg);text-decoration:none}.topbar nav a.active{color:var(--header-fg);border-bottom-color:var(--accent)}.theme-toggle{font:inherit;font-size:.85rem;padding:.3em .7em;border-radius:999px;cursor:pointer;border:1px solid #ffffff33;background:transparent;color:var(--header-muted)}.theme-toggle:hover{color:var(--header-fg);border-color:var(--accent)}.topbar .spacer{flex:1}.main{flex:1;width:100%;max-width:1180px;margin:0 auto;padding:1rem max(1.25rem,env(safe-area-inset-right)) 4rem max(1.25rem,env(safe-area-inset-left))}.main.full{max-width:none;padding:0 env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);display:flex;flex-direction:column}.footer{display:flex;flex-wrap:wrap;gap:.4rem 1.5rem;justify-content:center;padding:1rem max(1.25rem,env(safe-area-inset-right)) max(1rem,env(safe-area-inset-bottom)) max(1.25rem,env(safe-area-inset-left));border-top:1px solid var(--line);font-size:.8rem;color:var(--fg-muted)}.footer a{color:var(--fg-muted);text-decoration:underline;text-underline-offset:2px}.footer a:hover{color:var(--fg)}.footer .version,.build-label{font-family:var(--mono);color:var(--fg-faint)}.update-toast{position:fixed;z-index:50;left:0;right:0;margin:0 auto;width:max-content;max-width:calc(100vw - 2rem);bottom:max(1rem,calc(env(safe-area-inset-bottom) + .5rem));display:flex;align-items:center;gap:.6rem;padding:.55rem .6rem .55rem 1rem;background:var(--header-bg);color:var(--header-fg);border:1px solid var(--header-line);border-radius:999px;box-shadow:var(--shadow);font-size:.9rem}.update-toast button{font:inherit;font-size:.85rem;padding:.3em .9em;border-radius:999px;cursor:pointer;border:1px solid #ffffff33;background:transparent;color:var(--header-muted)}.update-toast button.primary{background:var(--accent);border-color:var(--accent);color:#fff}.explore{position:relative;flex:1;min-height:0}.explore-graph{position:absolute;top:0;right:0;bottom:0;left:0}.explore-panel{position:absolute;top:.8rem;left:.9rem;z-index:5;display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;padding:.45rem .7rem;background:color-mix(in srgb,var(--bg-elev) 88%,transparent);border:1.5px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.explore-panel h1{font-size:1.05rem;margin:0 .4rem 0 0}.explore-panel .tabs{margin:0}.explore-panel select,.explore-panel button.plain{font:inherit;font-size:.86rem;padding:.3em .6em;border-radius:6px;border:1px solid var(--line);background:var(--bg-elev);color:var(--fg)}.explore-legend{position:absolute;top:4.1rem;left:.9rem;z-index:5;display:flex;flex-wrap:wrap;gap:.25rem .8rem;max-width:60rem;padding:.3rem .7rem;font-size:.78rem;color:var(--fg-muted);background:color-mix(in srgb,var(--bg-elev) 88%,transparent);border:1.5px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.explore-legend span{display:inline-flex;align-items:center;gap:.35em;white-space:nowrap}.explore-legend i{display:inline-block;width:.9em;height:.9em;border:1.5px solid;border-radius:3px}.explore-search{position:relative}.explore-search input{font:inherit;font-size:.86rem;padding:.3em .6em;border-radius:6px;border:1px solid var(--line);background:var(--bg-elev);color:var(--fg);width:11rem}.explore-search .results{position:absolute;top:calc(100% + 4px);left:0;z-index:6;min-width:16rem;max-width:22rem;display:flex;flex-direction:column;background:var(--bg-elev);border:1.5px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.explore-search .results button{font:inherit;font-size:.86rem;text-align:left;padding:.35em .7em;border:0;background:transparent;color:var(--fg);cursor:pointer;display:flex;align-items:center;gap:.5em}.explore-search .results button i{display:inline-block;width:.6em;height:.6em;border-radius:50%;flex:none}.explore-search .results button.hi,.explore-search .results button:hover{background:var(--accent-soft);color:var(--accent-dk)}.explore-search .results button.hidden{color:var(--fg-muted)}button.linkish{font:inherit;padding:0;border:0;background:transparent;color:var(--link);cursor:pointer;text-decoration:underline dotted;text-underline-offset:2px}button.linkish:hover{color:var(--accent-dk)}.badge.tier-application{background:#d4a01726;color:#8a6a0c}.badge.tier-core{background:var(--ok-soft);color:var(--ok)}.badge.tier-supporting{background:#6f8fc026;color:#3f5f95}.badge.tier-peripheral{background:var(--bg-sunken);color:var(--fg-muted)}:root[data-theme=dark] .badge.tier-application{color:#e6c25a}:root[data-theme=dark] .badge.tier-supporting{color:#9db4dd}.explore-help{position:absolute;left:.9rem;bottom:.8rem;z-index:5;width:1.6rem;height:1.6rem;display:flex;align-items:center;justify-content:center;font-weight:700;color:var(--fg-muted);background:var(--bg-elev);border:1.5px solid var(--line);border-radius:50%;cursor:help}.explore-selected{position:absolute;right:.9rem;bottom:.8rem;z-index:5;max-width:34rem;font-size:.9rem;padding:.5rem .8rem;background:var(--bg-elev);border:1.5px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.explore-zoom{position:absolute;right:.9rem;top:.8rem;z-index:5;font-size:.78rem;color:var(--fg-muted);padding:.25rem .55rem;background:color-mix(in srgb,var(--bg-elev) 88%,transparent);border-radius:6px}.with-sidebar{display:grid;grid-template-columns:minmax(0,1fr) var(--sidebar);gap:2rem;align-items:start}.sidebar{position:sticky;top:calc(4rem + env(safe-area-inset-top));font-size:.92rem}.sidebar section{margin-bottom:1.2rem}.sidebar h4{margin:0 0 .4em;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em}.sidebar ul{list-style:none;padding:0;margin:0}.sidebar li{margin:.2em 0}@media (max-width: 900px){.with-sidebar{grid-template-columns:minmax(0,1fr)}.sidebar{position:static}}.prose{max-width:var(--measure)}.crumbs{font-size:.85rem;color:var(--fg-muted);margin-bottom:.4rem}.crumbs a,.muted{color:var(--fg-muted)}.faint{color:var(--fg-faint)}.small{font-size:.86rem}blockquote.wiki{max-width:var(--measure);margin:1.1em 0;padding:.8em 1.2em;border-left:4px solid var(--callout-note-line);background:var(--callout-note-bg);border-radius:0 var(--radius) var(--radius) 0}blockquote.wiki p{margin:.4em 0}.chip{display:inline-block;padding:.1em .55em;border-radius:999px;font-size:.8rem;background:var(--bg-sunken);color:var(--fg);border:1px solid var(--line);margin:.12em .25em .12em 0;white-space:nowrap}.chip:hover{text-decoration:none;border-color:var(--accent);color:var(--accent-dk)}.chip.dom{border-left:4px solid var(--dom, var(--fg-faint))}.badge{display:inline-block;padding:0 .5em;border-radius:4px;font-size:.74rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.badge.detailed,.badge.covered,.badge.core{background:var(--ok-soft);color:var(--ok)}.badge.outline,.badge.thin,.badge.partial,.badge.soft{background:var(--warn-soft);color:var(--warn)}.badge.planned,.badge.gap,.badge.unmapped,.badge.hard{background:var(--bad-soft);color:var(--bad)}.badge.review,.badge.assumed_prior,.badge.external{background:var(--bg-sunken);color:var(--fg-muted)}.badge.draft{background:transparent;color:var(--fg-muted);outline:1px dashed var(--fg-muted);outline-offset:-1px}.badge.reviewed{background:var(--ok);color:var(--bg-elev)}.badge.same{background:var(--warn-soft);color:var(--warn)}.badge.later,.badge.never{background:var(--bad-soft);color:var(--bad)}.card{background:var(--bg-elev);border:1.5px solid var(--line);border-radius:var(--radius);padding:.8rem 1rem;box-shadow:var(--shadow)}.card:hover{border-color:var(--accent)}.card h3{margin:0 0 .3em;font-size:1rem}.card a.title{color:var(--fg)}.grid{display:grid;gap:.8rem;grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.terms{display:grid;gap:.8rem;grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}.term{background:var(--bg-elev);border:1.5px solid var(--line);border-radius:var(--radius);padding:.7rem .9rem;box-shadow:var(--shadow)}.term h3{margin:0 0 .5em;font-size:.95rem;display:flex;justify-content:space-between}.term ul{list-style:none;margin:0;padding:0}.term li{display:flex;justify-content:space-between;gap:.5em;padding:.25em 0;border-top:1px solid var(--line)}.term li:first-child{border-top:0}.term li .done{color:var(--ok);font-weight:600}.progress-cell{display:inline-flex;align-items:center;gap:.4em;white-space:nowrap;font-variant-numeric:tabular-nums}.progress{display:inline-flex;width:3.2em;height:.5em;border-radius:3px;overflow:hidden;background:var(--bg-sunken);box-shadow:inset 0 0 0 1px var(--line);vertical-align:middle}.progress>span{flex-basis:0}.progress .reviewed{background:var(--ok)}.progress .drafted{background:color-mix(in srgb,var(--ok) 40%,transparent)}.progress-legend{display:flex;align-items:center;gap:.45em;flex-wrap:wrap;margin-top:.6rem}.progress-legend .progress{width:1.4em;margin-left:.6em}.progress-legend .progress:first-child{margin-left:0}.term .work{color:var(--fg-muted);font-style:italic}.tabs{display:flex;gap:.3rem;flex-wrap:wrap;margin:.6rem 0 1rem}.tabs button{font:inherit;font-size:.88rem;padding:.3em .8em;border-radius:999px;cursor:pointer;border:1px solid var(--line);background:var(--bg-elev);color:var(--fg-muted)}.tabs button.active{background:var(--accent-soft);color:var(--accent-dk);border-color:var(--accent)}.unit-body h2{margin-top:2.2em}.unit-body h2{color:var(--fg)}.unit-body h3{border-bottom:2px solid var(--line);padding-bottom:.3em}.unit-body blockquote{margin:1.1em 0;padding:.8em 1.2em;border-left:4px solid var(--callout-note-line);background:var(--callout-note-bg);border-radius:0 var(--radius) var(--radius) 0}.unit-body blockquote p{margin:.4em 0}.unit-body blockquote.def{border:1px solid var(--callout-def-border);border-left:4px solid var(--callout-def-line);background:var(--callout-def-bg)}.unit-body blockquote.example{border:1px dashed var(--callout-example-border);border-radius:var(--radius);background:var(--bg-elev)}.unit-body blockquote.example>p:first-child>strong:first-child{color:var(--callout-example-title)}.unit-body blockquote.steps{border-left-color:var(--callout-steps-line);background:var(--callout-steps-bg)}.unit-body blockquote.insight{border:1.5px solid var(--callout-insight-border);border-radius:var(--radius);background:var(--callout-insight-bg);color:var(--callout-insight-fg)}.unit-body blockquote.caution{border:1.5px solid var(--callout-caution-border);border-radius:var(--radius);background:var(--callout-caution-bg);color:var(--callout-caution-fg)}.unit-body .blk{margin:1.3em 0;padding:.85em 1.2em .9em;border-radius:var(--radius);border:1px solid var(--line);background:var(--bg-elev)}.unit-body .blk>:last-child{margin-bottom:0}.unit-body .blk-head{margin:0 0 .45em;display:flex;flex-wrap:wrap;align-items:baseline;gap:.2em .6em}.unit-body .blk-label{font-size:.74rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--fg-muted)}.unit-body .blk-title{font-style:normal;font-weight:650}.unit-body .blk-definition{border-color:var(--callout-def-border);border-left:4px solid var(--callout-def-line);background:var(--callout-def-bg)}.unit-body .blk-definition>.blk-head .blk-label{color:var(--callout-def-line)}.unit-body :is(.blk-theorem,.blk-lemma,.blk-proposition,.blk-corollary){border-color:var(--blk-stmt-border);border-left:4px solid var(--blk-stmt-line);background:var(--blk-stmt-bg)}.unit-body :is(.blk-theorem,.blk-lemma,.blk-proposition,.blk-corollary)>.blk-head .blk-label{color:var(--blk-stmt-line)}.unit-body .blk-proof{border:0;border-left:2px solid var(--line);border-radius:0;background:transparent;padding:.2em 0 .2em 1.1em}.unit-body .blk-proof[open]:after{content:"∎";display:block;text-align:right;color:var(--fg-muted);margin-top:-1.2em}.unit-body details.blk>summary.blk-head{cursor:pointer;list-style:none;-webkit-user-select:none;user-select:none;margin:0}.unit-body details.blk>summary.blk-head::-webkit-details-marker{display:none}.unit-body details.blk>summary.blk-head:before{content:"";align-self:center;border-style:solid;border-color:transparent transparent transparent currentColor;border-width:.3em 0 .3em .45em;color:var(--fg-muted);transition:transform .15s}.unit-body details.blk[open]>summary.blk-head{margin-bottom:.45em}.unit-body details.blk[open]>summary.blk-head:before{transform:rotate(90deg)}.unit-body details.blk>summary.blk-head:hover .blk-label{color:var(--accent)}.unit-body .blk-example{border:1px dashed var(--callout-example-border)}.unit-body .blk-example>.blk-head .blk-label{color:var(--callout-example-title)}.unit-body .blk-solution{margin:.9em 0 0;padding:.7em 0 0;border:0;border-top:1px dashed var(--callout-example-border);border-radius:0;background:transparent}.unit-body :is(.blk-note,.blk-remark){border:0;border-left:4px solid var(--callout-note-line);border-radius:0 var(--radius) var(--radius) 0;background:var(--callout-note-bg)}.unit-body .blk-caution{border:1.5px solid var(--callout-caution-border);background:var(--callout-caution-bg);color:var(--callout-caution-fg)}.unit-body .blk-caution>.blk-head .blk-label{color:inherit}.unit-body .blk-insight{border:1.5px solid var(--callout-insight-border);background:var(--callout-insight-bg);color:var(--callout-insight-fg)}.unit-body .blk-insight>.blk-head .blk-label{color:inherit}.unit-body .blk-steps{border:0;border-left:4px solid var(--callout-steps-line);border-radius:0 var(--radius) var(--radius) 0;background:var(--callout-steps-bg)}.unit-body .blk-equations{background:var(--bg-sunken)}.unit-body .blk-equations ul{margin:0;padding-left:1.1em}.unit-body .blk-equations li{margin:.35em 0}.unit-body .blk-algorithm{border:1px solid var(--line);border-left:4px solid var(--fg-muted);background:var(--bg-sunken)}.unit-body .blk-algorithm ol{padding-left:1.4em}.unit-body .blk-algorithm ol li::marker{font-weight:700;color:var(--fg-muted)}.unit-body .blk-machine{border:1.5px solid var(--callout-def-border);background:var(--bg-elev)}.unit-body .blk-machine>.blk-head .blk-label{color:var(--callout-def-line)}.unit-body .blk-machine table{margin:.6em 0 .2em;font-variant-numeric:tabular-nums}.unit-body .blk-trace{border:0;border-left:3px solid var(--callout-steps-line);border-radius:0;background:transparent;padding:.2em 0 .2em 1em}.unit-body .blk-trace>.blk-head .blk-label{color:var(--callout-steps-line)}.unit-body .blk-exercise{border:1.5px dashed var(--callout-steps-line);background:var(--callout-steps-bg)}.unit-body .blk-exercise>.blk-head .blk-label{color:var(--callout-steps-line)}.unit-body .blk-syntax{border:1px solid var(--code-line);border-left:4px solid var(--callout-def-line);background:var(--bg-sunken)}.unit-body .blk-syntax>.blk-head .blk-label{color:var(--callout-def-line)}.unit-body .blk-syntax pre{margin:.2em 0 .7em;box-shadow:none}.unit-body .blk-syntax ul{margin:.3em 0 0;padding-left:1.1em}.unit-body pre:has(+.code-output){margin-bottom:0;border-bottom-left-radius:0;border-bottom-right-radius:0}.unit-body .code-output{position:relative;margin:0 0 1.2em}.unit-body .code-output pre{margin:0;border-top:1px dashed var(--code-line);border-top-left-radius:0;border-top-right-radius:0;background:var(--bg-sunken);color:var(--fg);box-shadow:none}.unit-body .code-output-label{position:absolute;top:.35em;right:.8em;font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--fg-muted)}.unit-body .blk-trace table{margin:.5em 0 .3em;font-variant-numeric:tabular-nums}.unit-body.pages-programming :is(p,li){line-height:1.7}.unit-body.pages-programming pre{font-size:.86rem}.unit-body .views{container-type:inline-size;margin:.8em 0}.unit-body .views-switch{display:none;gap:.3em;margin-bottom:.5em}.unit-body .views-switch button{font:inherit;font-size:.8rem;font-weight:600;padding:.25em .9em;border-radius:999px;border:1px solid var(--line);background:var(--bg-elev);color:var(--fg-muted);cursor:pointer}.unit-body .views-switch button.on{background:var(--accent);border-color:var(--accent);color:#fff}.unit-body .views-panes{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:1em;align-items:center}.unit-body .views-pane>table{margin:0}@container (max-width: 520px){.unit-body .views-switch{display:flex}.unit-body .views-panes{grid-template-columns:minmax(0,1fr)}.unit-body .views-pane:not(.on){display:none}}.unit-body .automaton .fa-svg{max-height:260px}.unit-body .automaton .fa-error{color:var(--bad);font-size:.85rem}.unit-body:is(.pages-math,.pages-theory) :is(p,li){line-height:1.75}.unit-body:is(.pages-math,.pages-theory) .katex-display{margin:.9em 0}.unit-body:is(.pages-math,.pages-theory) .blk .katex-display{margin:.7em 0}.unit-body span.math-fit{display:block}.unit-body .math-nowrap{white-space:nowrap}.unit-body .math-dense{line-height:1.95}.unit-body:is(.pages-math,.pages-theory) .math-dense{line-height:2.1}.unit-body .katex-display{overflow-x:auto;overflow-y:hidden;padding:.2em 0}.unit-body img{max-width:100%}.unit-list{list-style:none;padding:0;margin:0}.unit-list li{display:grid;grid-template-columns:2.2em 1fr auto;gap:.6em;align-items:baseline;padding:.45em 0;border-top:1px solid var(--line)}.unit-list li:first-child{border-top:0}.unit-list .badges{white-space:nowrap}.unit-list .n{color:var(--fg-faint);font-variant-numeric:tabular-nums}@media (max-width: 520px){.unit-list li{grid-template-columns:2.2em minmax(0,1fr);row-gap:.25em}.unit-list .badges{grid-column:2}.unit-list .chip{white-space:normal}}.unit-nav{display:flex;justify-content:space-between;gap:1rem;margin-top:3rem;padding-top:1.2rem;border-top:1.5px solid var(--line)}.unit-nav a{display:inline-block;padding:.6em 1.1em;border:1.5px solid var(--line);border-radius:var(--radius);background:var(--bg-elev);color:var(--fg);box-shadow:var(--shadow)}.unit-nav a:hover{border-color:var(--accent);text-decoration:none}.sim-box{margin:1.4em 0;border:1.5px solid var(--line);border-radius:14px;background:var(--sim-surface);overflow:hidden;box-shadow:var(--shadow)}.sim-controls{display:flex;flex-wrap:wrap;gap:.8rem 1.25rem;align-items:flex-end;padding:.9rem 1.25rem;background:var(--sim-controls-bg);border-bottom:1px solid var(--line)}.sim-controls label{display:flex;flex-direction:column;font-size:.8rem;font-weight:600;color:var(--fg-muted);gap:.3em;min-width:175px}.sim-controls .ctrl-label{display:flex;justify-content:space-between}.sim-controls .ctrl-val{font-weight:800;color:var(--accent)}.sim-controls input[type=range]{width:100%;accent-color:var(--accent);cursor:pointer}.sim-controls .btn{font:inherit;font-size:.88rem;font-weight:700;padding:.5em 1.25em;border-radius:8px;border:0;background:var(--accent);color:#fff;cursor:pointer}.sim-controls .btn:hover{background:var(--accent-dk)}.sim-plot{min-height:380px;background:#1a1f2e}.sim-plot.sim-custom{background:#fff}.sim-loading{padding:1.5rem 1.25rem;font-size:.87rem;color:#9aa3b8}.sim-note{padding:.75rem 1.25rem;font-size:.87rem;color:var(--sim-note-fg);background:var(--sim-note-bg);border-top:1px solid var(--sim-note-line);line-height:1.5}.sim-verify{padding:.3rem 1.25rem;font-size:.75rem;font-weight:600;letter-spacing:.02em;color:var(--warn);background:var(--warn-soft);border-bottom:1px solid var(--line)}.sim-code{margin:-.9em 0 1.4em}.sim-code summary{display:inline-flex;align-items:center;gap:.4em;font-size:.82rem;color:var(--fg-muted);cursor:pointer;padding:.2em .1em;list-style:none;-webkit-user-select:none;user-select:none}.sim-code summary::-webkit-details-marker{display:none}.sim-code summary:before{content:"";border-style:solid;border-color:transparent transparent transparent currentColor;border-width:.3em 0 .3em .45em;transition:transform .15s}.sim-code[open] summary:before{transform:rotate(90deg)}.sim-code summary:hover{color:var(--accent)}.sim-code pre{margin:.4em 0 0}.status-line{font-size:.86rem;color:var(--fg-muted);margin:.3rem 0 1rem;display:flex;gap:.8em;flex-wrap:wrap;align-items:center}.loading{padding:4rem;text-align:center;color:var(--fg-muted)}.search{position:relative}.search input{font:inherit;font-size:.9rem;padding:.35em .7em;border-radius:6px;border:1px solid #ffffff22;background:#ffffff14;color:var(--header-fg);width:260px}.search input::placeholder{color:var(--header-muted)}.search .results{position:absolute;right:0;top:2.3rem;width:380px;max-height:60vh;overflow:auto;background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 8px 30px #00000026;z-index:30}.search .results a{display:block;padding:.45em .8em;border-top:1px solid var(--line);color:var(--fg)}.search .results a:first-child{border-top:0}.search .results a:hover,.search .results a.hi{background:var(--accent-soft);text-decoration:none}.search .results .kind{float:right;font-size:.74rem;color:var(--fg-faint);text-transform:uppercase}.kv{display:grid;grid-template-columns:max-content 1fr;gap:.25em 1em;font-size:.92rem}.kv dt{color:var(--fg-muted)}.kv dd{margin:0}.solmap{margin:1.4em 0;border:1.5px solid var(--line);border-radius:14px;background:var(--bg-elev);overflow:hidden;box-shadow:var(--shadow);container-type:inline-size}.solmap-error{padding:.8rem 1.25rem;color:var(--bad)}.solmap-head{padding:.6rem 1.25rem 0;font-size:.8rem}.solmap-kind{font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--accent)}.solmap-method{font-weight:700;color:var(--fg)}.solmap-task{padding:.2rem 1.25rem .4rem;border-bottom:1px solid var(--line)}.solmap-body{display:grid;grid-template-columns:1fr}@container (min-width: 620px){.solmap-body{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.solmap-graph{border-left:1px solid var(--line)}}.solmap-steps{padding:.6rem 1.25rem .9rem;min-width:0}.solmap-steps ol{margin:0;padding-left:1.3em}.solmap-steps li{margin:.35rem 0;padding:.2rem .6rem;border-left:3px solid transparent;border-radius:4px;cursor:pointer}.solmap-steps li.now{border-left-color:var(--accent);background:var(--accent-soft)}.solmap-steps li p{margin:.2em 0}.solmap-node{font-size:.78rem;font-weight:700;color:var(--fg-muted)}.solmap-node.decision{color:var(--warn)}.solmap-node.method{color:var(--accent-dk)}.solmap-node.end{color:var(--info)}.solmap-answer{margin-left:.5em;padding:0 .45em;border-radius:6px;background:var(--warn-soft);color:var(--warn);font-weight:800}.solmap-controls{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;padding:.6rem 1.25rem;border-bottom:1px solid var(--line);background:var(--bg-sunken)}.solmap-controls .btn{font:inherit;font-size:.85rem;font-weight:700;padding:.4em 1em;border-radius:8px;border:0;background:var(--accent);color:#fff;cursor:pointer}.solmap-controls .btn:hover:not(:disabled){background:var(--accent-dk)}.solmap-controls .btn-quiet{background:transparent;color:var(--accent-dk);border:1px solid var(--line)}.solmap-controls .btn-quiet:hover:not(:disabled){background:var(--accent-soft)}.solmap-controls .btn:disabled{opacity:.4;cursor:default}.solmap-count{font-size:.8rem;color:var(--fg-muted);margin-left:auto}.solmap-graph{min-width:0;border-top:1px solid var(--line)}@container (min-width: 620px){.solmap-graph{border-top:0}}.fieldmap-canvas{width:100%;height:100%;background:var(--bg-elev)}.fieldmap-busy{display:flex;align-items:center;justify-content:center;height:100%;color:var(--fg-muted);background:var(--bg-elev)}.fieldmap .explore-panel.fieldmap-top{right:auto;max-width:calc(100% - 1.8rem)}.seg{display:inline-flex;border:1px solid var(--line);border-radius:999px;overflow:hidden}.seg button{font:inherit;font-size:.86rem;padding:.28em .8em;border:0;border-right:1px solid var(--line);background:var(--bg-elev);color:var(--fg-muted);cursor:pointer}.seg button:last-child{border-right:0}.seg button:hover{color:var(--fg)}.seg button.active{background:var(--accent-soft);color:var(--accent-dk);font-weight:600}.fieldmap-check{display:inline-flex;align-items:center;gap:.35em;font-size:.86rem;color:var(--fg-muted);cursor:pointer;white-space:nowrap}.fieldmap-legend{position:absolute;top:4.6rem;left:.9rem;z-index:5;width:15.6rem;max-height:calc(100% - 9.2rem);overflow-y:auto;padding:.5rem .6rem .6rem;font-size:.84rem;background:color-mix(in srgb,var(--bg-elev) 92%,transparent);border:1.5px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.fieldmap-legend section+section{margin-top:.5rem;border-top:1px solid var(--line);padding-top:.45rem}.fieldmap-legend h4{margin:0 0 .3rem;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--fg-muted)}.fieldmap-legend h4 .muted{text-transform:none;letter-spacing:0;font-weight:400}.fieldmap-legend select{font:inherit;font-size:.84rem;width:100%;padding:.25em .4em;border-radius:6px;border:1px solid var(--line);background:var(--bg-elev);color:var(--fg);margin-bottom:.35rem}.legend-row,.legend-family-head{display:flex;align-items:center;gap:.45em;width:100%;font:inherit;font-size:.82rem;text-align:left;padding:.06em .3em;border:0;border-radius:5px;background:transparent;color:var(--fg);cursor:pointer;line-height:1.45}.legend-row:hover,.legend-family-head:hover{background:var(--bg-sunken)}.legend-row i,.legend-family-head i{display:inline-block;width:.95em;height:.95em;border:1.5px solid transparent;border-radius:3px;flex:none}.legend-row i.ring{border-radius:50%}.legend-row .count{margin-left:auto;color:var(--fg-faint);font-variant-numeric:tabular-nums;font-size:.78rem}.legend-row.off,.legend-family-head.off{opacity:.42}.legend-row.off span:not(.count){text-decoration:line-through}.legend-family+.legend-family{margin-top:.2rem}.legend-family-head{font-weight:700;font-size:.8rem;color:var(--fg-muted)}.legend-family .legend-row{padding-left:1.2em}.fieldmap-zoom{position:absolute;left:.9rem;bottom:.8rem;z-index:5;display:flex;align-items:center;gap:.3rem;padding:.25rem .4rem;background:color-mix(in srgb,var(--bg-elev) 92%,transparent);border:1.5px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.fieldmap-zoom button{font:inherit;font-size:.9rem;min-width:1.9rem;height:1.7rem;border-radius:6px;border:1px solid var(--line);background:var(--bg-elev);color:var(--fg);cursor:pointer}.fieldmap-zoom button:hover,.fieldmap-zoom button.active{border-color:var(--accent);color:var(--accent-dk)}.fieldmap-zoom span{padding:0 .3rem;font-variant-numeric:tabular-nums}.fieldmap-help{position:absolute;left:.9rem;bottom:3.4rem;z-index:6;max-width:30rem;font-size:.86rem;padding:.5rem .8rem;background:var(--bg-elev);border:1.5px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.fieldmap-help p{margin:.35em 0}.fieldmap-hover{position:absolute;z-index:8;width:20rem;pointer-events:none;padding:.45rem .65rem;font-size:.86rem;background:var(--bg-elev);border:1.5px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.fieldmap-hover .hover-title{font-weight:700;display:flex;align-items:center;gap:.45em}.fieldmap-hover .hover-title i,.linkchip i,.explore-search .results button i{display:inline-block;width:.65em;height:.65em;border-radius:50%;flex:none}.fieldmap-hover .hover-body{margin-top:.25em;line-height:1.45}.explore-search .results .results-head{padding:.3em .7em;border-bottom:1px solid var(--line)}.fieldmap .explore-search .results{min-width:24rem;max-width:30rem}.fieldmap .explore-search .results button{white-space:nowrap}.fieldmap .explore-search .results button .result-title{overflow:hidden;text-overflow:ellipsis}.fieldmap .explore-search .results button .result-domain{margin-left:auto;padding-left:.8em}.fieldmap-detail{position:absolute;top:4.6rem;right:.9rem;bottom:.8rem;z-index:6;width:25rem;overflow-y:auto;padding:.7rem .9rem 1rem;background:var(--bg-elev);border:1.5px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);font-size:.9rem}.fieldmap-detail .detail-head{display:flex;align-items:flex-start;gap:.5rem}.fieldmap-detail .detail-head h2{margin:0;font-size:1.15rem;border:0;padding:0;flex:1}.fieldmap-detail .detail-swatch{width:.9rem;height:.9rem;border-radius:3px;margin-top:.3rem;flex:none}.fieldmap-detail .close{font:inherit;font-size:1.2rem;line-height:1;padding:.1em .45em;border-radius:6px;border:1px solid var(--line);background:var(--bg-elev);color:var(--fg-muted);cursor:pointer}.fieldmap-detail .detail-tier{margin:.45rem 0 .2rem}.fieldmap-detail .detail-body{margin:.45rem 0;line-height:1.5}.fieldmap-detail .detail-why{margin:.4rem 0 .2rem;line-height:1.9}.fieldmap-detail section{margin-top:.75rem}.fieldmap-detail h4{margin:0 0 .3rem;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--fg-muted)}.fieldmap-detail .detail-units{margin:0;padding-left:1.1em}.fieldmap-detail .soft-row{margin-top:.3rem}.fieldmap-detail .detail-actions{margin-top:1rem;display:flex;align-items:center;gap:.9rem}.fieldmap-detail .detail-actions .button{display:inline-block;padding:.35em .8em;border-radius:999px;border:1px solid var(--accent);color:var(--accent-dk);background:var(--accent-soft);font-size:.86rem}.fieldmap-detail .detail-actions .button:hover{text-decoration:none;filter:brightness(.97)}.fieldmap-detail .detail-alias{margin-top:.6rem}button.chip.linkchip{font:inherit;font-size:.8rem;cursor:pointer;display:inline-flex;align-items:center;gap:.35em}.fieldmap-detail .link-title{font-family:DIN Alternate,DIN Condensed,Bahnschrift,D-DIN,Barlow Semi Condensed,Roboto Condensed,Arial Narrow,sans-serif;text-transform:uppercase;font-size:1.1rem;line-height:1.3}.fieldmap-detail .link-title .link-verb{font-family:var(--font);text-transform:none;font-weight:400;color:var(--fg-muted);font-size:.95rem}button.chip.linkchip.untaught{border-style:dashed}.chip .chip-count{margin-left:.35em;padding:0 .4em;border-radius:999px;background:var(--bg-sunken);color:var(--fg-muted);font-size:.72rem;font-variant-numeric:tabular-nums}.fieldmap-detail .link-all summary{cursor:pointer;list-style:none}.fieldmap-detail .link-all summary::-webkit-details-marker{display:none}.fieldmap-detail .link-all summary h4{display:inline}.fieldmap-detail .link-all summary:before{content:"▸ ";color:var(--fg-muted);font-size:.75rem}.fieldmap-detail .link-all[open] summary:before{content:"▾ "}.fieldmap-detail .link-all ul{list-style:none;padding:0;margin:.4rem 0 0}.fieldmap-detail .link-all li{margin:.15rem 0;line-height:1.9}.fieldmap-detail .detail-actions button.button{font:inherit;display:inline-block;padding:.35em .8em;border-radius:999px;border:1px solid var(--accent);color:var(--accent-dk);background:var(--accent-soft);font-size:.86rem;cursor:pointer}body:before{content:"";position:fixed;top:0;left:0;right:0;height:env(safe-area-inset-top);background:var(--header-bg);z-index:40}.unit-body h2[id],.unit-body h3[id]{scroll-margin-top:calc(env(safe-area-inset-top) + 4.5rem)}.search-toggle,.parts-bar{display:none}.sim-collapsed{display:flex;align-items:baseline;gap:.6em;width:100%;margin:1.2em 0;padding:.75rem 1rem;font:inherit;text-align:left;cursor:pointer;color:var(--fg);background:var(--sim-surface);border:1.5px dashed var(--line);border-radius:14px}.sim-collapsed:before{content:"▸";color:var(--accent)}.sim-collapsed-label{font-weight:600}.parts-backdrop,.sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:45;background:#00000059}.parts-sheet,.sheet{position:fixed;left:0;right:0;bottom:0;z-index:46;max-width:640px;margin:0 auto;max-height:75vh;display:flex;flex-direction:column;background:var(--bg-elev);color:var(--fg);border-radius:16px 16px 0 0;box-shadow:0 -8px 30px #0003;padding-bottom:env(safe-area-inset-bottom);animation:sheet-up .18s ease-out}.parts-sheet-head,.sheet-head{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1.1rem;border-bottom:1px solid var(--line);font-weight:700}.parts-sheet-head button,.sheet-head button{font:inherit;font-size:1.05rem;border:0;background:transparent;color:var(--fg-muted);padding:.2rem .4rem;cursor:pointer}.parts-sheet ol{list-style:none;margin:0;padding:.3rem 0;overflow-y:auto;overscroll-behavior:contain}.parts-sheet li button{display:block;width:100%;text-align:left;font:inherit;line-height:1.35;border:0;background:transparent;color:var(--fg);padding:.6rem 1.1rem;cursor:pointer}.parts-sheet li.d2 button{font-weight:600}.parts-sheet li.d3 button{padding-left:2.1rem;font-size:.92rem;color:var(--fg-muted)}.parts-sheet li.current button{background:var(--accent-soft);color:var(--accent-dk);box-shadow:inset 3px 0 0 var(--accent)}html.sheet-open{overflow:hidden}@keyframes sheet-up{0%{transform:translateY(100%)}to{transform:none}}@media (prefers-reduced-motion: reduce){.parts-sheet,.sheet{animation:none}}@media (max-width: 900px){.topbar{position:static}.parts-bar{display:block;position:sticky;top:env(safe-area-inset-top);z-index:15;margin:.4rem calc(-1*max(1.25rem,env(safe-area-inset-right))) .6rem calc(-1*max(1.25rem,env(safe-area-inset-left)));background:var(--bg);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.parts-bar button{display:flex;align-items:center;gap:.6em;width:100%;text-align:left;cursor:pointer;font:inherit;font-size:.9rem;border:0;background:transparent;color:var(--fg);padding:.55rem max(1.25rem,env(safe-area-inset-right)) .55rem max(1.25rem,env(safe-area-inset-left))}.parts-current{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.parts-icon,.parts-caret{color:var(--fg-muted)}}@media (max-width: 640px){.topbar{gap:.9rem;padding-top:max(.5rem,env(safe-area-inset-top));padding-bottom:.5rem}.topbar .brand{font-size:1rem}.topbar nav{gap:.9rem;flex-wrap:nowrap}.theme-toggle .label{display:none}.theme-toggle,.search-toggle{display:grid;place-items:center;width:2.1rem;height:2.1rem;padding:0;border-radius:50%;font:inherit;font-size:1rem;cursor:pointer;border:1px solid #ffffff33;background:transparent;color:var(--header-muted)}.topbar .spacer{min-width:0}.search{display:flex;gap:.5rem}.search input{font-size:16px}.search:not(.open) input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.search.open{order:10;flex-basis:100%}.search.open input{flex:1;width:auto}.search .results{left:0;right:0;width:auto;top:calc(100% + 6px)}.unit-body .math-nowrap{white-space:normal}}@media (max-width: 420px){.topbar .brand,.deck-undo .lbl,.deck-counts .c-done{display:none}}.shell.fixed{height:100vh;height:100dvh;min-height:0;overflow:hidden}.shell.fixed .main.deck-main{min-height:0;display:flex;flex-direction:column;max-width:640px;padding-top:.5rem;padding-bottom:0}.deck{flex:1;min-height:0;display:flex;flex-direction:column;gap:.6rem}.deck-head{display:flex;align-items:baseline;gap:.8rem}.deck-head h1{margin:0;font-size:1.25rem}.deck-counts{flex:1;font-size:.86rem;color:var(--fg-muted)}.deck-counts .c-due{color:var(--info)}.deck-counts .c-new{color:var(--ok)}.deck-undo{font:inherit;font-size:.85rem;padding:.3em .7em;border-radius:999px;border:1px solid var(--line);background:var(--bg-elev);color:var(--fg);cursor:pointer}.deck-undo:disabled{opacity:.4;cursor:default}.deck-warn{margin:0;padding:.5rem .8rem;border-radius:var(--radius);background:var(--warn-soft);color:var(--warn);font-size:.85rem}.deck-stack{position:relative;flex:1;min-height:180px;perspective:1400px}html.deck-open .update-toast{top:calc(env(safe-area-inset-top) + .6rem);bottom:auto}@media (max-height: 560px){.shell.fixed{height:auto;overflow:visible}.deck-stack{flex:none;height:75vh;min-height:0}}.review-card{position:absolute;top:0;right:0;bottom:0;left:0;cursor:pointer;touch-action:pan-y;user-select:none;-webkit-user-select:none;will-change:transform;--swipe: 0;z-index:2}.review-card.peek{z-index:1;transform:scale(calc(.94 + .06 * var(--drag, 0)));pointer-events:none;transition:transform .15s ease-out}.review-card.flipped{cursor:grab}.review-card-inner{position:absolute;top:0;right:0;bottom:0;left:0;transform-style:preserve-3d;transition:transform .38s cubic-bezier(.3,.7,.3,1)}.review-card.flipped .review-card-inner{transform:rotateY(180deg)}.review-face{position:absolute;top:0;right:0;bottom:0;left:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;display:flex;flex-direction:column;padding:1.1rem 1.2rem;overflow:hidden auto;overscroll-behavior:contain;background:var(--bg-elev);border:1.5px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}.review-face.back{transform:rotateY(180deg)}.review-face,.review-face *{touch-action:pan-y}.review-face pre{white-space:pre-wrap;overflow-wrap:anywhere;overflow-x:hidden}.review-face.front{justify-content:center;text-align:center}.review-kind{font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--fg-muted)}.review-kind.k-definition,.review-kind.k-theorem,.review-kind.k-lemma,.review-kind.k-proposition,.review-kind.k-corollary{color:var(--blk-stmt-line)}.review-kind.k-caution{color:var(--bad)}.review-kind.k-insight{color:var(--info)}.review-kind.k-steps,.review-kind.k-eq{color:var(--ok)}.review-front{font-size:1.35rem;font-weight:650;line-height:1.35;margin:.8rem auto;max-width:30rem}.review-front p,.review-back-front p{margin:0}.review-context{font-size:.82rem;color:var(--fg-faint)}.review-hint{margin-top:1.4rem;font-size:.8rem;color:var(--fg-faint)}.review-back-head{display:flex;align-items:center;gap:.6rem}.review-updated{font-size:.7rem;font-weight:700;text-transform:uppercase;padding:0 .45em;border-radius:4px;background:var(--warn-soft);color:var(--warn)}.review-back-front{font-weight:650;margin:.35rem 0 .6rem;padding-bottom:.6rem;border-bottom:1px solid var(--line)}.review-back{font-size:.98rem}.review-back>:first-child{margin-top:0}.review-details{margin-top:auto;padding-top:.9rem;display:flex;flex-direction:column;gap:.45rem;font-size:.86rem}.review-where{font-weight:600}.review-concept .chip{white-space:normal}.swipe-label{position:absolute;top:1.1rem;z-index:3;padding:.15em .6em;border-radius:8px;border:2.5px solid currentColor;font-weight:800;font-size:1.05rem;letter-spacing:.06em;text-transform:uppercase;pointer-events:none;background:var(--bg-elev);box-shadow:var(--shadow);opacity:0;transition:transform .12s ease-out}.swipe-label.again{right:1.1rem;color:var(--bad);opacity:max(0,calc(var(--swipe) * -1));transform:rotate(8deg)}.swipe-label.good{left:1.1rem;color:var(--ok);opacity:max(0,var(--swipe));transform:rotate(-8deg)}.review-card.armed .swipe-label.again{transform:rotate(8deg) scale(1.15)}.review-card.armed .swipe-label.good{transform:rotate(-8deg) scale(1.15)}.review-card:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:18px;pointer-events:none;z-index:2;background:var(--ok);opacity:max(0,calc(var(--swipe) * .12))}.review-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:18px;pointer-events:none;z-index:2;background:var(--bad);opacity:max(0,calc(var(--swipe) * -.12))}.deck-actions{padding-bottom:max(.75rem,env(safe-area-inset-bottom))}.deck-show{width:100%;font:inherit;font-weight:700;font-size:1rem;padding:.85rem;border:0;border-radius:14px;background:var(--accent);color:#fff;cursor:pointer}.deck-grades{display:grid;grid-template-columns:repeat(4,1fr);gap:.45rem}.grade{display:flex;flex-direction:column;align-items:center;gap:.1rem;padding:.55rem .2rem;cursor:pointer;font:inherit;border-radius:14px;border:1.5px solid var(--line);background:var(--bg-elev);color:var(--fg)}.grade:disabled{opacity:.6;cursor:default}.grade-label{font-weight:700;font-size:.95rem}.grade-ivl{font-size:.78rem;color:var(--fg-muted)}.grade.again{border-color:color-mix(in srgb,var(--bad) 45%,var(--line));color:var(--bad)}.grade.hard{border-color:color-mix(in srgb,var(--warn) 45%,var(--line));color:var(--warn)}.grade.good{border-color:color-mix(in srgb,var(--ok) 45%,var(--line));color:var(--ok)}.grade.easy{border-color:color-mix(in srgb,var(--info) 45%,var(--line));color:var(--info)}.deck-done{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.deck-done h2{border:0;margin:0 0 .4rem}@media (prefers-reduced-motion: reduce){.review-card-inner{transition:none}.review-card.flipped .review-card-inner{transform:none}.review-card.flipped .review-face.front{visibility:hidden}.review-face.back{transform:none}.review-card:not(.flipped) .review-face.back{visibility:hidden}}.sync-body{padding:.9rem 1.1rem 1.1rem;overflow-y:auto;display:flex;flex-direction:column;gap:.7rem}.sync-body p{margin:0}.sync-row{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.sync-row button,.sync-manual button{font:inherit;padding:.7rem;border-radius:12px;border:1.5px solid var(--line);background:var(--bg-elev);color:var(--fg);cursor:pointer}.sync-row button.sync-main,.sync-manual button.sync-main{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:700}.sync-manual{display:flex;flex-direction:column;gap:.5rem}.sync-manual textarea{font:16px var(--mono);padding:.5rem;border-radius:10px;border:1px solid var(--line);background:var(--bg-sunken);color:var(--fg);resize:vertical}.sync-note{padding:.5rem .75rem;border-radius:var(--radius);font-size:.9rem}.sync-note.ok{background:var(--ok-soft);color:var(--ok)}.sync-note.bad{background:var(--bad-soft);color:var(--bad)}.sync-sheet.dropping{outline:3px dashed var(--accent);outline-offset:-6px}.deck-undo.remind{border-color:var(--warn);color:var(--warn)}.deck-ring{position:relative;display:inline-grid;place-items:center;align-self:center}.deck-ring svg{transform:rotate(-90deg)}.ring-track{fill:none;stroke:var(--line);stroke-width:3.5}.ring-fill{fill:none;stroke:var(--accent);stroke-width:3.5;stroke-linecap:round;transition:stroke-dasharray .4s ease-out}.deck-ring[data-pulse]{animation:ring-pulse .6s ease-out}@keyframes ring-pulse{0%{transform:scale(1)}40%{transform:scale(1.35)}to{transform:scale(1)}}.deck-burst{position:absolute;left:50%;top:-4px;font-weight:800;font-size:.85rem;color:var(--accent);pointer-events:none;animation:burst .9s ease-out forwards}@keyframes burst{0%{opacity:0;transform:translate(-50%,6px) scale(.8)}20%{opacity:1}to{opacity:0;transform:translate(-50%,-22px) scale(1.15)}}.deck-stack{margin-bottom:6px}.deck-moment{position:absolute;left:50%;top:38%;z-index:6;transform:translate(-50%,-50%);pointer-events:none;display:flex;flex-direction:column;align-items:center;gap:.15rem;padding:.7rem 1.3rem;border-radius:16px;font-weight:800;font-size:1.4rem;color:#fff;box-shadow:0 10px 30px #00000040;text-align:center;animation:moment 1.6s ease-out forwards}.deck-moment .small{font-weight:500;opacity:.9}.deck-moment.tier-bronze{background:linear-gradient(135deg,#b0703a,#d99a5f)}.deck-moment.tier-silver{background:linear-gradient(135deg,#7d8794,#b9c2cc)}.deck-moment.tier-gold{background:linear-gradient(135deg,#c9971c,#f1c94e);color:#3b2a00}.deck-moment.tier-diamond{background:linear-gradient(135deg,#3a7bd5,#7fd6f5)}.deck-moment.comeback{background:linear-gradient(135deg,#00a651,#4cd28b)}@keyframes moment{0%{opacity:0;transform:translate(-50%,-40%) scale(.85)}12%{opacity:1;transform:translate(-50%,-50%) scale(1.06)}22%{transform:translate(-50%,-50%) scale(1)}80%{opacity:1}to{opacity:0;transform:translate(-50%,-60%)}}.deck-numbers{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem 1.4rem;margin:.4rem 0 .8rem}.deck-numbers div{display:flex;flex-direction:column-reverse;align-items:center}.deck-numbers dt{font-size:.78rem;color:var(--fg-muted);text-transform:uppercase;letter-spacing:.06em}.deck-numbers dd{margin:0;font-size:1.7rem;font-weight:800}.deck-more{margin-top:.6rem;font:inherit;font-weight:700;padding:.6rem 1.2rem;border-radius:999px;border:1.5px solid var(--accent);background:transparent;color:var(--accent-dk);cursor:pointer}.confetti{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none}.confetti i{position:absolute;top:-12px;left:var(--x);width:8px;height:12px;border-radius:2px;background:hsl(var(--h) 80% 55%);opacity:0;animation:confetti var(--t) cubic-bezier(.2,.6,.4,1) var(--d) forwards}@keyframes confetti{0%{transform:translate(0) rotate(0);opacity:1}to{transform:translate(var(--dx),105vh) rotate(600deg);opacity:.2}}@media (prefers-reduced-motion: reduce){.deck-ring[data-pulse],.deck-burst,.confetti{animation:none;display:none}.deck-moment{animation:none;opacity:1}}.deck-ring-link{display:inline-grid;align-self:center}.deck-streak{margin:0 0 .3rem;font-size:1.05rem}.deck-streak b{font-size:1.3rem;color:var(--accent-dk)}.stats{max-width:760px}.stats section{margin:1.4rem 0}.stats h2{font-size:1.1rem}.activity,.anki,.week{--s1: #2a78d6;--s2: #eb6834;--s3: #1baf7a;--s4: #eda100;--s5: #e87ba4;--s6: #008300;--s7: #4a3aa7;--s8: #e34948;--s0: #8a8f98}:root[data-theme=dark] .activity,:root[data-theme=dark] .anki,:root[data-theme=dark] .week{--s1: #3987e5;--s2: #d95926;--s3: #199e70;--s4: #c98500;--s5: #d55181;--s6: #008300;--s7: #9085e9;--s8: #e66767;--s0: #6b7079}.activity i[class^=activity-s]{display:inline-block}.activity-s0{background:var(--s0)}.activity-s1{background:var(--s1)}.activity-s2{background:var(--s2)}.activity-s3{background:var(--s3)}.activity-s4{background:var(--s4)}.activity-s5{background:var(--s5)}.activity-s6{background:var(--s6)}.activity-s7{background:var(--s7)}.activity-s8{background:var(--s8)}.activity-legend{display:flex;flex-wrap:wrap;gap:.3rem 1rem;margin:0 0 .6rem;padding:0;list-style:none;font-size:.85rem}.activity-legend i,.activity-unit i{width:10px;height:10px;border-radius:2px;margin-right:.15rem;vertical-align:-1px}.activity-days{margin:0;padding:0;list-style:none}.activity-row{display:grid;grid-template-columns:4.2rem minmax(0,1fr) 2.4rem;gap:.6rem;align-items:center;width:100%;padding:.22rem 0;font:inherit;font-size:.82rem;color:var(--fg);text-align:left;background:none;border:0;cursor:pointer}.activity-row:disabled{cursor:default;color:var(--fg-muted)}.activity-row:not(:disabled):hover .activity-track{background:var(--bg-sunken)}.activity-row[aria-expanded=true] .activity-day{font-weight:700}.activity-track{display:block;height:14px;border-radius:0 4px 4px 0}.activity-bar{display:flex;gap:2px;height:100%;min-width:3px;border-radius:0 4px 4px 0;overflow:hidden}.activity-bar i{display:block;height:100%;min-width:2px}.activity-total{text-align:right;font-variant-numeric:tabular-nums;font-weight:600}.activity-detail{margin:.2rem 0 .7rem 4.8rem;font-size:.85rem}.activity-detail ul{margin:.1rem 0 .5rem;padding:0;list-style:none}.activity-detail li{display:flex;gap:.6rem;justify-content:space-between;align-items:baseline;padding:.12rem 0;border-bottom:1px solid var(--line)}.activity-unit{margin-top:.35rem}.activity-front{min-width:0;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.activity-front p{display:inline;margin:0}.activity-grades{flex:none;display:flex;gap:2px}.activity-grades i{font-style:normal;font-size:.7rem;font-weight:700;width:1.15rem;text-align:center;border-radius:3px}.activity-grades .g1{color:var(--bad);background:var(--bad-soft)}.activity-grades .g2{color:var(--warn);background:var(--warn-soft)}.activity-grades .g3{color:var(--ok);background:var(--ok-soft)}.activity-grades .g4{color:var(--info);background:color-mix(in srgb,var(--info) 14%,transparent)}@media (max-width: 520px){.activity-detail{margin-left:0}}.stats-streak{display:flex;flex-wrap:wrap;gap:.8rem 2rem;align-items:flex-end}.stats-streak p{flex-basis:100%;margin:0}.stats-big{display:flex;flex-direction:column}.stats-big b{font-size:2.2rem;line-height:1;color:var(--accent-dk)}.stats-big span{font-size:.8rem;color:var(--fg-muted);text-transform:uppercase;letter-spacing:.05em}.heatmap{display:flex;gap:3px;overflow-x:auto;padding-bottom:4px}.heat-col{display:flex;flex-direction:column;gap:3px}.heat{display:block;width:10px;height:10px;border-radius:2px;background:var(--bg-sunken);border:1px solid var(--line)}.heat.l1{background:color-mix(in srgb,var(--accent) 30%,var(--bg-elev));border-color:transparent}.heat.l2{background:color-mix(in srgb,var(--accent) 55%,var(--bg-elev));border-color:transparent}.heat.l3{background:color-mix(in srgb,var(--accent) 80%,var(--bg-elev));border-color:transparent}.heat.l4{background:var(--accent-dk);border-color:transparent}.heat.lx{visibility:hidden}.heat.frozen{background:#9fd3f2;border-color:#5fb0e0}.mastery-row{display:flex;align-items:center;gap:.8rem;margin:.35rem 0}.mastery-course{width:5.5rem;font-weight:600;font-size:.9rem}.mastery-bar{flex:1;display:flex;height:14px;border-radius:7px;overflow:hidden;background:var(--bg-sunken)}.mastery-bar i,.legend i{display:inline-block;height:100%}.legend{display:flex;flex-wrap:wrap;gap:.3rem .9rem}.legend i{width:10px;height:10px;border-radius:2px;vertical-align:-1px}.milestones{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(11rem,1fr));gap:.6rem}.milestones li{display:flex;flex-direction:column;gap:.15rem;padding:.6rem .75rem;border-radius:var(--radius);border:1.5px dashed var(--line);opacity:.55}.milestones li.reached{opacity:1;border-style:solid;border-color:var(--accent);background:var(--accent-soft)}.settings{display:flex;flex-direction:column;gap:.6rem;margin-bottom:1.2rem}.settings label{display:flex;align-items:center;justify-content:space-between;gap:1rem}.settings input[type=number],.settings select{font:inherit;font-size:16px;width:7rem;flex:none;padding:.3rem .5rem;border-radius:8px;border:1px solid var(--line);background:var(--bg-elev);color:var(--fg)}.settings button{align-self:flex-start;font:inherit;font-weight:700;padding:.5rem 1.2rem;border-radius:999px;border:0;background:var(--accent);color:#fff;cursor:pointer}.settings button:disabled{opacity:.5;cursor:default}.settings select{width:auto}.settings label.toggle{justify-content:flex-start;align-items:flex-start}.settings label.toggle input{margin-top:.3rem}.review-face.front.quiz{justify-content:flex-start;text-align:left}.review-face.front.quiz .review-front{font-size:1.05rem;font-weight:500;margin:.6rem 0;max-width:none}.review-face.front.quiz .review-front pre{margin:0;box-shadow:none}.review-face.front.quiz .review-context,.review-face.front.quiz .review-hint{text-align:center}.review-face.front.quiz .review-hint{margin-top:auto;padding-top:1rem}.review-options{list-style:none;padding:0;margin:.4rem 0 .8rem;display:flex;flex-direction:column;gap:.45rem}.review-options button{display:flex;align-items:flex-start;gap:.6rem;width:100%;text-align:left;cursor:pointer;font:inherit;font-size:.95rem;line-height:1.35;padding:.65rem .8rem;border-radius:12px;border:1.5px solid var(--line);background:var(--bg-sunken);color:var(--fg)}.review-options button:hover{border-color:var(--accent)}.opt-key{flex:none;display:inline-grid;place-items:center;width:1.5rem;height:1.5rem;border-radius:50%;background:var(--bg-elev);border:1px solid var(--line);font-size:.8rem;font-weight:700;color:var(--fg-muted)}.review-verdict{margin:.2rem 0 .6rem;padding:.5rem .75rem;border-radius:var(--radius);background:var(--bg-sunken)}.review-verdict.right{background:var(--ok-soft);color:var(--ok)}.review-verdict.wrong{background:var(--bad-soft);color:var(--bad)}.review-verdict b{color:var(--fg)}.review-kind.k-output,.review-kind.k-method,.review-kind.k-exercise{color:var(--accent-dk)}.grade.suggested{box-shadow:0 0 0 3px color-mix(in srgb,currentColor 35%,transparent);font-weight:800}.review-back .sim-verify{display:none}.deck-scope-row{display:flex;align-items:baseline;gap:.8rem;margin-top:-.3rem}.deck-scope{font:inherit;font-size:.88rem;font-weight:600;padding:.2rem .7rem;border-radius:999px;border:1px solid var(--line);background:var(--bg-elev);color:var(--fg);cursor:pointer;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scope-body{padding:.6rem 1.1rem 1.1rem;overflow-y:auto}.scope-body h4{margin:.9rem 0 .3rem;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em}.scope-body ul{list-style:none;margin:0;padding:0}.scope-body button{display:flex;justify-content:space-between;gap:1rem;width:100%;text-align:left;font:inherit;padding:.55rem .7rem;border:0;border-radius:10px;background:transparent;color:var(--fg);cursor:pointer}.scope-body button:hover{background:var(--bg-sunken)}.scope-body button.current{background:var(--accent-soft);color:var(--accent-dk)}.review-this{display:inline-flex;align-items:center;gap:.4rem;font-size:.86rem;font-weight:600;padding:.25rem .75rem;border-radius:999px;border:1.5px solid var(--accent);color:var(--accent-dk)}.review-this:hover{background:var(--accent-soft);text-decoration:none}.legend-row.static{cursor:default}.legend-row.static:hover{background:transparent}.course-memory{display:flex;align-items:center;gap:.8rem;max-width:34rem;margin:.6rem 0 1rem}.course-memory .mastery-bar{flex:1}.mastery-ring{vertical-align:-3px}.mastery-ring .ring-track,.mastery-ring .ring-fill{stroke-width:3}.review-before{display:inline-block;margin:-.2rem 0 .4rem;font-weight:600}.standing{font-size:.85rem}.standing.closable{border:1px solid var(--line);border-radius:12px;background:var(--bg-elev)}.standing-line{display:flex;align-items:baseline;gap:.25rem;width:100%;padding:.45rem .75rem;text-align:left;font:inherit;color:var(--fg);background:none;border:0;cursor:pointer}.standing-line .muted{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.standing-caret{margin-left:auto;color:var(--fg-muted)}.standing-behind{color:var(--bad);font-weight:650}.standing-ok{color:var(--ok);font-weight:650}.standing-table{display:grid;grid-template-columns:max-content minmax(3.5rem,1fr) repeat(3,max-content);column-gap:.85rem}.standing.closable .standing-table{padding:0 .75rem .5rem;border-top:1px solid var(--line)}.standing-row{grid-column:1 / -1;display:grid;grid-template-columns:subgrid;align-items:center;padding:.3rem 0;border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums}.standing-row:last-child{border-bottom:0}.standing-row>:nth-child(n+3){text-align:right}.standing-head{font-size:.72rem;color:var(--fg-muted);padding-top:.45rem}.standing-head>span{cursor:help}.standing-course{font-weight:700;color:var(--fg);text-decoration:none;white-space:nowrap}.standing-seen{display:flex;align-items:center;gap:.4rem;min-width:0}.standing-seen>span:last-child{white-space:nowrap;font-size:.78rem;color:var(--fg-muted)}.standing-bar{flex:1;min-width:1.5rem;height:6px;border-radius:3px;background:linear-gradient(to right,var(--accent) calc(var(--p) * 100%),var(--bg-sunken) 0)}.standing-exam{display:flex;flex-direction:column;align-items:flex-end;color:var(--fg);text-decoration:none;white-space:nowrap}.standing-exam.soon{color:var(--bad)}.standing-sub{font-size:.7rem;color:var(--fg-muted)}.unit-dot{display:inline-block;width:.6em;height:.6em;border-radius:50%;margin-right:.4em;vertical-align:.05em;flex:none}.unit-dot.s-start{background:var(--bad)}.unit-dot.s-weak{background:var(--warn)}.unit-dot.s-solid{background:var(--ok)}.unit-dot.s-untaught{background:transparent;box-shadow:inset 0 0 0 1.5px var(--fg-faint)}.unit-tag{color:var(--fg);text-decoration:none}.unit-tag b{font-weight:600}a.unit-tag:hover b{text-decoration:underline}.next-units{font-size:.85rem}.next-units ul{list-style:none;margin:.3rem 0 0;padding:0;display:flex;flex-direction:column;gap:.3rem}.next-units a{display:flex;align-items:baseline;gap:.4em;padding:.45rem .7rem;border:1px solid var(--line);border-radius:10px;background:var(--bg-elev);color:var(--fg);text-decoration:none}.next-units a:hover{border-color:var(--accent)}.next-units .next-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.next-units .muted{margin-left:auto;white-space:nowrap;font-size:.78rem}.next-head{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--fg-muted)}.deck-done .next-units{width:100%;max-width:26rem;text-align:left}.next-units.row{display:flex;align-items:center;gap:.5rem;min-width:0;margin-top:-.2rem}.next-units.row ul{flex-direction:row;margin:0;overflow-x:auto;scrollbar-width:none;flex:1;min-width:0}.next-units.row ul::-webkit-scrollbar{display:none}.next-units.row li{flex:none}.next-units.row a{padding:.25rem .6rem;border-radius:999px;font-size:.8rem}.next-units.row .next-title{max-width:8.5rem}.next-units.row .muted{margin-left:0}.unit-tag .part{white-space:nowrap}.vibration-test{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .5rem;margin-top:.4rem}.settings .vibration-test button{font:inherit;font-weight:500;align-self:auto;padding:.3rem .7rem;border:1px solid var(--line);border-radius:999px;background:var(--bg-elev);color:var(--fg)}.settings .vibration-test button:disabled{opacity:.5}.reminders{margin-top:1rem}.reminders h3{margin:0 0 .3rem;font-size:1rem}.reminders-sub{width:100%;box-sizing:border-box;font:.72rem/1.35 var(--mono, ui-monospace, monospace);color:var(--fg-muted);background:var(--bg-elev);border:1px solid var(--line);border-radius:8px;padding:.4rem;resize:vertical}.reminders-actions{display:flex;gap:.8rem;align-items:center;margin-top:.3rem}.anki-today{margin:0;padding-left:1.1rem;font-size:.9rem;line-height:1.6}.anki-counts{display:flex;gap:2px;height:14px;border-radius:4px;overflow:hidden;background:var(--bg-sunken)}.anki-counts i,.anki-legend i{display:block}.anki-legend{display:flex;flex-wrap:wrap;gap:.3rem 1rem;margin:.5rem 0 0;padding:0;list-style:none}.anki-legend i{display:inline-block;width:10px;height:10px;border-radius:2px;vertical-align:-1px}.anki{--c-new: #8a8f98;--c-learning: #eda100;--c-relearning: #4a3aa7;--c-young: #1baf7a;--c-mature: #2a78d6}:root[data-theme=dark] .anki{--c-learning: #c98500;--c-relearning: #9085e9;--c-young: #199e70;--c-mature: #3987e5}.anki .c-new{background:var(--c-new)}.anki .c-learning{background:var(--c-learning)}.anki .c-relearning{background:var(--c-relearning)}.anki .c-young{background:var(--c-young)}.anki .c-mature{background:var(--c-mature)}.anki-table{border-collapse:collapse;font-size:.85rem;font-variant-numeric:tabular-nums;margin:.2rem 0 .4rem}.anki-table th,.anki-table td{padding:.2rem .6rem;border-bottom:1px solid var(--line);text-align:right;white-space:nowrap}.anki-table th:first-child{text-align:left;font-weight:600;padding-left:0}.anki-table thead th{font-size:.72rem;font-weight:600;color:var(--fg-muted)}.anki-table td .muted{font-size:.72rem}.anki-sub{font-size:.9rem;margin:.8rem 0 .2rem}.anki-dot{display:inline-block;width:8px;height:8px;border-radius:2px}.anki .activity-row{cursor:default}.anki .activity-row:hover .activity-track{background:none}.anki .activity-row.empty{color:var(--fg-muted)}.haptic-tap{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;border-radius:inherit;-webkit-tap-highlight-color:transparent}.haptic-area{display:contents}.haptic-switch{position:absolute;width:1px;height:1px;margin:0;opacity:0;pointer-events:none}.deck-show,.grade,.vibration-test button{position:relative}.week-table{border-collapse:collapse;font-size:.9rem;margin:.4rem 0 .2rem}.week-table th,.week-table td{border:0;border-bottom:1px solid var(--line);background:none;padding:.22rem .9rem .22rem 0}.week-table th{text-align:left;font-weight:400;color:var(--fg-muted)}.week-table td{font-variant-numeric:tabular-nums;font-weight:600;white-space:nowrap}.week-table td:last-child{padding-right:0}.week-table td.muted{font-weight:400;font-size:.82rem}.week-dots{display:inline-flex;gap:3px;vertical-align:1px;margin-right:.3rem}.week-dots i{width:8px;height:8px;border-radius:50%;border:1.5px solid var(--s1);box-sizing:border-box}.week-dots i.on{background:var(--s1)}.week-dots i.later{border-color:var(--line)}.week-timeline{font-size:.78rem}.week-trow{display:grid;grid-template-columns:2.6rem minmax(0,1fr);gap:.5rem;align-items:center;height:20px}.week-trow.today .week-tday{font-weight:700}.week-trow.later{color:var(--fg-muted)}.week-track{position:relative;display:block;height:12px}.week-trow:not(.week-hours) .week-track{background:var(--bg-sunken);border-radius:4px}.week-hours{height:16px}.week-hours b{position:absolute;transform:translate(-50%);font-weight:400;color:var(--fg-muted);font-variant-numeric:tabular-nums}.week-grid{position:absolute;top:0;bottom:0;width:1px;background:var(--line)}.week-session{position:absolute;top:2px;bottom:2px;min-width:3px;border-radius:4px;background:var(--s1);box-shadow:0 0 0 1px var(--bg)}.week-reminder{position:absolute;bottom:-3px;width:0;height:0;transform:translate(-4px);border-left:4px solid transparent;border-right:4px solid transparent;border-bottom:6px solid var(--fg)}.week-legend{display:flex;align-items:center;gap:.4rem;margin:.4rem 0 0 3.1rem}.week-legend i{position:static;display:inline-block;transform:none}.week-legend .week-session{width:14px;height:8px}.week-trend{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.6rem 1rem}.week-chart{margin:0}.week-chart figcaption{display:flex;justify-content:space-between;gap:.3rem;font-size:.8rem;color:var(--fg-muted)}.week-chart figcaption b{color:var(--fg);font-variant-numeric:tabular-nums}.week-bars{display:flex;align-items:flex-end;gap:2px;height:48px;border-bottom:1px solid var(--line);margin-top:.25rem}.week-bars i{flex:1;min-height:1px;border-radius:4px 4px 0 0;background:color-mix(in srgb,var(--s1) 45%,transparent)}.week-bars i.now{background:var(--s1)}.week-trend-note{grid-column:1 / -1;margin:0}@media (max-width: 520px){.week-trend{grid-template-columns:repeat(2,minmax(0,1fr))}}
