@import"https://fonts.googleapis.com/css2?family=Outfit:wght@500;600;700&family=Spline+Sans:wght@400;600;700&family=Unbounded:wght@400;600;700&display=swap";@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500&family=Fraunces:opsz,wght@9..144,500&display=swap";@font-face{font-display:block;font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2) format("woff2"),url(/assets/KaTeX_AMS-Regular-DMm9YOAa.woff) format("woff"),url(/assets/KaTeX_AMS-Regular-DRggAlZN.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff) format("woff"),url(/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff) format("woff"),url(/assets/KaTeX_Fraktur-Regular-CB_wures.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Main-Bold-Cx986IdX.woff2) format("woff2"),url(/assets/KaTeX_Main-Bold-Jm3AIy58.woff) format("woff"),url(/assets/KaTeX_Main-Bold-waoOVXN0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2) format("woff2"),url(/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff) format("woff"),url(/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2) format("woff2"),url(/assets/KaTeX_Main-Italic-BMLOBm91.woff) format("woff"),url(/assets/KaTeX_Main-Italic-3WenGoN9.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Main-Regular-B22Nviop.woff2) format("woff2"),url(/assets/KaTeX_Main-Regular-Dr94JaBh.woff) format("woff"),url(/assets/KaTeX_Main-Regular-ypZvNtVU.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2) format("woff2"),url(/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff) format("woff"),url(/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Math-Italic-t53AETM-.woff2) format("woff2"),url(/assets/KaTeX_Math-Italic-DA0__PXp.woff) format("woff"),url(/assets/KaTeX_Math-Italic-flOr_0UB.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:700;src:url(/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff) format("woff"),url(/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:italic;font-weight:400;src:url(/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff) format("woff"),url(/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:400;src:url(/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff) format("woff"),url(/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Script-Regular-D3wIWfF6.woff2) format("woff2"),url(/assets/KaTeX_Script-Regular-D5yQViql.woff) format("woff"),url(/assets/KaTeX_Script-Regular-C5JkGWo-.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2) format("woff2"),url(/assets/KaTeX_Size1-Regular-C195tn64.woff) format("woff"),url(/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2) format("woff2"),url(/assets/KaTeX_Size2-Regular-oD1tc_U0.woff) format("woff"),url(/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(data:font/woff2;base64,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) format("woff2"),url(/assets/KaTeX_Size3-Regular-CTq5MqoE.woff) format("woff"),url(/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2) format("woff2"),url(/assets/KaTeX_Size4-Regular-BF-4gkZK.woff) format("woff"),url(/assets/KaTeX_Size4-Regular-DWFBv043.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2) format("woff2"),url(/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff) format("woff"),url(/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf) format("truetype")}.katex{font: 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;text-indent:0;text-rendering:auto}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.16.28"}.katex .katex-mathml{clip:rect(1px,1px,1px,1px);border:0;height:1px;overflow:hidden;padding:0;position:absolute;width:1px}.katex .katex-html>.newline{display:block}.katex .base{position:relative;white-space:nowrap;width:-webkit-min-content;width:-moz-min-content;width:min-content}.katex .base,.katex .strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;display:inline-table;table-layout:fixed}.katex .vlist-r{display:table-row}.katex .vlist{display:table-cell;position:relative;vertical-align:bottom}.katex .vlist>span{display:block;height:0;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{overflow:hidden;width:0}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{display:table-cell;font-size:1px;min-width:2px;vertical-align:bottom;width:2px}.katex .vbox{align-items:baseline;display:inline-flex;flex-direction:column}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{display:inline-flex;flex-direction:row}.katex .thinbox{max-width:0;width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .clap,.katex .llap,.katex .rlap{position:relative;width:0}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.katex .sqrt>.root{margin-left:.2777777778em;margin-right:-.5555555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.1666666667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.6666666667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.4566666667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.1466666667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.7142857143em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.8571428571em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.1428571429em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.2857142857em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.4285714286em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.7142857143em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.0571428571em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.4685714286em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.9628571429em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.5542857143em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.7777777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.8888888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.1111111111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.3044444444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.7644444444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.5833333333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.7283333333em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.0733333333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.4861111111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.4402777778em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.7277777778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.2893518519em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.4050925926em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.462962963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.5208333333em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.5787037037em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.2002314815em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.4398148148em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.2410800386em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.2892960463em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.337512054em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.3857280617em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.4339440694em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.4821600771em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.5785920926em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.6943105111em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.8331726133em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.1996142719em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.2009646302em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.2411575563em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.2813504823em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.3215434084em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.3617363344em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.4019292605em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.4823151125em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.578778135em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.6945337621em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.8336012862em}.katex .fontsize-ensurer.reset-size11.size11,.katex .sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{display:inline-block;width:.12em}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{display:inline-block;min-width:1px}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;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;display:block;height:inherit;position:absolute;width:100%}.katex svg path{stroke:none}.katex img{border-style:none;max-height:none;max-width:none;min-height:0;min-width:0}.katex .stretchy{display:block;overflow:hidden;position:relative;width:100%}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{overflow:hidden;position:relative;width:100%}.katex .halfarrow-left{left:0;overflow:hidden;position:absolute;width:50.2%}.katex .halfarrow-right{overflow:hidden;position:absolute;right:0;width:50.2%}.katex .brace-left{left:0;overflow:hidden;position:absolute;width:25.1%}.katex .brace-center{left:25%;overflow:hidden;position:absolute;width:50%}.katex .brace-right{overflow:hidden;position:absolute;right:0;width:25.1%}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{border:.04em solid;box-sizing:border-box}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{border-right:.049em solid;border-top:.049em solid;box-sizing:border-box;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{display:inline-block;position:absolute;right:calc(50% + .3em);text-align:left}.katex .cd-label-right{display:inline-block;left:calc(50% + .3em);position:absolute;text-align:right}.katex-display{display:block;margin:1em 0;text-align:center}.katex-display>.katex{display:block;text-align:center;white-space:nowrap}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{padding-left:2em;text-align:left}body{counter-reset:katexEqnNo mmlEqnNo}.app-shell{min-height:100vh;display:flex;flex-direction:column;background:#0b0f1e}.app-main{flex:1}.app-footer{display:flex;align-items:center;justify-content:center;gap:10px;padding:8px 12px 10px;font-family:Georgia,Times New Roman,serif;font-style:italic;letter-spacing:.02em;font-size:12px;color:#94a3b8d9;background:#0d1226;border-top:.5px solid rgba(148,163,184,.12)}.footer-mail{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:999px;color:inherit;background:#94a3b826;border:1px solid rgba(148,163,184,.3);text-decoration:none;transition:transform .2s ease,background .2s ease}.footer-mail:hover{transform:translateY(-1px);background:#94a3b840}.footer-mail svg{width:16px;height:16px;fill:currentColor}.landing[data-v-4b3933f7]{min-height:100vh;color:#f8f5f0;background:linear-gradient(135deg,#050712 5%,#11172a 45%,#0c0f1b);padding:80px 0 64px}.landing .container[data-v-4b3933f7]{max-width:1120px;padding-left:20px;padding-right:20px;margin-left:auto;margin-right:auto}.landing-content[data-v-4b3933f7]{display:grid;gap:48px}.hero[data-v-4b3933f7]{max-width:1000px;text-align:center;margin:0 auto;display:flex;flex-direction:column;align-items:center;width:100%}.badge[data-v-4b3933f7]{display:inline-flex;align-items:center;padding:8px 16px;border-radius:999px;background:#ffffff14;border:1px solid rgba(255,255,255,.15);font-family:Spline Sans,Trebuchet MS,sans-serif;font-size:12px;letter-spacing:.08em;text-transform:uppercase}.hero-title[data-v-4b3933f7]{font-family:Outfit,Trebuchet MS,sans-serif;font-size:clamp(2.1rem,3.6vw,3.2rem);letter-spacing:-.02em;text-shadow:0 8px 30px rgba(0,0,0,.5);white-space:nowrap;text-align:center;display:block;width:100%;margin:18px auto 10px}.hero-subtitle[data-v-4b3933f7]{font-family:Spline Sans,Trebuchet MS,sans-serif;font-size:clamp(1rem,2vw,1.2rem);line-height:1.7;margin-top:10px;background:linear-gradient(120deg,#ffb86c,#ff6b6b);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;display:inline-block}.cta-row[data-v-4b3933f7]{display:flex;flex-wrap:wrap;gap:16px;margin-top:28px;justify-content:center}.btn[data-v-4b3933f7]{text-decoration:none;padding:0;border-radius:0;font-family:Spline Sans,Trebuchet MS,sans-serif;font-weight:600;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.btn-hero[data-v-4b3933f7]{background:linear-gradient(120deg,#ffb86c,#ff6b6b);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:none}.btn-hero[data-v-4b3933f7]:hover{transform:translateY(-1px);text-decoration:underline}.btn-ghost[data-v-4b3933f7]{background:#ffffff0f;border:1px solid rgba(255,255,255,.2);color:#f8f5f0}.btn-ghost[data-v-4b3933f7]:hover{transform:translateY(-2px);background:#ffffff1f}.feature-grid[data-v-4b3933f7]{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.highlights[data-v-4b3933f7]{display:grid;gap:14px;padding:18px 20px;border-radius:16px;background:#0f172a59;border:1px solid rgba(148,163,184,.2);box-shadow:0 12px 30px #00000040}.highlights-title[data-v-4b3933f7]{font-family:Outfit,Trebuchet MS,sans-serif;font-size:1.05rem;letter-spacing:.02em;text-align:center}.highlights-columns[data-v-4b3933f7]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;position:relative}.highlights-columns[data-v-4b3933f7]:after{content:"";position:absolute;top:6px;bottom:6px;left:50%;width:1px;background:#94a3b82e;transform:translate(-.5px);pointer-events:none}.highlights-col[data-v-4b3933f7],.highlights-list[data-v-4b3933f7]{display:grid;gap:12px}.highlight-row[data-v-4b3933f7]{display:grid;grid-template-columns:32px 1fr;gap:12px;align-items:start;padding:8px 6px 12px;border-bottom:1px solid rgba(255,255,255,.08)}.highlights-col .highlight-row[data-v-4b3933f7]:last-child{border-bottom:0;padding-bottom:6px}.highlight-row[data-v-4b3933f7]:last-child{border-bottom:0}.highlight-icon[data-v-4b3933f7]{font-size:18px;line-height:1}.highlight-body[data-v-4b3933f7]{display:grid;gap:4px}.highlight-title[data-v-4b3933f7]{font-family:Spline Sans,Trebuchet MS,sans-serif;font-weight:600;font-size:.95rem}.highlight-text[data-v-4b3933f7]{font-family:Spline Sans,Trebuchet MS,sans-serif;color:#e2e8f0bf;font-size:.9rem;line-height:1.5}.highlight-row.coming-soon[data-v-4b3933f7]{border-bottom:0;opacity:.8}.feature-card[data-v-4b3933f7]{padding:14px 16px;border-radius:18px;background:linear-gradient(160deg,#162638d9,#0c1420cc);border:1px solid rgba(255,255,255,.08);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);min-height:120px;animation:rise-4b3933f7 .8s ease both;text-align:center;display:flex;flex-direction:column;justify-content:center}.feature-card[data-v-4b3933f7]:nth-child(2){animation-delay:.1s}.feature-card[data-v-4b3933f7]:nth-child(3){animation-delay:.2s}.feature-card[data-v-4b3933f7]:nth-child(4){animation-delay:.3s}.feature-card[data-v-4b3933f7]:nth-child(5){animation-delay:.4s}.feature-card[data-v-4b3933f7]:nth-child(6){animation-delay:.5s}@keyframes rise-4b3933f7{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.feature-icon[data-v-4b3933f7]{font-size:20px;opacity:.7}.feature-title[data-v-4b3933f7]{font-family:Spline Sans,Trebuchet MS,sans-serif;font-size:18px;font-weight:600;margin-top:12px}.feature-link[data-v-4b3933f7]{color:inherit;text-decoration:none}.feature-link[data-v-4b3933f7]:hover{text-decoration:underline}.feature-text[data-v-4b3933f7]{margin-top:6px;font-size:15px;color:#ffffffb3;line-height:1.6}.stats[data-v-4b3933f7]{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));padding:18px 0 0;border-top:1px solid rgba(255,255,255,.08)}.stat-value[data-v-4b3933f7]{font-family:Unbounded,Trebuchet MS,sans-serif;font-size:24px}.stat-label[data-v-4b3933f7]{font-size:13px;color:#fff9}@media (max-width: 768px){.landing[data-v-4b3933f7]{padding:64px 0 48px}.hero[data-v-4b3933f7]{max-width:100%}.highlights-columns[data-v-4b3933f7]{grid-template-columns:1fr}.highlights-columns[data-v-4b3933f7]:after{display:none}}.app-font[data-v-5897f731]{font-family:Space Grotesk,IBM Plex Sans,"Source Sans 3",Segoe UI,Noto Sans,sans-serif;--ks-label-col: 10%;--ks-label-gap: 6px;--bg: #FFFFFF;--panel: #FFFFFF;--panel-2: #F8FAFC;--border: rgba(148, 163, 184, .22);--text: #0F172A;--muted: rgba(100, 116, 139, .9);--accent: #22D3EE;--accent-strong: rgba(34, 211, 238, .65);--accent-soft: rgba(34, 211, 238, .14);--warning: #FBBF24;--pink: #F59E0B;--pink-soft: rgba(251, 191, 36, .16);--green: #22C55E;--cell: #EEF2F7;--cell-2: #F8FAFC;--chip: #E7F2FF;--stage-text: rgba(100, 116, 139, .95);--key-hit-bg: rgba(251, 191, 36, .35);--key-hit-border: rgba(251, 191, 36, .75);--key-hit-text: rgba(15, 23, 42, .95);--pad-hit-bg: transparent;--pad-hit-border: transparent;--pad-hit-text: #38BDF8;--sbox-row: rgba(59, 130, 246, .35);--sbox-col: rgba(34, 197, 94, .35);background-color:var(--bg);background:radial-gradient(1200px 600px at 10% -10%,rgba(59,130,246,.1),transparent 60%),radial-gradient(900px 500px at 90% -20%,rgba(16,185,129,.1),transparent 60%);color:var(--text);min-height:100vh;min-height:100dvh}.app-font.theme-dark[data-v-5897f731]{--bg: #282A36;--panel: #2B2E3A;--panel-2: #1E2030;--border: #44475A;--text: #F8F8F2;--muted: #6FB88A;--accent: #8BE9FD;--accent-strong: rgba(139, 233, 253, .7);--accent-soft: rgba(139, 233, 253, .18);--warning: #F1FA8C;--pink: #F1FA8C;--pink-soft: rgba(241, 250, 140, .14);--green: #50FA7B;--cell: #282A36;--cell-2: #1F2230;--chip: #44475A;--stage-text: #8BE9FD;--key-hit-bg: rgba(241, 250, 140, .2);--key-hit-border: rgba(241, 250, 140, .7);--key-hit-text: #F1FA8C;--pad-hit-bg: transparent;--pad-hit-border: transparent;--pad-hit-text: #7DD3FC;--sbox-row: rgba(189, 147, 249, .7);--sbox-col: rgba(80, 250, 123, .7);background:radial-gradient(1200px 600px at 10% -10%,rgba(189,147,249,.18),transparent 60%),radial-gradient(900px 500px at 90% -20%,rgba(139,233,253,.12),transparent 60%),var(--bg);color:var(--text)}body.aes-page{background:#fff;margin:0;min-height:100vh}body.aes-page.aes-page-dark{background:#282a36}#app{min-height:100vh;background:inherit}.mono[data-v-5897f731]{font-family:IBM Plex Mono,Courier New,Courier,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace}.app-font .card[data-v-5897f731]{border-radius:6px;border:1px solid var(--border);background:var(--panel);box-shadow:0 6px 18px #0206171f}.app-font .card-header[data-v-5897f731]{background:var(--panel-2);border-bottom:1px solid var(--border);color:var(--text)}.app-font .btn[data-v-5897f731],.app-font .form-control[data-v-5897f731],.app-font .form-select[data-v-5897f731],.app-font .badge[data-v-5897f731],.app-font .alert[data-v-5897f731]{border-radius:4px;font-family:Space Grotesk,IBM Plex Sans,"Source Sans 3",Segoe UI,Noto Sans,sans-serif}.app-font .alert[data-v-5897f731]{background:var(--panel-2);border:1px solid var(--border);color:var(--text)}.hint-badge[data-v-5897f731]{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;border:1px solid var(--border);background:var(--panel-2);color:var(--text);font-weight:700;font-size:14px;letter-spacing:.01em}.pad-hint[data-v-5897f731]{margin-left:6px}.app-font .btn[data-v-5897f731]{font-weight:600;letter-spacing:.01em}.app-font .btn-outline-secondary[data-v-5897f731]{color:var(--text);border-color:var(--border);background:var(--panel-2)}.app-font .btn-outline-secondary[data-v-5897f731]:hover,.app-font .btn-outline-secondary[data-v-5897f731]:focus{color:var(--text);border-color:var(--accent-strong);background:var(--panel)}.app-font .btn-check:checked+.btn-outline-secondary[data-v-5897f731],.app-font .btn-outline-secondary.active[data-v-5897f731],.app-font .btn-outline-secondary[data-v-5897f731]:active{color:var(--text);border-color:var(--accent);background:var(--panel)}.app-font .form-control[data-v-5897f731],.app-font .form-select[data-v-5897f731]{border-color:var(--border);background:var(--panel-2);color:var(--text);box-shadow:none}.app-font .form-control[data-v-5897f731]:focus,.app-font .form-select[data-v-5897f731]:focus{border-color:var(--accent-strong);box-shadow:0 0 0 2px var(--accent-soft)}.app-font[data-v-5897f731] .text-muted{color:var(--muted)!important}.app-font[data-v-5897f731] .form-control::placeholder{color:var(--muted)}.title-row[data-v-5897f731]{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;margin:30px 0!important}.title-stack[data-v-5897f731]{display:flex;flex-direction:column;gap:6px}.title-badge[data-v-5897f731]{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;border:1px solid var(--border);background:#38bdf82e;color:var(--text);font-size:12px;font-weight:700;letter-spacing:.04em;opacity:1;margin-left:8px}.title-side[data-v-5897f731]{display:flex;align-items:center;gap:8px}.title-side-right[data-v-5897f731]{justify-content:flex-end}.theme-toggle[data-v-5897f731]{display:none;align-items:center;gap:8px;font-size:12px;font-weight:700;color:var(--text)}.theme-toggle input[data-v-5897f731]{position:absolute;opacity:0;pointer-events:none}.theme-track[data-v-5897f731]{width:38px;height:20px;border-radius:999px;background:var(--panel-2);border:1px solid var(--border);position:relative;transition:border-color .2s ease,background .2s ease}.theme-track[data-v-5897f731]:after{content:"";position:absolute;top:1px;left:1px;width:16px;height:16px;border-radius:50%;background:var(--text);transition:transform .2s ease,background .2s ease}.theme-toggle input:checked+.theme-track[data-v-5897f731]{border-color:var(--accent-strong);background:var(--panel)}.theme-toggle input:checked+.theme-track[data-v-5897f731]:after{transform:translate(18px);background:var(--accent)}.theme-label[data-v-5897f731]{min-width:36px;text-align:right}.page-title[data-v-5897f731]{font-size:32px;letter-spacing:.02em;margin:0 auto;text-align:center;font-weight:700;font-family:Space Grotesk,IBM Plex Sans,"Source Sans 3",Segoe UI,Noto Sans,sans-serif}.home-link[data-v-5897f731]{font-weight:600;text-decoration:none;color:var(--muted)}.home-link[data-v-5897f731]:hover{color:var(--text)}.io-head[data-v-5897f731]{min-height:32px}.input-hint-wrap[data-v-5897f731]{margin-left:auto;display:inline-flex;align-items:center;gap:6px}.io-toggle .btn[data-v-5897f731]{padding:2px 8px;font-size:12px;line-height:1.2}.io-toggle-btn[data-v-5897f731]{padding:2px 8px;font-size:12px;line-height:1.2;border-color:var(--border);background:var(--panel-2);color:var(--text)}.help-wrap[data-v-5897f731],.key-wrap[data-v-5897f731]{position:relative}.key-help[data-v-5897f731]{position:absolute;right:0;top:0}.help-btn[data-v-5897f731]{width:22px;height:22px;border-radius:50%;border:1px solid var(--border);background:var(--panel-2);color:var(--text);font-weight:700;font-size:12px;line-height:1}.help-btn[data-v-5897f731]:hover{color:var(--text);border-color:var(--accent-strong)}.help-tooltip[data-v-5897f731]{position:absolute;right:0;top:28px;width:240px;padding:8px 10px;border:1px solid var(--border);background:var(--panel);box-shadow:0 10px 24px #02061759;font-size:12px;color:var(--text);z-index:10;opacity:0;pointer-events:none;transform:translateY(-4px);transition:opacity .12s ease,transform .12s ease}.help-wrap:hover .help-tooltip[data-v-5897f731],.key-help:hover .help-tooltip[data-v-5897f731]{opacity:1;pointer-events:auto;transform:translateY(0)}.io-box[data-v-5897f731]{min-height:62px;resize:none}.padded-hex[data-v-5897f731]{overflow-y:auto;max-height:62px;color:var(--muted)}.padded-hex.output-precomputed[data-v-5897f731]{color:#3b82f6d9}.padded-hex.output-done[data-v-5897f731]{color:var(--text)}.key-box[data-v-5897f731]{height:62px;max-height:62px;padding:8px 10px;line-height:1.2;resize:none}.pad-row[data-v-5897f731]{display:flex;gap:10px;line-height:1.4}.pad-group[data-v-5897f731]{display:inline-flex}.pad-byte[data-v-5897f731]{display:inline-block}.padded-hex .pad-byte.is-pad[data-v-5897f731]{background:var(--pad-hit-bg);border:0;color:var(--pad-hit-text);font-weight:700}.pad-byte.key-hit[data-v-5897f731]{background:var(--key-hit-bg);border-color:var(--key-hit-border);color:var(--key-hit-text);font-weight:700}.pad-input-row[data-v-5897f731]{position:relative}.pad-input-row .form-control[data-v-5897f731]{width:100%}.pad-label-row[data-v-5897f731]{position:relative;display:flex;align-items:center;gap:8px;justify-content:flex-start}.pad-label-row .form-label[data-v-5897f731]{margin-bottom:0}.pad-label-row .help-wrap[data-v-5897f731]{flex:0 0 auto}.pad-hint-wrap[data-v-5897f731]{margin-left:auto;display:inline-flex;align-items:center;gap:6px}.pad-stages-label[data-v-5897f731]{position:absolute;left:calc(100% + var(--bs-gutter-x));top:0;width:320px;text-align:left}.pad-side[data-v-5897f731]{position:absolute;left:calc(100% + var(--bs-gutter-x));top:2px;display:flex;flex-direction:column;gap:6px;width:320px;height:auto}.pad-actions[data-v-5897f731]{display:flex;flex-wrap:nowrap;gap:6px;align-items:center;margin-top:0}.mode-toggle[data-v-5897f731]{margin-left:6px}.btn-group-xs .btn[data-v-5897f731]{padding:1px 6px;font-size:11px;line-height:1.1}.enc-step-group .enc-step-btn[data-v-5897f731]{width:32px;height:28px;padding:0;display:inline-flex;align-items:center;justify-content:center}.enc-step-icon[data-v-5897f731]{width:16px;height:16px;stroke:var(--text)}.enc-step-svg[data-v-5897f731]{width:16px;height:16px;fill:currentColor;display:block}.enc-step-btn.step-back[data-v-5897f731]{color:#fca5a5}.enc-step-btn.step-into[data-v-5897f731]{color:#93c5fd}.enc-step-btn.step-over[data-v-5897f731]{color:#fcd34d}@media (max-width: 991.98px){.pad-side[data-v-5897f731]{position:static;margin-top:8px}}.ctrl-btn[data-v-5897f731]{border:1px solid rgba(15,23,42,.6);background:linear-gradient(135deg,#1e293bf2,#0f172af2);box-shadow:0 6px 14px #02061759,inset 0 0 0 1px #94a3b859;padding:2px 10px;color:var(--text);border-radius:6px;min-width:40px;height:24px;display:inline-flex;align-items:center;justify-content:center}.ctrl-btn[data-v-5897f731]:hover{color:var(--text);border-color:#94a3b8d9;transform:translateY(-1px);box-shadow:0 10px 18px #02061773,inset 0 0 0 1px #e2e8f08c}.ctrl-btn[data-v-5897f731]:active{transform:translateY(0);box-shadow:0 6px 10px #02061766,inset 0 0 0 1px #94a3b866}.ctrl-btn[data-v-5897f731]:disabled{color:#94a3b899;cursor:not-allowed;background:var(--panel-2)}.ctrl-icon[data-v-5897f731]{width:14px;height:14px;stroke:#f8fafc}.ctrl-btn:nth-child(1) .ctrl-icon[data-v-5897f731]{stroke:#fca5a5}.ctrl-btn:nth-child(2) .ctrl-icon[data-v-5897f731]{stroke:#93c5fd}.stage-header[data-v-5897f731]{display:flex;flex-wrap:wrap;gap:10px}.stage-pill[data-v-5897f731]{border:1px solid rgba(148,163,184,.35);background:#fffffff5;border-radius:6px;padding:10px 12px;min-width:160px;box-shadow:0 4px 18px #0206170f}.stage-pill.done[data-v-5897f731]{border-color:#50fa7b99}.stage-k[data-v-5897f731]{font-weight:800;font-size:12px;color:var(--muted)}.stage-v[data-v-5897f731]{font-weight:800;font-size:16px;color:var(--text)}.codebox[data-v-5897f731]{max-height:360px;overflow:auto;background:var(--panel-2);border-radius:6px;border:1px solid var(--border);padding:10px;font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace}.enc-code-box[data-v-5897f731]{max-height:220px}.enc-narrow[data-v-5897f731]{width:100%}.code-line[data-v-5897f731]{display:grid;grid-template-columns:40px 1fr;gap:10px;padding:6px 8px;border-radius:4px;margin-bottom:4px;color:var(--text)}.code-line.no-ln[data-v-5897f731]{grid-template-columns:40px 1fr;padding-left:0}.code-line.no-ln .ln[data-v-5897f731]{visibility:hidden}.ks-code .code-line[data-v-5897f731]{padding-left:0}.ln[data-v-5897f731]{color:var(--muted);text-align:right;-webkit-user-select:none;user-select:none}.txt[data-v-5897f731]{white-space:pre}.code-line.active[data-v-5897f731]{background:var(--accent-soft);border:1px solid var(--accent-strong);box-shadow:0 0 0 2px var(--accent-soft)}.mem-title[data-v-5897f731]{font-weight:800;color:var(--text)}.bytes-16[data-v-5897f731]{display:grid;grid-template-columns:repeat(16,18px);gap:0;justify-content:start;white-space:nowrap}.mem-row-top[data-v-5897f731]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.mem-row-top .mem-section[data-v-5897f731]{margin-top:0}.mem-row-top+.mem-section[data-v-5897f731]{margin-top:12px}.aligned .byte[data-v-5897f731]{border-radius:0;border-left:0}.aligned .byte[data-v-5897f731]:nth-child(4n+1){border-left:1px solid var(--border)}.aligned .byte[data-v-5897f731]:first-child{border-left:1px solid var(--border)}.aligned .byte[data-v-5897f731]:nth-child(4n){border-right:1px solid var(--border);margin-right:6px}.aligned .byte[data-v-5897f731]:last-child{border-right:1px solid var(--border);margin-right:0}.aligned .byte[data-v-5897f731]:not(:nth-child(4n)){border-right:0}.byte[data-v-5897f731]{font-family:Courier New,Courier,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:10px;text-align:center;padding:0;line-height:1.4;border-radius:0;background:var(--cell);border:1px solid var(--border);color:var(--text);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.byte.hit[data-v-5897f731]{background:var(--cell);border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft);transform:translateY(-1px)}.btn-byte[data-v-5897f731]{border:1px solid var(--border);background:var(--cell)}.btn-byte[data-v-5897f731]:hover,.btn-byte[data-v-5897f731]:active,.btn-byte[data-v-5897f731]:focus{background:var(--cell)}.btn-byte[data-v-5897f731]:focus{outline:none;box-shadow:0 0 0 3px var(--accent-soft)}.byte.picked[data-v-5897f731]{background:var(--cell);border-color:var(--warning);box-shadow:0 0 0 2px #f1fa8c33}.rk-list[data-v-5897f731]{display:grid;gap:10px;max-height:420px;overflow-y:auto;padding:10px;border-radius:6px;border:1px solid var(--border);background:var(--panel-2)}.rk-list-2col[data-v-5897f731]{grid-template-columns:repeat(2,minmax(0,1fr))}.rk-block[data-v-5897f731]{border:1px solid var(--border);border-radius:6px;padding:10px;background:var(--panel);box-shadow:0 6px 18px #0206172e}.rk-block.active[data-v-5897f731]{border-color:var(--accent-strong);box-shadow:0 0 0 3px var(--accent-soft)}.rk-head[data-v-5897f731]{font-weight:800;color:var(--text);margin-bottom:8px;display:flex;align-items:baseline;gap:8px}.rk-sub[data-v-5897f731]{font-size:12px;font-weight:600;color:var(--muted)}.stage-track[data-v-5897f731]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:12px}.stage-track-compact[data-v-5897f731]{margin-bottom:0}.stage-track-compact[data-v-5897f731]{display:flex;flex-direction:row;align-items:center;gap:8px}.stage-track-compact .stage-node[data-v-5897f731]{flex:1 1 0}.stage-done-badge[data-v-5897f731]{margin-left:8px;padding:2px 8px;border-radius:999px;border:1px solid transparent;background:transparent;color:var(--muted);font-size:11px;font-weight:800;white-space:nowrap}.stage-done-badge.is-done[data-v-5897f731]{border-color:#22c55e99;background:#22c55e1f;color:#22c55e}.stage-done-badge.is-ongoing[data-v-5897f731]{border-color:#fbbf24b3;background:#fbbf2424;color:#f59e0b}.stage-done-badge.is-idle[data-v-5897f731]{border-color:#94a3b859;background:#94a3b814;color:#94a3b8e6}.stage-node[data-v-5897f731]{display:grid;grid-template-columns:18px 1fr;align-items:center;gap:6px;padding:6px 8px;border:1px solid var(--border);background:var(--panel-2);cursor:pointer}.stage-dot[data-v-5897f731]{width:10px;height:10px;border-radius:50%;border:1px solid var(--border);background:var(--panel)}.stage-label[data-v-5897f731]{font-size:12px;font-weight:700;color:var(--stage-text);white-space:nowrap}.stage-node.active[data-v-5897f731]{border-color:var(--accent-strong);box-shadow:0 0 0 2px var(--accent-soft)}.stage-node.active .stage-dot[data-v-5897f731]{border-color:var(--accent);background:var(--accent-soft)}.stage-node.active .stage-label[data-v-5897f731]{color:var(--stage-text)}.ks-code[data-v-5897f731]{max-height:220px}.ks-katex[data-v-5897f731]{font-size:13px;display:flex;align-items:center;justify-content:space-between;gap:8px}.ks-katex.disabled[data-v-5897f731]{color:var(--muted);opacity:.5;background:#6b7280;color:#f9fafb;border-radius:4px;padding:2px 4px}.ks-katex.disabled .katex[data-v-5897f731]{color:#f9fafb}.ks-katex .katex[data-v-5897f731]{font-size:1em}.ks-line6-viz[data-v-5897f731]{margin-top:10px;padding-top:8px;border-top:1px dashed var(--border);position:relative}.ks-line6-title[data-v-5897f731]{font-size:11px;font-weight:800;color:var(--muted);margin-bottom:6px}.ark-panel .card-body[data-v-5897f731]{padding:10px}.ark-header[data-v-5897f731]{display:flex;align-items:center;justify-content:space-between;gap:10px}.ark-header-eq[data-v-5897f731]{font-weight:600;font-size:12px;color:#fff;white-space:nowrap}.ark-body[data-v-5897f731]{display:grid;gap:8px}.ark-row[data-v-5897f731]{display:grid;grid-template-columns:90px 1fr;align-items:center;gap:8px}.ark-mini[data-v-5897f731]{display:grid;gap:4px}.ark-mini-label[data-v-5897f731]{font-size:10px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.ark-mini-bytes[data-v-5897f731]{display:grid;grid-template-columns:repeat(4,max-content);gap:4px;white-space:nowrap}.ks-pipe[data-v-5897f731]{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.ks-pipe-step[data-v-5897f731]{display:grid;gap:4px;justify-items:center}.ks-pipe-label[data-v-5897f731]{font-size:10px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.03em}.ks-pipe-label-lower[data-v-5897f731]{text-transform:none;letter-spacing:0}.ks-pipe-label-rot[data-v-5897f731]{display:inline-flex;align-items:center;gap:6px}.rotword-play[data-v-5897f731]{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;border:1px solid var(--border);border-radius:3px;background:var(--panel);color:var(--muted);font-size:9px;line-height:1;cursor:pointer}.rotword-play[data-v-5897f731]:hover{color:var(--text);border-color:var(--text-muted)}.rotword-play[data-v-5897f731]:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.icon-btn[data-v-5897f731]{width:28px;height:28px;padding:0;display:inline-flex;align-items:center;justify-content:center}.shift-mini .card-body[data-v-5897f731]{padding:8px 10px}.shift-mini-rows[data-v-5897f731]{display:grid;gap:4px;width:100%}.shift-row-wrap[data-v-5897f731]{display:flex;align-items:center;gap:8px}.shift-mini-row[data-v-5897f731]{width:fit-content;padding:2px 4px;border:1px solid var(--border)}.shift-row-active[data-v-5897f731]{box-shadow:0 0 0 2px #38bdf859}.shift-ghost[data-v-5897f731]{box-shadow:0 0 0 2px #38bdf833}.shift-cell-pulse[data-v-5897f731]{box-shadow:0 0 0 2px #38bdf880}.state-sub[data-v-5897f731],.ks-byte.state-sub[data-v-5897f731]{background:#fbbf2480;border-color:var(--border);box-shadow:none}.state-sub-done[data-v-5897f731]{background:#22c55e40}.shift-mini-row-1[data-v-5897f731]{background:var(--panel)}.shift-mini-row-0[data-v-5897f731]{background:var(--panel-2)}.shift-mini-group[data-v-5897f731]{display:inline-flex;gap:4px}.shift-row-arrow[data-v-5897f731]{color:var(--muted);font-size:12px}.shift-row-label[data-v-5897f731]{color:var(--muted);font-size:9px;text-transform:lowercase;letter-spacing:.01em;white-space:nowrap}.shift-row-play[data-v-5897f731]{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;border:1px solid var(--border);border-radius:3px;background:var(--panel);color:var(--muted);font-size:9px;line-height:1;cursor:pointer}.shift-row-play[data-v-5897f731]:hover{color:var(--text);border-color:var(--text-muted)}.shift-ghost-layer[data-v-5897f731]{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.shift-ghost[data-v-5897f731]{position:absolute;min-width:26px;padding:2px 4px;font-size:10px;font-family:IBM Plex Mono,Courier New,Courier,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;color:var(--text);border:1px solid var(--border);background:var(--cell-2);border-radius:2px;opacity:0}.shift-side-by-side[data-v-5897f731]{align-items:flex-start}.shift-mini-cell[data-v-5897f731]{min-width:26px;white-space:nowrap}.shift-side-by-side[data-v-5897f731]{display:grid;grid-template-columns:1fr 1fr;gap:10px;position:relative}.shift-col[data-v-5897f731]{display:grid;gap:6px}.ks-header[data-v-5897f731]{position:relative}.ks-formula-pop[data-v-5897f731]{position:absolute;right:12px;top:calc(100% + 8px);z-index:5;background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:8px 10px;width:min(520px,80vw);box-shadow:0 10px 24px #0000001f}.ks-formula-pop-title[data-v-5897f731]{font-size:11px;font-weight:800;color:var(--muted);margin-bottom:6px;text-transform:uppercase;letter-spacing:.04em}.ks-formula-pop-body[data-v-5897f731]{font-size:12px;color:var(--text);overflow-x:auto}.panel-columns[data-v-5897f731]{--bs-gutter-x: .2rem;--bs-gutter-y: 1rem}.panel-columns>.col-lg-6[data-v-5897f731]:first-child{flex:0 0 40%;max-width:40%}.panel-columns>.col-lg-6[data-v-5897f731]:last-child{flex:0 0 60%;max-width:60%}.ks-pipe-word[data-v-5897f731]{display:flex;gap:2px}.ks-pipe-arrow[data-v-5897f731]{font-size:16px;line-height:1;color:var(--muted);align-self:center}.rotword-ghost-layer[data-v-5897f731]{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:2}.rotword-ghost[data-v-5897f731]{position:absolute;display:inline-flex;align-items:center;justify-content:center;min-width:22px;padding:2px 4px;font-size:10px;font-weight:700;font-family:IBM Plex Mono,Courier New,Courier,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;background:var(--cell-2);color:var(--text);border:1px solid var(--border);border-radius:2px;opacity:0}.rotword-byte.rotword-c0[data-v-5897f731],.rotword-ghost.rotword-c0[data-v-5897f731]{color:#38bdf8;border-color:#38bdf880}.rotword-byte.rotword-c1[data-v-5897f731],.rotword-ghost.rotword-c1[data-v-5897f731]{color:#f59e0b;border-color:#f59e0b80}.rotword-byte.rotword-c2[data-v-5897f731],.rotword-ghost.rotword-c2[data-v-5897f731]{color:#22c55e;border-color:#22c55e80}.rotword-byte.rotword-c3[data-v-5897f731],.rotword-ghost.rotword-c3[data-v-5897f731]{color:#a78bfa;border-color:#a78bfa80}.rotword-ghost.active[data-v-5897f731]{opacity:.95}.sbox-mini[data-v-5897f731]{border:1px solid var(--border);background:var(--panel-2);border-radius:6px;padding:8px 10px;display:flex;flex-direction:column;min-height:0}.sbox-sticky[data-v-5897f731]{position:static}.sbox-mini-title[data-v-5897f731]{display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:800;color:var(--text);margin-bottom:6px}.sbox-context[data-v-5897f731]{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;padding:2px 6px;border:1px solid var(--border);border-radius:999px}.sbox-context-ks[data-v-5897f731]{color:#f59e0b;border-color:#f59e0b80}.sbox-context-enc[data-v-5897f731]{color:#38bdf8;border-color:#38bdf880}.subword-panel[data-v-5897f731]{margin-bottom:8px;border:1px solid var(--border);border-radius:6px;padding:6px 8px;background:var(--panel)}.subword-panel.enc-map[data-v-5897f731]{margin-bottom:6px}.enc-map-grid[data-v-5897f731]{display:grid;gap:6px}.enc-map-row[data-v-5897f731]{display:flex;flex-wrap:nowrap;gap:4px;align-items:center}.enc-map-cell[data-v-5897f731]{min-width:26px;text-align:center;font-size:12px;font-family:IBM Plex Mono,Courier New,Courier,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace}.enc-map-arrow-inline[data-v-5897f731]{color:var(--muted);font-size:12px;margin:0 6px}.sw16-0[data-v-5897f731]{color:#93c5fd}.sw16-1[data-v-5897f731]{color:#fcd34d}.sw16-2[data-v-5897f731]{color:#86efac}.sw16-3[data-v-5897f731]{color:#c4b5fd}.sw16-4[data-v-5897f731]{color:#fbcfe8}.sw16-5[data-v-5897f731]{color:#a5b4fc}.sw16-6[data-v-5897f731]{color:#fde68a}.sw16-7[data-v-5897f731]{color:#a7f3d0}.sw16-8[data-v-5897f731]{color:#fca5a5}.sw16-9[data-v-5897f731]{color:#d9f99d}.sw16-10[data-v-5897f731]{color:#67e8f9}.sw16-11[data-v-5897f731]{color:#fdba74}.sw16-12[data-v-5897f731]{color:#ddd6fe}.sw16-13[data-v-5897f731]{color:#fecaca}.sw16-14[data-v-5897f731]{color:#bbf7d0}.sw16-15[data-v-5897f731]{color:#bfdbfe}.subword-row[data-v-5897f731]{display:flex;align-items:center;gap:8px;font-family:IBM Plex Mono,Courier New,Courier,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:12px;color:var(--text)}.subword-label[data-v-5897f731]{font-weight:800;color:var(--muted)}.subword-word[data-v-5897f731]{display:inline-flex;gap:6px}.subword-word.out[data-v-5897f731]{color:var(--accent)}.subword-byte[data-v-5897f731]{min-width:18px;text-align:center;cursor:pointer}.subword-byte.active[data-v-5897f731]{text-decoration:underline;text-decoration-thickness:2px}.subword-arrow[data-v-5897f731]{color:var(--muted)}.sw-color-0[data-v-5897f731]{color:#38bdf8}.sw-color-1[data-v-5897f731]{color:#f59e0b}.sw-color-2[data-v-5897f731]{color:#22c55e}.sw-color-3[data-v-5897f731]{color:#a78bfa}.enc-color[data-v-5897f731],.ks-byte.sw-color-0[data-v-5897f731]{color:#38bdf8}.ks-byte.sw-color-1[data-v-5897f731]{color:#f59e0b}.ks-byte.sw-color-2[data-v-5897f731]{color:#22c55e}.ks-byte.sw-color-3[data-v-5897f731]{color:#a78bfa}.subword-detail[data-v-5897f731]{margin-top:6px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 10px;font-family:IBM Plex Mono,Courier New,Courier,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:11px;color:var(--muted)}.subword-detail-row[data-v-5897f731]{display:flex;align-items:center;gap:6px}.subword-hex[data-v-5897f731]{color:var(--text);font-weight:700}.subword-hex.out[data-v-5897f731]{color:var(--text)}.subword-rc[data-v-5897f731]{color:var(--muted)}.sbox-mini-grid[data-v-5897f731]{display:flex;flex-direction:column;gap:4px;flex:1;min-height:0;overflow:auto;padding-bottom:2px;overflow-x:auto;max-width:100%}.sbox-mini-head[data-v-5897f731],.sbox-mini-row[data-v-5897f731]{display:flex;gap:14px;align-items:center;min-width:max-content}.sbox-mini-corner[data-v-5897f731],.sbox-mini-rowhead[data-v-5897f731]{width:24px;text-align:right;font-size:10px;color:var(--muted);font-family:IBM Plex Mono,Courier New,Courier,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace}.sbox-mini-headcell[data-v-5897f731]{width:78px;text-align:left;font-size:10px;color:var(--muted);font-family:IBM Plex Mono,Courier New,Courier,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace}.sbox-mini-group[data-v-5897f731]{display:inline-flex;gap:4px;width:78px;border:1px solid var(--border);border-radius:0;padding:2px 4px;background:var(--panel)}.sbox-mini-group.stripe-a[data-v-5897f731]{background:var(--panel)}.sbox-mini-group.stripe-b[data-v-5897f731]{background:var(--panel-2)}.sbox-mini-group .sbox-mini-cell[data-v-5897f731]{margin-right:0}.sbox-mini-cell[data-v-5897f731]{font-family:IBM Plex Mono,Courier New,Courier,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:12px;display:inline-block;width:14px;text-align:center;color:var(--text)}.sbox-mini-cell.sbox-hit-0[data-v-5897f731]{color:#38bdf8;font-weight:800}.sbox-mini-cell.sbox-hit-1[data-v-5897f731]{color:#f59e0b;font-weight:800}.sbox-mini-cell.sbox-hit-2[data-v-5897f731]{color:#22c55e;font-weight:800}.sbox-mini-cell.sbox-hit-3[data-v-5897f731]{color:#a78bfa;font-weight:800}.sbox-mini-cell.sbox-hit-enc[data-v-5897f731]{color:#38bdf8;font-weight:800}.sbox-mini-cell.sbox-dim[data-v-5897f731]{opacity:.35}.ks-meta[data-v-5897f731]{font-size:11px;color:var(--muted);white-space:nowrap}.ks-table[data-v-5897f731]{display:grid;gap:6px;max-height:220px;overflow-y:auto}.ks-rounds[data-v-5897f731]{display:grid;gap:6px}.ks-round-row[data-v-5897f731]{display:grid;grid-template-columns:minmax(96px,var(--ks-label-col)) 1fr;align-items:center;gap:var(--ks-label-gap)}.ks-round-label[data-v-5897f731]{font-weight:700;color:#fbbf2499;font-size:12px;white-space:nowrap;padding-right:4px}.ks-round-words[data-v-5897f731]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;align-items:stretch}.ks-table-3col[data-v-5897f731]{grid-template-columns:repeat(4,minmax(0,1fr))}.ks-row[data-v-5897f731]{display:grid;grid-template-columns:40px 1fr;align-items:center;gap:6px;padding:4px 6px;border:1px solid var(--border);background:var(--panel-2);width:100%}.ks-row.ks-word-updating[data-v-5897f731]{background:var(--pink-soft);border-color:#fbbf2499}.ks-row.ks-word-updated[data-v-5897f731]{background:var(--panel);border-color:var(--border);color:var(--text)}.ks-legend-row[data-v-5897f731]{display:grid;grid-template-columns:minmax(96px,var(--ks-label-col)) 1fr;gap:var(--ks-label-gap);margin-bottom:8px}.ks-legend-spacer[data-v-5897f731]{width:100%}.ks-legend[data-v-5897f731]{display:flex;gap:12px;flex-wrap:wrap;font-size:11px;color:var(--muted)}.ks-rcon[data-v-5897f731]{display:grid;gap:6px;margin-bottom:10px}.ks-rcon-title[data-v-5897f731]{font-size:11px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.ks-rcon-row[data-v-5897f731]{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:6px}.ks-rcon-cell[data-v-5897f731]{display:grid;gap:4px;padding:6px 8px;border-radius:8px;border:1px solid var(--border);background:var(--panel-2)}.ks-rcon-idx[data-v-5897f731]{font-size:10px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.03em}.ks-rcon-bytes[data-v-5897f731]{display:flex;gap:4px;font-family:IBM Plex Mono,Courier New,Courier,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:12px}.ks-rcon-byte[data-v-5897f731]{padding:2px 4px;border-radius:4px;border:1px solid var(--border);background:var(--cell-2);color:var(--text)}.rcon-grid[data-v-5897f731]{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:6px}.rcon-cell[data-v-5897f731]{display:grid;gap:4px;padding:6px 8px;border-radius:10px;border:1px solid var(--border);background:var(--panel-2)}.rcon-cell .sbox-mini-group[data-v-5897f731]{width:max-content;white-space:nowrap}.rcon-idx[data-v-5897f731]{font-size:10px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.03em}.ks-leg[data-v-5897f731]{display:inline-flex;align-items:center;gap:6px}.ks-swatch[data-v-5897f731]{width:14px;height:10px;border:1px solid var(--border);background:var(--panel-2)}.ks-swatch-updating[data-v-5897f731]{background:var(--pink-soft);border-color:#fbbf2499}.ks-swatch-updated[data-v-5897f731]{background:var(--panel);border-color:var(--border)}.ks-idx[data-v-5897f731]{font-weight:700;color:var(--muted);font-size:14px}.ks-bytes[data-v-5897f731]{display:flex;gap:2px;flex-wrap:nowrap;width:100%}.ks-byte[data-v-5897f731]{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;min-width:16px;padding:1px 2px;white-space:nowrap;border:1px solid var(--border);background:var(--cell-2);font-family:IBM Plex Mono,Courier New,Courier,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:10px;color:var(--text)}.op-title[data-v-5897f731]{font-weight:800;color:var(--text);margin-bottom:8px}.mini-anno[data-v-5897f731]{border:1px solid var(--border);background:var(--panel-2);border-radius:6px;padding:10px}.mini-anno-h[data-v-5897f731]{font-weight:800;font-size:12px;color:var(--muted);margin-bottom:4px}.mini-anno-t[data-v-5897f731]{font-size:12px;color:var(--text)}.mini-code[data-v-5897f731]{border:1px solid var(--border);background:var(--panel);border-radius:6px;padding:10px}.mini-code-h[data-v-5897f731]{font-weight:800;font-size:12px;color:var(--muted);margin-bottom:6px}.mini-code-pre[data-v-5897f731]{margin:0;font-size:12px;line-height:1.35;background:var(--panel-2);border:1px solid var(--border);border-radius:4px;padding:8px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace}.io-box[data-v-5897f731]{border:1px solid var(--border);background:var(--panel-2);border-radius:6px;padding:10px;font-size:12px}.internal-badges[data-v-5897f731]{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.badge.internal-badge[data-v-5897f731]{display:inline-flex;align-items:center;justify-content:space-between;padding:2px 8px;width:96px;height:22px;border-radius:999px!important;border:1px solid var(--border);background:var(--panel-2);color:var(--text);font-size:12px;font-weight:700;gap:6px;position:relative}.badge-text[data-v-5897f731]{flex:1 1 auto;text-align:center}.badge-q[data-v-5897f731]{flex:0 0 auto;width:14px;height:14px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid var(--border);background:var(--panel-2);font-size:9px;font-weight:800;color:#475569;cursor:pointer}.badge-tip[data-v-5897f731]:not([data-tip=""]):after{content:attr(data-tip);position:absolute;right:0;top:26px;min-width:140px;padding:6px 8px;border-radius:6px;border:1px solid var(--border);background:var(--panel);color:var(--text);font-size:12px;white-space:normal;opacity:0;transform:translateY(-4px);pointer-events:none;transition:opacity .12s ease,transform .12s ease;z-index:10}.badge-tip[data-v-5897f731]:not([data-tip=""]):hover:after{opacity:1;transform:translateY(0)}.io-h[data-v-5897f731]{font-weight:800;font-size:12px;color:var(--muted);margin-bottom:6px}.io-label[data-v-5897f731]{font-weight:800;font-size:12px;color:var(--text);margin-bottom:4px}.io-row[data-v-5897f731]{display:grid;grid-template-columns:repeat(16,minmax(0,1fr));gap:4px}.io-byte[data-v-5897f731]{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:10px;text-align:center;padding:4px 0;border-radius:4px;border:1px solid var(--border);background:var(--cell-2);color:var(--text)}.io-byte.out[data-v-5897f731]{border-color:var(--accent-strong);box-shadow:0 0 0 2px var(--accent-soft)}.sbox-big[data-v-5897f731]{border:1px solid var(--border);border-radius:6px;padding:10px;background:var(--panel)}.sbox-big-h[data-v-5897f731]{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:8px}.sbox-grid[data-v-5897f731]{display:grid;grid-template-columns:repeat(16,minmax(0,1fr));gap:4px}.sbox-gcell[data-v-5897f731]{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:10px;text-align:center;padding:4px 0;border-radius:2px;border:1px solid var(--border);background:var(--cell-2);color:var(--text)}.sbox-gcell.rowHit[data-v-5897f731]{border-color:var(--sbox-row)}.sbox-gcell.colHit[data-v-5897f731]{border-color:var(--sbox-col)}.sbox-gcell.hit[data-v-5897f731]{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft);transform:translateY(-1px)}.sbox-foot[data-v-5897f731]{font-size:12px;color:var(--text);font-weight:800}.float-byte[data-v-5897f731]{position:fixed;left:0;top:0;transform:translate(-9999px,-9999px);opacity:0;pointer-events:none;z-index:9999;padding:8px 10px;border-radius:6px;border:1px solid var(--accent-strong);background:var(--panel);box-shadow:0 8px 30px #02061766,0 0 0 4px var(--accent-soft);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.float-byte .mono[data-v-5897f731]{font-weight:900;font-size:12px;color:var(--text);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace}.matrix-wrap[data-v-5897f731]{border:1px solid var(--border);border-radius:6px;padding:10px;background:var(--panel-2)}.matrix-label[data-v-5897f731]{font-weight:800;color:var(--text);font-size:12px;margin-bottom:6px}.matrix[data-v-5897f731]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.mix-side[data-v-5897f731]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.mix-rows[data-v-5897f731]{display:grid;gap:4px}.mix-row[data-v-5897f731]{display:flex;gap:10px;flex-wrap:nowrap}.mix-row .sbox-mini-group[data-v-5897f731]{gap:6px;padding:2px 6px}.mix-row .sbox-mini-group.mix-row-active[data-v-5897f731]{border-color:var(--accent-strong);box-shadow:0 0 0 2px var(--accent-soft)}.mix-cell[data-v-5897f731]{display:grid;grid-template-rows:auto auto;gap:2px;justify-items:center;padding:2px 1px}.mix-cell-label[data-v-5897f731]{font-size:8px;color:var(--muted);line-height:1.1}.mix-cell-value[data-v-5897f731]{line-height:1.2}.mix-rows .sbox-mini-group[data-v-5897f731]{width:max-content;white-space:nowrap}.mix-explain[data-v-5897f731]{display:grid;grid-template-columns:2fr 1fr;gap:12px;margin-top:10px}.mix-col[data-v-5897f731]{border:1px dashed var(--border);border-radius:8px;padding:8px;background:var(--panel)}.mix-col-head[data-v-5897f731]{display:flex;align-items:center;justify-content:space-between;gap:8px}.mix-col-label[data-v-5897f731]{font-size:11px;font-weight:800;color:var(--muted);margin-bottom:6px;text-transform:uppercase;letter-spacing:.04em}.mix-formula[data-v-5897f731]{margin:6px 0 8px;font-size:12px;color:var(--text);overflow-x:auto}.mix-tabs[data-v-5897f731]{display:inline-flex;gap:4px}.mix-tab[data-v-5897f731]{border:1px solid var(--border);background:var(--panel-2);color:var(--muted);font-size:10px;padding:2px 6px;border-radius:999px;font-weight:700}.mix-tab.active[data-v-5897f731]{border-color:var(--accent-strong);box-shadow:0 0 0 2px var(--accent-soft);color:var(--text)}.mix-col-rows[data-v-5897f731]{display:grid;gap:4px}.mix-eq[data-v-5897f731]{font-family:IBM Plex Mono,Courier New,Courier,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:11px;color:var(--text)}.mix-legend[data-v-5897f731]{color:var(--muted)}.mix-matrix[data-v-5897f731]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}.mix-mcell[data-v-5897f731]{display:inline-flex;align-items:center;justify-content:center;min-height:22px;border:1px solid var(--border);background:var(--cell-2);font-family:IBM Plex Mono,Courier New,Courier,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:11px;font-weight:700;color:var(--text)}.mix-why[data-v-5897f731]{margin-top:10px;padding:8px 10px;border-radius:8px;border:1px dashed var(--border);background:var(--panel)}.mix-why-title[data-v-5897f731]{font-size:11px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px}.mix-why-text[data-v-5897f731]{font-size:12px;color:var(--text);display:flex;flex-wrap:wrap;gap:6px}.mix-why-chip[data-v-5897f731]{display:inline-flex;align-items:center;gap:4px;padding:2px 6px;border-radius:999px;border:1px solid var(--border);background:var(--panel-2);font-family:IBM Plex Mono,Courier New,Courier,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:11px;font-weight:700}.mix-coef[data-v-5897f731]{font-weight:800}.mix-c1[data-v-5897f731]{color:#38bdf8}.mix-c2[data-v-5897f731]{color:#f59e0b}.mix-c3[data-v-5897f731]{color:#22c55e}.mcell[data-v-5897f731]{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:12px;font-weight:800;text-align:center;padding:8px 0;border-radius:4px;background:var(--cell-2);border:1px solid var(--border);color:var(--text)}.shift-hint[data-v-5897f731]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 10px;margin:8px 0 4px;font-size:12px}.shift-hint .k[data-v-5897f731]{font-weight:800;color:var(--muted)}.shift-hint .v[data-v-5897f731]{font-weight:800;color:var(--text)}.mix-note[data-v-5897f731],.col-note[data-v-5897f731]{margin-top:8px;font-size:12px;color:var(--muted)}.app-font[data-v-fa568b89]{font-family:Space Grotesk,IBM Plex Sans,"Source Sans 3",Segoe UI,Noto Sans,sans-serif;--bg: #FFFFFF;--panel: #FFFFFF;--panel-2: #F8FAFC;--border: rgba(148, 163, 184, .22);--text: #0F172A;--muted: rgba(100, 116, 139, .9);--accent: #22D3EE;--accent-strong: rgba(34, 211, 238, .65);color:var(--text);background-color:var(--bg);min-height:calc(100vh - 46px)}.app-font.theme-dark[data-v-fa568b89]{--bg: #282A36;--panel: #2B2E3A;--panel-2: #1E2030;--border: rgba(148, 163, 184, .2);--text: #F8FAFC;--muted: rgba(148, 163, 184, .85);--accent: #38BDF8;--accent-strong: rgba(56, 189, 248, .55)}body.ecc-page,body.ecc-page.ecc-page-dark{background:#0b0f1e}body.ecc-page .form-label{color:#f8fafc!important}.page-header[data-v-fa568b89]{display:grid;gap:8px;margin-bottom:16px;text-align:center}.title-row[data-v-fa568b89]{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:center}.page-title[data-v-fa568b89]{margin:0;font-size:clamp(1.7rem,2.6vw,2.4rem);font-weight:700}.page-subtitle[data-v-fa568b89]{margin:0;color:var(--muted)}.badge-soft[data-v-fa568b89]{background:var(--panel-2);color:var(--text);border:1px solid var(--border);padding:6px 10px;font-weight:600}.badge-outline[data-v-fa568b89]{border:1px solid var(--border);color:var(--muted);background:transparent}.app-font .card[data-v-fa568b89]{background:var(--panel);border:1px solid var(--border);border-radius:12px;box-shadow:0 12px 32px #0003}.app-font .card-header[data-v-fa568b89]{background:var(--panel-2);border-bottom:1px solid var(--border);font-weight:600;color:var(--text)}.gen-header[data-v-fa568b89]{display:flex;align-items:center;justify-content:space-between;gap:8px}.app-font .form-control[data-v-fa568b89],.app-font .form-select[data-v-fa568b89]{background:var(--panel-2);border:1px solid var(--border);color:var(--text);font-size:12px;font-family:SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace;padding:4px 8px;line-height:1.2}.app-font[data-v-fa568b89] .form-label,.ecc-label[data-v-fa568b89]{font-family:IBM Plex Mono,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace;font-size:12px;letter-spacing:.01em;margin-bottom:0}.app-font .form-control[data-v-fa568b89]:focus,.app-font .form-select[data-v-fa568b89]:focus{box-shadow:0 0 0 3px var(--accent-strong);border-color:var(--accent)}.param-grid[data-v-fa568b89]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.param-grid.compact[data-v-fa568b89],.param-grid.param-grid-inline[data-v-fa568b89]{grid-template-columns:1fr}.param-grid.param-grid-inline .param-item[data-v-fa568b89]{grid-template-columns:130px 1fr;align-items:center}.param-grid.param-grid-inline .param-item.param-item-tight[data-v-fa568b89]{grid-template-columns:130px auto}.param-grid.param-grid-inline.generated-point-grid .param-item[data-v-fa568b89],.param-grid.param-grid-inline.scalar-result-grid .param-item[data-v-fa568b89]{grid-template-columns:12px 1fr;column-gap:2px}.curve-row[data-v-fa568b89]{display:flex;align-items:center;gap:10px}.curve-badge[data-v-fa568b89]{display:inline-flex;align-items:center;padding:4px 10px;border-radius:4px;font-size:.75rem;color:var(--muted);background:transparent;white-space:nowrap}.param-item[data-v-fa568b89]{display:grid;gap:0}.param-hint[data-v-fa568b89]{font-size:10px;color:var(--muted)}.param-inline[data-v-fa568b89]{display:flex;align-items:center;gap:8px}.param-hint-inline[data-v-fa568b89]{font-size:10px;color:var(--muted);white-space:nowrap}.param-label-math[data-v-fa568b89]{font-family:IBM Plex Mono,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace;font-weight:500;letter-spacing:.01em;white-space:nowrap}.placeholder-label[data-v-fa568b89]{height:1em}.param-math[data-v-fa568b89]{font-family:IBM Plex Mono,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace;font-weight:500;letter-spacing:.01em}.param-apply[data-v-fa568b89]{display:flex;align-items:center;gap:8px}.param-apply-btn[data-v-fa568b89]{background:#94a3b82e;color:#e2e8f0e6;border:1px solid rgba(148,163,184,.35);font-weight:500;letter-spacing:.01em;padding:1px 6px;font-size:10px;box-shadow:none}.param-apply-btn[data-v-fa568b89]:hover{background:#94a3b847;transform:translateY(-1px);box-shadow:none}.ecc-action-btn[data-v-fa568b89]{font-family:IBM Plex Mono,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace;font-size:10px;letter-spacing:.04em;border-radius:999px;padding:4px 12px;border:1px solid rgba(34,211,238,.55);background:linear-gradient(120deg,#22d3ee38,#fbbf242e);color:var(--text);box-shadow:0 6px 14px #0f172a40}.ecc-action-btn[data-v-fa568b89]:hover{background:linear-gradient(120deg,#22d3ee57,#fbbf243d);transform:translateY(-1px);box-shadow:0 10px 18px #0f172a4d}.curve-tag[data-v-fa568b89]{font-size:.75rem;color:var(--muted)}.curve-formula[data-v-fa568b89]{padding:0;border-radius:0;border:0;background:transparent;color:var(--text);margin-bottom:12px;font-size:12px;display:flex;align-items:center;gap:10px}.curve-formula-math[data-v-fa568b89]{display:inline-flex;align-items:center}.curve-formula-math[data-v-fa568b89] .katex,.curve-formula-math[data-v-fa568b89] .katex *{color:#86efac!important}.point-actions[data-v-fa568b89]{display:flex;align-items:center;gap:12px;margin-top:10px}.point-status[data-v-fa568b89]{font-size:.85rem;color:var(--muted)}.hint[data-v-fa568b89]{margin-top:12px;font-size:.9rem;color:var(--muted)}.op-grid[data-v-fa568b89]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.op-card[data-v-fa568b89]{border:1px solid var(--border);border-radius:10px;padding:12px;background:var(--panel-2)}.op-title[data-v-fa568b89]{font-weight:600;margin-bottom:10px}.op-double[data-v-fa568b89]{margin-top:14px;padding-top:12px;border-top:1px solid var(--border);display:grid;gap:10px}.op-double-head[data-v-fa568b89]{display:flex;align-items:center;justify-content:space-between;gap:8px}.op-double-select[data-v-fa568b89]{max-width:180px}.op-double-chip-row[data-v-fa568b89]{display:flex;align-items:center;gap:8px}.coord-label[data-v-fa568b89]{font-size:10px;color:var(--muted);letter-spacing:.04em}.coord-toggle[data-v-fa568b89]{display:inline-flex;border-radius:999px;border:1px solid var(--border);background:#0f172a1f;padding:1px;gap:2px;width:fit-content}.coord-toggle-btn[data-v-fa568b89]{border:0;background:transparent;color:var(--muted);font-size:9px;padding:2px 6px;border-radius:999px;font-family:IBM Plex Mono,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace;letter-spacing:.02em;cursor:pointer}.coord-toggle-btn.active[data-v-fa568b89]{color:var(--text);background:#22d3ee33;border:1px solid rgba(34,211,238,.45)}.op-double-grid[data-v-fa568b89]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.op-double-chip[data-v-fa568b89]{align-self:flex-start;display:inline-flex;padding:3px 8px;border-radius:999px;border:1px solid var(--border);background:#0f172a1f;font-size:10px;color:var(--muted)}.op-double-card[data-v-fa568b89]{border:1px solid var(--border);border-radius:10px;padding:8px 10px;background:var(--panel-2);display:grid;gap:4px}.op-double-label[data-v-fa568b89]{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.op-double-value[data-v-fa568b89]{font-size:11px;color:var(--text);font-family:SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace;word-break:break-word}.op-double-steps[data-v-fa568b89]{display:grid;gap:4px;font-size:11px;color:var(--muted);font-family:SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace}.op-double-formula[data-v-fa568b89]{font-size:12px;color:#86efac;display:flex;flex-wrap:wrap;gap:10px;position:relative;padding:4px 6px}.op-double-formula-line[data-v-fa568b89]{display:block;position:relative;z-index:1;font-size:13px;color:var(--muted)}.op-double-formula-line[data-v-fa568b89] .katex{font-size:13px;color:#86efac!important}.op-double-formula-line[data-v-fa568b89] .katex *{color:#86efac!important}.op-double-status[data-v-fa568b89]{color:var(--text);font-weight:600}.op-add[data-v-fa568b89]{margin-top:14px;padding-top:12px;border-top:1px solid var(--border);display:grid;gap:8px}.op-add-head[data-v-fa568b89]{display:flex;align-items:center;justify-content:space-between;gap:8px}.op-add-grid[data-v-fa568b89]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.op-add-card[data-v-fa568b89]{border:1px solid var(--border);border-radius:10px;padding:8px 10px;background:var(--panel-2);display:grid;gap:4px}.op-add-label[data-v-fa568b89]{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.op-add-value[data-v-fa568b89]{font-size:11px;color:var(--text);font-family:SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace;word-break:break-word}.op-add-body[data-v-fa568b89]{font-size:11px;color:var(--muted);display:grid;gap:4px;font-family:SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace}.op-add-mode[data-v-fa568b89]{display:flex;align-items:center;gap:8px}.op-add-formula[data-v-fa568b89]{font-size:12px;color:#86efac;display:grid;gap:4px}.op-add-mode .op-add-chip[data-v-fa568b89]{color:var(--text);font-size:9px}.op-add-mode .form-select[data-v-fa568b89]{color:var(--text)}.op-add-formula-line[data-v-fa568b89]{display:block;color:var(--muted)}.op-add-formula-line[data-v-fa568b89] .katex{font-size:13px;color:#86efac!important}.op-add-formula-line[data-v-fa568b89] .katex *{color:#86efac!important}.op-add-formula-pair[data-v-fa568b89]{display:grid;gap:2px}.op-add-line[data-v-fa568b89]{display:block;font-size:11px;color:var(--muted);font-family:SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace}.op-add-steps[data-v-fa568b89]{display:grid;gap:4px;font-size:11px;color:var(--muted);font-family:SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace}.op-add-formula[data-v-fa568b89]{font-size:12px;color:var(--text)}.op-double-formula[data-v-fa568b89]:after{content:"all computations are mod p.";position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:flex-end;padding-right:6px;color:#fbe6a08c;font-size:11px;letter-spacing:.12em;pointer-events:none}.op-double-new[data-v-fa568b89]{color:var(--text)}.op-body[data-v-fa568b89]{display:grid;gap:8px}.op-row[data-v-fa568b89]{display:flex;justify-content:space-between;color:var(--muted);font-size:.9rem}.op-label[data-v-fa568b89]{color:var(--text);font-weight:600}.panel-note[data-v-fa568b89]{margin-top:12px;color:var(--muted);font-size:.9rem}.status-row[data-v-fa568b89]{display:flex;gap:8px;margin-top:12px}.scalar-controls[data-v-fa568b89]{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;align-items:center}.scalar-code[data-v-fa568b89]{margin-top:10px;border:1px solid var(--border);border-radius:10px;padding:8px;background:#0f172a1f;display:grid;gap:4px;font-family:IBM Plex Mono,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace;font-size:11px;color:var(--muted)}.scalar-code-line[data-v-fa568b89]{display:flex;justify-content:space-between;gap:8px}.scalar-code-line.active[data-v-fa568b89]{color:var(--text);font-weight:600}.scalar-code-text[data-v-fa568b89]{white-space:pre}.scalar-code-value[data-v-fa568b89]{color:var(--text)}.curve-plot[data-v-fa568b89]{position:relative;border-radius:12px;border:1px solid var(--border);background:var(--panel-2);overflow:hidden;min-height:260px}.curve-canvas[data-v-fa568b89]{width:100%;height:280px;display:block}.curve-overlay[data-v-fa568b89]{position:absolute;top:10px;right:10px;bottom:10px;left:10px;display:flex;align-items:center;justify-content:space-between;gap:12px;pointer-events:none}.curve-overlay .btn[data-v-fa568b89]{pointer-events:auto}.curve-legend[data-v-fa568b89]{display:inline-flex;align-items:center;gap:10px;font-size:11px;color:var(--muted);background:#0f172a26;padding:4px 8px;border-radius:999px;border:1px solid var(--border)}.legend-dot[data-v-fa568b89]{width:8px;height:8px;border-radius:999px;display:inline-block;margin-right:4px}.legend-point[data-v-fa568b89]{background:#5ec0ef}.legend-gen[data-v-fa568b89]{background:#f4c74d}.legend-hover[data-v-fa568b89]{background:#f5654f}.legend-walk[data-v-fa568b89]{background:#73fdbd}.legend-p[data-v-fa568b89]{background:#9f8cfb}.legend-2p[data-v-fa568b89]{background:#f5a23f}.legend-q[data-v-fa568b89]{background:#40d496}.legend-pq[data-v-fa568b89]{background:#f25f82}.curve-hover[data-v-fa568b89]{font-size:11px;color:var(--muted);background:#0f172a26;padding:4px 8px;border-radius:8px;border:1px solid var(--border);min-width:120px;text-align:center}.curve-walk[data-v-fa568b89]{margin-top:10px;padding-top:10px;border-top:1px solid var(--border);display:grid;gap:6px}.curve-walk-title[data-v-fa568b89]{font-weight:600;font-size:12px;color:var(--text)}.curve-walk-controls[data-v-fa568b89]{display:flex;flex-wrap:wrap;gap:6px}.curve-walk-status[data-v-fa568b89]{font-size:11px;color:var(--muted);display:flex;flex-wrap:wrap;gap:8px}.curve-walk-status .walk-count[data-v-fa568b89]{color:var(--text);font-weight:600}.ff-controls[data-v-fa568b89]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:14px}.ff-grid[data-v-fa568b89]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ff-card[data-v-fa568b89]{border:1px solid var(--border);border-radius:10px;background:var(--panel-2);padding:10px;display:grid;gap:8px}.ff-title[data-v-fa568b89]{font-weight:600;font-size:12px;color:var(--text)}.ff-ring[data-v-fa568b89]{width:100%;height:160px}.ff-ring-base[data-v-fa568b89]{fill:none;stroke:#94a3b866;stroke-width:1.2}.ff-ring-point[data-v-fa568b89]{fill:#5ec0ef99}.ff-ring-point.is-a[data-v-fa568b89]{fill:#f4c74d}.ff-ring-point.is-b[data-v-fa568b89]{fill:#9f7aea}.ff-ring-point.is-res[data-v-fa568b89]{fill:#f5654f}.ff-ring-point.is-step[data-v-fa568b89]{fill:#7dd3fc;stroke:#7dd3fc99;stroke-width:1.2}.ff-ring-label[data-v-fa568b89]{fill:var(--muted);font-size:7px;font-family:SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace}.ff-ring-label.is-a[data-v-fa568b89]{fill:#f4c74d;font-weight:600}.ff-ring-label.is-res[data-v-fa568b89]{fill:#f5654f;font-weight:600}.ff-ring-legend[data-v-fa568b89]{display:inline-flex;align-items:center;gap:10px;font-size:10px;color:var(--muted)}.ff-legend-dot[data-v-fa568b89]{width:8px;height:8px;border-radius:999px;display:inline-block;margin-right:4px}.ff-legend-start[data-v-fa568b89]{background:#f4c74d}.ff-legend-result[data-v-fa568b89]{background:#f5654f}.ff-legend-step[data-v-fa568b89]{background:#7dd3fc}.gen-code[data-v-fa568b89]{margin-top:12px;display:grid;gap:6px}.gen-display[data-v-fa568b89]{display:grid;gap:4px;margin-bottom:8px;max-width:420px}.gen-display-row[data-v-fa568b89]{display:flex;align-items:center;gap:8px}.gen-hint[data-v-fa568b89]{font-size:10px;color:var(--muted);white-space:nowrap}.gen-hint-formula[data-v-fa568b89]{color:#fbe6a0b3}.gen-code-title[data-v-fa568b89]{font-size:11px;font-weight:600;color:var(--text)}.gen-code-block[data-v-fa568b89]{margin:0;padding:8px 10px;border-radius:8px;border:1px solid var(--border);background:#0f172a1f;font-size:11px;color:var(--muted);white-space:pre-wrap;font-family:SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace}.gen-code-lines[data-v-fa568b89]{display:grid;gap:4px}.gen-code-line[data-v-fa568b89]{display:flex;align-items:center;justify-content:space-between;gap:10px}.gen-code-text[data-v-fa568b89]{color:var(--text);white-space:pre}.gen-code-value[data-v-fa568b89]{color:var(--muted);font-size:10px}.ff-inline[data-v-fa568b89]{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:11px;color:var(--muted)}.ff-inline-stack[data-v-fa568b89]{justify-content:flex-start;gap:10px}.ff-stepline[data-v-fa568b89]{color:var(--muted);font-size:10px}.ff-ring-controls[data-v-fa568b89]{display:flex;flex-wrap:wrap;gap:6px}.ff-chip[data-v-fa568b89]{padding:2px 8px;border-radius:999px;border:1px solid var(--border);background:#0f172a1f;color:var(--text);font-weight:600}.ff-gate[data-v-fa568b89]{display:grid;gap:8px}.ff-gate-row[data-v-fa568b89]{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:var(--text)}.ff-gate-label[data-v-fa568b89]{color:var(--muted)}.ff-gate-value[data-v-fa568b89]{font-weight:600}.ff-gate-arrow[data-v-fa568b89]{text-align:center;font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.ff-compare[data-v-fa568b89]{display:grid;gap:4px;font-size:11px;color:var(--muted)}.ff-compare-row[data-v-fa568b89]{display:flex;align-items:center;gap:6px}.ff-compare-label[data-v-fa568b89]{font-weight:600;color:var(--text)}.ff-wrap-controls[data-v-fa568b89]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.ff-wrap-field[data-v-fa568b89]{display:grid;gap:2px}.ff-wrap-equation[data-v-fa568b89]{font-size:11px;color:var(--muted)}.ff-grid-wrap[data-v-fa568b89]{display:grid;gap:2px}.ff-grid-cell[data-v-fa568b89]{width:100%;padding-top:100%;background:#0f172a1f;border-radius:2px}.ff-grid-cell.is-origin[data-v-fa568b89]{background:#f4c74d}.ff-grid-cell.is-dest[data-v-fa568b89]{background:#f5654f}.ff-table[data-v-fa568b89]{grid-column:1 / -1}.ff-table-grid[data-v-fa568b89]{display:grid;gap:1px;border-radius:8px;overflow:hidden}.ff-table-cell[data-v-fa568b89]{width:100%;padding-top:100%;position:relative}.ff-table-cell span[data-v-fa568b89]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:8px;color:#f8fafce6}.ff-table-caption[data-v-fa568b89]{font-size:11px;color:var(--muted)}.app-font.theme-dark .page-subtitle[data-v-fa568b89],.app-font.theme-dark .hint[data-v-fa568b89],.app-font.theme-dark .panel-note[data-v-fa568b89],.app-font.theme-dark .curve-hover[data-v-fa568b89]{color:#e2e8f0bf}.app-font.theme-dark .page-title[data-v-fa568b89],.app-font.theme-dark .op-title[data-v-fa568b89],.app-font.theme-dark .op-label[data-v-fa568b89],.app-font.theme-dark .card-header[data-v-fa568b89]{color:#f8fafcf2}@media (max-width: 992px){.param-grid[data-v-fa568b89],.op-grid[data-v-fa568b89],.op-add-grid[data-v-fa568b89],.op-double-grid[data-v-fa568b89],.ff-controls[data-v-fa568b89],.ff-grid[data-v-fa568b89]{grid-template-columns:1fr}.ff-wrap-controls[data-v-fa568b89]{grid-template-columns:repeat(2,minmax(0,1fr))}}
