@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,math,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.19.1"}.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>.katex-newline{display:block}.katex .katex-base{position:relative;white-space:nowrap;width:-webkit-min-content;width:-moz-min-content;width:min-content}.katex .katex-base,.katex .katex-strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;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 .katex-vbox{align-items:baseline;display:inline-flex;flex-direction:column}.katex .katex-thinbox{display:inline-flex;flex-direction:row;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 .katex-hdashline,.katex .katex-hline,.katex .katex-overline .overline-line,.katex .katex-rule,.katex .katex-underline .underline-line,.katex .mfrac .frac-line{min-height:1px}.katex .mspace{display:inline-block}.katex .katex-smash{display:inline;line-height:0}.katex .clap,.katex .llap,.katex .rlap{position:relative;width:0}.katex .clap>.katex-inner,.katex .llap>.katex-inner,.katex .rlap>.katex-inner{position:absolute}.katex .clap>.katex-fix,.katex .llap>.katex-fix,.katex .rlap>.katex-fix{display:inline-block}.katex .llap>.katex-inner{right:0}.katex .clap>.katex-inner,.katex .rlap>.katex-inner{left:0}.katex .clap>.katex-inner>span{margin-left:-50%;margin-right:50%}.katex .katex-rule{border:0 solid;display:inline-block;position:relative}.katex .katex-hline,.katex .katex-overline .overline-line,.katex .katex-underline .underline-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .katex-hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.katex .sqrt>.katex-root{margin-left:.2777777778em;margin-right:-.5555555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .katex-sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .katex-sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .katex-sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .katex-sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .katex-sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .katex-sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .katex-sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .katex-sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .katex-sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .katex-sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .katex-sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .katex-sizing.reset-size2.size1{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .katex-sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .katex-sizing.reset-size2.size3{font-size:1.1666666667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .katex-sizing.reset-size2.size4{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .katex-sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .katex-sizing.reset-size2.size6{font-size:1.6666666667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .katex-sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .katex-sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .katex-sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .katex-sizing.reset-size2.size10{font-size:3.4566666667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .katex-sizing.reset-size2.size11{font-size:4.1466666667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .katex-sizing.reset-size3.size1{font-size:.7142857143em}.katex .fontsize-ensurer.reset-size3.size2,.katex .katex-sizing.reset-size3.size2{font-size:.8571428571em}.katex .fontsize-ensurer.reset-size3.size3,.katex .katex-sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .katex-sizing.reset-size3.size4{font-size:1.1428571429em}.katex .fontsize-ensurer.reset-size3.size5,.katex .katex-sizing.reset-size3.size5{font-size:1.2857142857em}.katex .fontsize-ensurer.reset-size3.size6,.katex .katex-sizing.reset-size3.size6{font-size:1.4285714286em}.katex .fontsize-ensurer.reset-size3.size7,.katex .katex-sizing.reset-size3.size7{font-size:1.7142857143em}.katex .fontsize-ensurer.reset-size3.size8,.katex .katex-sizing.reset-size3.size8{font-size:2.0571428571em}.katex .fontsize-ensurer.reset-size3.size9,.katex .katex-sizing.reset-size3.size9{font-size:2.4685714286em}.katex .fontsize-ensurer.reset-size3.size10,.katex .katex-sizing.reset-size3.size10{font-size:2.9628571429em}.katex .fontsize-ensurer.reset-size3.size11,.katex .katex-sizing.reset-size3.size11{font-size:3.5542857143em}.katex .fontsize-ensurer.reset-size4.size1,.katex .katex-sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .katex-sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .katex-sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .katex-sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .katex-sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .katex-sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .katex-sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .katex-sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .katex-sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .katex-sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .katex-sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .katex-sizing.reset-size5.size1{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .katex-sizing.reset-size5.size2{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .katex-sizing.reset-size5.size3{font-size:.7777777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .katex-sizing.reset-size5.size4{font-size:.8888888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .katex-sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .katex-sizing.reset-size5.size6{font-size:1.1111111111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .katex-sizing.reset-size5.size7{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .katex-sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .katex-sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .katex-sizing.reset-size5.size10{font-size:2.3044444444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .katex-sizing.reset-size5.size11{font-size:2.7644444444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .katex-sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .katex-sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .katex-sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .katex-sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .katex-sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .katex-sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .katex-sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .katex-sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .katex-sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .katex-sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .katex-sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .katex-sizing.reset-size7.size1{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .katex-sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .katex-sizing.reset-size7.size3{font-size:.5833333333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .katex-sizing.reset-size7.size4{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .katex-sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .katex-sizing.reset-size7.size6{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .katex-sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .katex-sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .katex-sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .katex-sizing.reset-size7.size10{font-size:1.7283333333em}.katex .fontsize-ensurer.reset-size7.size11,.katex .katex-sizing.reset-size7.size11{font-size:2.0733333333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .katex-sizing.reset-size8.size1{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .katex-sizing.reset-size8.size2{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .katex-sizing.reset-size8.size3{font-size:.4861111111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .katex-sizing.reset-size8.size4{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .katex-sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .katex-sizing.reset-size8.size6{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .katex-sizing.reset-size8.size7{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .katex-sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .katex-sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .katex-sizing.reset-size8.size10{font-size:1.4402777778em}.katex .fontsize-ensurer.reset-size8.size11,.katex .katex-sizing.reset-size8.size11{font-size:1.7277777778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .katex-sizing.reset-size9.size1{font-size:.2893518519em}.katex .fontsize-ensurer.reset-size9.size2,.katex .katex-sizing.reset-size9.size2{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .katex-sizing.reset-size9.size3{font-size:.4050925926em}.katex .fontsize-ensurer.reset-size9.size4,.katex .katex-sizing.reset-size9.size4{font-size:.462962963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .katex-sizing.reset-size9.size5{font-size:.5208333333em}.katex .fontsize-ensurer.reset-size9.size6,.katex .katex-sizing.reset-size9.size6{font-size:.5787037037em}.katex .fontsize-ensurer.reset-size9.size7,.katex .katex-sizing.reset-size9.size7{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .katex-sizing.reset-size9.size8{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .katex-sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .katex-sizing.reset-size9.size10{font-size:1.2002314815em}.katex .fontsize-ensurer.reset-size9.size11,.katex .katex-sizing.reset-size9.size11{font-size:1.4398148148em}.katex .fontsize-ensurer.reset-size10.size1,.katex .katex-sizing.reset-size10.size1{font-size:.2410800386em}.katex .fontsize-ensurer.reset-size10.size2,.katex .katex-sizing.reset-size10.size2{font-size:.2892960463em}.katex .fontsize-ensurer.reset-size10.size3,.katex .katex-sizing.reset-size10.size3{font-size:.337512054em}.katex .fontsize-ensurer.reset-size10.size4,.katex .katex-sizing.reset-size10.size4{font-size:.3857280617em}.katex .fontsize-ensurer.reset-size10.size5,.katex .katex-sizing.reset-size10.size5{font-size:.4339440694em}.katex .fontsize-ensurer.reset-size10.size6,.katex .katex-sizing.reset-size10.size6{font-size:.4821600771em}.katex .fontsize-ensurer.reset-size10.size7,.katex .katex-sizing.reset-size10.size7{font-size:.5785920926em}.katex .fontsize-ensurer.reset-size10.size8,.katex .katex-sizing.reset-size10.size8{font-size:.6943105111em}.katex .fontsize-ensurer.reset-size10.size9,.katex .katex-sizing.reset-size10.size9{font-size:.8331726133em}.katex .fontsize-ensurer.reset-size10.size10,.katex .katex-sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .katex-sizing.reset-size10.size11{font-size:1.1996142719em}.katex .fontsize-ensurer.reset-size11.size1,.katex .katex-sizing.reset-size11.size1{font-size:.2009646302em}.katex .fontsize-ensurer.reset-size11.size2,.katex .katex-sizing.reset-size11.size2{font-size:.2411575563em}.katex .fontsize-ensurer.reset-size11.size3,.katex .katex-sizing.reset-size11.size3{font-size:.2813504823em}.katex .fontsize-ensurer.reset-size11.size4,.katex .katex-sizing.reset-size11.size4{font-size:.3215434084em}.katex .fontsize-ensurer.reset-size11.size5,.katex .katex-sizing.reset-size11.size5{font-size:.3617363344em}.katex .fontsize-ensurer.reset-size11.size6,.katex .katex-sizing.reset-size11.size6{font-size:.4019292605em}.katex .fontsize-ensurer.reset-size11.size7,.katex .katex-sizing.reset-size11.size7{font-size:.4823151125em}.katex .fontsize-ensurer.reset-size11.size8,.katex .katex-sizing.reset-size11.size8{font-size:.578778135em}.katex .fontsize-ensurer.reset-size11.size9,.katex .katex-sizing.reset-size11.size9{font-size:.6945337621em}.katex .fontsize-ensurer.reset-size11.size10,.katex .katex-sizing.reset-size11.size10{font-size:.8336012862em}.katex .fontsize-ensurer.reset-size11.size11,.katex .katex-sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{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 .katex-accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .katex-accent .accent-body{position:relative}.katex .katex-accent .accent-body:not(.accent-full){width:0}.katex .katex-overlay{display:block}.katex .mtable .vertical-separator{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 .katex-stretchy{display:block;overflow:hidden;position:relative;width:100%}.katex .katex-stretchy:after,.katex .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 .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 .reflectbox{display:inline-block;transform:scaleX(-1)}.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>.katex-tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.katex-tag{left:0;right:auto}.katex-display.fleqn>.katex{padding-left:2em;text-align:left}body{counter-reset:katexEqnNo mmlEqnNo}@font-face{font-family:Iosevka;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/iosevka-latin-400-normal-7stTb90X.woff2) format("woff2"),url(/assets/iosevka-latin-400-normal-BVqCxfc4.woff) format("woff")}@font-face{font-family:Iosevka;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/iosevka-latin-500-normal-CQO8XnuS.woff2) format("woff2"),url(/assets/iosevka-latin-500-normal-6hm74U-t.woff) format("woff")}@font-face{font-family:Iosevka;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/iosevka-latin-600-normal-D-x8St0T.woff2) format("woff2"),url(/assets/iosevka-latin-600-normal-BIqmB2Oy.woff) format("woff")}@font-face{font-family:Iosevka;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/iosevka-latin-700-normal-CRYvTbw8.woff2) format("woff2"),url(/assets/iosevka-latin-700-normal-3F2qW26k.woff) format("woff")}@font-face{font-family:Iosevka;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/iosevka-latin-800-normal-Gx09PHmz.woff2) format("woff2"),url(/assets/iosevka-latin-800-normal-tobDvPXU.woff) format("woff")}:root{color-scheme:dark;--bg: #0a0e14;--panel: #111720;--panel-raised: #171f2a;--ink-strong: #f3f5f6;--ink: #d3d9df;--ink-soft: #939eaa;--ink-muted: #66727f;--line: #3b4754;--line-soft: #202a35;--line-mid: #2d3945;--grid-dot: #28333e;--green: #9ee45b;--amber: #ffbe66;--blue: #84aefb;--red: #ff7c70;--active: #9ee45b;--cyan: #68dbe8;--scope-grid: #28333e;--scope-trace-in: #68dbe8;--scope-trace-out: #9ee45b;--scope-bg: #0c1219;--font-mono: "Iosevka", ui-monospace, Menlo, Consolas, monospace;--font-sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--ease-out: cubic-bezier(.16, 1, .3, 1);--relayout-time: .4s;--relayout-ease: cubic-bezier(.4, 0, .2, 1);--radius: 14px}[data-theme=light]{color-scheme:light;--bg: #f1f2ec;--panel: #fbfcf8;--panel-raised: #f5f6f1;--ink-strong: #1b2927;--ink: #384944;--ink-soft: #64736e;--ink-muted: #84918c;--line: #a9b6ad;--line-soft: #e0e5df;--line-mid: #d0d8d0;--grid-dot: #dce4dc;--green: #4e9b38;--amber: #b37228;--blue: #3970be;--red: #bd5148;--active: #4e9b38;--cyan: #198894;--scope-grid: #d8e1dc;--scope-trace-in: #16849a;--scope-trace-out: #4e9b38;--scope-bg: #f5f8f4}*{box-sizing:border-box}html,body,#root{width:100%;min-height:100%;margin:0}body{background:var(--bg);color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button{color:inherit}::selection{background:color-mix(in srgb,var(--green) 35%,transparent)}::-webkit-scrollbar{width:7px;height:7px}::-webkit-scrollbar-thumb{border-radius:8px;background:var(--line-mid)}::-webkit-scrollbar-track{background:transparent}.shell{width:100%;height:100vh;min-height:680px;display:grid;grid-template-rows:76px minmax(0,1fr);padding:0 22px 22px;gap:0;overflow:hidden}.topbar{display:grid;grid-template-columns:auto minmax(260px,1fr) minmax(200px,.8fr) auto;align-items:center;gap:28px;border-bottom:1px solid var(--line-soft);min-width:0}.brand-lockup{display:flex;align-items:center;gap:11px;min-width:228px}.brand-mark{width:35px;height:35px;display:flex;align-items:end;justify-content:center;gap:3px;padding:8px;border:1px solid color-mix(in srgb,var(--green) 55%,var(--line-mid));border-radius:11px;background:color-mix(in srgb,var(--green) 10%,var(--panel))}.brand-mark span{display:block;width:4px;border-radius:4px;background:var(--green);box-shadow:0 0 9px color-mix(in srgb,var(--green) 55%,transparent)}.brand-mark span:nth-child(1){height:10px}.brand-mark span:nth-child(2){height:17px}.brand-mark span:nth-child(3){height:12px}.brand-copy{display:flex;flex-direction:column;gap:2px}.brand-copy strong{color:var(--ink-strong);font-size:17px;letter-spacing:.1em;font-weight:800}.brand-copy strong span{color:var(--green)}.brand-copy small{color:var(--ink-muted);font-family:var(--font-mono);font-size:8px;letter-spacing:.11em}.topbar-course{display:flex;align-items:center;gap:12px;min-width:0}.topbar-course select,.listen-control select{border:0;outline:none;color:var(--ink-strong);background:transparent;cursor:pointer}.topbar-course select{max-width:190px;font-family:var(--font-mono);font-size:10px;font-weight:700;letter-spacing:.025em}.topbar-course option,.listen-control option{background:var(--panel);color:var(--ink-strong)}.depth-toggle{display:flex;padding:3px;background:var(--panel);border:1px solid var(--line-soft);border-radius:9px;gap:2px}.depth-toggle button{border:0;background:transparent;color:var(--ink-soft);border-radius:6px;padding:6px 8px;font-size:10px;cursor:pointer;transition:.2s ease}.depth-toggle button.selected{background:var(--panel-raised);color:var(--ink-strong);box-shadow:0 1px 6px #0002}.depth-toggle button.selected.simple{color:var(--green)}.depth-toggle button.selected.technical{color:var(--cyan)}.depth-toggle button.selected.maths{color:var(--amber)}.topbar-progress{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:12px;min-width:0}.progress-copy{display:flex;flex-direction:column;min-width:0;gap:3px}.progress-copy span{color:var(--ink-muted);font-family:var(--font-mono);font-size:8px;letter-spacing:.14em}.progress-copy strong{overflow:hidden;color:var(--ink-strong);font-size:11px;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.progress-meter{display:flex;gap:3px;grid-column:1;grid-row:2;margin-top:6px}.progress-meter i{display:block;height:3px;min-width:5px;flex:1;border-radius:3px;background:var(--line-mid)}.progress-meter i.done{background:var(--green);box-shadow:0 0 7px color-mix(in srgb,var(--green) 35%,transparent)}.step-count{grid-column:2;grid-row:1 / span 2;font-family:var(--font-mono);color:var(--ink-soft);font-size:10px}.topbar-tools{display:flex;align-items:center;gap:9px}.listen-control{display:flex;align-items:center;gap:7px;padding:5px 8px;height:34px;border:1px solid var(--line-soft);border-radius:9px;background:var(--panel)}.listen-button,.theme-button,.icon-button{display:grid;place-items:center;border:1px solid var(--line-soft);background:var(--panel);color:var(--ink-soft);cursor:pointer;transition:.2s ease}.listen-button{width:25px;height:25px;border:0;border-radius:6px;color:var(--green)}.listen-button.playing{background:color-mix(in srgb,var(--green) 15%,var(--panel))}.listen-control select{width:96px;font-size:10px}.volume-icon{color:var(--ink-muted)}.listen-control input{width:52px;accent-color:var(--green)}.theme-button{width:34px;height:34px;border-radius:9px}.theme-button:hover,.icon-button:hover{color:var(--green);border-color:color-mix(in srgb,var(--green) 55%,var(--line-mid))}.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}.workspace{--list-w: 274px;--details-w: 316px;--bench-h: 210px;display:grid;grid-template-columns:var(--list-w) 14px minmax(0,1fr) 14px var(--details-w);grid-template-rows:minmax(0,1fr) 14px var(--bench-h);min-height:0;padding-top:14px}.sidebar-pane,.canvas-pane,.overview-pane,.workbench-pane{min-width:0;min-height:0;overflow:hidden;background:var(--panel);border:1px solid var(--line-soft);border-radius:var(--radius);box-shadow:0 8px 26px #0000000a}.sidebar-pane{grid-column:1;grid-row:1 / 4}.canvas-pane{grid-column:3;grid-row:1}.overview-pane{grid-column:5;grid-row:1}.workbench-pane{grid-column:3 / 6;grid-row:3}.panel-bar{display:flex;align-items:center;justify-content:space-between;min-height:43px;padding:0 15px;border-bottom:1px solid var(--line-soft);background:var(--panel);color:var(--ink-soft);font-family:var(--font-mono);font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.sidebar-pane .panel-bar{min-height:48px;padding:0 15px}.sidebar-pane input{font-family:var(--font-sans)!important;font-size:12px!important}.sidebar-pane input::placeholder{color:var(--ink-muted)}.sidebar-pane button{font-family:var(--font-sans)}.sidebar-pane button:hover{background:color-mix(in srgb,var(--green) 7%,var(--panel))!important}.sidebar-pane button>div:nth-child(2){line-height:1.4}.sidebar-pane button>div:nth-child(2) span{font-weight:650!important}.simulator{display:flex;flex-direction:column;height:100%;min-height:0;background:var(--panel)}.simulator-head{display:flex;align-items:center;justify-content:space-between;min-height:66px;padding:11px 20px;border-bottom:1px solid var(--line-soft)}.simulator-title-wrap{min-width:0}.eyebrow,.wave-kicker{display:flex;align-items:center;gap:7px;font-family:var(--font-mono);font-size:8px;letter-spacing:.14em;color:var(--ink-muted)}.live-dot{width:6px;height:6px;border-radius:50%;background:var(--green);box-shadow:0 0 8px var(--green);animation:live-pulse 2s ease-in-out infinite}.simulator-head h2{margin:3px 0 0;color:var(--ink-strong);font-size:clamp(15px,1.35vw,19px);line-height:1.25;font-weight:680;letter-spacing:-.025em}.sim-actions{display:flex;align-items:center;gap:7px}.topology-chip{padding:7px 9px;border:1px solid var(--line-soft);border-radius:7px;color:var(--cyan);font:8px var(--font-mono);letter-spacing:.06em;white-space:nowrap}.icon-button{width:31px;height:31px;border-radius:8px}.simulator-scroll{overflow:auto;min-height:0}.amp-visual{position:relative;padding:12px 20px 15px}.visual-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:6px}.visual-meta>div:first-child{display:flex;align-items:center;gap:9px}.status-pill{display:flex;align-items:center;gap:5px;color:var(--green);font:8px var(--font-mono);letter-spacing:.1em}.visual-hint{color:var(--ink-muted);font-size:10px}.rail-readout{color:var(--ink-muted);font:8px var(--font-mono);letter-spacing:.07em}.rail-readout strong{color:var(--ink);margin-left:5px;font-size:10px}.amp-diagram{display:block;width:100%;max-height:290px;overflow:visible}.amp-diagram .svg-kicker{fill:var(--ink-muted);font:8px var(--font-mono);letter-spacing:1.2px}.amp-diagram .signal-wire{fill:none;stroke:var(--line-mid);stroke-width:2}.amp-diagram .signal-wire-glow{stroke:color-mix(in srgb,var(--green) 12%,transparent);stroke-width:8}.amp-diagram .animated-flow{fill:none;stroke:var(--green);stroke-width:2;stroke-dasharray:3 14;stroke-linecap:round;animation:wire-flow 1.1s linear infinite}.amp-diagram .signal-particle{fill:var(--green)}.particle-one{animation:particle-travel 4.8s linear infinite}.particle-two{animation:particle-travel 4.8s 2.1s linear infinite}.amp-diagram .animated-flow,.amp-diagram .signal-particle,.amp-diagram .supply-pulse,.amp-diagram .push-arrow,.amp-diagram .speaker-wave{animation-play-state:paused}.amp-diagram.is-animating .animated-flow,.amp-diagram.is-animating .signal-particle,.amp-diagram.is-animating .supply-pulse,.amp-diagram.is-animating .push-arrow,.amp-diagram.is-animating .speaker-wave{animation-play-state:running}.amp-diagram .stage-card{fill:var(--panel-raised);stroke:var(--line-soft);stroke-width:1.5;transition:.35s ease}.amp-diagram .amp-stage{cursor:pointer;outline:none}.amp-diagram .amp-stage:hover .stage-card,.amp-diagram .amp-stage.is-focused .stage-card{stroke:var(--green);fill:color-mix(in srgb,var(--green) 7%,var(--panel-raised));filter:drop-shadow(0 0 12px color-mix(in srgb,var(--green) 12%,transparent))}.amp-diagram .stage-icon-bg{fill:color-mix(in srgb,var(--cyan) 10%,var(--panel));stroke:color-mix(in srgb,var(--cyan) 25%,var(--line-soft))}.amp-diagram .mini-wave{fill:none;stroke:var(--cyan);stroke-width:2;stroke-linecap:round}.amp-diagram .amp-triangle{fill:none;stroke:var(--cyan);stroke-width:2;stroke-linejoin:round}.amp-diagram .svg-plus,.amp-diagram .svg-minus{fill:var(--cyan);font:11px var(--font-mono)}.amp-diagram .stage-label{fill:var(--ink-strong);font:700 10px var(--font-mono);letter-spacing:.6px}.amp-diagram .stage-sub{fill:var(--ink-soft);font:9px var(--font-mono)}.amp-diagram .supply-link path{fill:none;stroke:color-mix(in srgb,var(--amber) 60%,var(--line-mid));stroke-width:1.5;stroke-dasharray:3 4}.amp-diagram .supply-link rect{fill:color-mix(in srgb,var(--amber) 8%,var(--panel));stroke:color-mix(in srgb,var(--amber) 32%,var(--line-soft))}.amp-diagram .supply-link text{fill:var(--amber);font:9px var(--font-mono)}.amp-diagram .supply-link.is-active rect{stroke:var(--amber);fill:color-mix(in srgb,var(--amber) 14%,var(--panel))}.amp-diagram .supply-link.is-active path{stroke:var(--amber);stroke-width:2}.supply-pulse{fill:var(--amber);animation:supply-bob 1.5s ease-in-out infinite alternate}.amp-diagram .device{fill:color-mix(in srgb,var(--cyan) 12%,var(--panel));stroke:color-mix(in srgb,var(--cyan) 42%,var(--line-soft));stroke-width:1.3}.amp-diagram .device-label{fill:var(--cyan);font:8px var(--font-mono)}.amp-diagram .push-arrow{fill:none;stroke:var(--green);stroke-width:1.7;stroke-dasharray:3 4;animation:wire-flow .7s linear infinite}.amp-diagram .push-arrow.lower{animation-direction:reverse}.amp-diagram .switch-wave,.amp-diagram .tube-detail,.amp-diagram .filter-coil{fill:none;stroke:var(--green);stroke-width:1.4;stroke-linejoin:round;stroke-linecap:round}.amp-diagram .tube-glass{fill:color-mix(in srgb,var(--amber) 8%,var(--panel));stroke:var(--amber);stroke-width:1.6}.amp-diagram .speaker-cone{fill:color-mix(in srgb,var(--green) 12%,var(--panel));stroke:var(--green);stroke-width:1.7}.amp-diagram .speaker-wave{fill:none;stroke:var(--green);stroke-width:1.7;stroke-linecap:round;transform-origin:895px 152px;animation:sound-pulse 1.2s ease-in-out infinite}.wire-label{fill:var(--ink-muted);font:8px var(--font-mono);text-anchor:middle}.signal-controls{display:grid;grid-template-columns:minmax(150px,1fr) minmax(120px,.8fr) 38px;align-items:center;gap:14px;max-width:590px;margin:2px auto 0;padding:9px 13px;border:1px solid var(--line-soft);border-radius:10px;background:var(--panel-raised)}.control-caption{display:flex;align-items:center;gap:9px;color:var(--green)}.control-caption span{display:flex;flex-direction:column;gap:2px}.control-caption strong{color:var(--ink);font-size:10px}.control-caption small{color:var(--ink-muted);font-size:8px}.signal-controls input{width:100%;accent-color:var(--green);cursor:pointer}.drive-value{color:var(--green);font:10px var(--font-mono);text-align:right}.drive-compact{display:flex;flex:none;align-items:center;gap:6px;min-width:0;padding:4px 7px;border:1px solid var(--line-soft);border-radius:7px;background:var(--panel-raised)}.drive-compact label{display:flex;align-items:center;gap:4px;color:var(--green);font:7px var(--font-mono);letter-spacing:.04em}.drive-compact input{width:82px;margin:0;accent-color:var(--green);cursor:pointer}.drive-compact output{min-width:28px;color:var(--green);font:8px var(--font-mono);text-align:right}.clip-note{display:flex;justify-content:center;align-items:center;gap:7px;color:var(--amber);margin-top:8px;font-size:9px}.clip-note span{height:6px;width:6px;border-radius:50%;background:var(--amber);animation:live-pulse 1s infinite}.probe-note{display:flex;align-items:center;gap:8px;width:100%;margin-top:9px;padding:9px 11px;text-align:left;border:1px solid color-mix(in srgb,var(--cyan) 32%,var(--line-soft));border-radius:8px;background:color-mix(in srgb,var(--cyan) 7%,var(--panel));color:var(--ink);font-size:10px;cursor:pointer}.probe-note svg{color:var(--cyan);flex:0 0 auto}.probe-note b{margin-left:auto;color:var(--ink-muted);font-size:15px}.test-point-heading{display:flex;align-items:baseline;gap:10px;margin:12px 0 6px;color:var(--ink-muted);font:8px var(--font-mono);letter-spacing:.06em}.test-point-heading strong{color:var(--green)}.test-point-rail{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.test-point-card{display:flex;align-items:center;gap:9px;min-width:0;padding:8px;border:1px solid var(--line-soft);border-radius:8px;background:var(--panel-raised);text-align:left;cursor:pointer;color:var(--ink)}.test-point-card:hover,.test-point-card.is-selected{border-color:var(--green);background:color-mix(in srgb,var(--green) 8%,var(--panel-raised))}.test-point-dot{display:grid;place-items:center;flex:0 0 29px;width:29px;height:29px;border:1px solid color-mix(in srgb,var(--green) 55%,var(--line-soft));border-radius:50%;color:var(--green);font:7px var(--font-mono)}.test-point-copy{display:grid;min-width:0;gap:3px}.test-point-copy strong{overflow:hidden;color:var(--ink);font-size:9px;text-overflow:ellipsis;white-space:nowrap}.test-point-copy small{overflow:hidden;color:var(--ink-muted);font:8px var(--font-mono);text-overflow:ellipsis;white-space:nowrap}.test-point-detail{display:flex;align-items:flex-start;gap:8px;margin-top:7px;padding:8px 10px;border:1px solid color-mix(in srgb,var(--green) 35%,var(--line-soft));border-radius:8px;background:color-mix(in srgb,var(--green) 6%,var(--panel-raised));color:var(--ink-muted);font-size:9px;line-height:1.55}.test-point-detail svg{flex:0 0 auto;margin-top:1px;color:var(--green)}.test-point-detail strong{color:var(--ink)}.svg-test-point{cursor:pointer}.svg-test-point circle{fill:var(--panel);stroke:var(--ink-muted);stroke-width:2;transition:fill .16s,stroke .16s,r .16s}.svg-test-point text{fill:var(--ink-muted);font:5px var(--font-mono);font-weight:800;pointer-events:none}.svg-test-point .tp-label{font-size:6px;font-weight:600}.svg-test-point .tp-value{fill:var(--ink-soft);font-size:6px;font-weight:500}.svg-test-point:hover circle,.svg-test-point.is-selected circle{fill:var(--green);stroke:var(--green)}.svg-test-point:hover text,.svg-test-point.is-selected text{fill:var(--ink-strong)}.svg-test-point.is-selected text:not(.tp-value):not(.tp-label){fill:var(--panel)}.wave-panel{padding:9px 20px 10px;border-top:1px solid var(--line-soft);background:color-mix(in srgb,var(--panel-raised) 40%,var(--panel))}.wave-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:5px}.wave-head h3{margin:3px 0 0;color:var(--ink-strong);font-size:12px;font-weight:650}.wave-legend{display:flex;gap:12px;color:var(--ink-muted);font:8px var(--font-mono)}.wave-legend span{display:flex;align-items:center;gap:5px}.wave-legend i{display:block;width:11px;height:2px;border-radius:2px}.legend-input{background:var(--cyan)}.legend-output{background:var(--green)}.wave-chart{height:54px;overflow:hidden;border:1px solid var(--line-soft);border-radius:8px;background:var(--scope-bg)}.wave-chart svg{display:block;width:100%;height:100%}.scope-grid-line{fill:none;stroke:var(--scope-grid);stroke-width:.7}.trace-input,.trace-output{fill:none;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.trace-input{stroke:var(--scope-trace-in);stroke-width:1.5;opacity:.8}.trace-output{stroke:var(--scope-trace-out);stroke-width:2.1;filter:drop-shadow(0 0 3px color-mix(in srgb,var(--green) 35%,transparent))}.trace-output.is-clipped{stroke:var(--amber)}.wave-stats{display:flex;justify-content:space-between;gap:8px;margin-top:8px;color:var(--ink-muted);font:8px var(--font-mono);letter-spacing:.04em}.wave-stats strong{margin-left:3px;color:var(--ink);font-weight:600}.overview-pane .panel-bar{font-size:9px}.overview-pane h2{font-size:16px!important;font-family:var(--font-sans);letter-spacing:-.02em!important}.overview-pane>div>div:nth-child(2){font-family:var(--font-sans);font-size:12px!important;line-height:1.68!important;border-radius:9px!important;background:var(--panel-raised)!important}.overview-pane table{font-family:var(--font-sans)}.overview-pane table td{font-size:10px}.overview-pane>div>div:last-child{padding-top:10px!important;padding-bottom:10px!important}.overview-pane button{border-radius:8px!important;font-family:var(--font-mono)!important}.overview-pane button:not(:disabled):last-child{background:var(--green)!important;color:#17200f!important;border-color:var(--green)!important}.overview-pane button:not(:disabled):last-child:hover{filter:brightness(1.07)}.workbench-pane .panel-bar{min-height:45px}.workbench-pane .panel-bar button{font-family:var(--font-mono)!important;font-size:9px!important;letter-spacing:.035em!important}.workbench-pane canvas{background:var(--scope-bg)}@keyframes live-pulse{0%,to{opacity:1}50%{opacity:.45}}@keyframes wire-flow{to{stroke-dashoffset:-34}}@keyframes particle-travel{0%{transform:translate(0);opacity:0}7%{opacity:1}92%{opacity:1}to{transform:translate(795px);opacity:0}}@keyframes sound-pulse{0%,to{opacity:.45}50%{opacity:1;transform:scale(1.08)}}@keyframes supply-bob{0%{transform:translateY(0);opacity:.5}to{transform:translateY(8px);opacity:1}}@media(max-width:1240px){.shell{padding-left:16px;padding-right:16px}.topbar{gap:16px;grid-template-columns:auto minmax(240px,1fr) minmax(180px,.8fr) auto}.brand-lockup{min-width:190px}.brand-copy small{font-size:7px}.workspace{--list-w: 238px;--details-w: 300px}.sidebar-pane .panel-bar{font-size:8px}.wave-stats{font-size:7px}}@media(max-width:1000px){.shell{height:auto;min-height:100vh;overflow:visible;grid-template-rows:auto 1fr}.topbar{min-height:74px;grid-template-columns:auto 1fr auto;gap:10px 16px;padding:10px 0}.topbar-progress{display:none}.topbar-course{justify-content:flex-end}.topbar-course select{max-width:175px}.workspace{grid-template-columns:210px 12px minmax(0,1fr);grid-template-rows:minmax(500px,auto) 12px 290px auto;padding-bottom:18px}.sidebar-pane{grid-column:1;grid-row:1 / 5}.canvas-pane{grid-column:3;grid-row:1}.overview-pane{grid-column:3;grid-row:4;min-height:460px}.workbench-pane{grid-column:3;grid-row:3}.amp-diagram{max-height:250px}}@media(max-width:700px){.shell{min-height:100vh;padding:0 12px 14px}.topbar{grid-template-columns:minmax(0,1fr) auto;padding:12px 0}.brand-lockup{min-width:0}.brand-mark{width:31px;height:31px}.brand-copy strong{font-size:15px}.brand-copy small{font-size:7px;letter-spacing:.06em}.topbar-course{grid-column:1 / -1;justify-content:space-between}.topbar-course select{max-width:52%;font-size:9px}.depth-toggle button{padding:6px 7px}.topbar-tools{justify-self:end;grid-column:2;grid-row:1}.listen-control{padding:4px}.listen-control select{width:82px}.listen-control input,.volume-icon{display:none}.workspace{display:flex;flex-direction:column;gap:12px;padding-top:12px}.sidebar-pane{flex:none;height:290px}.canvas-pane{flex:none;min-height:650px}.overview-pane{flex:none;min-height:520px}.workbench-pane{flex:none;min-height:330px}.simulator-head{padding:11px 13px}.topology-chip{display:none}.amp-visual{padding:10px 10px 13px}.visual-hint{display:none}.amp-diagram{min-height:190px;max-height:215px}.signal-controls{grid-template-columns:1fr 35px;gap:8px}.control-caption{grid-column:1/-1}.test-point-rail{grid-template-columns:repeat(2,minmax(0,1fr))}.test-point-heading{align-items:flex-start;flex-direction:column;gap:4px}.wave-panel{padding:12px}.wave-stats{flex-wrap:wrap;justify-content:flex-start;gap:8px 13px}.wave-stats span{min-width:40%}.workbench-pane{overflow-x:auto}.workbench-pane .panel-bar{min-width:600px}.workbench-pane .panel-bar button{padding-left:6px!important;padding-right:6px!important}.overview-pane .panel-bar{min-height:42px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}html,body,#root{height:100%;min-height:0;overflow:hidden}.app-shell{height:100vh;width:100%;display:grid;grid-template-columns:232px minmax(0,1fr);overflow:hidden;background:var(--bg);transition:grid-template-columns .25s ease}.app-shell.sidebar-collapsed{grid-template-columns:60px minmax(0,1fr)}.app-main{display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden}.app-content{flex:1;min-width:0;min-height:0;overflow:auto}.menu-toggle{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--line-soft);border-radius:9px;background:var(--panel);color:var(--ink-soft);cursor:pointer}.menu-toggle:hover{color:var(--green);border-color:var(--green)}.topbar{flex:none;display:grid;grid-template-columns:38px minmax(190px,1fr) auto minmax(95px,.35fr) auto;gap:14px;min-height:72px;padding:0 20px;border-bottom:1px solid var(--line-soft)}.topbar-library{grid-template-columns:38px minmax(0,1fr) auto}.topbar-heading{display:flex;flex-direction:column;justify-content:center;gap:4px;min-width:0}.topbar-heading>span{font:8px var(--font-mono);letter-spacing:.14em;color:var(--ink-muted);text-transform:uppercase}.topbar-heading>strong{color:var(--ink-strong);font-size:14px;font-weight:680;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-progress{display:flex;align-items:center;gap:9px;min-width:75px}.topbar-progress .progress-meter{flex:1;margin:0}.step-count,.depth-toggle{white-space:nowrap}.app-sidebar{display:flex;flex-direction:column;min-width:0;height:100%;overflow:hidden;border-right:1px solid var(--line-soft);background:var(--panel);z-index:25}.sidebar-brand{display:flex;align-items:center;gap:11px;min-height:80px;padding:12px 17px;border-bottom:1px solid var(--line-soft)}.sidebar-brand .brand-copy{min-width:0}.sidebar-brand .brand-copy strong{font-size:14px;letter-spacing:.07em;white-space:nowrap}.sidebar-brand .brand-copy small{font-size:7px;white-space:nowrap}.sidebar-close{display:none;margin-left:auto;place-items:center;border:0;background:transparent;color:var(--ink-soft);cursor:pointer}.primary-nav{display:flex;flex-direction:column;gap:4px;padding:12px 10px 8px}.sidebar-label{padding:8px 10px 7px;color:var(--ink-muted);font:8px var(--font-mono);letter-spacing:.13em}.nav-link{position:relative;display:flex;align-items:center;gap:12px;width:100%;min-height:39px;padding:0 11px;border:1px solid transparent;border-radius:9px;background:transparent;color:var(--ink-soft);text-align:left;font-size:11px;cursor:pointer;transition:.18s ease}.nav-link:hover{background:var(--panel-raised);color:var(--ink-strong)}.nav-link.active{background:color-mix(in srgb,var(--green) 10%,var(--panel));border-color:color-mix(in srgb,var(--green) 16%,var(--line-soft));color:var(--green)}.nav-link span{white-space:nowrap}.nav-link i{width:5px;height:5px;margin-left:auto;border-radius:50%;background:var(--green)}.sidebar-section-list{flex:1;min-height:0;overflow:auto;padding:10px;border-top:1px solid var(--line-soft)}.subnav-link{display:flex;align-items:center;gap:10px;width:100%;min-height:32px;padding:5px 9px;border:0;border-radius:7px;background:transparent;color:var(--ink-soft);text-align:left;font-size:10px;line-height:1.3;cursor:pointer}.subnav-link:hover{background:var(--panel-raised);color:var(--ink-strong)}.subnav-link.active{color:var(--green);background:color-mix(in srgb,var(--green) 8%,var(--panel))}.subnav-link>span:last-child{min-width:0}.track-dot,.phenomenon-index{display:grid;place-items:center;flex:0 0 21px;width:21px;height:21px;border-radius:6px;background:var(--panel-raised);color:var(--ink-muted);font:8px var(--font-mono)}.subnav-link.active .track-dot,.subnav-link.active .phenomenon-index{color:var(--green);background:color-mix(in srgb,var(--green) 12%,var(--panel))}.sidebar-note{display:flex;gap:9px;margin:10px 4px;padding:12px;border:1px solid var(--line-soft);border-radius:9px;color:var(--ink-soft);font-size:10px;line-height:1.6}.sidebar-note svg{flex:none;color:var(--amber)}.sidebar-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:50px;padding:8px 13px;border-top:1px solid var(--line-soft);color:var(--ink-muted);font:7px var(--font-mono);letter-spacing:.08em}.collapse-button{display:grid;place-items:center;flex:none;width:28px;height:28px;border:1px solid var(--line-soft);border-radius:8px;background:var(--panel);color:var(--ink-soft);cursor:pointer}.collapse-button:hover{color:var(--green);border-color:var(--green)}.sidebar-scrim{display:none}.app-sidebar.is-collapsed .brand-copy,.app-sidebar.is-collapsed .sidebar-label,.app-sidebar.is-collapsed .nav-link span,.app-sidebar.is-collapsed .nav-link i,.app-sidebar.is-collapsed .sidebar-section-list,.app-sidebar.is-collapsed .sidebar-footer>span{display:none}.app-sidebar.is-collapsed .sidebar-brand{justify-content:center;padding:10px}.app-sidebar.is-collapsed .primary-nav{padding-left:8px;padding-right:8px}.app-sidebar.is-collapsed .nav-link{justify-content:center;padding:0}.app-sidebar.is-collapsed .collapse-button{margin:auto}.app-shell .workspace{--list-w:205px;--details-w:270px;--bench-h:210px;height:100%;padding:14px 16px 16px;grid-template-columns:var(--list-w) 12px minmax(0,1fr) 12px var(--details-w);grid-template-rows:minmax(0,1fr) 12px var(--bench-h)}.app-shell .sidebar-pane,.app-shell .canvas-pane,.app-shell .overview-pane,.app-shell .workbench-pane{border-radius:12px}.app-shell .sidebar-pane .panel-bar{min-height:44px}.app-shell .sidebar-pane>div>div:nth-child(2){font-size:10px!important}.app-shell .sidebar-pane button{padding-left:10px!important;padding-right:10px!important}.phenomena-page,.library-page{max-width:1450px;margin:0 auto;padding:28px clamp(18px,3.2vw,46px) 35px}.page-intro{max-width:820px;margin:0 0 23px}.page-kicker{color:var(--green);font:8px var(--font-mono);letter-spacing:.15em}.page-intro h1{margin:7px 0 8px;color:var(--ink-strong);font-size:clamp(24px,3vw,34px);font-weight:670;letter-spacing:-.045em}.page-intro p{max-width:760px;margin:0;color:var(--ink-soft);font-size:12px;line-height:1.75}.phenom-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(240px,.75fr);gap:14px;align-items:stretch}.phenom-sim-card,.phenom-explain-card,.design-detail,.ic-list-panel,.ic-detail{border:1px solid var(--line-soft);border-radius:15px;background:var(--panel);box-shadow:0 8px 25px #0000000a}.phenom-sim-card{overflow:hidden}.phenom-card-head{display:flex;align-items:center;justify-content:space-between;padding:16px 19px 12px}.phenom-card-head h2,.phenom-explain-card h2{margin:6px 0 0;color:var(--ink-strong);font-size:15px;font-weight:650}.phenom-card-head .status-pill{font-size:8px}.phenom-card-head .live-dot{display:inline-block}.phenom-visual{padding:0 15px}.phenom-visual svg{display:block;width:100%;height:auto;min-height:150px;border-radius:10px}.phenom-graph-bg{fill:var(--scope-bg)}.phenom-gridline{stroke:var(--scope-grid);stroke-width:1}.phenom-centerline{stroke:var(--line-mid);stroke-width:1;stroke-dasharray:3 5}.phenom-trace-input,.phenom-trace-output,.phenom-trace-flow{fill:none;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.phenom-trace-input{stroke:var(--cyan);stroke-width:1.5;opacity:.5}.phenom-trace-output{stroke:var(--green);stroke-width:2}.phenom-trace-output.clipped{stroke:var(--amber)}.phenom-trace-flow{stroke:color-mix(in srgb,var(--green) 70%,transparent);stroke-width:2;stroke-dasharray:4 17;animation:wire-flow .8s linear infinite}.phenom-particle{fill:var(--green);filter:drop-shadow(0 0 5px var(--green))}.trace-caption,.meter-label{fill:var(--ink-muted);font:8px var(--font-mono);letter-spacing:.11em}.trace-caption-in{fill:var(--cyan)}.trace-caption-out{fill:var(--green)}.meter-track{fill:var(--line-soft)}.meter-hot{fill:var(--amber);transition:width .3s}.conduction-arc{stroke:var(--amber);stroke-width:5;stroke-linecap:round}.fault-overlay rect{fill:color-mix(in srgb,var(--red) 18%,var(--panel));stroke:color-mix(in srgb,var(--red) 45%,var(--line-soft))}.fault-overlay text{fill:var(--red);font:8px var(--font-mono);letter-spacing:.04em}.phenom-controls{padding:12px 20px 14px}.phenom-control-label{display:flex;justify-content:space-between;gap:10px;margin-bottom:7px;color:var(--ink-soft);font-size:10px}.phenom-control-label strong{color:var(--green);font:11px var(--font-mono)}.phenom-controls input{width:100%;accent-color:var(--green);cursor:pointer}.distortion-modes{display:flex;gap:5px;margin-top:9px}.distortion-modes button{border:1px solid var(--line-soft);border-radius:7px;padding:6px 9px;background:var(--panel-raised);color:var(--ink-soft);font-size:9px;cursor:pointer}.distortion-modes button.active{color:var(--green);border-color:color-mix(in srgb,var(--green) 40%,var(--line-soft))}.phenom-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft)}.phenom-metric{display:flex;flex-direction:column;gap:5px;min-height:76px;padding:12px 15px;border-right:1px solid var(--line-soft)}.phenom-metric:last-child{border-right:0}.phenom-metric span{color:var(--ink-muted);font:8px var(--font-mono);letter-spacing:.08em;text-transform:uppercase}.phenom-metric strong{color:var(--ink-strong);font:650 14px var(--font-mono)}.phenom-metric small{color:var(--ink-soft);font-size:8px}.phenom-audio-bar{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:13px 17px}.audio-copy{display:flex;align-items:center;gap:10px;min-width:0;color:var(--green)}.audio-copy span{display:flex;flex-direction:column;gap:3px;min-width:0}.audio-copy strong{color:var(--ink);font-size:10px}.audio-copy small{color:var(--ink-muted);font-size:8px;line-height:1.5}.audio-buttons{display:flex;gap:6px;flex:none}.audio-play,.bypass-button{display:flex;align-items:center;justify-content:center;gap:6px;min-height:31px;border:1px solid var(--line-mid);border-radius:8px;padding:0 10px;background:var(--panel-raised);color:var(--ink);font-size:9px;cursor:pointer}.audio-play{background:var(--green);border-color:var(--green);color:#14200d;font-weight:700}.audio-play.active{background:color-mix(in srgb,var(--green) 13%,var(--panel));color:var(--green)}.bypass-button.active{color:var(--amber);border-color:var(--amber)}.audio-play:disabled,.bypass-button:disabled{opacity:.45;cursor:not-allowed}.phenom-explain-card{display:flex;flex-direction:column;padding:19px}.phenom-explain-card>p{margin:12px 0 auto;color:var(--ink-soft);font-size:12px;line-height:1.8}.phenom-callout,.model-note{display:flex;gap:10px;padding:12px;border-radius:9px}.phenom-callout{margin:20px 0 9px;background:color-mix(in srgb,var(--green) 8%,var(--panel-raised));color:var(--green)}.phenom-callout span{display:flex;flex-direction:column;gap:4px}.phenom-callout strong{color:var(--ink);font-size:9px}.phenom-callout small{color:var(--ink-soft);font-size:8px;line-height:1.6}.model-note{border:1px solid var(--line-soft);color:var(--amber);font-size:8px;line-height:1.65}.model-note svg{flex:none}.model-note span{color:var(--ink-muted)}.signal-key{display:flex;gap:15px;margin-top:18px;color:var(--ink-muted);font:8px var(--font-mono)}.signal-key span{display:flex;align-items:center;gap:6px}.signal-key i{width:11px;height:2px;border-radius:3px}.key-input{background:var(--cyan)}.key-output{background:var(--green)}.library-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 13px}.library-toolbar>span{color:var(--ink-muted);font:8px var(--font-mono);letter-spacing:.1em}.library-filter{display:flex;flex-wrap:wrap;gap:5px}.library-filter button{border:1px solid var(--line-soft);border-radius:8px;padding:7px 10px;background:var(--panel);color:var(--ink-soft);font-size:9px;cursor:pointer}.library-filter button.active{color:var(--green);border-color:color-mix(in srgb,var(--green) 35%,var(--line-soft));background:color-mix(in srgb,var(--green) 8%,var(--panel))}.design-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:13px;align-items:start}.design-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.design-card{min-height:162px;padding:13px;text-align:left;border:1px solid var(--line-soft);border-radius:11px;background:var(--panel);cursor:pointer;transition:.2s ease}.design-card:hover,.design-card.selected{border-color:color-mix(in srgb,var(--green) 50%,var(--line-soft));transform:translateY(-1px)}.design-card.selected{background:color-mix(in srgb,var(--green) 5%,var(--panel))}.design-card h2{margin:10px 0 4px;color:var(--ink-strong);font-size:13px;font-weight:650}.design-topology{margin:0 0 7px!important;color:var(--cyan)!important;font:8px var(--font-mono)!important}.design-card p{margin:0;color:var(--ink-soft);font-size:9px;line-height:1.55}.design-card-foot{display:flex;justify-content:space-between;gap:6px;margin-top:10px;color:var(--ink-muted);font-size:8px}.license-badge{display:inline-flex;align-items:center;gap:5px;border-radius:30px;padding:5px 7px;color:var(--ink-muted);background:var(--panel-raised);font:7px var(--font-mono);letter-spacing:.065em}.license-badge i{width:5px;height:5px;border-radius:50%;background:var(--ink-muted)}.license-badge.open-hardware{color:var(--green);background:color-mix(in srgb,var(--green) 10%,var(--panel))}.license-badge.open-hardware i{background:var(--green)}.license-badge.source-reference{color:var(--cyan);background:color-mix(in srgb,var(--cyan) 8%,var(--panel))}.license-badge.source-reference i{background:var(--cyan)}.license-badge.license-unverified{color:var(--amber);background:color-mix(in srgb,var(--amber) 8%,var(--panel))}.license-badge.license-unverified i{background:var(--amber)}.design-detail{position:sticky;top:12px;overflow:hidden}.detail-art{padding:15px 14px 3px;background:var(--panel-raised);border-bottom:1px solid var(--line-soft)}.detail-art svg{display:block;width:100%;height:auto;margin-top:10px}.design-wire{fill:none;stroke:var(--line-mid);stroke-width:2}.design-wire-flow{fill:none;stroke:var(--green);stroke-width:2;stroke-dasharray:3 11;animation:wire-flow .7s linear infinite}.design-pulse{fill:var(--green)}.design-node{fill:var(--panel);stroke:var(--line-mid)}.detail-art text{fill:var(--ink-soft);font:7px var(--font-mono);letter-spacing:.07em}.design-detail-copy{padding:15px}.design-detail-copy h2{margin:10px 0;color:var(--ink-strong);font-size:18px;letter-spacing:-.02em}.design-spec{display:flex;flex-direction:column;gap:7px;margin:0 0 12px;color:var(--ink-soft);font-size:9px}.design-spec span{display:flex;align-items:center;gap:7px}.design-spec svg{color:var(--cyan)}.design-detail-copy>p{color:var(--ink-soft);font-size:10px;line-height:1.7}.license-note{display:flex;gap:9px;margin:12px 0;padding:10px;border:1px solid var(--line-soft);border-radius:8px;color:var(--green)}.license-note span{display:flex;flex-direction:column;gap:4px}.license-note strong{color:var(--ink);font-size:9px}.license-note small{color:var(--ink-muted);font-size:8px;line-height:1.55}.source-link{display:inline-flex;align-items:center;gap:6px;color:var(--green);font-size:9px;text-decoration:none}.source-link:hover{text-decoration:underline}.library-footnote{display:flex;align-items:flex-start;gap:9px;margin-top:13px;padding:11px 13px;border:1px solid var(--line-soft);border-radius:9px;color:var(--ink-muted);font-size:9px;line-height:1.6}.library-footnote svg{flex:none;color:var(--cyan)}.ic-workspace{display:grid;grid-template-columns:minmax(220px,.65fr) minmax(0,1.35fr);gap:13px;align-items:stretch}.ic-list-panel{display:flex;flex-direction:column;min-height:440px;overflow:hidden}.ic-search{display:flex;align-items:center;gap:8px;padding:13px;border-bottom:1px solid var(--line-soft);color:var(--ink-muted)}.ic-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--ink);font-size:10px}.ic-search input::placeholder{color:var(--ink-muted)}.ic-results{flex:1;overflow:auto;padding:7px}.ic-list-item{display:flex;align-items:center;gap:10px;width:100%;min-height:51px;padding:7px 9px;border:1px solid transparent;border-radius:9px;background:transparent;color:var(--ink-soft);text-align:left;cursor:pointer}.ic-list-item:hover{background:var(--panel-raised)}.ic-list-item.active{border-color:color-mix(in srgb,var(--green) 28%,var(--line-soft));background:color-mix(in srgb,var(--green) 7%,var(--panel));color:var(--green)}.ic-chip-icon{display:grid;place-items:center;flex:none;width:29px;height:29px;border:1px solid var(--line-mid);border-radius:7px;background:var(--panel-raised);color:var(--cyan);font:8px var(--font-mono)}.ic-list-item>span:nth-child(2){display:flex;flex:1;flex-direction:column;gap:4px;min-width:0}.ic-list-item strong{color:var(--ink-strong);font:10px var(--font-mono)}.ic-list-item small{overflow:hidden;color:var(--ink-muted);font-size:8px;text-overflow:ellipsis;white-space:nowrap}.ic-list-item>i{width:5px;height:5px;border-radius:50%;background:transparent}.ic-list-item.active>i{background:var(--green)}.empty-note{padding:13px;color:var(--ink-muted);font-size:9px}.ic-detail{padding:20px}.ic-detail-head{display:flex;align-items:flex-start;justify-content:space-between}.ic-detail-head h2{margin:5px 0 2px;color:var(--ink-strong);font:700 25px var(--font-mono)}.ic-detail-head p{margin:0;color:var(--ink-soft);font-size:10px}.source-icon-link{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--line-soft);border-radius:9px;color:var(--green)}.ic-signal-map{margin:20px 0;padding:21px 13px 12px;border:1px solid var(--line-soft);border-radius:11px;background:var(--panel-raised)}.ic-route{display:flex;align-items:center;justify-content:center;gap:8px}.ic-route-node{display:flex;flex-direction:column;align-items:center;gap:7px;color:var(--cyan);font-size:8px;white-space:nowrap}.ic-route-node span{color:var(--ink-soft)}.ic-connector{width:min(10vw,70px);height:1px;background:linear-gradient(90deg,var(--cyan),var(--green));position:relative}.ic-connector:after{content:"";position:absolute;top:-3px;left:0;width:6px;height:6px;border-radius:50%;background:var(--green);box-shadow:0 0 8px var(--green);animation:connector-travel 2s linear infinite}.ic-chip{display:flex;align-items:center;gap:7px;min-height:61px;padding:8px 11px;border:1px solid color-mix(in srgb,var(--green) 35%,var(--line-mid));border-radius:9px;background:color-mix(in srgb,var(--green) 7%,var(--panel))}.chip-pins{width:4px;height:31px;background:repeating-linear-gradient(to bottom,var(--amber) 0 2px,transparent 2px 6px)}.chip-text{display:flex;flex-direction:column;gap:4px}.chip-text small{color:var(--ink-muted);font:7px var(--font-mono)}.chip-text strong{color:var(--green);font:10px var(--font-mono);white-space:nowrap}.ic-route-caption{display:flex;justify-content:space-between;margin:15px 3% 0;color:var(--ink-muted);font:7px var(--font-mono);letter-spacing:.08em}.ic-route-caption span{color:var(--green)}.ic-detail-body{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin:0 0 18px}.ic-detail-body>div{padding:12px;border:1px solid var(--line-soft);border-radius:9px}.ic-detail-body p{margin:7px 0 0;color:var(--ink-soft);font-size:10px;line-height:1.6}.ic-audition{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:15px;padding:12px;border:1px solid var(--line-soft);border-radius:10px}.ic-family-row{display:flex;flex-wrap:wrap;gap:7px;margin-top:13px}.ic-family-row span{padding:7px 10px;border:1px solid var(--line-soft);border-radius:20px;color:var(--ink-muted);font:8px var(--font-mono)}@keyframes connector-travel{to{left:calc(100% - 6px)}}@media(max-width:1250px){.app-sidebar.is-collapsed .brand-copy,.app-sidebar.is-collapsed .sidebar-label,.app-sidebar.is-collapsed .nav-link span,.app-sidebar.is-collapsed .nav-link i,.app-sidebar.is-collapsed .sidebar-section-list,.app-sidebar.is-collapsed .sidebar-footer>span{display:none}.app-sidebar.is-collapsed .sidebar-brand{justify-content:center;padding:10px}.app-sidebar.is-collapsed .primary-nav{padding-left:8px;padding-right:8px}.app-sidebar.is-collapsed .nav-link{justify-content:center;padding:0}.app-sidebar.is-collapsed .collapse-button{margin:auto}.app-shell .workspace{--list-w:185px;--details-w:245px}.topbar{padding:0 14px;gap:10px;grid-template-columns:34px minmax(130px,1fr) auto minmax(70px,.3fr) auto}.topbar-library{grid-template-columns:34px minmax(0,1fr) auto}}@media(max-width:1020px){.app-shell .workspace{grid-template-columns:205px 12px minmax(0,1fr);grid-template-rows:minmax(450px,auto) 12px 205px auto;padding:12px}.app-shell .sidebar-pane{grid-column:1;grid-row:1 / 5}.app-shell .canvas-pane{grid-column:3;grid-row:1}.app-shell .workbench-pane{grid-column:3;grid-row:3}.app-shell .overview-pane{grid-column:3;grid-row:4;min-height:450px}.phenom-grid{grid-template-columns:minmax(0,1.35fr) minmax(220px,.75fr)}.design-layout{grid-template-columns:minmax(0,1fr) minmax(280px,.8fr)}}@media(max-width:850px){.app-shell,.app-shell.sidebar-collapsed{grid-template-columns:minmax(0,1fr)}.app-sidebar{position:fixed;left:0;top:0;bottom:0;width:min(285px,84vw);transform:translate(-105%);box-shadow:15px 0 45px #0005;transition:transform .25s ease}.app-sidebar.mobile-open{transform:translate(0)}.app-sidebar.is-collapsed .brand-copy,.app-sidebar.is-collapsed .sidebar-label,.app-sidebar.is-collapsed .nav-link span,.app-sidebar.is-collapsed .nav-link i,.app-sidebar.is-collapsed .sidebar-section-list,.app-sidebar.is-collapsed .sidebar-footer>span{display:initial}.app-sidebar.is-collapsed .sidebar-brand{justify-content:flex-start;padding:12px 17px}.app-sidebar.is-collapsed .primary-nav{padding:12px 10px 8px}.app-sidebar.is-collapsed .nav-link{justify-content:flex-start;padding:0 11px}.app-sidebar.is-collapsed .collapse-button{margin:0}.sidebar-close{display:grid}.sidebar-scrim{position:fixed;top:0;right:0;bottom:0;left:0;display:block;border:0;background:#05080dbb;z-index:24}.topbar{min-height:65px;padding:0 12px;grid-template-columns:34px minmax(0,1fr) auto}.topbar-heading{grid-column:2;grid-row:1}.depth-toggle,.topbar-progress{display:none}.topbar-tools{grid-column:3;grid-row:1}.listen-control{padding:4px}.listen-control input,.volume-icon{display:none}.listen-control select{width:80px}.app-shell .workspace{display:flex;flex-direction:column;gap:12px;height:auto;padding:12px}.app-shell .sidebar-pane{flex:none;height:230px}.app-shell .canvas-pane{flex:none;min-height:610px}.app-shell .overview-pane{flex:none;min-height:480px}.app-shell .workbench-pane{flex:none;min-height:300px;overflow-x:auto}.app-shell .workbench-pane .panel-bar{min-width:600px}.phenomena-page,.library-page{padding:22px 15px 28px}.phenom-grid,.design-layout,.ic-workspace{grid-template-columns:1fr}.phenom-explain-card{min-height:270px}.design-detail{position:static}.design-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ic-list-panel{min-height:260px;max-height:320px}}@media(max-width:540px){.topbar-heading>span{font-size:7px}.topbar-heading>strong{font-size:11px}.topbar .brand-lockup{display:none}.topbar-tools{gap:5px}.listen-control select{width:68px;font-size:9px}.theme-button{width:31px;height:31px}.app-shell .canvas-pane{min-height:580px}.app-shell .overview-pane{min-height:520px}.app-shell .workbench-pane{min-height:320px}.phenom-audio-bar{align-items:flex-start;flex-direction:column}.audio-buttons{width:100%}.audio-buttons button{flex:1}.phenom-metrics{grid-template-columns:1fr}.phenom-metric{min-height:auto;border-right:0;border-bottom:1px solid var(--line-soft)}.phenom-metric:last-child{border-bottom:0}.design-grid{grid-template-columns:1fr}.design-card{min-height:140px}.library-toolbar{align-items:flex-start;flex-direction:column}.library-filter{width:100%}.library-filter button{flex:1}.ic-detail{padding:14px}.ic-route{gap:4px}.ic-connector{width:20px}.ic-route-node{font-size:7px}.ic-chip{padding:6px}.chip-text small{max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ic-detail-body{grid-template-columns:1fr}.page-intro h1{font-size:25px}}.audio-credit{color:var(--cyan);font-size:8px;text-decoration:none;white-space:nowrap}.audio-credit:hover{text-decoration:underline}.app-shell .workspace{--bench-h:min(40vh,380px)}.app-shell .workspace{--bench-h:min(40vh,380px);grid-template-rows:minmax(0,1fr) 12px var(--bench-h)}.workbench-pane>div{min-height:0}.workbench-pane canvas{min-height:0}.svg-test-point{outline:none}.svg-test-point:focus{outline:none}.svg-test-point .tp-pulse{fill:transparent;stroke:transparent;stroke-width:1.5;opacity:0;transform-box:fill-box;transform-origin:center}.svg-test-point .tp-core{fill:var(--panel);stroke:var(--ink-muted);stroke-width:2;transition:fill .18s,stroke .18s}.svg-test-point .tp-id{fill:var(--ink-muted);font:800 5px var(--font-mono);pointer-events:none}.svg-test-point:hover .tp-core,.svg-test-point.is-selected .tp-core{fill:var(--green);stroke:var(--green);filter:drop-shadow(0 0 5px var(--green))}.svg-test-point.is-selected .tp-id{fill:var(--panel)}.svg-test-point.is-selected .tp-pulse{fill:transparent;stroke:var(--green);opacity:.7;animation:tp-ripple 1.45s ease-out infinite}.svg-test-point:focus-visible .tp-core{stroke:var(--cyan);stroke-width:3}@keyframes tp-ripple{0%{transform:scale(.58);opacity:.82}to{transform:scale(1.55);opacity:0}}@media(max-width:1020px){.app-shell .workspace{grid-template-rows:minmax(450px,auto) 12px minmax(320px,38vh) auto}}@media(max-width:850px){.app-shell .workbench-pane{min-height:410px}}@media(max-width:540px){.app-shell .workbench-pane{min-height:390px}}.scope-zoom{position:absolute;top:9px;left:12px;z-index:2;display:flex;align-items:center;gap:4px;padding:4px;border:1px solid var(--line-mid);border-radius:7px;background:color-mix(in srgb,var(--panel) 92%,transparent);box-shadow:0 2px 8px #0002;font:8px var(--font-mono);color:var(--ink-soft)}.scope-zoom button{display:grid;place-items:center;width:24px;height:22px;padding:0;border:1px solid var(--line-soft);border-radius:4px;background:var(--panel-raised);color:var(--ink);cursor:pointer}.scope-zoom button:hover:not(:disabled){border-color:var(--green);color:var(--green)}.scope-zoom button:disabled{opacity:.4;cursor:default}.scope-zoom span{min-width:48px;text-align:center}.scope-zoom-vertical{top:49px}.formula-panel{padding:13px;border:1px solid var(--line-mid);border-radius:11px;background:color-mix(in srgb,var(--amber) 5%,var(--panel))}.formula-heading{display:flex;align-items:center;gap:8px;margin:0 0 10px;color:var(--ink-strong);font:750 9px var(--font-mono);letter-spacing:.07em}.formula-heading svg{flex:none;color:var(--amber)}.formula-list{display:grid;gap:8px}.formula-row{display:flex;align-items:center;justify-content:center;min-height:48px;overflow-x:auto;padding:9px 12px;border:1px solid var(--line-soft);border-radius:8px;background:var(--panel-raised)}.formula-render{min-width:max-content;color:var(--ink-strong)}.formula-render .katex-display{margin:0}.formula-render .katex{color:var(--ink-strong);font-size:1.08em}@media(max-width:540px){.formula-panel{padding:10px}.formula-row{justify-content:flex-start;padding:9px 10px}.formula-render .katex{font-size:1em}}.lesson-narrative{font-size:12px;line-height:1.9;color:var(--ink);letter-spacing:.01em;background:var(--bg);padding:10px 12px;border-radius:8px;border:1px solid var(--line-soft)}.inline-math{display:inline-block;padding:0 .06em;color:var(--ink-strong);white-space:nowrap;vertical-align:baseline}.inline-math .katex{color:inherit;font-size:1.02em}.class-selection{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin-top:11px}.class-selection button{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-width:0;min-height:43px;padding:6px 8px;border:1px solid var(--line-soft);border-radius:8px;background:var(--panel-raised);color:var(--ink-soft);text-align:left;cursor:pointer;transition:.18s ease}.class-selection button:hover{border-color:var(--line-mid);color:var(--ink-strong)}.class-selection button.active{border-color:color-mix(in srgb,var(--green) 55%,var(--line-soft));background:color-mix(in srgb,var(--green) 9%,var(--panel));color:var(--green)}.class-selection strong{font:700 9px var(--font-mono)}.class-selection small{margin-top:3px;color:var(--ink-muted);font:6px var(--font-mono);letter-spacing:.05em}.class-details{margin-top:13px;padding:13px;border:1px solid var(--line-soft);border-radius:10px;background:var(--panel-raised)}.class-profile-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.class-profile-head h3{margin:4px 0 0;color:var(--ink-strong);font-size:16px}.class-profile-head h3 span{margin-left:5px;color:var(--ink-muted);font:8px var(--font-mono);text-transform:uppercase}.class-angle{max-width:55%;padding:6px 8px;border:1px solid var(--line-soft);border-radius:7px;color:var(--cyan);font:8px var(--font-mono);text-align:right}.class-profile-summary{margin:9px 0 12px;color:var(--ink-soft);font-size:10px;line-height:1.6}.class-facts{display:grid;grid-template-columns:1fr 1fr;gap:7px}.class-facts>div{display:flex;flex-direction:column;gap:6px;padding:9px;border-radius:8px;background:var(--panel)}.class-facts small{color:var(--ink-muted);font:7px var(--font-mono);letter-spacing:.08em}.class-facts span{color:var(--ink-soft);font-size:9px;line-height:1.45}.testpoint-heading{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px;margin:14px 0 8px}.testpoint-heading>small{color:var(--ink-muted);font-size:8px}.testpoint-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.testpoint-card{display:flex;flex-direction:column;align-items:flex-start;min-width:0;padding:9px;border:1px solid var(--line-soft);border-radius:8px;background:var(--panel)}.testpoint-tag{display:grid;place-items:center;min-width:28px;height:18px;border-radius:5px;background:color-mix(in srgb,var(--cyan) 11%,var(--panel));color:var(--cyan);font:8px var(--font-mono)}.testpoint-card>strong{margin:7px 0 4px;color:var(--ink-strong);font-size:9px}.testpoint-card>b{color:var(--green);font-size:8px;line-height:1.45}.testpoint-card p{margin:6px 0 0;color:var(--ink-muted);font-size:8px;line-height:1.5}.testpoint-warning{display:flex;align-items:flex-start;gap:7px;margin-top:9px;padding:8px 9px;border:1px solid color-mix(in srgb,var(--amber) 25%,var(--line-soft));border-radius:7px;color:var(--ink-muted);font-size:8px;line-height:1.5}.testpoint-warning svg{flex:none;color:var(--amber)}@media(max-width:700px){.class-selection{grid-template-columns:repeat(3,minmax(0,1fr))}.testpoint-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.class-angle{max-width:50%;line-height:1.45}}@media(max-width:420px){.class-selection{grid-template-columns:repeat(2,minmax(0,1fr))}.class-facts{grid-template-columns:1fr}.class-tp-flow{grid-template-columns:repeat(2,minmax(0,1fr))}.class-tp-flow .class-tp-arrow{display:none}.testpoint-grid{grid-template-columns:1fr}.class-profile-head{flex-direction:column}.class-angle{max-width:none;text-align:left}}.class-tp-flow{display:grid;grid-template-columns:minmax(0,1fr) 14px minmax(0,1fr) 14px minmax(0,1fr) 14px minmax(0,1fr);align-items:center;gap:4px;margin:8px 0;padding:9px;border:1px solid var(--line-soft);border-radius:8px;background:var(--panel)}.class-tp-node{display:flex;flex-direction:column;align-items:center;gap:5px;min-width:0;text-align:center}.class-tp-node i{display:grid;place-items:center;width:27px;height:20px;border-radius:5px;background:color-mix(in srgb,var(--cyan) 12%,var(--panel));color:var(--cyan);font:8px var(--font-mono);font-style:normal}.class-tp-node span{overflow-wrap:anywhere;color:var(--ink-muted);font:7px var(--font-mono)}.class-tp-arrow{color:var(--line-mid);font-size:16px;text-align:center}@media(max-width:420px){.class-tp-flow{grid-template-columns:1fr 14px 1fr;row-gap:10px}.class-tp-flow>:nth-child(6){display:none}}.app-shell .workspace .overview-pane{grid-column:5;grid-row:1 / 4}.app-shell .workspace .workbench-pane{grid-column:3;grid-row:3}.scope-view{display:flex;flex:1;flex-direction:column;width:100%;height:100%;min-height:0}.scope-toolbar{display:flex;flex:none;align-items:center;justify-content:space-between;gap:10px;min-height:40px;padding:4px 9px;border-bottom:1px solid var(--line-soft);background:var(--panel)}.scope-axis-controls{display:flex;flex:none;align-items:center;gap:7px}.scope-axis-control{display:flex;align-items:center;gap:4px;padding:2px 4px;border:1px solid var(--line-soft);border-radius:6px;background:var(--panel-raised)}.scope-axis-control>span{min-width:36px;color:var(--ink-muted);font:7px var(--font-mono);letter-spacing:.06em}.scope-axis-control>output{min-width:30px;color:var(--ink-strong);font:8px var(--font-mono);text-align:center}.scope-axis-control button{display:grid;place-items:center;width:22px;height:21px;padding:0;border:1px solid var(--line-soft);border-radius:4px;background:var(--panel);color:var(--ink);cursor:pointer}.scope-axis-control button:hover:not(:disabled){border-color:var(--green);color:var(--green)}.scope-axis-control button:disabled{opacity:.42;cursor:default}.scope-channel-controls{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:3px;min-width:0}.scope-channel-controls button{display:flex;align-items:center;gap:5px;padding:4px 6px;border:1px solid transparent;border-radius:5px;background:transparent;color:var(--ink-muted);font:8px var(--font-mono);white-space:nowrap;cursor:pointer}.scope-channel-controls button[aria-pressed=true]{border-color:var(--channel-color);background:color-mix(in srgb,var(--channel-color) 7%,var(--panel));color:var(--ink-strong)}.scope-channel-controls button i{display:block;width:10px;height:3px;border-radius:2px;background:var(--channel-color)}.scope-clip-status{flex:none;padding:5px 7px;border:1px solid var(--line-soft);border-radius:5px;color:var(--ink-muted);font:7px var(--font-mono);letter-spacing:.04em;white-space:nowrap}.scope-clip-status.is-clipping{border-color:color-mix(in srgb,var(--red) 65%,var(--line-soft));background:color-mix(in srgb,var(--red) 10%,var(--panel));color:var(--red);font-weight:800;animation:clip-status-pulse 1s ease-in-out infinite alternate}@keyframes clip-status-pulse{to{box-shadow:0 0 8px color-mix(in srgb,var(--red) 22%,transparent)}}.scope-view canvas{flex:1;min-height:0}@media(max-width:1020px){.app-shell .workspace .overview-pane{grid-column:3;grid-row:4;min-height:450px}.app-shell .workspace .workbench-pane{grid-column:3;grid-row:3}.scope-toolbar{align-items:flex-start;flex-direction:column}.scope-channel-controls{justify-content:flex-start}}@media(max-width:540px){.scope-axis-controls{width:100%;flex-wrap:wrap}.scope-toolbar{gap:5px;padding:5px 6px}.scope-channel-controls button{padding:3px 4px;font-size:7px}}.app-shell .workspace{grid-template-columns:var(--list-w) 12px minmax(0,1fr) 12px var(--details-w);grid-template-rows:minmax(0,1fr)}.app-shell .workspace .lab-window{grid-column:3;grid-row:1;display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden;border:1px solid var(--line-soft);border-radius:12px;background:var(--panel);box-shadow:0 8px 26px #0000000a}.app-shell .workspace .overview-pane{grid-column:5;grid-row:1;min-height:0}.lab-window .simulator{flex:1 1 50%;min-height:0;border-bottom:1px solid var(--line-soft)}.lab-window .simulator-head{flex:none}.lab-window .simulator-scroll{flex:1;overflow:auto}.lab-window .amp-visual{padding:8px 16px}.lab-window .amp-diagram{max-height:240px}.lab-window .workbench-pane{flex:1 1 50%;height:auto!important;min-height:0;overflow:hidden;border:0;border-radius:0;box-shadow:none}.lab-window .workbench-pane .panel-bar{flex:none;min-height:42px}.lab-window .scope-view{flex:1;min-height:0}.lab-window .scope-view canvas{width:100%;height:100%}.lab-window:fullscreen{width:100vw;height:100vh;border:0;border-radius:0;background:var(--panel)}.lab-window:fullscreen .simulator{flex-basis:48%}.lab-window:fullscreen .workbench-pane{flex-basis:52%}.lab-window:fullscreen .amp-diagram{max-height:min(34vh,360px)}@media(max-width:1020px){.app-shell .workspace{grid-template-columns:205px 12px minmax(0,1fr);grid-template-rows:minmax(650px,1fr) 12px auto}.app-shell .workspace .sidebar-pane{grid-column:1;grid-row:1 / 4}.app-shell .workspace .lab-window{grid-column:3;grid-row:1}.app-shell .workspace .overview-pane{grid-column:3;grid-row:3;min-height:450px}}@media(max-width:850px){.app-shell .workspace{display:flex;flex-direction:column;gap:12px;height:auto}.app-shell .workspace .sidebar-pane{flex:none;height:230px}.app-shell .workspace .lab-window{flex:none;height:900px;min-height:900px}.lab-window .simulator,.lab-window .workbench-pane{flex-basis:50%}.app-shell .workspace .overview-pane{flex:none;min-height:480px}.lab-window .scope-toolbar{align-items:flex-start;flex-direction:column}.lab-window .scope-channel-controls{justify-content:flex-start}}@media(max-width:540px){.app-shell .workspace .lab-window{height:850px;min-height:850px}.lab-window .simulator-head{padding:8px 10px}.lab-window .simulator-head h2{font-size:14px}.lab-window .drive-compact input{width:55px}.lab-window .amp-visual{padding:8px 9px}.lab-window .amp-diagram{min-height:150px;max-height:190px}.lab-window .workbench-pane .panel-bar{overflow-x:auto}.lab-window .workbench-pane .panel-bar>div:first-child{min-width:560px}}.lab-window .simulator{flex-basis:53%}.lab-window .workbench-pane{flex-basis:47%}.lab-window .amp-diagram{max-height:290px}.lab-window .eyebrow{font-size:9px}.lab-window .simulator-head h2{font-size:clamp(17px,1.55vw,22px)}.lab-window .topology-chip{font-size:9px}.lab-window .drive-compact{gap:8px;padding:5px 9px}.lab-window .drive-compact label{font-size:9px}.lab-window .drive-compact input{width:92px}.lab-window .drive-compact output{font-size:10px}.lab-window .visual-hint{font-size:12px}.lab-window .status-pill,.lab-window .rail-readout{font-size:9px}.lab-window .amp-diagram .svg-kicker{font-size:10px}.lab-window .amp-diagram .stage-label{font-size:12px}.lab-window .amp-diagram .stage-sub{font-size:11px}.lab-window .amp-diagram .device-label{font-size:10.5px}.lab-window .wire-label,.lab-window .svg-test-point .tp-label{font-size:11px}.lab-window .svg-test-point .tp-value{font-size:9.5px}.lab-window .svg-test-point .tp-id{font-size:7.5px}.lab-window .svg-test-point .tp-core{r:14px}.lab-window .svg-test-point .tp-pulse{r:19px}.lab-window .workbench-pane .panel-bar{min-height:46px;font-size:10px}.lab-window .workbench-pane .panel-bar button{font-size:10px!important}.lab-window .scope-toolbar{min-height:46px;gap:12px}.lab-window .scope-axis-control{gap:5px;padding:3px 5px}.lab-window .scope-axis-control>span{min-width:42px;font-size:8px}.lab-window .scope-axis-control>output{min-width:34px;font-size:9px}.lab-window .scope-axis-control button{width:26px;height:25px}.lab-window .scope-channel-controls button{gap:6px;padding:5px 7px;font-size:9px}.lab-window .scope-channel-controls button i{width:12px;height:3px}.lab-window .scope-clip-status{padding:6px 8px;font-size:8px}.app-shell .sidebar-pane .panel-bar{font-size:10px}.app-shell .sidebar-pane .nav-link{font-size:12px}.app-shell .sidebar-pane .subnav-link{font-size:11px}.app-shell .sidebar-pane .sidebar-label{font-size:9px}.app-sidebar .sidebar-label{color:var(--ink-soft);font-size:9px}.app-sidebar .nav-link{color:var(--ink);font-size:12px}.app-sidebar .nav-link.active{color:var(--green)}.app-sidebar .subnav-link{color:var(--ink);font-size:12px}.app-sidebar .subnav-link.active{color:var(--green)}.app-sidebar .track-dot,.app-sidebar .phenomenon-index{color:var(--ink-soft)}.sidebar-brand{gap:6px}@media(max-width:850px){.lab-window .simulator,.lab-window .workbench-pane{flex-basis:50%}.lab-window .scope-toolbar{gap:7px}}@media(max-width:540px){.lab-window .simulator-head h2{font-size:15px}.lab-window .drive-compact input{width:55px}.lab-window .scope-axis-control button{width:24px;height:23px}.lab-window .scope-channel-controls button{font-size:8px}}.app-shell .topbar{grid-template-columns:minmax(190px,1fr) auto minmax(95px,.35fr) auto}.app-shell .topbar-library{grid-template-columns:minmax(0,1fr) auto}.app-shell .topbar>.menu-toggle{display:none}.sidebar-brand{gap:9px}.sidebar-brand .brand-copy{flex:1;min-width:0}.brand-wordmark{display:flex;align-items:center;gap:0;min-width:0;white-space:nowrap}.sidebar-brand .brand-wordmark span{color:var(--ink-strong);font-size:20px;letter-spacing:.015em}.sidebar-brand .brand-wordmark span:last-child{color:var(--green)}.sidebar-brand .brand-wordmark img{display:block;flex:none;width:46px;height:46px;margin:0 1px;object-fit:contain}.sidebar-brand .brand-copy small{font-size:8.5px;letter-spacing:.1em}.sidebar-menu-toggle{display:grid;place-items:center;flex:none;width:36px;height:36px;padding:0;border:1px solid var(--line-soft);border-radius:9px;background:var(--panel);color:var(--ink-soft);cursor:pointer}.sidebar-menu-toggle:hover{border-color:var(--green);color:var(--green)}.app-sidebar.is-collapsed .sidebar-brand{gap:0;justify-content:center;padding:10px 4px}.app-sidebar.is-collapsed .brand-copy{display:none}.app-sidebar.is-collapsed .sidebar-menu-toggle{width:36px;height:36px}.app-sidebar.is-collapsed .sidebar-footer{display:none}.listen-control{position:relative;overflow:visible}.source-picker{position:relative;min-width:0}.source-picker-trigger{display:flex;align-items:center;justify-content:space-between;gap:8px;width:112px;height:27px;padding:0 7px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--ink);text-align:left;font-size:10px;cursor:pointer}.source-picker-trigger:hover:not(:disabled),.source-picker-trigger[aria-expanded=true]{border-color:var(--line-mid);background:var(--panel-raised)}.source-picker-trigger>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.source-picker-trigger svg{flex:none;color:var(--ink-muted)}.source-picker-trigger:disabled{opacity:.45;cursor:not-allowed}.source-picker-menu{position:absolute;z-index:60;top:calc(100% + 8px);right:0;width:268px;max-height:min(70vh,420px);overflow:auto;padding:7px;border:1px solid var(--line-mid);border-radius:10px;background:var(--panel);box-shadow:0 14px 36px #0004;color:var(--ink)}.source-picker-group+.source-picker-group{margin-top:6px;padding-top:6px;border-top:1px solid var(--line-soft)}.source-picker-group>span{display:block;padding:5px 8px 6px;color:var(--green);font:700 9px var(--font-mono);letter-spacing:.08em;text-transform:uppercase}.source-picker-group>button{display:flex;align-items:center;width:100%;min-height:34px;padding:7px 9px;border:0;border-radius:6px;background:transparent;color:var(--ink);text-align:left;font-size:11px;cursor:pointer}.source-picker-group>button:hover,.source-picker-group>button[aria-selected=true]{background:color-mix(in srgb,var(--green) 12%,var(--panel-raised));color:var(--ink-strong)}.source-picker-group>button[aria-selected=true]:after{content:"✓";margin-left:auto;color:var(--green);font-weight:800}@media(max-width:850px){.app-shell .topbar,.app-shell .topbar-library{grid-template-columns:34px minmax(0,1fr) auto}.app-shell .topbar>.menu-toggle{display:grid}.sidebar-brand{padding:10px 12px}.sidebar-brand .brand-wordmark span{font-size:18px}.sidebar-brand .brand-copy small{font-size:8px;letter-spacing:.08em}}@media(max-width:540px){.source-picker-trigger{width:82px;padding:0 5px;font-size:9px}.source-picker-menu{width:min(268px,calc(100vw - 28px))}.sidebar-brand .brand-wordmark img{width:42px;height:42px}.sidebar-menu-toggle{width:28px;height:28px}}.app-shell .workspace{--details-w:350px}.overview-pane .panel-bar{min-height:48px;font-size:10px}.overview-pane h2{font-size:19px!important;line-height:1.28!important}.overview-pane .lesson-narrative{padding:14px 15px;font-size:13.5px;line-height:1.75}.overview-pane table td{font-size:11px;line-height:1.5}.plain-language-panel,.signal-guide{padding:14px;border:1px solid var(--line-soft);border-radius:10px;background:var(--panel-raised)}.plain-language-panel{border-left:3px solid var(--cyan)}.plain-language-panel h3,.signal-guide h3{margin:0;color:var(--ink-strong);font-size:14px;font-weight:750}.plain-language-panel p,.signal-guide>p{margin:7px 0 0;color:var(--ink);font-size:12.5px;line-height:1.65}.signal-guide-heading{display:flex;align-items:center;gap:8px}.signal-guide-heading svg{flex:none;color:var(--green)}.signal-guide>p{color:var(--ink-soft);font-size:11.5px}.signal-guide-list{display:grid;gap:7px;margin-top:11px}.overview-pane .signal-guide-list button.signal-guide-row:not(:disabled){display:grid;grid-template-columns:38px minmax(0,1fr) 8px;align-items:start;gap:9px;width:100%;padding:10px;border:1px solid var(--line-soft)!important;border-radius:8px;background:var(--panel)!important;color:var(--ink)!important;text-align:left;cursor:pointer}.overview-pane .signal-guide-list button.signal-guide-row:not(:disabled):hover,.overview-pane .signal-guide-list button.signal-guide-row[aria-pressed=true]{border-color:color-mix(in srgb,var(--green) 65%,var(--line-mid))!important;background:color-mix(in srgb,var(--green) 7%,var(--panel))!important}.overview-pane .signal-guide-list button.signal-guide-row:not(:disabled):last-child{background:var(--panel)!important;color:var(--ink)!important;border-color:var(--line-soft)!important}.overview-pane .signal-guide-list button.signal-guide-row[aria-pressed=true]:last-child{background:color-mix(in srgb,var(--green) 7%,var(--panel))!important;border-color:color-mix(in srgb,var(--green) 65%,var(--line-mid))!important}.signal-guide-tp{display:grid;place-items:center;min-height:25px;border:1px solid color-mix(in srgb,var(--green) 50%,var(--line-soft));border-radius:6px;color:var(--green);font:700 9px var(--font-mono)}.signal-guide-copy{display:grid;gap:4px}.signal-guide-copy strong{color:var(--ink-strong);font-size:11.5px;line-height:1.4}.signal-guide-copy small{color:var(--ink-soft);font-size:11px;line-height:1.55}.signal-guide-row>i{width:7px;height:7px;margin-top:8px;border-radius:50%;background:var(--line-mid)}.signal-guide-row[aria-pressed=true]>i{background:var(--green);box-shadow:0 0 7px color-mix(in srgb,var(--green) 55%,transparent)}@media(min-width:1021px)and (max-width:1250px){.app-shell .workspace{--details-w:310px;--list-w:185px}}@media(max-width:1020px){.overview-pane .panel-bar{min-height:48px}.overview-pane .signal-guide-list button.signal-guide-row:not(:disabled){grid-template-columns:38px minmax(0,1fr) 8px}}@media(max-width:540px){.plain-language-panel,.signal-guide{padding:12px}.overview-pane .signal-guide-list button.signal-guide-row:not(:disabled){gap:7px;padding:9px 8px}}
