@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,d09GMgABAAAAAA4oAA4AAAAAHbQAAA3TAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAABmAAgRQIDgmcDBEICo1oijYBNgIkA14LMgAEIAWJAAeBHAyBHBvbGiMRdnO0IkRRkiYDgr9KsJ1NUAf2kILNxgUmgqIgq1P89vcbIcmsQbRps3vCcXdYOKSWEPEKgZgQkprQQsxIXUgq0DqpGKmIvrgkeVGtEQD9DzAO29fM9jYhxZEsL2FeURH2JN4MIcTdO049NCVdxQ/w9NrSYFEBKTDKpLKfNkCGDc1RwjZLQcm3vqJ2UW9Xfa3tgAHz6ivp6vgC2yD4/6352ndnN0X0TL7seypkjZlMsjmZnf0Mm5Q+JykRWQBKCVCVPbARPXWyQtb5VgLB6Biq7/Uixcj2WGqdI8tGSgkuRG+t910GKP2D7AQH0DB9FMDW/obJZ8giFI3Wg8Cvevz0M+5m0rTh7XDBlvo9Y4vm13EXmfttwI4mBo1EG15fxJhUiCLbiiyCf/ZA6MFAhg3pGIZGdGIVjtPn6UcMk9A/UUr9PhoNsCENw1APAq0gpH73e+M+0ueyHbabc3vkbcdtzcf/fiy+NxQEjf9ud/ELBHAXJ0nk4z+MXH2Ev/kWyV4k7SkvpPc9Qr38F6RPWnM9cN6DJ0AdD1BhtgABtmoRoFCvPsBAumNm6soZG2Gk5GyVTo2sJncSyp0jQTYoR6WDvTwaaEcHsxHfvuWhHA3a6bN7twRKtcGok6NsCi7jYRrM2jExsUFMxMQYuJbMhuWNOumEJy9hi29Dmg5zMp/A5+hhPG19j1vBrq8JTLr8ki5VLPmG/PynJHVul440bxg5xuymHUFPBshC+nA9I1FmwbRBTNHAcik3Oae0cxKoI3MOriM42UrPe51nsaGxJ+WfXubAsP84aabUlQSJ1IiE0iPETLUU4CATgfXSCSpuRFRmCGbO+wSpAnzaeaCYW1VNEysRtuXCEL1kUFUbbtMv3Tilt/1c11jt3Q5bbMa84cpWipp8Elw3MZhOHsOlwwVUQM3lAR35JiFQbaYCRnMF2lxAWoOg2gyoIV4PouX8HytNIfLhqpJtXB4vjiViUI8IJ7bkC4ikkQvKksnOTKICwnqWSZ9YS5f0WCxmpgjbIq7EJcM4aI2nmhLNY2JIUgOjXZFWBHb+x5oh6cwb0Tv1ackHdKi0I9OO2wE9aogIOn540CCCziyhN+IaejtgAONKznHlHyutPrHGwCx9S6B8kfS4Mfi4Eyv7OU730bT1SCBjt834cXsf43zVjPUqqJjgrjeGnBxSG4aYAKFuVbeCfkDIjAqMb6yLNIbCuvXhMH2/+k2vkNpkORhR59N1CkzoOENvneIosjYmuTxlhUzaGEJQ/iWqx4dmwpmKjrwTiTGTCVozNAYqk/zXOndWxuWSmJkQpJw3pK5KX6QrLt5LATMqpmPAQhkhK6PUjzHUn7E0gHE0kPE0iKkolgkUx9SZmVAdDgpffdyJKg3k7VmzYGCwVXGz/tXmkOIp+vcWs+EMuhhvN0h9uhfzWJziBQmCREGSIFmQIkgVpAnSBRmC//6hkLZwaVhwxlrJSOdqlFtOYxlau9F2QN5Y98xmIAsiM1HVp2VFX+DHHGg6Ecjh3vmqtidX3qHI2qycTk/iwxSt5UzTmEP92ZBnEWTk4Mx8Mpl78ZDokxg/KWb+Q0QkvdKVmq3TMW+RXEgrsziSAfNXFMhDc60N5N9jQzjfO0kBKpUZl0ZmwJ41j/B9Hz6wmRaJB84niNmQrzp9eSlQCDDzazGDdVi3P36VZQ+Jy4f9UBNp+3zTjqI4abaFAm+GShVaXlsGdF3FYzZcDI6cori4kMxUECl9IjJZpzkvitAoxKue+90pDMvcKRxLl53TmOKCmV/xRolNKSqqUxc6LStOETmFOiLZZptlZepcKiAzteG8PEdpnQpbOMNcMsR4RR2Bs0cKFEvSmIjAFcnarqwUL4lDhHmnVkwu1IwshbiCcgvOheZuYyOteufZZwlcTlLgnZ3o/WcYdzZHW/WGaqaVfmTZ1aWCceJjkbZqsfbkOtcFlUZM/jy+hXHDbaUobWqqXaeWobbLO99yG5N3U4wxco0rQGGcOLASFMXeJoham8M+/x6O2WywK2l4HGbq1CoUyC/IZikQhdq3SiuNrvAEj0AVu9x2x3lp/xWzahaxidezFVtdcb5uEnzyl0ZmYiuKI0exvCd4Xc9CV1KB0db00z92wDPde0kukbvZIWN6jUWFTmPIC/Y4UPCm8UfDTFZpZNon1qLFTkBhxzB+FjQRA2Q/YRJT8pQigslMaUpFyAG8TMlXigiqmAZX4xgijKjRlGpLE0GdplRfCaJo0JQaSxNBk6ZmMzcya0FmrcisDdn0Q3HI2sWSppYigmlM1XT/kLQZSNpMJG0WkjYbSZuDpM1F0uYhFc1HxU4m1QJjDK6iL0S5uSj5rgXc3RejEigtcRBtqYPQsiTskmO5vosV+q4VGIKbOkDg0jtRrq+Em1YloaTFar3EGr1EUC8R0kus1Uus00usL97ABr2BjXoDm/QGNhuWtMVBKOwg/i78lT7hBsAvDmwHc/ao3vmUbBmhjeYySZNWvGkfZAgISDSaDo1SVpzGDsAEkF8B+gEapViUoZgUWXcRIGFZNm6gWbAKk0bp0k1MHG9fLYtV4iS2SmLEQFARzRcnf9PUS0LVn05/J9MiRRBU3v2IrvW974v4N00L7ZMk0wXP1409CHo/an8zTRHD3eSJ6m8D4YMkZNl3M79sqeuAsr/m3f+8/yl7A50aiAEJgeBeMWzu7ui9UfUBCe2TIqZIoOd/3/udRBOQidQZUERzb2/VwZN1H/Sju82ew2H2Wfr6qvfVf3hqwDvAIpkQVFy4B9Pe9e4/XvPeceu7h3dvO56iJPf0+A6cqA2ip18ER+iFgggiuOkvj24bby0N9j2UHIkgqIt+sVgfodC4YghLSMjSZbH0VR/6dMDrYJeKHilKTemt6v6kvzvn3/RrdWtr0GoN/xL+Sex/cPYLUpepx9cz/D46UPU5KXgAQa+NDps1v6J3xP1i2HtaDB0M9aX2deA7SYff//+gUCovMmIK/qfsFcOk+4Y5ZN97XlG6zebqtMbKgeRFi51vnxTQYBUik2rS/Cn6PC8ADR8FGxsRPB82dzfND90gIcshOcYUkfjherBz53odpm6TP8txlwOZ71xmfHHOvq053qFF/MRlS3jP0ELudrf2OeN8DHvp6ZceLe8qKYvWz/7yp0u4dKPfli3CYq0O13Ih71mylJ80tOi10On8wi+F4+LWgDPeJ30msSQt9/vkmHq9/Lvo2b461mP801v3W4xTcs6CbvF9UDdrSt+A8OUbpSh55qAUFXWznBBfdeJ8a4d7ugT5tvxUza3h9m4H7ptTqiG4z0g5dc0X29OcGlhpGFMpQo9ytTS+NViZpNdvU4kWx+LKxNY10kQ1yqGXrhe4/1nvP7E+nd5A92TtaRplbHSqoIdOqtRWti+fkB5/n1+/VvCmz12pG1kpQWsfi1ftlBobm0bpngs16CHkbIwdLnParxtTV3QYRlfJ0KFskH7pdN/YDn+yRuSd7sNH3aO0DYPggk6uWuXrfOc+fa3VTxFVvKaNxHsiHmsXyCLIE5yuOeN3/Jdf8HBL/5M6shjyhxHx9BjB1O0+4NLOnjLLSxwO7ukN4jMbOIcD879KLSi6Pk61Oqm2377n8079PXEEQ7cy7OKEC9nbpet118fxweTafpt69x/Bt8UqGzNQt7aelpc44dn5cqhwf71+qKp/Zf/+a0zcizOUWpl/iBcSXip0pplkatCchoH5c5aUM8I7/dWxAej8WicPL1URFZ9BDJelUwEwTkGqUhgSlydVes95YdXvhh9Gfz/aeFWvgVb4tuLbcv4+wLdutVZv/cUonwBD/6eDlE0aSiKK/uoH3+J1wDE/jMVqY2ysGufN84oIXB0sPzy8ollX/LegY74DgJXJR57sn+VGza0x3DnuIgABFM15LmajjjsNlYj+JEZGbuRYcAMOWxFkPN2w6Wd46xo4gVWQR/X4lyI/R6K/YK0110GzudPRW7Y+UOBGTfNNzHeYT0fiH0taunBpq9HEW8OKSaBGj21L0MqenEmNRWBAWDWAk4CpNoEZJ2tTaPFgbQYj8HxtFilErs3BTRwT8uO1NXQaWfIotchmPkAF5mMBAliEmZiOGVgCG9LgRzpscMAOOwowlT3JhusdazXGSC/hxR3UlmWVwWHpOIKheqONvjyhSiTHIkVUco5bnji8m//zL7PKaT1Vl5I6UE609f+gkr6MZKVyKc7zJRmCahLsdlyA5fdQkRSan9LgnnLEyGSkaKJCJog0wAgvepWBt80+1yKln1bMVtCljfNWDueKLsWwaEbBSfSPTEmVRsUcYYMnEjcjeyCZzBXK9E9BYBXLKjOSpUDR+nEV3TFSUdQaz+ot98QxgXwx0GQ+EEUAKB2qZPkQQ0GqFD8UPFMqyaCHM24BZmSGic9EYMagKizOw9Hz50DMrDLrqqLkTAhplMictiCAx5S3BIUQdeJeLnBy2CNtMfz6cV4u8XKoFZQesbf9YZiIERiHjaNodDW6LgcirX/mPnJIkBGDUpTBhSa0EIr38D5hCIszhCM8URGBqImoWjpvpt1ebu/v3Gl3qJfMnNM+9V+kiRFyROTPHQWOcs1dNW94/ukKMPZBvDi55i5CttdeJz84DLngLqjcdwEZ87bFFR8CIG35OAkDVN6VRDZ7aq67NteYqZ2lpT8oYB2CytoBd6VuAx4WgiAsnuj3WohG+LugzXiQRDeM3XYXlULv4dp5VFYC) format("woff2"),url(/assets/KaTeX_Size3-Regular-CTq5MqoE.woff) format("woff"),url(/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2) format("woff2"),url(/assets/KaTeX_Size4-Regular-BF-4gkZK.woff) format("woff"),url(/assets/KaTeX_Size4-Regular-DWFBv043.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2) format("woff2"),url(/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff) format("woff"),url(/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf) format("truetype")}.katex{font: 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;position:relative;text-indent:0;text-rendering:auto}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.16.45"}.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 .smash{display:inline;line-height:0}.katex .clap,.katex .llap,.katex .rlap{position:relative;width:0}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.katex .sqrt>.root{margin-left:.2777777778em;margin-right:-.5555555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.1666666667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.6666666667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.4566666667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.1466666667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.7142857143em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.8571428571em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.1428571429em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.2857142857em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.4285714286em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.7142857143em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.0571428571em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.4685714286em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.9628571429em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.5542857143em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.7777777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.8888888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.1111111111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.3044444444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.7644444444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.5833333333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.7283333333em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.0733333333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.4861111111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.4402777778em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.7277777778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.2893518519em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.4050925926em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.462962963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.5208333333em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.5787037037em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.2002314815em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.4398148148em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.2410800386em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.2892960463em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.337512054em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.3857280617em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.4339440694em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.4821600771em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.5785920926em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.6943105111em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.8331726133em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.1996142719em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.2009646302em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.2411575563em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.2813504823em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.3215434084em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.3617363344em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.4019292605em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.4823151125em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.578778135em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.6945337621em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.8336012862em}.katex .fontsize-ensurer.reset-size11.size11,.katex .sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{display:inline-block;width:.12em}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{display:inline-block;min-width:1px}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;display:block;height:inherit;position:absolute;width:100%}.katex svg path{stroke:none}.katex svg{fill-rule:nonzero;fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1}.katex img{border-style:none;max-height:none;max-width:none;min-height:0;min-width:0}.katex .stretchy{display:block;overflow:hidden;position:relative;width:100%}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{overflow:hidden;position:relative;width:100%}.katex .halfarrow-left{left:0;overflow:hidden;position:absolute;width:50.2%}.katex .halfarrow-right{overflow:hidden;position:absolute;right:0;width:50.2%}.katex .brace-left{left:0;overflow:hidden;position:absolute;width:25.1%}.katex .brace-center{left:25%;overflow:hidden;position:absolute;width:50%}.katex .brace-right{overflow:hidden;position:absolute;right:0;width:25.1%}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{border:.04em solid;box-sizing:border-box}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{border-right:.049em solid;border-top:.049em solid;box-sizing:border-box;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{display:inline-block;position:absolute;right:calc(50% + .3em);text-align:left}.katex .cd-label-right{display:inline-block;left:calc(50% + .3em);position:absolute;text-align:right}.katex-display{display:block;margin:1em 0;text-align:center}.katex-display>.katex{display:block;text-align:center;white-space:nowrap}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{padding-left:2em;text-align:left}body{counter-reset:katexEqnNo mmlEqnNo}:root{color:#111;background:#f6f6f4;font-family:Segoe UI Variable,Segoe UI,Aptos,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;--radius-sm: 8px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 18px;--shadow-subtle: 0 1px 2px rgba(0, 0, 0, .025);--shadow-raised: 0 6px 18px rgba(0, 0, 0, .045);--shadow-overlay: 0 16px 44px rgba(0, 0, 0, .1);--paper: #ffffff;--surface: #f6f6f4;--surface-2: #eeeeeb;--line: #e3e3df;--line-2: #c9c9c2;--ink: #111111;--ink-2: #262626;--ink-3: #525252;--ink-4: #737373;--accent: #111111;--accent-fg: #ffffff;--accent-soft: #f0f0ed;--up: #16a34a;--down: #dc2626;--max-bg: #fef2f2;--min-bg: #f3f3f1;--max-ink: #991b1b;--min-ink: #262626;--focus-ring: #111111}*{box-sizing:border-box}body{margin:0;background:linear-gradient(90deg,rgba(17,17,17,.012) 1px,transparent 1px) 0 0 / 48px 48px,linear-gradient(180deg,#fbfbfa 0,#f6f6f4 360px),#f6f6f4}button,input,textarea,select{font:inherit}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible,[tabindex]:not([tabindex="-1"]):focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}textarea,input,select{font-family:inherit}.app-shell{min-height:0;padding:24px 28px 0;max-width:1680px;margin:0 auto}.app-shell:has(.analyzer-standalone-wrap),.app-shell:has(.csim-page),.app-shell:has(.gglab-page){min-height:calc(100dvh - 56px);padding-bottom:24px;box-sizing:border-box}.app-shell:has(.csim-page),.app-shell:has(.gglab-page){display:grid}.app-shell:has(.gglab-page){padding-top:8px}.app-footer{margin:18px 0 0;border-top:1px solid #dedede;background:#f0f0f0;color:#475569;font-size:.88rem}.footer-top,.footer-bottom{max-width:1600px;margin:0 auto;padding-left:32px;padding-right:32px}.footer-top{display:grid;grid-template-columns:minmax(240px,.72fr) minmax(420px,1.28fr);gap:clamp(14px,2.5vw,26px);padding-top:clamp(12px,2vw,18px);padding-bottom:clamp(12px,2vw,18px)}.footer-brand-block{display:grid;align-content:start;gap:8px;max-width:360px}.footer-brand{display:inline-flex;align-items:center;gap:12px;color:#111827;font-size:1rem;font-weight:900}.footer-brand img{width:40px;height:40px;border-radius:10px;object-fit:cover;box-shadow:0 8px 24px #0f172a14}.footer-brand-block p{margin:0;color:#475569;line-height:1.45;font-size:.86rem}.footer-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(10px,2vw,20px)}.footer-nav div{display:grid;align-content:start;gap:8px}.footer-nav strong{margin-bottom:2px;color:#111827;font-size:.82rem}.footer-nav .footer-nav-link,.footer-bottom button{width:fit-content;border:0;padding:0;color:#475569;background:transparent;font:inherit;font-weight:650;text-align:left}.footer-nav .footer-nav-link{display:inline-flex;align-items:center;gap:8px}.footer-nav a.footer-nav-link{text-decoration:none}.footer-nav .footer-nav-label{text-align:left;line-height:1.35}.footer-nav-icon{flex-shrink:0;display:block;opacity:.88}.footer-nav-icon--github{opacity:.9}.footer-nav .footer-nav-link:hover{color:var(--ink)}.footer-nav .footer-nav-link:hover .footer-nav-label{text-decoration:underline;text-underline-offset:3px}.footer-nav .footer-nav-link:hover .footer-nav-icon,.footer-nav .footer-nav-link:hover .footer-nav-icon--github{opacity:1}.footer-bottom button:hover{color:var(--ink);text-decoration:underline;text-underline-offset:3px}.footer-bottom{display:flex;align-items:center;justify-content:center;gap:12px;border-top:1px solid #dedede;padding-top:8px;padding-bottom:10px;color:#475569;font-size:.8rem;font-weight:600;text-align:center}.footer-bottom strong{color:#111827}.footer-bottom .footer-developer-link{color:inherit;text-decoration:none}.footer-bottom .footer-developer-link:hover strong{text-decoration:underline;text-underline-offset:3px}.footer-bottom .footer-developer-link:focus-visible{outline:2px solid #171717;outline-offset:3px;border-radius:4px}.notification-stack{position:fixed;top:76px;right:clamp(14px,2.4vw,28px);z-index:320;display:grid;gap:10px;width:min(420px,calc(100vw - 28px));pointer-events:none}.notification-card{position:relative;display:grid;gap:8px;overflow:hidden;border:1px solid rgba(17,17,17,.12);border-radius:18px;padding:14px 16px 14px 18px;color:#0a0a0a;background:#ffffffeb;box-shadow:0 20px 56px #0f172a2e,0 2px 10px #0f172a14;pointer-events:auto;-webkit-backdrop-filter:blur(18px) saturate(1.15);backdrop-filter:blur(18px) saturate(1.15);animation:notification-slide-in .18s ease-out both}.notification-card:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:#171717}.notification-card.error:before{background:#dc2626}.notification-card.warning:before{background:#f59e0b}.notification-card.info:before{background:#2563eb}.notification-card.error{border-color:#dc262638}.notification-card.warning{border-color:#f59e0b47}.notification-card.info{border-color:#2563eb38}.notification-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.notification-header strong{color:#111827;font-size:.94rem;line-height:1.25}.notification-card p{margin:0;color:#334155;line-height:1.45;font-size:.9rem}.notification-close{width:28px;height:28px;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(15,23,42,.12);border-radius:999px;padding:0;color:#475569;background:#ffffffbd;font-size:1.15rem;line-height:1;cursor:pointer}.notification-close:hover{border-color:#0f172a3d;color:#0f172a;background:#fff}.notification-action{width:fit-content;border:1px solid #171717;border-radius:999px;padding:7px 12px;color:#fff;background:#171717;font-size:.84rem;font-weight:800;text-decoration:none;cursor:pointer}.notification-action:hover{background:#000}.notification-details{border-top:1px solid rgba(15,23,42,.08);padding-top:8px;font-size:.82rem;color:#475569}.notification-details summary{cursor:pointer;font-weight:700}.notification-details ul{margin:8px 0 0;padding-left:18px}.notification-details li+li{margin-top:4px}@keyframes notification-slide-in{0%{opacity:0;transform:translate3d(16px,-8px,0) scale(.98)}to{opacity:1;transform:translateZ(0) scale(1)}}.page-loading-fallback{display:grid;grid-template-columns:minmax(0,360px);justify-content:center;justify-items:center;align-content:center;gap:14px;overflow:hidden;min-height:min(520px,calc(100dvh - 160px));position:relative;text-align:center}.page-loading-fallback:before{content:"";position:absolute;top:-40%;right:-20%;bottom:-40%;left:-20%;background:linear-gradient(115deg,transparent 35%,rgba(255,255,255,.72) 48%,transparent 61%);animation:tool-loading-sweep 1.6s ease-in-out infinite;pointer-events:none}.tool-loading-orb{position:relative;display:grid;place-items:center;width:52px;height:52px;border-radius:18px;background:radial-gradient(circle at 35% 25%,#fff 0,#fff 18%,#111827 19%,#111827);box-shadow:0 18px 40px #0f172a2e}.tool-loading-orb span{width:28px;height:28px;border:3px solid rgba(255,255,255,.42);border-top-color:#fff;border-radius:999px;animation:spin .76s linear infinite}.tool-loading-copy{display:grid;justify-items:center;gap:4px}.tool-loading-copy strong{color:#111827;font-size:1rem}.tool-loading-copy span{color:#64748b;font-size:.9rem;font-weight:600}.tool-loading-skeleton{display:grid;justify-self:center;width:min(220px,100%);gap:9px}.tool-loading-skeleton i{display:block;justify-self:center;height:12px;border-radius:999px;background:linear-gradient(90deg,#e5e7eb,#f8fafc 45%,#e5e7eb);background-size:220% 100%;animation:tool-loading-shimmer 1.2s ease-in-out infinite}.tool-loading-skeleton i:nth-child(2){width:72%}.tool-loading-skeleton i:nth-child(3){width:48%}@keyframes tool-loading-sweep{0%{transform:translate(-55%)}to{transform:translate(55%)}}@keyframes tool-loading-shimmer{0%{background-position:120% 0}to{background-position:-120% 0}}.mobile-renderer-warning,.mobile-scroll-notice{display:none}.global-header{display:flex;align-items:center;justify-content:space-between;padding:0 20px;height:56px;background:#fbfbfaf5;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:100;box-shadow:none;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.header-left{display:flex;align-items:center;gap:12px;cursor:pointer}.header-logo{display:block;flex:0 0 28px;width:28px;height:28px;max-width:28px;max-height:28px;border-radius:6px;object-fit:cover;box-shadow:none}.header-titles{display:flex;flex-direction:column;justify-content:center;gap:2px}.header-title{margin:0;font-size:15px;font-weight:720;color:var(--ink);line-height:1.15}.header-subtitle{font-size:11.5px;color:var(--ink-4);font-weight:500;line-height:1.1}.header-nav{display:flex;align-items:stretch;height:100%}.nav-item{display:flex;align-items:center;gap:8px;padding:0 16px;border:none;border-radius:0;color:var(--ink-3);background:transparent;font-size:14px;font-weight:580;text-decoration:none;height:100%;position:relative;transition:color .15s}.nav-item:after{content:"";position:absolute;left:16px;right:16px;bottom:14px;height:2px;background-color:currentColor;border-radius:999px;transform:scaleX(0);transform-origin:left center;transition:transform .2s ease}.nav-item:hover{color:var(--ink)}.nav-item:hover:after{transform:scaleX(1)}.nav-item.active{color:var(--ink)}.nav-item.active:after{transform:scaleX(1)}.nav-item svg{margin-top:-1px}.tools-menu{position:relative;height:100%}.tools-dropdown{position:absolute;top:calc(100% + 8px);right:0;z-index:80;display:grid;gap:6px;width:260px;border:1px solid var(--line);border-radius:var(--radius-md);padding:8px;background:var(--paper);box-shadow:var(--shadow-raised)}.tools-dropdown button,.tools-dropdown a{display:flex;align-items:center;gap:10px;width:100%;border:0;border-radius:12px;padding:10px;background:transparent;color:#374151;text-align:left;text-decoration:none;cursor:pointer}.tools-dropdown button:hover,.tools-dropdown button.active,.tools-dropdown a:hover{background:var(--surface);color:var(--ink)}.tools-dropdown button>svg,.tools-dropdown a>svg{flex:0 0 auto}.tools-dropdown button span,.tools-dropdown a span{display:grid;gap:2px}.tools-dropdown button strong,.tools-dropdown a strong{display:flex;align-items:center;gap:6px;font-size:.88rem}.tools-beta-badge{display:inline-flex;align-items:center;border:1px solid #f59e0b;border-radius:999px;padding:0 4px;background:#fffbeb;color:#92400e;font-size:.54rem;font-style:normal;font-weight:800;line-height:1.25;text-transform:uppercase}.tools-dropdown button small,.tools-dropdown a small{color:#6b7280;font-size:.76rem;line-height:1.25}.pdf-word-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;display:grid;place-items:center;padding:20px;background:#0f172a61}.pdf-word-modal{position:relative;display:grid;gap:14px;width:min(520px,100%);border-radius:var(--radius-xl);padding:24px;background:#fff;color:#111827;box-shadow:var(--shadow-overlay)}.pdf-word-modal h2,.pdf-word-modal p{margin:0}.pdf-word-modal h2{padding-right:32px;font-size:1.18rem}.pdf-word-modal p{color:#4b5563;line-height:1.55}.pdf-word-modal-close{position:absolute;top:12px;right:12px;width:32px;height:32px;border:0;border-radius:999px;background:#f3f4f6;color:#111827;font-size:1.25rem;line-height:1;cursor:pointer}.pdf-word-modal-email{border-radius:12px;padding:10px 12px;background:#f8fafc;color:#1f2937;font-weight:800}.pdf-word-modal-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}.pdf-word-modal-actions button,.pdf-word-modal-primary{border:0;border-radius:999px;padding:7px 12px;font-size:.84rem;font-weight:600;text-decoration:none;cursor:pointer}.pdf-word-modal-actions button{background:#f3f4f6;color:#374151}.pdf-word-modal-primary{background:#111827;color:#fff}.pdf-word-page{width:100%;min-height:calc(100dvh - 104px);background:var(--paper)}.pdf-word-shell{display:grid;gap:20px;width:min(1180px,calc(100% - 32px));margin:0 auto;padding:28px 0 44px}.pdf-word-intro{display:grid;gap:10px;max-width:760px}.pdf-word-intro .eyebrow{margin:0;color:var(--ink-4);font-size:.74rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.pdf-word-intro h2{margin:0;color:var(--ink);font-size:clamp(1.7rem,4vw,3rem);line-height:1.05}.pdf-word-intro p{margin:0;color:var(--ink-3);font-size:1rem;line-height:1.65}.pdf-word-status-panel{display:flex;align-items:center;gap:12px;border-top:1px solid var(--line-2);border-bottom:1px solid var(--line);padding:14px 4px}.pdf-word-status-dot{width:10px;height:10px;border-radius:999px;background:#f59e0b;box-shadow:0 0 0 5px #f59e0b24}.pdf-word-status-dot.ready{background:#16a34a;box-shadow:0 0 0 5px #16a34a24}.pdf-word-status-panel div{flex:1;display:grid;gap:2px;min-width:0}.pdf-word-status-panel strong{color:var(--ink);font-size:.95rem}.pdf-word-guide-button{display:inline-grid;box-sizing:border-box;width:36px;height:36px;padding:0;place-items:center;align-self:center;flex-shrink:0;border:1px solid rgba(245,158,11,.45);border-radius:999px;color:#d97706;background:#fffbeb;box-shadow:0 0 0 4px #f59e0b1a,0 0 8px #f59e0b40;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.pdf-word-guide-button:hover{transform:translateY(-1px);background:#fef3c7;box-shadow:0 0 0 6px #f59e0b29,0 0 24px #f59e0b8c}.pdf-word-guide-button svg{display:block;flex-shrink:0;filter:drop-shadow(0 0 5px rgba(245,158,11,.65))}.pdf-word-status-panel span:not(.pdf-word-status-dot){overflow-wrap:anywhere;color:var(--ink-4);font-size:.86rem;line-height:1.4}.pdf-word-guide-backdrop{position:fixed;z-index:50;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:24px;background:#0f172a75}.pdf-word-guide-modal{display:grid;gap:18px;width:min(720px,100%);max-height:min(86vh,820px);overflow:auto;border:1px solid var(--line);border-radius:20px;padding:22px;background:var(--paper);box-shadow:0 24px 70px #0f172a47}.pdf-word-guide-header{display:flex;align-items:start;justify-content:space-between;gap:18px}.pdf-word-guide-header h3{margin:4px 0 0;color:var(--ink);font-size:1.35rem}.pdf-word-guide-close{display:grid;width:34px;height:34px;flex:0 0 auto;place-items:center;border:0;padding:0;color:var(--ink-2);background:transparent;cursor:pointer}.pdf-word-guide-close svg{display:block;overflow:visible}.pdf-word-guide-steps{display:grid;gap:12px;margin:0;padding-left:22px;color:var(--ink-3);font-size:.94rem;line-height:1.6}.pdf-word-guide-steps li{padding-left:4px}.pdf-word-guide-steps strong{display:block;color:var(--ink)}.pdf-word-guide-inline-step{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.pdf-word-guide-inline-step strong{display:inline}.pdf-word-guide-steps a{display:inline-flex;width:fit-content;border:1px solid var(--ink);border-radius:8px;padding:4px 8px;color:var(--accent-fg);background:var(--ink);font-size:.82rem;line-height:1.2;font-weight:850;text-decoration:none}.pdf-word-guide-steps span,.pdf-word-guide-note span{border-radius:6px;padding:1px 5px;color:var(--ink-2);background:var(--surface);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.86em}.pdf-word-guide-note{border-left:3px solid #f59e0b;padding:10px 12px;color:var(--ink-3);background:#fffbeb;font-size:.9rem;line-height:1.55}.pdf-word-workspace{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:28px;align-items:start}.pdf-word-upload-column,.pdf-word-options-column{display:grid;gap:14px}.pdf-word-options-column{border-top:1px solid var(--line-2);padding-top:18px}.pdf-word-dropzone{display:grid;place-items:center;gap:10px;min-height:260px;border:1.5px dashed var(--line-2);border-radius:12px;padding:28px;background:linear-gradient(135deg,rgba(17,17,17,.035),transparent 34%),var(--surface);color:var(--ink-3);text-align:center;cursor:pointer;transition:border-color .16s ease,background .16s ease,transform .16s ease}.pdf-word-dropzone input{display:none}.pdf-word-dropzone.drag-active,.pdf-word-dropzone:hover{border-color:var(--ink);background:var(--paper);transform:translateY(-1px)}.pdf-word-dropzone.has-file{border-style:solid;background:#f8fafc}.pdf-word-drop-icon{display:grid;place-items:center;width:54px;height:54px;border:1px solid var(--line-2);border-radius:12px;background:var(--paper);color:var(--ink)}.pdf-word-drop-icon svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.pdf-word-dropzone strong{max-width:100%;overflow-wrap:anywhere;color:var(--ink);font-size:1.02rem}.pdf-word-dropzone span:last-child{color:var(--ink-4);font-size:.88rem;font-weight:600}.pdf-word-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:12px}.pdf-word-option-toggles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;border-top:1px solid var(--line);padding-top:12px}.pdf-word-option-toggles .checkbox-label{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:10px;padding:10px 14px;background:var(--surface);color:var(--ink-2);font-size:.86rem;font-weight:500;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease}.pdf-word-option-toggles .checkbox-label:hover{background:var(--paper);border-color:var(--line-2)}.pdf-word-option-toggles .checkbox-label:has(input:checked){background:var(--paper);border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}.pdf-word-option-toggles .checkbox-label input[type=checkbox]{width:16px;height:16px;padding:0;border:none;border-radius:3px;accent-color:var(--ink);margin:0;flex-shrink:0;cursor:pointer}.pdf-word-advanced-options{display:grid;gap:12px;border-top:1px solid var(--line);padding-top:12px}.pdf-word-advanced-options:not([open]){gap:0}.pdf-word-advanced-options summary{cursor:pointer;color:var(--ink);font-size:.9rem;font-weight:800}.pdf-word-llm-summary{display:grid;grid-template-columns:minmax(72px,auto) minmax(0,1fr);gap:8px 12px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px 0}.pdf-word-llm-summary span{color:var(--ink-4);font-size:.78rem;font-weight:900;text-transform:uppercase}.pdf-word-llm-summary strong{min-width:0;overflow-wrap:anywhere;color:var(--ink-2);font-size:.88rem}.pdf-word-provider-status{border:1px solid var(--line);border-radius:10px;padding:10px 12px;color:var(--ink-3);background:var(--surface);font-size:.84rem;font-weight:700;line-height:1.45;overflow-wrap:anywhere}.pdf-word-provider-status.ready{border-color:#16a34a42;color:#166534;background:#f0fdf4}.pdf-word-provider-status.blocked{border-color:#f59e0b52;color:#92400e;background:#fffbeb}.pdf-word-option-toggles.single-column{grid-template-columns:1fr;border-top:0;padding-top:0}.pdf-word-error{border-left:3px solid #b91c1c;padding:8px 10px;background:#fef2f2;color:#991b1b;font-size:.86rem;font-weight:700;line-height:1.45}.pdf-word-result-strip{display:grid;gap:12px;border-top:1px solid var(--line-2);padding-top:18px}.pdf-word-progress-head{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--ink);font-weight:800}.pdf-word-progress-track{height:8px;overflow:hidden;border-radius:999px;background:var(--line)}.pdf-word-progress-track span{display:block;height:100%;border-radius:inherit;background:var(--ink);transition:width .18s ease}.pdf-word-progress-fill{width:var(--pdf-word-progress, 0%)}.pdf-word-result-strip p{margin:0;color:var(--ink-3);font-size:.9rem;line-height:1.5}.pdf-word-terminal{max-height:180px;overflow:auto;border:1px solid var(--line);border-radius:10px;margin:0;padding:12px;background:#0f172a;color:#e5e7eb;font-size:.78rem;line-height:1.45;white-space:pre-wrap}.pdf-word-log-panel{display:grid;gap:8px}.pdf-word-log-panel summary{cursor:pointer;color:var(--ink-3);font-size:.84rem;font-weight:800}.pdf-word-result-detail{display:grid;gap:12px}.pdf-word-result-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.pdf-word-result-summary div{display:grid;gap:4px;border:1px solid var(--line);border-radius:10px;padding:10px 12px;background:var(--surface)}.pdf-word-result-summary span{color:var(--ink-4);font-size:.72rem;font-weight:900;text-transform:uppercase}.pdf-word-result-summary strong{min-width:0;overflow:hidden;color:var(--ink-2);font-size:.9rem;text-overflow:ellipsis;white-space:nowrap}.pdf-word-downloads{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.pdf-word-preview-panel{display:grid;gap:10px;width:100%;margin-top:6px;border:1px solid var(--line);border-radius:14px;padding:12px;background:var(--surface)}.pdf-word-preview-head{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--ink-2);font-size:.88rem;font-weight:850}.pdf-word-preview-head a{color:var(--ink-3);font-size:.8rem;font-weight:800;text-decoration:underline}.pdf-word-preview-panel iframe{width:100%;min-height:min(70vh,720px);border:1px solid var(--line);border-radius:10px;background:var(--paper)}.pdf-word-download-primary,.pdf-word-download-link{display:inline-flex;align-items:center;justify-content:center;min-height:38px;border:1px solid var(--ink);border-radius:10px;padding:8px 12px;color:var(--ink);background:var(--paper);font-size:.86rem;font-weight:850;text-decoration:none;cursor:pointer}.pdf-word-download-primary{background:var(--ink);color:var(--accent-fg)}.pdf-word-download-link:disabled{opacity:.58;cursor:not-allowed}.pdf-word-artifact-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%;margin-top:4px}.pdf-word-artifact-list a{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;border:1px solid var(--line);border-radius:8px;padding:8px 10px;color:var(--ink-2);background:var(--surface);text-decoration:none}.pdf-word-artifact-list span{border-radius:6px;padding:2px 6px;background:var(--paper);color:var(--ink-4);font-size:.72rem;font-weight:900;text-transform:uppercase}.pdf-word-artifact-list strong{min-width:0;overflow:hidden;color:var(--ink-2);font-size:.82rem;text-overflow:ellipsis;white-space:nowrap}.pdf-word-artifact-list em{color:var(--ink-4);font-size:.78rem;font-style:normal;font-weight:700}.pdf-word-preview-actions{display:flex;flex-wrap:wrap;gap:8px}.pdf-word-artifact-preview{display:grid;gap:10px;border:1px solid var(--line);border-radius:14px;padding:12px;background:var(--surface)}.pdf-word-artifact-preview iframe{width:100%;min-height:min(70vh,720px);border:1px solid var(--line);border-radius:10px;background:var(--paper)}.pdf-word-preview-close{border:1px solid var(--line);border-radius:8px;padding:6px 10px;color:var(--ink-2);background:var(--paper);font-size:.8rem;font-weight:850;cursor:pointer}.pdf-word-preview-note{color:var(--ink-3);font-size:.86rem;font-weight:700}.pdf-word-warning-list{display:grid;gap:6px;border-left:3px solid #f59e0b;padding:8px 10px;color:#92400e;background:#fffbeb;font-size:.84rem;font-weight:700;line-height:1.45}@media (max-width: 860px){.pdf-word-workspace,.pdf-word-field-grid,.pdf-word-option-toggles,.pdf-word-result-summary,.pdf-word-artifact-list{grid-template-columns:1fr}.pdf-word-shell{width:min(100% - 24px,680px);padding-top:18px}.pdf-word-dropzone{min-height:210px;padding:22px 16px}}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.account-menu{position:relative;display:flex;align-items:center;height:100%}.account-menu-trigger{display:inline-flex;align-items:center;gap:8px;border:0;border-radius:999px;padding:0 10px 0 6px;color:#262626;background:transparent;height:100%}.account-menu-trigger:hover,.account-menu-trigger.active,.account-menu-trigger[aria-expanded=true]{color:#0a0a0a;background:#f0f0f0}.account-avatar{display:inline-flex;flex:0 0 32px;width:32px;height:32px;max-width:32px;max-height:32px;align-items:center;justify-content:center;border-radius:999px;color:#fafafa;background:#111;border:1px solid #2a2a2a;font-size:.88rem;font-weight:900;line-height:1}.account-dropdown{position:absolute;top:calc(100% + 8px);right:0;z-index:140;width:min(280px,calc(100vw - 24px));overflow:hidden;border:1px solid #e5e7eb;border-radius:var(--radius-lg);background:#fff;box-shadow:var(--shadow-overlay)}.account-dropdown-email{padding:14px 16px;color:#111827;background:#f8fafc;font-size:.9rem;font-weight:800;word-break:break-word}.account-dropdown-group{display:grid;gap:2px;padding:8px;border-top:1px solid #e5e7eb}.account-dropdown-group button{display:flex;align-items:center;gap:10px;border:0;border-radius:12px;padding:10px;color:#374151;background:transparent;font-size:.92rem;font-weight:700;text-align:left}.account-dropdown-group button:hover{color:#111827;background:#f8fafc}.account-dropdown-group.danger button{color:#b91c1c}.account-dropdown-group.danger button:hover{color:#991b1b;background:#fef2f2}.workspace{display:grid;grid-template-columns:minmax(320px,372px) minmax(0,1fr);gap:clamp(20px,2.4vw,32px);align-items:start}.workspace-sidebar{position:sticky;top:88px;display:grid;gap:14px;max-height:calc(100vh - 112px);overflow-y:auto;overscroll-behavior:contain;padding-right:20px;border-right:1px solid var(--line)}.workspace-sidebar-tabs{display:grid;grid-template-columns:1fr 1fr;gap:0;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:0;background:transparent}.workspace-sidebar-tabs button{border:0;border-bottom:2px solid transparent;border-radius:0;padding:10px 6px 12px;color:var(--ink-4);background:transparent;font-size:.86rem;font-weight:650;cursor:pointer}.workspace-sidebar-tabs button.active{color:var(--ink);border-bottom-color:var(--ink);background:transparent}.workspace-sidebar-tabs button[aria-disabled=true]{cursor:not-allowed}.workspace-sidebar-tabs button[aria-disabled=true]:hover,.workspace-sidebar-tabs button[aria-disabled=true]:focus,.workspace-sidebar-tabs button[aria-disabled=true]:active{color:#525252;background:transparent}.solver-disabled-state{display:grid;gap:8px;border:1px dashed var(--line-2);border-radius:var(--radius-md);padding:16px;color:var(--ink-3);background:transparent}.solver-disabled-state strong{color:#0a0a0a;font-size:.98rem}.solver-disabled-state p{margin:0;line-height:1.5;font-size:.88rem}.parameter-sliders{display:grid;gap:12px;background:#fff;border:1px solid #e5e7eb;border-radius:var(--radius-md);padding:14px 16px;margin-bottom:12px}.parameter-sliders-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.parameter-sliders-header strong{color:#0a0a0a;font-size:.95rem}.parameter-sliders-reset{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid #d4d4d8;background:#fff;color:#404040;border-radius:999px;padding:4px 12px;font-size:.8rem;cursor:pointer;transition:background .12s ease,border-color .12s ease}.parameter-sliders-reset:hover{background:#f4f4f5;border-color:#a3a3a3}.parameter-sliders-body{display:grid;gap:14px}.parameter-slider-row{display:grid;gap:6px}.parameter-slider-label{display:flex;justify-content:space-between;align-items:baseline;font-size:.85rem;color:#404040}.parameter-slider-name{font-weight:600;color:#0a0a0a}.parameter-slider-value{font-variant-numeric:tabular-nums;font-weight:600;color:var(--ink)}.parameter-slider-controls{display:grid;grid-template-columns:1fr 70px;gap:8px;align-items:center}.parameter-slider-controls input[type=range]{width:100%;accent-color:var(--ink)}.parameter-slider-number{width:100%;padding:4px 6px;border:1px solid #d4d4d8;border-radius:8px;font-size:.85rem;font-variant-numeric:tabular-nums;background:#fafafa}.parameter-slider-number:focus{outline:2px solid var(--ink);outline-offset:-1px}.parameter-slider-range{display:flex;justify-content:space-between;font-size:.72rem;color:#737373;font-variant-numeric:tabular-nums}.result-area-toolbar{display:flex;justify-content:flex-end;margin-bottom:8px}.diagram-tools{margin-top:12px;border:1px solid var(--line);border-radius:12px;padding:0;background:var(--surface)}.diagram-tools-toggle{display:flex;align-items:center;justify-content:space-between;min-height:40px;padding:0 12px;color:var(--ink);cursor:pointer;font-size:.86rem;font-weight:600}.diagram-tools-toggle::marker{content:""}.diagram-tools-toggle:after{content:"⌄";color:var(--ink-4);font-size:1rem}.diagram-tools[open] .diagram-tools-toggle:after{content:"⌃"}.diagram-tools-content{display:grid;gap:10px;padding:0 12px 12px}.diagram-tools-content .export-menu-item{padding:7px 8px}.input-diagram-tools{margin-top:12px}.diagram-tools-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media (max-width: 720px){.diagram-tools-row{grid-template-columns:1fr}.render-tools-floating{right:16px}.render-editor-trigger{width:44px;height:44px}.render-tools-menu{width:min(300px,calc(100vw - 32px))}}.diagram-tools-block{display:grid;gap:8px}.diagram-tools-title{font-size:.95rem;font-weight:600;margin:0;color:var(--ink)}.diagram-tools-hint{font-size:.8rem;color:#525b6f;margin:0}.diagram-tools-button{background:#fff;border:1px solid #c4d3ec;border-radius:10px;padding:8px 14px;font-size:.85rem;cursor:pointer;font-weight:500;color:var(--ink);transition:background .12s,border-color .12s}.diagram-tools-button:hover:not(:disabled){background:#eaf2ff;border-color:var(--ink)}.diagram-tools-button:disabled{opacity:.55;cursor:not-allowed}.diagram-tools-button.primary{background:var(--ink);color:#fff;border-color:var(--ink)}.diagram-tools-button.primary:hover:not(:disabled){background:#16314f}.diagram-tools-button-row{display:flex;flex-wrap:wrap;gap:8px}.diagram-tools-variants{border-top:1px dashed #c4d3ec;padding-top:12px;display:grid;gap:10px}.diagram-tools-variants-header{display:flex;align-items:center;justify-content:space-between;font-size:.82rem;color:#525b6f}.diagram-tools-variants-list{display:grid;gap:12px;margin:0;padding-left:22px}.diagram-tools-variant-item{display:grid;gap:6px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:10px 12px}.diagram-tools-variant-item p{margin:0;font-size:.9rem;line-height:1.45;color:#1f2937}.export-menu{position:relative;display:inline-block}.export-menu-trigger{background:#111;color:#fff;border:1px solid #111111;border-radius:10px;padding:8px 14px;font-size:.85rem;font-weight:600;cursor:pointer;transition:background .15s}.export-menu-trigger:hover{background:#000}.export-menu-dropdown{position:absolute;top:calc(100% + 6px);right:0;z-index:50;min-width:280px;background:#fff;border:1px solid #d4d4d4;border-radius:var(--radius-md);padding:6px;box-shadow:var(--shadow-raised);display:grid;gap:2px}.export-menu-item{display:grid;grid-template-columns:22px 1fr;gap:10px;align-items:start;padding:10px 12px;border:none;background:transparent;border-radius:10px;text-align:left;cursor:pointer;transition:background .12s}.export-menu-item:hover:not(:disabled):not([aria-disabled=true]){background:#f5f5f5}.export-menu-item:disabled,.export-menu-item[aria-disabled=true]{cursor:not-allowed;opacity:.6}.export-menu-item svg{width:22px;height:22px;color:#111}.export-menu-item span{display:grid;gap:2px}.export-menu-item strong,.export-menu-label{font-size:.88rem;font-weight:600;color:#111}.export-menu-item small,.export-menu-hint{font-size:.75rem;color:#525252}.export-menu-locked-tag{margin-left:6px;font-style:normal;font-size:.72rem;font-weight:500;color:#b91c1c}.history-drawer-wrap{display:grid;gap:10px}.history-toggle{width:100%}.history-panel{width:100%;max-height:280px;overflow:auto;border:1px solid var(--line);border-radius:var(--radius-lg);padding:12px;background:var(--surface)}.account-learning-wide,.account-learning-grid .field-hint{grid-column:1 / -1}@media (max-width: 760px){.history-item{grid-template-columns:1fr}.history-item-actions{justify-content:flex-start}}.product-page-card,.admin-console{width:min(1180px,100%);margin:0 auto;border:0;border-top:1px solid var(--line);border-radius:0;padding:clamp(22px,4vw,40px) 0;background:transparent;box-shadow:none}@media (max-width: 480px){.global-header{padding:0 10px}.header-title{max-width:150px}.nav-item{gap:4px;padding:0 8px;font-size:0}.nav-item svg{width:18px;height:18px}}.guide-page,.about-page,.feedback-page{display:grid;gap:clamp(16px,2.5vw,32px)}.feedback-loading{margin:0;text-align:center;font-size:clamp(1.2rem,2.8vw,1.5rem);font-weight:600;line-height:1.45;color:#374151;padding:clamp(28px,6vw,56px) 16px}.feedback-form,.feedback-history-list{display:grid;gap:14px}.feedback-form input,.feedback-form textarea,.admin-feedback-note textarea{width:100%;border:1px solid #d4d4d4;border-radius:12px;padding:12px 14px;background:#fff;color:#111827;resize:vertical}.feedback-textarea-wrap{position:relative;width:100%}.feedback-textarea-wrap textarea{padding-bottom:2.35rem;display:block}.feedback-char-counter{position:absolute;right:11px;bottom:10px;font-size:.72rem;line-height:1.2;color:#6b7280;pointer-events:none;-webkit-user-select:none;user-select:none;padding:3px 7px;border-radius:6px;background:#ffffffeb}.feedback-card-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.feedback-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap}.feedback-pending-card,.feedback-history-item{display:grid;gap:10px}.feedback-pending-card{border:1px solid #e5e7eb;border-radius:var(--radius-md);padding:16px;background:#fff}.feedback-history-item{border-bottom:1px solid #f0f0f0;padding:16px 0}.feedback-pending-card h3,.feedback-history-item h4,.feedback-pending-card p,.feedback-history-item p{margin:0}.feedback-status-badge{display:inline-flex;width:fit-content;border-radius:var(--radius-sm);padding:4px 9px;font-size:.78rem;font-weight:650}.feedback-status-badge.pending{background:#fef3c7;color:#92400e}.feedback-status-badge.received{background:var(--line);color:var(--ink)}.feedback-status-badge.accepted{background:#dcfce7;color:#166534}.feedback-admin-note{border-left:3px solid var(--ink);padding-left:10px;color:#1e3a8a;font-weight:650}.admin-feedback-row{gap:12px}.admin-feedback-note{display:grid;gap:8px}.about-hero-row{display:grid;grid-template-columns:minmax(420px,.98fr) minmax(360px,.82fr);gap:clamp(24px,4vw,56px);align-items:stretch}.about-hero-row .about-hero{max-width:760px}.about-hero-row .home-visual-card{justify-self:end;width:100%;max-width:760px;min-height:clamp(360px,33vw,520px)}.about-hero-row .home-tetrahedron-wrap{min-height:clamp(340px,31vw,492px);height:100%}@media (max-width: 900px){.about-hero-row{grid-template-columns:1fr;align-items:start}.about-hero-row .about-hero,.about-hero-row .home-visual-card{max-width:100%}.about-hero-row .home-visual-card{justify-self:stretch;min-height:300px}}.guide-hero,.about-hero{display:grid;gap:18px;border-left:3px solid var(--ink);border-radius:0;padding:clamp(18px,4vw,44px) 0 clamp(18px,4vw,44px) clamp(18px,3vw,32px);background:transparent}.guide-hero h2,.about-hero h2{max-width:780px;margin:0;color:#111827;font-size:clamp(2.2rem,4vw,3.1rem);line-height:1;letter-spacing:-.055em}.guide-hero p,.about-hero p{max-width:720px;margin:0;color:#4b5563;font-size:1.04rem;line-height:1.68}.guide-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.guide-card{display:grid;align-content:start;gap:10px;padding:clamp(16px,2.4vw,22px) 0;background:transparent;border:0;border-top:1px solid var(--line);border-radius:0}.guide-card span{color:var(--ink);font-size:.78rem;font-weight:650;letter-spacing:.08em}.guide-card h3,.guide-card p,.guide-columns h3,.guide-columns p{margin:0}.guide-card h3,.guide-columns h3{color:#111827;font-size:1rem}.guide-card p,.guide-columns li,.guide-columns dd{color:#4b5563;line-height:1.55}.guide-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.guide-columns section{display:grid;gap:14px;border-top:1px solid var(--line);border-radius:0;padding:clamp(18px,3vw,28px) 0 0;background:transparent}.guide-renderer-section{grid-column:1 / -1}.guide-analyzer-label{justify-self:end;display:inline-flex;align-items:center;gap:8px;width:fit-content;border:1px solid var(--line);border-radius:999px;padding:6px 12px;background:#fff;color:#1f2937;font-size:.8rem;font-weight:800}.guide-analyzer-label-arrow{color:var(--ink);font-size:.95rem;line-height:1}.guide-columns ul,.guide-columns dl{display:grid;gap:10px;margin:0}.guide-columns ul{padding-left:20px}.guide-columns dl{padding:0}.guide-columns dt{color:#111827;font-weight:800}.guide-columns dd{margin:-6px 0 8px}.guide-renderer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.guide-renderer-grid article{display:grid;gap:10px;border:1px solid var(--line);border-radius:16px;padding:14px;background:#fff}.guide-renderer-grid h4{margin:0;color:#111827;font-size:.96rem}.guide-renderer-grid p{margin:0;color:#4b5563;line-height:1.58}.guide-renderer-grid ul{margin:0;padding-left:18px;display:grid;gap:7px}@media (max-width: 900px){.guide-renderer-grid{grid-template-columns:1fr}}.about-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(14px,2.4vw,24px);row-gap:clamp(20px,4vw,34px);margin:24px 0 48px}@media (min-width: 901px){.about-grid:before{content:"";position:absolute;top:0;bottom:0;left:50%;width:2px;background:var(--line-2);transform:translate(-50%);z-index:-1}.about-grid:after{content:"";position:absolute;top:50%;left:10%;right:10%;height:2px;background:var(--line-2);transform:translateY(-50%);z-index:-1}.about-grid article:nth-child(2n){transform:translateY(40px)}}.about-grid article{display:grid;gap:10px;padding:clamp(18px,2.4vw,26px);background:#fff;border:1px solid #e5e7eb;border-radius:var(--radius-lg)}.about-grid h3,.about-grid p,.about-section h3,.about-section p{margin:0}.about-grid h3{color:#111827;font-size:1.05rem}.about-grid p,.about-section p{color:#4b5563;line-height:1.6}.about-section{display:grid;grid-template-columns:1fr;gap:clamp(20px,4vw,44px);align-items:start;border-top:1px solid var(--line);border-radius:0;padding:clamp(24px,4vw,44px) 0 48px;background:transparent}.about-section span{color:var(--ink);font-size:.76rem;font-weight:850;letter-spacing:.14em;text-transform:uppercase}.about-section h3{margin-top:16px;color:#111827;font-size:clamp(1.45rem,2.3vw,2rem);line-height:1.14;letter-spacing:-.035em}.about-block{display:grid;gap:clamp(20px,3vw,34px);border-top:1px solid var(--line);padding:clamp(24px,4vw,44px) 0 0}.about-block-head{display:grid;gap:10px;max-width:760px}.about-block-head span{color:var(--ink);font-size:.76rem;font-weight:850;letter-spacing:.14em;text-transform:uppercase}.about-block-head h3{margin:0;color:#111827;font-size:clamp(1.45rem,2.3vw,2rem);line-height:1.14;letter-spacing:-.035em}.about-block-head p{margin:0;color:#4b5563;font-size:1rem;line-height:1.68}.about-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2.4vw,28px);margin:0;padding:0;list-style:none;counter-reset:about-step}.about-steps li{display:grid;gap:10px;align-content:start;padding:clamp(18px,2.4vw,26px);background:#fff;border:1px solid #e5e7eb;border-radius:var(--radius-lg)}.about-step-index{color:var(--ink);font-size:1.5rem;font-weight:850;letter-spacing:-.02em}.about-steps h4,.about-capabilities h4,.about-audience h4{margin:0;color:#111827;font-size:1.05rem}.about-steps p,.about-capabilities p,.about-audience p{margin:0;color:#4b5563;line-height:1.6}.about-capabilities,.about-audience{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2.4vw,24px)}.about-capabilities article,.about-audience article{display:grid;gap:10px;align-content:start;padding:clamp(18px,2.4vw,26px);background:#fff;border:1px solid #e5e7eb;border-radius:var(--radius-lg)}.about-cta{display:grid;gap:14px;justify-items:start;border-top:1px solid var(--line);padding:clamp(24px,4vw,44px) 0 48px}.about-cta h3{margin:0;color:#111827;font-size:clamp(1.5rem,2.6vw,2.1rem);line-height:1.12;letter-spacing:-.04em}.about-cta p{margin:0;max-width:640px;color:#4b5563;font-size:1rem;line-height:1.68}.legal-page{display:grid;gap:14px}.legal-page.product-page-card.professional-legal-doc{padding:clamp(18px,3vw,30px) 0;border:0;border-top:1px solid var(--line);border-radius:0;background:transparent;box-shadow:none}.legal-page .legal-hero-row{gap:clamp(12px,2.2vw,18px)}.legal-page .legal-hero-row h2{margin:0 0 6px;color:#0a0a0a}.legal-page .legal-hero-row p{color:#404040;font-size:.93rem;line-height:1.52}.legal-hero-row{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.legal-hero-row h2{margin:8px 0 10px;color:#111827;font-size:clamp(2rem,4vw,3.2rem);line-height:1;letter-spacing:-.055em}.legal-hero-row p,.legal-section-grid p,.legal-note p{margin:0;color:#4b5563;line-height:1.65}.legal-section-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(16px,2.4vw,28px);overflow:visible;border:0;border-top:1px solid var(--line);border-radius:0;background:transparent}.legal-section-grid article,.legal-note{display:grid;gap:10px;padding:clamp(16px,3vw,24px) 0 0;background:transparent}.legal-section-grid h3,.legal-note h3{margin:0;color:#111827;font-size:1rem}.legal-note{border:0;border-top:1px solid var(--line);border-radius:0;background:transparent}.page-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:22px}.page-title-row h2{margin:6px 0 8px;color:#0f172a;font-size:clamp(1.8rem,4vw,3rem)}.page-title-row p{max-width:720px;margin:0;color:#64748b}.admin-metric-groups{display:grid;gap:14px}.admin-metric-group{border:1px solid #e5e7eb;border-radius:var(--radius-md);padding:14px;background:#ffffffd1}.admin-metric-group-header{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px}.admin-metric-group-header span{color:#111827;font-size:14px;font-weight:800}.admin-metric-group-header small{color:#64748b;font-size:12px;font-weight:600}.metric-group-ai-health{border-color:#d4d4d4;background:#fff}.admin-metric-grid{display:grid;gap:12px}.admin-metric-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.admin-metric-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-metric-card,.admin-panel{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper);box-shadow:none}.admin-metric-card{position:relative;padding:15px 16px 15px 18px;display:flex;flex-direction:column;gap:10px;overflow:hidden}.admin-metric-card:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:#cbd5e1}.admin-icon{display:block;flex-shrink:0}.admin-metric-label,.admin-sidebar-nav button,.admin-button-with-icon{display:flex;align-items:center;gap:8px}.admin-metric-label{color:#64748b}.admin-metric-card span{display:block;color:inherit;font-size:12px;font-weight:550;letter-spacing:.005em}.admin-metric-card strong{display:block;color:#111827;font-size:30px;font-weight:700;line-height:1;font-variant-numeric:tabular-nums;white-space:nowrap}.admin-metric-card.metric-primary,.admin-metric-card.metric-info{border-color:#d4d4d4;background:#fff}.admin-metric-card.metric-primary:before,.admin-metric-card.metric-info:before{background:#171717}.admin-metric-card.metric-primary .admin-icon,.admin-metric-card.metric-primary strong,.admin-metric-card.metric-info .admin-icon,.admin-metric-card.metric-info strong{color:#171717}.admin-metric-card.metric-success{border-color:#d4d4d4;background:#fff}.admin-metric-card.metric-success:before{background:#262626}.admin-metric-card.metric-success .admin-icon,.admin-metric-card.metric-success strong{color:#171717}.admin-metric-card.metric-warning{border-color:#a3a3a3;background:#fff;box-shadow:none}.admin-metric-card.metric-warning:before{background:#0a0a0a}.admin-metric-card.metric-warning .admin-icon,.admin-metric-card.metric-warning strong{color:#0a0a0a}.admin-dashboard{min-height:100vh;display:grid;grid-template-columns:240px minmax(0,1fr);background:var(--surface)}.admin-sidebar{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;gap:16px;padding:16px 12px;background:#fbfbfa;border-right:1px solid var(--line);color:var(--ink)}.admin-brand{display:flex;align-items:center;gap:10px;padding:8px}.admin-brand>span{display:flex;flex-shrink:0;width:32px;height:32px;align-items:center;justify-content:center;border-radius:8px;background:#f5f5f5;overflow:hidden}.admin-brand-logo{width:100%;height:100%;object-fit:contain;display:block}.admin-brand>div{min-width:0}.admin-brand strong{display:block;font-size:14px;font-weight:700;color:#171717}.admin-brand small,.admin-sidebar-footer small{display:block;color:#737373;font-size:11px;line-height:1.3}.admin-sidebar-nav{display:grid;gap:2px;flex:1}.admin-sidebar-nav button{width:100%;border:0;border-left:3px solid transparent;border-radius:10px;padding:10px 12px;background:transparent;color:#525252;text-align:left;font-weight:700;font-size:16px;cursor:pointer;transition:background .15s,color .15s,border-color .15s}.admin-sidebar-nav button.active{border-left-color:#171717;background:#f5f5f5;color:#171717}.admin-sidebar-nav button.active .admin-icon{color:#171717}.admin-sidebar-nav button:hover{background:#f8fafc;color:#171717}.admin-sidebar-footer{margin-top:auto;padding-top:12px;border-top:1px solid #e5e5e5;display:grid;gap:8px}.admin-sidebar-footer button{padding:8px 12px;font-size:13px}.admin-main{min-width:0;padding:24px 32px;background:var(--surface)}.admin-topbar{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:24px}.admin-topbar h2{margin:0;color:#171717;font-size:24px;font-weight:700}.admin-topbar p{margin:4px 0 0;color:#737373;font-size:14px}.admin-topbar-refresh{padding:8px 10px;min-width:40px;justify-content:center}.admin-topbar-refresh.is-loading .admin-icon{animation:spin .8s linear infinite}.admin-topbar .home-eyebrow{display:inline-block;margin-bottom:6px;padding:4px 10px;border-radius:6px;background:#f5f5f5;color:#525252;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.admin-page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #e5e5e5}.admin-page-header h2{margin:0;color:#171717;font-size:20px;font-weight:700}.admin-page-header button{padding:8px 14px;font-size:13px}.admin-section-stack{display:grid;gap:18px}.admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.admin-panel{min-width:0;border:0;border-top:1px solid var(--line-2);border-radius:0;padding:18px 0 0;background:transparent}.admin-panel-wide,.admin-panel-full{grid-column:1 / -1}.admin-ai-settings{display:grid;gap:16px}.admin-panel h3{margin:0 0 14px;padding-bottom:10px;border-bottom:1px solid var(--line);color:#171717;font-size:16px;font-weight:780}.admin-settings-section{display:grid;gap:12px;border:0;border-top:1px solid var(--line-2);border-radius:0;padding:16px 0 0;background:transparent}.admin-settings-section h4,.admin-detail-header h4{margin:0 0 8px;color:#171717;font-size:14px;font-weight:700}.admin-section-heading-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.admin-section-heading-row>div{min-width:0}.admin-section-heading-row .field-hint{margin:0}.admin-plan-settings-section{gap:14px}.admin-plan-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.admin-plan-section-head h4,.admin-plan-section-head .field-hint{margin:0}.admin-plan-section-head .field-hint{margin-top:4px}.admin-plan-count{flex:0 0 auto;border:1px solid #e5e5e5;border-radius:999px;padding:4px 10px;background:#fff;color:#525252;font-size:12px;font-weight:700}.admin-plan-grid{display:grid;overflow:hidden;border:1px solid #e5e5e5;border-radius:10px;background:#fff}.admin-plan-grid-head,.admin-plan-row{display:grid;grid-template-columns:minmax(120px,.9fr) minmax(150px,1.1fr) minmax(110px,.8fr) minmax(110px,.8fr) minmax(110px,.7fr) minmax(56px,auto);gap:12px;align-items:start}.admin-plan-grid-head{align-items:center;padding:10px 12px;background:#f5f5f5;color:#737373;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.admin-plan-row{padding:12px;border-top:1px solid #e5e5e5}.admin-plan-name-cell strong{display:block;color:#171717;font-size:14px}.admin-plan-name-cell span{display:block;margin-top:3px;color:#737373;font-size:12px}.admin-plan-field{display:grid;gap:5px;margin:0;color:#525252;font-size:11px;font-weight:700}.admin-plan-field input{width:100%;height:36px;padding:0 10px;border:1px solid #d4d4d4;border-radius:6px;background:#fff;color:#171717;font-size:13px;font-weight:500}.admin-plan-field input:focus{outline:none;border-color:#171717}.admin-plan-toggle{display:inline-flex;align-items:center;align-self:end;gap:8px;min-height:36px;margin:0;color:#525252;font-size:13px;font-weight:700}.admin-plan-toggle input{width:16px;height:16px;accent-color:#171717;color-scheme:light}.admin-plan-save{box-sizing:border-box;display:inline-flex;align-items:center;width:fit-content;max-width:100%;height:30px;padding:0 10px;justify-content:center;align-self:end;font-size:12px;font-weight:600;border-radius:10px}.admin-plan-warning{margin:0;border:1px solid #fde68a;border-radius:8px;padding:10px 12px;background:#fffbeb;color:#92400e}.admin-toolbar{display:flex;gap:8px;margin-bottom:16px;flex-wrap:wrap}.admin-toolbar input,.admin-toolbar select{flex:1;min-width:140px;height:36px;padding:0 12px;border:1px solid #d4d4d4;border-radius:6px;background:#fff;font-size:13px}.admin-toolbar input:focus,.admin-toolbar select:focus{outline:none;border-color:#171717}.admin-toolbar button{height:36px;padding:0 14px;font-size:13px;white-space:nowrap}.admin-filter-grid{display:grid;grid-template-columns:repeat(3,1fr) auto auto;gap:8px}.admin-filter-grid input{flex:none}.admin-session-panel{grid-column:1 / -1;display:grid;gap:10px;border-top:1px solid #e5e5e5;padding-top:12px}.admin-row-actions{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.admin-row-actions button{padding:6px 12px;font-size:13px}.admin-inline-form,.admin-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-width:min(560px,100%)}.admin-field-grid input,.admin-field-grid select,.admin-field-grid textarea{height:36px;padding:0 12px;border:1px solid #d4d4d4;border-radius:6px;background:#fff;font-size:13px}.admin-field-grid textarea{height:auto;padding:10px 12px;resize:vertical}.admin-field-grid input:focus,.admin-field-grid select:focus,.admin-field-grid textarea:focus{outline:none;border-color:#171717}.admin-row-editable,.admin-row-block{align-items:stretch}.admin-row-block{display:grid}.admin-edit-panel{display:grid;gap:12px;padding:16px;border:1px solid #e5e5e5;border-radius:8px;background:#fafafa;margin-top:-8px;margin-bottom:8px}.admin-detail-panel{display:grid;gap:14px;margin-top:16px;border:1px solid #e5e5e5;border-radius:10px;padding:16px;background:#fafafa}.admin-detail-header{display:flex;justify-content:space-between;gap:12px}.admin-detail-header p,.admin-problem-text{margin:4px 0 0;color:#737373;font-size:13px}.admin-field-grid span{display:grid;gap:3px;border:1px solid #e5e5e5;border-radius:6px;padding:10px;background:#fff}.admin-field-grid span strong{color:#737373;font-size:11px;text-transform:uppercase;letter-spacing:.05em}.admin-details{min-width:0}.admin-details+.admin-details{margin-top:8px}.admin-details summary{cursor:pointer;color:#171717;font-weight:700;font-size:13px;padding:2px 0}.admin-json-block{max-height:360px;overflow:auto;margin:10px 0 0;border-radius:6px;padding:12px;background:#f5f5f5;border:1px solid #e5e5e5;color:#525252;font-size:12px;white-space:pre-wrap;font-family:ui-monospace,Cascadia Code,Source Code Pro,Menlo,Consolas,monospace}.admin-table{display:grid;gap:10px;max-height:430px;overflow:auto}.admin-row{display:flex;align-items:center;justify-content:space-between;gap:14px;border:0;border-top:1px solid var(--line);border-radius:0;padding:12px 0;background:transparent;transition:border-color .15s}.admin-row>div:first-child{flex:1 1 auto;min-width:0}.admin-row:hover{border-color:#d4d4d4}.admin-row strong{display:-webkit-box;overflow:hidden;color:#171717;font-size:14px;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow-wrap:anywhere;word-break:break-word}.admin-row span{display:block;color:#737373;font-size:12px;margin-top:4px;white-space:normal;overflow-wrap:anywhere;word-break:break-word}@media (max-width: 900px){.page-title-row,.admin-row{flex-direction:column;align-items:stretch}.admin-dashboard{grid-template-columns:1fr}.admin-sidebar{position:static;height:auto}.admin-topbar,.admin-detail-header,.admin-toolbar{flex-direction:column}.admin-metric-grid,.admin-grid,.admin-inline-form,.admin-field-grid,.admin-provider-config .admin-field-grid,.admin-provider-grid,.admin-model-fallback-grid,.admin-manual-model-row{grid-template-columns:1fr}.admin-provider-card-head,.admin-plan-section-head{flex-direction:column}.admin-plan-grid-head{display:none}.admin-plan-row{grid-template-columns:1fr;gap:10px}.admin-plan-save{width:auto;justify-self:start;padding-inline:10px;height:30px}}.admin-model-fallback-grid{display:grid;grid-template-columns:1fr;gap:14px}.admin-model-fallback-list{display:grid;gap:10px;min-width:0;border:1px solid #e5e5e5;border-radius:10px;padding:12px;background:#fafafa}.admin-model-fallback-list .admin-model-checklist{max-height:320px}.admin-provider-grid{display:grid;grid-template-columns:1fr;gap:16px;align-items:start}.admin-provider-card{display:grid;gap:18px;min-width:0;border:1px solid #e5e5e5;border-radius:var(--radius-lg);padding:18px;background:#fff;box-shadow:none}.admin-provider-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;border-bottom:1px solid #eeeeee;padding-bottom:14px}.admin-provider-card-head>div:not(.admin-provider-card-head-actions),.admin-provider-config,.admin-provider-models{display:grid;gap:14px;min-width:0}.admin-provider-config .admin-field-grid{grid-template-columns:repeat(2,minmax(220px,1fr));gap:14px;min-width:0}.admin-provider-config .admin-field-grid.admin-field-grid-router9{grid-template-columns:repeat(3,minmax(180px,1fr))}.admin-field-grid.admin-ocr-grid{grid-template-columns:repeat(3,minmax(180px,1fr));min-width:0}.admin-provider-config .admin-row-actions{justify-content:flex-end;gap:10px}.admin-provider-card-head strong{color:#0a0a0a;font-size:15px;font-weight:900}.admin-provider-card-head span{color:#737373;font-size:12px;font-weight:700}.admin-provider-card-head-actions{align-self:flex-start;justify-content:flex-end;flex-wrap:nowrap;gap:8px}.admin-provider-models-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.admin-provider-models-head strong{color:#171717;font-size:13px;font-weight:900}.admin-provider-models-head span{color:#737373;font-size:12px;font-weight:800}.admin-model-bulk-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.admin-model-bulk-actions .secondary-button{padding:7px 10px;font-size:12px}.admin-manual-model-row{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:10px}.admin-manual-model-row input{min-width:0;border:1px solid #d4d4d4;border-radius:8px;padding:9px 11px;background:#fff;font-size:13px}.admin-model-checklist{display:grid;gap:10px;max-height:400px;overflow-y:auto;padding:12px;border:1px solid #e5e5e5;border-radius:10px;background:#fafafa}.admin-model-checkbox{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border:1px solid #e5e5e5;border-radius:8px;background:#fff;transition:all .15s}.admin-model-checkbox label{display:flex;align-items:center;gap:12px;min-width:0;flex:1;cursor:pointer}.admin-model-checkbox:hover{border-color:#d4d4d4;background:#fafafa}.admin-model-checkbox input[type=checkbox]{flex-shrink:0;width:18px;height:18px;cursor:pointer}.admin-model-checkbox .model-label{display:flex;flex-direction:column;gap:2px;min-width:0}.admin-model-checkbox .model-label strong{color:#171717;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-model-checkbox .model-label small{color:#737373;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-model-checkbox .model-capability-badges{display:flex;flex-wrap:wrap;gap:4px;margin-top:2px}.admin-model-checkbox .model-capability-badge{display:inline-flex;align-items:center;width:fit-content;border-radius:999px;background:#f5f5f5;border:1px solid #e5e5e5;padding:1px 6px;color:#525252}.admin-status-box{padding:12px 14px;border-radius:8px;border:1px solid #e5e5e5}.admin-status-box.ok{background:#f0fdf4;border-color:#86efac}.admin-status-box.error{background:#fef2f2;border-color:#fca5a5}.admin-status-box strong{display:block;margin-bottom:4px;color:#171717;font-size:14px}.admin-status-box p{margin:0;color:#525252;font-size:13px}.history-panel-header{display:flex;justify-content:space-between;gap:12px;color:#111}.history-panel-header span,.history-panel p,.history-item span{color:#64748b;font-size:.88rem}.history-list{display:grid;grid-template-columns:1fr;gap:10px;margin-top:10px}.history-item{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 96px;gap:14px;overflow:hidden;border:1px solid #e5e7eb;border-radius:12px;padding:12px;background:#fff;transition:border-color .14s ease,background .14s ease}.history-item:hover{border-color:#cbd5e1;background:#f8fafc}.history-item:active{border-color:#93c5fd;background:var(--surface)}.history-item:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at var(--history-click-x, 50%) var(--history-click-y, 50%),rgba(37,99,235,.16),transparent 42%);opacity:0;pointer-events:none;transition:opacity .18s ease}.history-item:active:after{opacity:1}.history-item button:first-child{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0;border:0;padding:0;color:inherit;text-align:left;background:transparent}.history-item-copy{display:grid;min-width:0;gap:4px}.history-item strong{overflow:hidden;color:#111;text-overflow:ellipsis;white-space:nowrap}.history-item-copy>span:not(.history-badge-row){display:-webkit-box;overflow:hidden;color:#475569;font-size:.84rem;line-height:1.35;-webkit-line-clamp:2;-webkit-box-orient:vertical}.history-item.archived{opacity:.72}.history-open-button{width:100%}.history-item-actions{position:relative;z-index:1;display:grid;grid-template-columns:1fr;align-content:start;gap:6px}.history-item-actions .secondary-button{min-height:28px;padding:5px 8px;border-radius:8px;font-size:.72rem;font-weight:500}.history-item-actions .history-delete{justify-self:end;margin-top:2px}.history-badge-row{display:flex;gap:6px;flex-wrap:wrap}.history-badge-row em{border:1px solid #e5e7eb;border-radius:999px;padding:2px 7px;background:#f8fafc;color:#334155;font-style:normal;font-size:.72rem;font-weight:650}.history-item-copy small{color:#64748b;font-size:.78rem}.history-delete{width:30px;height:30px;border:0;border-radius:0;padding:0;background:transparent;color:#111;font-size:20px;line-height:1}.panel,.viewer-card,.empty-state,.error-box,.warning-box{border:0;border-top:1px solid var(--line-2);border-radius:0;background:transparent;box-shadow:none}.panel{padding:18px 0 0}.panel-title,.viewer-header{margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid var(--line);color:var(--ink);font-weight:760;font-size:1rem}.workspace-sidebar .problem-form{border:0;border-radius:0;padding:0;background:transparent}.problem-form{display:flex;flex-direction:column;gap:14px}.textarea-wrap{position:relative}.textarea-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:10;border-radius:14px;background:#f5f5f5c7;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;pointer-events:all}.textarea-overlay-text{color:#111;font-weight:600;font-size:.98rem}.spinner-overlay{width:26px;height:26px}.spinner-overlay.spinner{animation-duration:.7s}.ocr-dropzone textarea{transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}.ocr-dropzone.empty textarea{cursor:pointer}.ocr-dropzone.drag-active textarea{border-color:var(--ink);background:var(--surface);box-shadow:0 0 0 3px #1111111a}.hidden-file-input{display:none}.ocr-empty-hint,.ocr-status,.ocr-error{position:absolute;left:12px;right:12px;bottom:10px;font-size:.78rem;font-weight:600;pointer-events:none}.ocr-empty-hint{color:#737373}.ocr-status{color:var(--ink-3)}.ocr-error{color:#b91c1c}.ocr-dropzone.empty .char-counter,.ocr-status+.char-counter,.ocr-error+.char-counter{display:none}textarea,input,select{width:100%;border:1px solid var(--line-2);border-radius:10px;padding:12px;color:var(--ink);background:var(--paper);transition:border-color .16s ease,box-shadow .16s ease}textarea:focus,input:focus,select:focus{border-color:var(--ink);box-shadow:0 0 0 3px #00000014}textarea{resize:vertical;min-height:180px;padding-bottom:34px;line-height:1.55}.char-counter{position:absolute;right:12px;bottom:10px;color:#737373;font-size:.75rem;font-weight:500;pointer-events:none}.field-label{display:grid;gap:8px;color:var(--ink-2);font-weight:580;font-size:.95rem}.field-hint{margin:0;color:var(--ink-4);font-size:.9rem;font-weight:500;line-height:1.5}.field-help{color:var(--ink-4);font-size:.78rem;font-weight:500;line-height:1.45}.ocr-actions-panel{margin-top:10px;padding:10px 0 0;border-top:1px solid var(--line)}.ocr-actions-panel summary{cursor:pointer;color:var(--ink);font-size:.95rem;font-weight:600}.ocr-actions-panel[open]{padding-bottom:2px}.ocr-action-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}.ocr-action-row button{min-height:38px;border-color:var(--line-2);color:var(--ink);background:var(--paper);font-size:.82rem;font-weight:700}.ocr-action-row button:not(:disabled):hover{border-color:var(--ink);background:var(--surface)}.advanced-settings{display:grid;gap:18px;padding:14px 0 0;border:0;border-top:1px solid var(--line);border-radius:0;background:transparent}.advanced-settings:not([open]){gap:0;padding:12px 0 0}.advanced-settings[open]{display:grid}.advanced-settings summary,.json-panel summary{cursor:pointer;color:#111;font-weight:600;font-size:.95rem}.advanced-settings select{font-size:.85rem;padding:11px 12px;border-radius:10px}.advanced-settings .field-label{gap:12px}.advanced-settings>.field-label+.field-label{margin-top:8px}.advanced-settings .checkbox-label{margin-top:6px}.advanced-settings>.checkbox-label+.checkbox-label{margin-top:2px}.checkbox-label{display:flex;align-items:center;gap:10px;color:#333;font-weight:500;font-size:.9rem}.checkbox-label input{width:auto;accent-color:#111111}button{cursor:pointer;border:1px solid var(--ink);border-radius:10px;padding:10px 14px;color:var(--paper);background:var(--ink);font-weight:500;font-size:.95rem;transition:transform .14s ease,background .14s ease,color .14s ease,border-color .14s ease}button:not(:disabled):hover{transform:translateY(-1px)}button:disabled{cursor:not-allowed;border-color:#a3a3a3;color:#f5f5f5;background:#a3a3a3}.submit-button{display:inline-flex;align-items:center;justify-content:center;gap:10px}.submit-button-sticky{position:sticky;bottom:14px;z-index:30;width:100%;box-shadow:none}.spinner{width:20px;height:20px;animation:spin .8s linear infinite}.examples{display:grid;gap:10px;border:0;border-top:1px solid var(--line);border-radius:0;padding:14px 0 0;background:transparent}.examples:not([open]){gap:0;padding:12px 0 0}.examples-title{color:#333;font-size:.9rem;font-weight:600;cursor:pointer;list-style:none}.examples-title::-webkit-details-marker{display:none}.examples-title:before{content:"▸";display:inline-block;margin-right:8px;transition:transform .18s ease}.examples[open] .examples-title:before{transform:rotate(90deg)}.examples:not([open]) .example-card{display:none}.example-card{display:grid;gap:6px;grid-template-rows:auto auto 1fr;border:0;border-top:1px solid var(--line);border-radius:0;color:var(--ink);background:transparent;text-align:left;width:100%;padding:12px 0;align-content:start}.example-card:hover{border-color:var(--line-2);background:transparent}.example-tag{width:fit-content;border:1px solid #e5e5e5;border-radius:999px;padding:2px 8px;color:#555;font-size:.7rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.example-title{font-weight:600;font-size:.95rem}.example-text{color:#666;font-size:.85rem;font-weight:400;line-height:1.45;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.result-area{min-width:0;display:flex;flex-direction:column;gap:12px}.render-stage{position:sticky;top:88px;align-self:stretch;display:grid;gap:10px;width:100%}.render-review-chip{justify-self:end;display:flex;align-items:center;gap:10px;max-width:min(560px,100%);border:1px solid rgba(245,158,11,.32);border-radius:999px;padding:8px 10px 8px 12px;color:#78350f;background:#fffbebf0;box-shadow:0 10px 28px #78350f1a}.render-review-dot{width:10px;height:10px;flex:0 0 auto;border-radius:999px;background:#f59e0b;box-shadow:0 0 0 6px #f59e0b29}.render-review-copy{display:grid;min-width:0;gap:1px}.render-review-copy strong{color:#78350f;font-size:.86rem;line-height:1.15}.render-review-copy small{overflow:hidden;color:#92400e;font-size:.78rem;font-weight:600;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.render-review-chip .secondary-button{flex:0 0 auto;border-color:#78350f42;padding:7px 10px;background:#fff;color:#78350f;font-size:.78rem}@media (max-width: 640px){.notification-stack{top:66px;right:10px;left:10px;width:auto}.render-review-chip{justify-self:stretch;align-items:flex-start;border-radius:18px}.render-review-copy small{white-space:normal}}.viewer-card{overflow:hidden;display:flex;flex-direction:column;border-radius:var(--radius-lg);background:var(--paper)}.viewer-header{padding:10px 14px 0;font-size:.92rem}.viewer-header-row{display:flex;align-items:center;justify-content:center;gap:12px}.viewer-controls{display:flex;align-items:center;justify-content:flex-start;gap:6px;flex-wrap:wrap;width:100%}.viewer-controls-main{flex:1 1 auto;width:auto;min-width:0}.viewer-status-badges{display:flex;align-items:center;justify-content:flex-end;flex:0 0 auto;flex-wrap:wrap;gap:6px;margin-left:auto;margin-right:2px}.viewer-hint{color:#666;font-size:.86rem;font-weight:500}.viewer-toggle{border-color:#d4d4d4;border-radius:8px;padding:5px 8px;color:#111;background:#fff;font-size:.76rem;font-weight:500}.viewer-toggle:hover{border-color:#111;background:#f7f7f7}.three-view{width:100%;height:min(70vh,760px);min-height:540px}.three-canvas{width:100%!important;height:100%!important}.geogebra-shell{position:relative;width:100%}.geogebra-view{width:100%;min-height:520px;display:flex;align-items:center;justify-content:center}.geogebra-panel-toggle{position:absolute;top:12px;left:12px;z-index:5;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(15,23,42,.16);border-radius:999px;background:#ffffffeb;color:#111827;box-shadow:0 8px 24px #0f172a1f;width:36px;height:36px;padding:0;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.geogebra-panel-toggle:hover{transform:translateY(-1px);box-shadow:0 10px 28px #0f172a29}.geogebra-panel-toggle svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.geogebra-panel-toggle.is-open{left:max(12px,min(34%,280px))}.geogebra-tools{display:grid;gap:10px;padding:12px 16px 16px;border-top:1px solid var(--line)}.geogebra-status,.geogebra-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;color:#666;font-size:.86rem;font-weight:500}.geogebra-import{display:grid;gap:10px}.geogebra-import[open]{padding-top:4px}.geogebra-import summary{cursor:pointer;color:#111;font-weight:600}.geogebra-import textarea{min-height:84px;font-size:.82rem}.empty-state,.error-box,.warning-box{padding:18px}.empty-state{display:flex;align-items:center;justify-content:center;width:100%;min-height:600px;color:var(--ink);background:linear-gradient(90deg,rgba(17,17,17,.035) 1px,transparent 1px),linear-gradient(180deg,rgba(17,17,17,.035) 1px,transparent 1px),var(--paper);background-size:28px 28px}.empty-state-content{display:grid;justify-items:center;gap:12px;max-width:420px;text-align:center}.empty-state-content h2{margin:0;font-size:1.35rem;letter-spacing:-.02em}.empty-state-content p{margin:0;color:#666;line-height:1.55}.empty-state-graphic{width:min(240px,70%);color:#111}.error-box{border-color:#fecaca;color:#7f1d1d;background:#fef2f2}.warning-box{border-color:#fde68a;color:#78350f;background:#fffbeb}.json-panel{margin-top:20px}.json-panel:not([open]){padding-top:12px;padding-bottom:12px}.render-tools-floating{position:fixed;top:var(--render-tools-floating-top, 220px);right:24px;z-index:170;touch-action:none;-webkit-user-select:none;user-select:none}.render-editor-trigger{width:46px;height:46px;display:inline-flex;align-items:center;justify-content:center;padding:0;border-color:#1111112e;border-radius:999px;color:#fff;background:#111111db;box-shadow:0 12px 32px #0000002e;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.render-editor-trigger svg{width:22px;height:22px}.render-editor-trigger:hover{transform:translateY(-1px)}.render-tools-menu{position:fixed;top:var(--render-tools-menu-top, 212px);right:78px;width:min(312px,calc(100vw - 108px));max-height:min(360px,calc(100vh - 96px));overflow:auto;display:grid;gap:4px;padding:8px;border:1px solid var(--line);border-radius:var(--radius-md);background:#fffffffa;box-shadow:var(--shadow-overlay);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.render-tools-menu-item{display:grid;grid-template-columns:22px 1fr;gap:10px;align-items:start;width:100%;padding:10px 12px;border:none;border-radius:8px;color:var(--ink);background:transparent;text-align:left;cursor:pointer}.render-tools-menu-item:hover:not(:disabled),.render-tools-menu-item[aria-expanded=true]{background:var(--surface)}.render-tools-submenu{display:grid;gap:4px;margin:0 0 4px 24px;padding-left:10px;border-left:1px solid #e5e5e5}.render-tools-export-submenu{grid-template-columns:repeat(2,minmax(0,1fr));max-height:250px;overflow:auto;padding-right:2px}.render-tools-submenu-item{grid-template-columns:20px 1fr;gap:8px;padding:9px 10px}.render-tools-submenu-item svg{width:20px;height:20px}.render-tools-menu>.render-tools-menu-item small,.render-tools-submenu-item small{display:none}@media (max-width: 560px){.render-tools-menu{right:16px;width:calc(100vw - 32px)}.render-tools-export-submenu{grid-template-columns:1fr}}.render-tools-menu-item:disabled{cursor:not-allowed;opacity:.6}.render-tools-menu-item svg{width:22px;height:22px;color:#111}.render-tools-menu-item span{display:grid;gap:2px}.render-tools-menu-item strong{color:#111;font-size:.9rem}.render-tools-menu-item small,.render-tools-menu-section-label{color:#737373;font-size:.75rem;line-height:1.35}.render-tools-menu-section-label{padding:10px 12px 2px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.render-tools-menu .diagram-tools-block{padding:4px 4px 8px}.renderer-frame{position:relative;display:flex;flex-direction:column;gap:8px;min-height:inherit;overflow:hidden}.render-trust-badges{display:flex;flex-wrap:wrap;gap:6px;max-width:100%;padding:12px 12px 0}.render-trust-badge{border:1px solid rgba(120,53,15,.24);border-radius:999px;padding:5px 9px;background:#fffbebf0;color:#78350f;font-size:.75rem;font-weight:800;letter-spacing:.01em;box-shadow:0 10px 28px #1111111f;-webkit-backdrop-filter:blur(14px) saturate(1.1);backdrop-filter:blur(14px) saturate(1.1)}.render-trust-badge.exact{border-color:#1665343d;background:#f0fdf4f0;color:#166534}.renderer-metadata-banner,.renderer-saving-overlay{border:1px solid rgba(17,17,17,.16);background:#fffffff0;color:var(--ink);box-shadow:0 8px 22px #11111114}.renderer-metadata-banner{display:grid;gap:2px;margin:0 12px;border-radius:14px;padding:10px 14px;font-size:.84rem;line-height:1.35}.renderer-metadata-banner.warning{border-color:#fde68a;background:#fffbebf5;color:#92400e}.renderer-metadata-banner strong{font-size:.86rem}.renderer-saving-overlay{position:absolute;top:14px;left:50%;z-index:20;transform:translate(-50%);border-radius:999px;padding:8px 14px;font-size:.88rem;font-weight:700;pointer-events:none}.app-shell:has(.scene-editor-layer)+.app-footer{display:none}.scene-editor-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:240;display:grid;place-items:start end;padding:72px 16px 16px;background:#11111157;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.scene-editor-popover,.solver-popup-popover{position:fixed;top:84px;left:24px;z-index:181;width:min(720px,calc(100vw - 48px));max-height:calc(100vh - 108px);overflow:auto;border:1px solid #d4d4d4;border-radius:var(--radius-lg);background:#fffffffa;box-shadow:var(--shadow-overlay)}.solver-popup-popover{left:auto;right:24px;width:min(620px,calc(100vw - 48px))}.scene-editor-popover-header{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid #e5e5e5;background:#fff}.scene-editor-close{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:0;line-height:1}.scene-editor-close svg{width:18px;height:18px}.scene-editor-popover .scene-editor{border:none;border-radius:0;box-shadow:none}.scene-editor-popover .scene-editor-details{display:grid}.scene-editor-popover .scene-editor-summary{display:none}.scene-editor-popover .scene-editor-content{padding-top:0}.scene-editor{display:grid;gap:14px}.scene-editor-details{display:grid;gap:12px}.scene-editor-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#111;font-weight:700;cursor:pointer;list-style:none}.scene-editor-summary::-webkit-details-marker{display:none}.scene-editor-summary:before{content:"▸";color:#666;transition:transform .18s ease}.scene-editor-details[open] .scene-editor-summary:before{transform:rotate(90deg)}.scene-editor-summary span:first-child{margin-right:auto}.scene-editor-content{display:grid;gap:12px}.scene-editor .panel-title{margin-bottom:6px}.click-tool{display:grid;gap:8px;padding:10px;border:1px solid #e5e5e5;border-radius:14px;background:#fff}.tool-mode-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.tool-mode-button{display:grid;gap:2px;text-align:left;border:1px solid #d8dee9;border-radius:12px;background:#fff;color:#1f2937;padding:9px 10px;cursor:pointer}.tool-mode-button span{color:#64748b;font-size:.76rem;line-height:1.25}.tool-mode-button.active{border-color:var(--ink);background:var(--surface);color:var(--ink)}.tool-mode-button:disabled{cursor:not-allowed;opacity:.55}.editor-grid{display:grid;grid-template-columns:repeat(4,minmax(110px,1fr)) auto;gap:8px;align-items:end;padding:10px;border:1px solid #e5e5e5;border-radius:14px;background:#fafafa}.editor-grid .field-label{font-size:.8rem;gap:5px}.editor-grid input,.editor-grid select{min-height:36px;border-radius:10px;padding:7px 9px;font-size:.86rem}.editor-grid button{min-height:36px;padding:7px 10px;font-size:.86rem;white-space:nowrap}.compact-editor-grid,.placement-grid{grid-template-columns:minmax(180px,1fr) auto}.placement-grid button{grid-column:auto}.scene-editor-drawer{position:relative;z-index:250;display:grid;grid-template-rows:auto minmax(0,1fr);width:min(560px,calc(100vw - 32px));max-height:calc(100dvh - 96px);overflow:hidden;border:1px solid rgba(17,17,17,.14);border-radius:20px;background:#fff;box-shadow:var(--shadow-overlay)}.scene-editor-heading{display:grid;gap:2px}.scene-editor-heading span{color:var(--ink-4);font-size:.78rem;font-weight:650}.scene-editor-drawer .scene-editor{min-height:0;overflow:auto;border:none;border-radius:0;box-shadow:none;padding:10px 16px 14px}.scene-editor-drawer .scene-editor-summary{display:none}.scene-editor-drawer .scene-editor-content{min-height:0;padding-top:0}.scene-editor-tabs{position:sticky;top:-10px;z-index:2;display:flex;gap:6px;overflow-x:auto;padding:6px 0 8px;background:#fff}.scene-editor-tabs button{flex:0 0 auto;min-height:32px;border:1px solid var(--line);border-radius:999px;padding:0 11px;background:#fff;color:var(--ink-4);font-size:.78rem;font-weight:850}.scene-editor-tabs button.active{border-color:var(--ink);background:var(--ink);color:var(--accent-fg)}.scene-editor-form-stack{display:grid;gap:10px}.scene-editor-drawer .tool-mode-grid,.scene-editor-popover .tool-mode-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.scene-editor-drawer .editor-grid,.scene-editor-popover .editor-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,140px),1fr))}.scene-editor-drawer .compact-editor-grid,.scene-editor-drawer .placement-grid,.scene-editor-popover .compact-editor-grid,.scene-editor-popover .placement-grid{grid-template-columns:minmax(160px,1fr) auto}.scene-editor-drawer .field-hint{margin:0}.scene-editor-drawer .scene-editor-details{gap:8px}.scene-editor-drawer .scene-editor-content{gap:10px}.scene-editor-drawer .scene-object-tree-body{max-height:clamp(220px,40dvh,440px)}@media (max-width: 760px){.scene-editor-layer{place-items:end stretch;padding:56px 0 0}.scene-editor-drawer{width:100%;max-height:calc(100dvh - 56px);border-right:none;border-bottom:none;border-left:none;border-radius:20px 20px 0 0}.scene-editor-drawer .compact-editor-grid,.scene-editor-drawer .placement-grid,.scene-object-tree-filters{grid-template-columns:1fr}.scene-editor-drawer .editor-grid button{width:100%}}.home-page{display:grid;gap:clamp(22px,3.2vw,42px)}.home-system-banners{display:grid;gap:10px}.home-system-banner{display:grid;gap:4px;border:1px solid #fed7aa;border-radius:18px;padding:14px 16px;background:#fff7ed;color:#9a3412}.home-system-banner.warning{border-color:#fde68a;background:#fffbeb;color:#92400e}.home-system-banner strong{color:inherit;font-size:.95rem;font-weight:800}.home-system-banner span{color:inherit;font-size:.9rem;line-height:1.45}.home-hero{display:grid;grid-template-columns:minmax(320px,.88fr) minmax(420px,1.12fr);gap:clamp(18px,3vw,34px);align-items:start;border-bottom:1px solid var(--line);padding-bottom:clamp(22px,3vw,34px)}.login-card{border:1px solid var(--line);border-radius:var(--radius-xl);background:#fffffff5;box-shadow:none}.home-hero-copy,.home-visual-card{border-radius:var(--radius-xl)}.home-hero-copy{display:grid;align-content:start;gap:14px;padding:clamp(10px,2vw,22px) 0;background:transparent;min-width:0}.home-eyebrow{width:fit-content;border:0;border-left:2px solid var(--accent);border-radius:0;padding:2px 0 2px 10px;color:var(--accent);background:transparent;font-size:.78rem;font-weight:650;letter-spacing:.08em;text-transform:uppercase}.home-hero-copy h2,.login-form h2{margin:0;color:#111;line-height:1;letter-spacing:-.055em}.home-hero-copy h2{max-width:720px;font-size:clamp(1.55rem,2.85vw,2.65rem);font-weight:690;line-height:1.12}.home-hero-copy h2 span{display:block}.home-hero-copy h2 span+span{margin-top:.08em}.login-form h2{font-size:clamp(2rem,4.2vw,3.4rem)}.home-hero-copy p{max-width:640px;margin:0;color:#4b5563;font-size:.98rem;line-height:1.55}.home-actions,.auth-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.home-trust-strip{display:flex;flex-wrap:wrap;gap:8px}.home-trust-strip span{border:1px solid var(--line);border-radius:999px;padding:6px 9px;background:transparent;color:var(--ink-3);font-size:.84rem;font-weight:550}.home-actions span{max-width:300px;color:var(--ink-4);font-size:.86rem;font-weight:600;line-height:1.45}.home-primary-action{min-height:46px;border-radius:999px;padding:0 20px;background:var(--ink);color:var(--paper);box-shadow:0 14px 34px #1111111f}.home-primary-action:not(:disabled):hover{background:var(--ink-2);box-shadow:0 18px 44px #11111129}.home-visual-card{position:relative;min-height:0;overflow:hidden;border:1px solid var(--line);padding:clamp(8px,1.6vw,14px);background:radial-gradient(circle at 72% 22%,rgba(24,24,27,.055),transparent 38%),radial-gradient(circle at 24% 82%,rgba(113,113,122,.045),transparent 34%),linear-gradient(145deg,#f4f4f5,#fff 54%,#e4e4e7);cursor:pointer;min-width:0}.home-visual-card--3d{cursor:default}.home-visual-card--3d .home-tetrahedron-wrap{transition:none}.home-visual-card--3d:hover .home-tetrahedron-wrap{transform:none}.home-tetrahedron-wrap{min-height:clamp(280px,38vw,370px);height:min(370px,50vh)}.home-tetrahedron-canvas{display:block;width:100%;height:100%;min-height:0;overflow:hidden;border-radius:18px}.home-tetrahedron-canvas>div,.home-tetrahedron-canvas canvas{width:100%!important;height:100%!important}.home-tetrahedron-canvas canvas{display:block;touch-action:none}.login-brand img{width:38px;height:38px;border-radius:10px;object-fit:cover}.home-outcome-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-top:18px;border-top:1px solid var(--line-2);border-bottom:1px solid var(--line-2);background:transparent}.home-outcome-strip div{display:grid;gap:4px;border-right:1px solid var(--line);border-radius:0;padding:12px 14px 12px 0;background:transparent}.home-outcome-strip div+div{padding-left:14px}.home-outcome-strip div:last-child{border-right:0}.home-outcome-strip strong{color:#111827;font-size:1.05rem;font-weight:650}.home-outcome-strip span{color:#4b5563;font-size:.84rem;line-height:1.35}.feature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(14px,2vw,24px)}.feature-card{display:grid;align-content:start;gap:10px;padding:clamp(14px,2.2vw,22px) 0 0;background:transparent;border:0;border-top:1px solid var(--line);border-radius:0;box-shadow:none}.feature-index{color:var(--ink);font-size:.78rem;font-weight:650;letter-spacing:.08em}.feature-card h3,.feature-card p{margin:0}.feature-card h3{color:#111827;font-size:1rem;font-weight:700}.feature-card p{color:#4b5563;line-height:1.55;font-size:.92rem}.workflow-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:10px}.workflow-step{display:flex;align-items:flex-start;gap:8px;border:1px solid #e5e7eb;border-radius:14px;padding:10px 12px;background:#fafafa}.workflow-step strong{color:#111827;font-size:.98rem;font-weight:760}.workflow-step p{margin:5px 0 0;color:#4b5563;font-size:.88rem;line-height:1.48}.workflow-step span{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;color:#fff;background:#111;font-size:.82rem;font-weight:800}.login-page{min-height:auto;display:grid;align-items:start}.login-card{display:grid;grid-template-columns:minmax(300px,.9fr) minmax(320px,1fr);overflow:hidden;min-height:0}.login-visual{display:grid;gap:16px;align-content:center;padding:clamp(22px,3.5vw,36px);background:linear-gradient(135deg,#eef4ff 0,#f8fafc 48%,#f4f4f1);border-right:1px solid var(--line)}.login-brand{display:flex;align-items:center;gap:12px}.login-brand div{display:grid;gap:3px}.login-brand span{color:var(--ink);font-size:.8rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.login-brand strong{color:#111}.login-value-copy{display:grid;gap:8px}.login-value-copy h3{margin:0;max-width:420px;color:#0f172a;font-size:clamp(1.45rem,2.6vw,2.05rem);line-height:1.1;letter-spacing:-.04em}.login-value-copy p{margin:0;max-width:430px;color:#475569;line-height:1.55;font-weight:600}.login-illustration{width:min(118%,680px);max-width:none;max-height:clamp(340px,42vw,430px);justify-self:center;overflow:visible}.login-form{display:grid;gap:14px;align-content:center;padding:clamp(24px,4vw,44px)}.login-form h2{font-size:clamp(1.8rem,4vw,3.2rem)}.oauth-button,.auth-primary-button,.auth-guest-button{width:100%}.oauth-button{display:flex;align-items:center;justify-content:center;gap:10px;border:1px solid #d4d4d4;border-radius:14px;padding:13px 16px;color:#111827;background:#fff;font-weight:800}.oauth-google-icon{flex-shrink:0;display:block}.oauth-button span{border-radius:999px;padding:3px 8px;color:var(--ink);background:var(--surface);font-size:.72rem}.auth-divider{display:flex;align-items:center;gap:12px;color:#94a3b8;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:#e5e7eb}.input-hint{color:#737373;font-size:.8rem;font-weight:500;line-height:1.45}.password-field{display:grid;grid-template-columns:1fr auto;align-items:center;border:1px solid #d4d4d4;border-radius:12px;background:#fff;transition:border-color .2s ease,box-shadow .2s ease}.password-field:focus-within{border-color:#171717;box-shadow:0 0 0 3px #0000000f}.password-field input{border:0;background:transparent;box-shadow:none}.password-field input:focus{box-shadow:none}.password-field .password-field-toggle{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;border:0;border-left:1px solid #e5e5e5;padding:0 12px;min-height:44px;min-width:44px;color:#262626;background:#fafafa;border-radius:0 11px 11px 0;cursor:pointer;transition:background .15s ease,color .15s ease}.password-field .password-field-toggle:hover{color:#0a0a0a;background:#f0f0f0}.password-field .password-field-toggle:focus-visible{outline:2px solid #171717;outline-offset:2px}.password-field .password-field-toggle-icon{display:block}.auth-primary-button{min-height:48px;border-radius:14px;font-size:1rem;font-weight:900}.auth-guest-button{min-height:46px;border:1px solid #d4d4d4;border-radius:14px;color:#111827;background:#fff;font-weight:850}.auth-guest-button:hover{border-color:#111827;background:#fafafa}.login-forgot-password-row{display:flex;justify-content:flex-end;margin-top:-4px}.login-forgot-password-link{border:0;padding:0;color:var(--ink);background:transparent;font-family:inherit;font-size:.78rem;font-weight:400;font-style:italic;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.legal-consent-group{display:grid;gap:10px;border:1px solid #e5e7eb;border-radius:16px;padding:12px;background:#f8fafc}.turnstile-auth-gate{display:grid;justify-items:center;gap:6px}.turnstile-widget{display:flex;justify-content:center;min-height:65px}.legal-consent-row{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:start;color:#475569;font-size:.86rem;font-weight:600;line-height:1.45}.legal-consent-row input{width:auto;margin-top:3px;accent-color:#111111}.legal-consent-row button{border:0;padding:0;color:var(--ink);background:transparent;font:inherit;font-weight:800;text-decoration:underline;text-underline-offset:2px}.auth-secondary-links{display:grid;justify-items:start;gap:8px;color:#64748b;font-size:.9rem;font-weight:600;text-align:left}.auth-secondary-links button{border:0;padding:0;color:var(--ink);background:transparent;font-family:inherit;font-size:.78rem;font-weight:400;font-style:italic;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.login-message{margin:0;border:1px solid #bfdbfe;border-radius:14px;padding:12px;color:#1e3a8a;background:var(--surface);line-height:1.5}.auth-focus-page{align-items:center;min-height:min(720px,calc(100vh - 180px))}.auth-flow-card{position:relative;isolation:isolate;overflow:hidden;max-width:760px;padding:clamp(28px,5vw,56px)}.auth-flow-card:before{content:"";position:absolute;inset:-30% auto auto 48%;z-index:-1;width:360px;height:360px;border-radius:999px;background:radial-gradient(circle,#2563eb24,#2563eb00)}.auth-flow-card h2{max-width:620px}.auth-flow-copy{max-width:620px;font-size:1rem}.otp-field-label{gap:12px}.otp-input{min-height:72px;border-radius:18px;text-align:center;font-size:clamp(1.85rem,7vw,3rem);font-weight:950;letter-spacing:.42em;font-variant-numeric:tabular-nums;background:linear-gradient(90deg,#2563eb14,#7c3aed14),#fff}.password-strength{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;color:#64748b;font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.password-strength:before{content:"";grid-column:1;grid-row:1;height:8px;border-radius:999px;background:#e5e7eb}.password-strength span{grid-column:1;grid-row:1;height:8px;border-radius:999px;background:#94a3b8;transition:width .2s ease,background .2s ease}.password-strength strong{grid-column:2;color:#334155}.password-strength.strength-weak span{background:#ef4444}.password-strength.strength-medium span{background:#f97316}.password-strength.strength-strong span{background:#16a34a}.auth-actions-split{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.standalone-auth-card,.account-card{width:min(980px,100%);margin:0 auto;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--paper);box-shadow:none}.account-card{display:grid;gap:18px;padding:clamp(22px,4vw,42px)}.account-shell{width:min(1180px,100%);gap:clamp(16px,2vw,22px)}.account-hero{display:grid;grid-template-columns:minmax(280px,.9fr) minmax(420px,1.1fr);gap:clamp(16px,2.2vw,28px);align-items:stretch}.account-identity{display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:center;min-width:0}.account-avatar{display:inline-flex;align-items:center;justify-content:center;width:clamp(58px,6vw,76px);height:clamp(58px,6vw,76px);border-radius:24px;color:#fff;background:#111;font-size:clamp(1.35rem,2.6vw,1.8rem);font-weight:950}.account-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--line);border-radius:20px;overflow:hidden;background:#fff}.account-stat{display:grid;gap:5px;min-width:0;border-right:1px solid var(--line);padding:14px}.account-stat:last-child{border-right:0}.account-stat span,.account-info-row span{color:#64748b;font-size:.78rem;font-weight:850;text-transform:uppercase;letter-spacing:.06em}.account-stat strong,.account-info-row strong{min-width:0;color:#111827;font-size:.94rem;line-height:1.35;overflow-wrap:anywhere}.account-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.42fr);gap:clamp(16px,2.2vw,24px);align-items:start}.account-main,.account-side{display:grid;gap:clamp(14px,1.8vw,18px);min-width:0}.account-header,.account-header-title,.account-section-title,.account-panel-title,.session-item,.icon-button-content{display:flex;align-items:center;gap:16px}.account-header,.account-section-title,.session-item{justify-content:space-between}.account-header-title,.account-panel-title,.icon-button-content{justify-content:flex-start}.account-section-title{flex-wrap:wrap;gap:12px}.account-form-grid,.account-info-grid{display:grid;gap:12px}.account-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.account-info-grid{gap:0;border:1px solid #e5e7eb;border-radius:16px;overflow:hidden;background:#fff}.account-info-row{display:grid;gap:4px;border-bottom:1px solid #e5e7eb;padding:12px}.account-info-row:last-child{border-bottom:0}.account-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.account-panel{display:grid;gap:14px;border:0;border-top:1px solid var(--line);border-radius:0;padding:16px 0 0;background:transparent}.account-panel-card{border:1px solid var(--line);border-radius:20px;padding:clamp(14px,2vw,18px);background:#fff}.account-sessions-panel{align-content:start}.account-panel h3,.account-header h2,.account-hero h2{margin:0}.account-hero h2{margin-top:8px;color:#111827;font-size:clamp(1.55rem,2.6vw,2.1rem);line-height:1.08;letter-spacing:-.04em;overflow-wrap:anywhere}.account-icon,.auth-page-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--ink);background:var(--surface)}.account-icon{width:40px;height:40px;border-radius:14px}.auth-page-icon{width:64px;height:64px;border-radius:20px}.icon-button-content{gap:8px}.icon-button-content .account-icon{width:24px;height:24px;border-radius:8px;color:currentColor;background:transparent}.account-quick-actions{grid-template-columns:1fr}.highlight-panel{border-color:#fde68a;background:#fffbeb}.status-pill{width:fit-content;border-radius:999px;padding:8px 12px;font-size:.82rem;font-weight:900;white-space:nowrap}.status-pill.success{color:#166534;background:#dcfce7}.status-pill.warning{color:#92400e;background:#fef3c7}.session-list{display:grid;gap:10px}.session-item{align-items:flex-start;border:1px solid #e5e7eb;border-radius:16px;padding:12px;background:#fff}.session-item>div{min-width:0}.session-item p,.session-item span{margin:4px 0 0;color:#64748b;font-size:.88rem;overflow-wrap:anywhere}.app-shell:has(.account-page){max-width:none;padding:16px 20px 0}.account-page{width:100%;min-height:calc(100dvh - 72px);font-size:.88rem}.account-card.account-shell{width:100%;max-width:none;margin:0;border:0;border-radius:0;padding:0;background:transparent}.account-hero{grid-template-columns:minmax(260px,.8fr) minmax(460px,1.2fr);align-items:center;border-bottom:1px solid var(--line);padding:10px 0 16px}.account-tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);padding-top:10px}.account-tabs>button{display:flex;align-items:center;gap:9px;min-width:210px;border:0;border-bottom:3px solid transparent;padding:10px 12px 9px;background:transparent;color:var(--ink-4);text-align:left;cursor:pointer}.account-tabs>button:hover{color:var(--ink);background:var(--surface)}.account-tabs>button.active{border-bottom-color:var(--ink);color:var(--ink)}.account-tabs>button>span{display:grid;gap:2px}.account-tabs strong{font-size:.86rem}.account-tabs small{color:var(--ink-4);font-size:.7rem}.account-tabs .account-icon{width:28px;height:28px;background:transparent}.account-page .account-avatar{width:44px;height:44px;border-radius:14px;font-size:1rem}.account-menu .account-avatar{flex:0 0 32px;width:32px;height:32px;max-width:32px;max-height:32px;border-radius:999px;font-size:.88rem;line-height:1}.account-hero h2{margin-top:6px;font-size:clamp(1.1rem,1.8vw,1.45rem);letter-spacing:-.02em}.account-stat-grid,.account-info-grid,.account-panel-card,.session-item{border-radius:0;background:transparent;box-shadow:none}.account-stat-grid,.account-info-grid{border-color:var(--line)}.account-layout{grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:clamp(18px,2vw,28px);padding-top:18px}.account-panel-card{border:0;border-top:1px solid var(--line);padding:14px 0 0}.account-panel h3{font-size:.95rem}.account-icon{width:30px;height:30px;border-radius:10px}.account-stat{padding:10px 12px}.account-stat span,.account-info-row span{font-size:.68rem;letter-spacing:.05em}.account-stat strong,.account-info-row strong{font-size:.82rem}.account-info-row,.session-item{padding:10px 0}.session-item{border:0;border-top:1px solid var(--line)}.session-item p,.session-item span{font-size:.78rem}.status-pill{padding:5px 8px;font-size:.7rem}@media (max-width: 900px){.account-hero,.account-layout,.account-form-grid,.account-stat-grid{grid-template-columns:1fr}.app-shell:has(.account-page){padding:12px 14px 0}.account-tabs>button{flex:1;min-width:0}.account-tabs small{display:none}}.settings-shell{gap:18px}.settings-hero{grid-template-columns:minmax(260px,1fr) auto}.settings-action-row{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.settings-page .account-panel{border-top:1px solid var(--line);padding-top:14px}.settings-page .nested-panel{margin-top:4px;border-top:1px solid var(--line);padding-top:14px}.settings-page .account-grid,.settings-page .byok-model-row{gap:10px}.settings-page .account-panel h3,.settings-page .account-panel h4{margin:0;font-size:.95rem}.settings-page .field-hint,.settings-page .byok-model-row label{font-size:.78rem}.settings-page input,.settings-page select,.settings-page button{font-size:.84rem}.settings-page .auth-actions{justify-content:flex-start}@media (max-width: 900px){.settings-hero,.settings-page .account-grid,.settings-page .byok-model-row{grid-template-columns:1fr}.settings-action-row{justify-content:flex-start}}.json-panel summary{margin-bottom:12px}.json-panel:not([open]) summary{margin-bottom:0}.json-actions{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px}.secondary-button{border-color:#d4d4d4;color:#111;background:#fff}.secondary-button:hover{border-color:#111;background:#f7f7f7}.link-button{width:fit-content;border:none;padding:0;color:var(--ink);background:transparent;text-align:left;font-weight:700}.model-search{margin-top:4px}.model-actions{display:flex;flex-wrap:wrap;gap:10px}.model-list{display:grid;gap:8px;max-height:460px;overflow:auto;padding-right:4px}.model-row{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:start;padding:10px;border:1px solid #e5e5e5;border-radius:12px;background:#fff}.model-row input{width:auto;margin-top:3px}.model-row span{display:grid;gap:4px;min-width:0}.model-row strong,.model-row small{overflow-wrap:anywhere}.model-row small{color:#666}pre{overflow:auto;max-height:360px;margin:0;border:1px solid #262626;border-radius:14px;padding:14px;background:#111;color:#f5f5f5;line-height:1.5}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width: 900px){.header-subtitle{display:none}@media (orientation: portrait){.mobile-renderer-warning{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;display:flex;align-items:center;justify-content:center;padding:20px;background:#0f172a9e;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.mobile-renderer-warning-card{width:min(420px,100%);border:1px solid #e5e7eb;border-radius:24px;padding:22px;background:#fff;color:#111827;box-shadow:0 24px 80px #00000047}.mobile-renderer-warning-card h2{margin:0 0 10px;font-size:1.2rem}.mobile-renderer-warning-card p{margin:0 0 10px;color:#475569;line-height:1.5}.mobile-renderer-warning-card .primary-button{width:100%;max-width:100%;margin-top:8px;white-space:normal}}.mobile-scroll-notice{display:block;width:100%;border:1px solid #bfdbfe;border-radius:16px;padding:12px 14px;background:var(--surface);color:#64748b;font-size:.92rem;font-weight:500;text-align:center;box-shadow:0 10px 28px #1e40af1f}.global-header{padding:0 12px;gap:8px}.header-nav{overflow-x:auto;min-width:0}.tools-dropdown{position:fixed;top:64px;left:12px;right:12px;z-index:180;width:auto;max-height:calc(100dvh - 80px);overflow-y:auto}.nav-item{flex:0 0 auto;padding:0 10px;font-size:.82rem}.header-left{min-width:0}.header-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-shell{padding:16px 18px 8px}.home-hero,.login-card{grid-template-columns:1fr}.login-illustration{width:100%;max-height:320px}.home-page,.home-hero{width:100%;max-width:100%;min-width:0;overflow-x:clip}.home-hero-copy{padding:12px 0 0;width:calc(100vw - 36px);max-width:calc(100vw - 36px)}.home-hero-copy h2{max-width:calc(100vw - 36px);font-size:1.45rem;line-height:1.14;overflow-wrap:normal;word-break:normal}.home-hero-copy p,.home-actions{max-width:calc(100vw - 36px)}.home-trust-strip span{max-width:100%;overflow-wrap:anywhere}.home-visual-card{width:calc(100vw - 36px);max-width:calc(100vw - 36px);min-height:300px}.home-outcome-strip,.feature-grid,.workflow-strip,.guide-grid,.guide-columns,.about-grid,.about-section,.about-steps,.about-capabilities,.about-audience,.legal-section-grid,.account-grid,.account-hero,.account-layout,.account-form-grid{grid-template-columns:1fr}.account-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.account-stat:nth-child(2n){border-right:0}.account-stat:nth-child(-n+2){border-bottom:1px solid var(--line)}.legal-hero-row{flex-direction:column}.app-footer{margin-top:24px}.footer-top,.footer-bottom{padding-left:18px;padding-right:18px}.footer-top,.footer-nav{grid-template-columns:1fr;gap:20px}.footer-bottom{flex-direction:column;align-items:center;gap:8px}.floating-card-live{right:32px;bottom:38px}.login-visual{border-right:none;border-bottom:1px solid #e5e7eb}.login-form{padding:26px}.auth-actions button,.home-actions button:not(.link-button){width:100%}.workspace{grid-template-columns:1fr}.workspace-sidebar,.render-stage{position:static;max-height:none}.hero h1{font-size:clamp(30px,10vw,44px)}.three-view,.geogebra-view{min-height:400px}.tool-mode-grid,.editor-grid{grid-template-columns:1fr 1fr}.editor-grid button{grid-column:1 / -1}}@media (max-width: 560px){.tool-mode-grid{grid-template-columns:1fr}}.professional-legal-doc .legal-content{margin-top:.65rem;padding:clamp(14px,2.8vw,20px);background:#fafafa;border-radius:14px;border:1px solid #e8e8e8;box-shadow:none}.professional-legal-doc .legal-intro{font-size:1rem;color:#262626;line-height:1.52;margin-bottom:1.25rem;padding-bottom:1rem;border-bottom:1px solid #e5e5e5}.professional-legal-doc .legal-section{margin-bottom:1.25rem}.professional-legal-doc .legal-section:last-child{margin-bottom:0}.professional-legal-doc .legal-section h3{font-size:1.05rem;color:#0a0a0a;margin:0 0 .45rem;display:flex;align-items:center;font-weight:700}.professional-legal-doc .legal-section p{color:#404040;line-height:1.55;margin:0 0 .6rem}.professional-legal-doc .legal-section ul{margin:0 0 .85rem;padding-left:1.25rem;list-style-type:disc}.professional-legal-doc .legal-section li{color:#404040;line-height:1.52;margin-bottom:.4rem}.professional-legal-doc .legal-section li:last-child{margin-bottom:0}.professional-legal-doc .legal-section strong{color:#0a0a0a;font-weight:650}@media (max-width: 768px){.professional-legal-doc .legal-content{padding:12px 14px}}.admin-panel-title-row{display:flex;justify-content:space-between;gap:16px;margin-bottom:8px}.admin-panel-title-row h3{margin-bottom:4px}.admin-panel-title-row p{margin:0;color:#64748b;font-size:13px}.admin-chart-container{padding:1rem 0 0;overflow-x:auto}.admin-bar-chart{display:flex;align-items:flex-end;height:220px;gap:10px;padding:18px 6px 34px;border-bottom:1px solid #d4d4d4;background:linear-gradient(to top,rgba(229,229,229,.85) 1px,transparent 1px) 0 0 / 100% 25%;min-width:720px}.admin-chart-bar-group{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;position:relative}.admin-chart-bar{width:100%;max-width:42px;background:linear-gradient(180deg,#404040,#0a0a0a);border-radius:10px 10px 4px 4px;transition:height .3s ease,opacity .2s,transform .2s;position:relative;min-height:3px;box-shadow:0 8px 18px #17171724}.admin-chart-bar.is-empty{background:#e5e5e5;box-shadow:none;opacity:.9}.admin-chart-bar:hover{opacity:.9;transform:translateY(-2px)}.admin-chart-value{position:absolute;top:-22px;left:50%;transform:translate(-50%);font-size:.74rem;font-weight:800;font-variant-numeric:tabular-nums;color:#0f172a}.admin-chart-label{position:absolute;bottom:-25px;font-size:.72rem;font-weight:700;color:#64748b;white-space:nowrap;font-variant-numeric:tabular-nums}.admin-chart-empty-state{display:grid;place-items:center;gap:8px;min-height:180px;border:1px dashed #d4d4d4;border-radius:16px;background:#fafafa;color:#525252;text-align:center;padding:28px}.admin-chart-empty-state .admin-icon{color:#737373}.admin-chart-empty-state strong{color:#171717;font-size:15px}.admin-chart-empty-state p{margin:0;color:#737373;font-size:13px}.admin-status-box{margin:1rem 0;padding:.75rem 1rem;border-radius:6px;font-size:.9rem}.admin-status-box.ok{background:#22c55e1a;border:1px solid rgba(34,197,94,.3);color:#15803d}.admin-status-box.error{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#b91c1c}.admin-status-box strong{display:block;margin-bottom:.25rem}.admin-status-box p{margin:0;word-break:break-all;font-family:monospace}:root{--ink: #111111;--ink-2: #262626;--ink-3: #525252;--ink-4: #737373;--line: #e3e3df;--line-2: #c9c9c2;--surface: #f6f6f4;--surface-2: #eeeeeb;--paper: #ffffff;--accent: #111111;--accent-fg: #ffffff;--up: #16a34a;--down: #dc2626;--max-bg: #fef2f2;--min-bg: #f3f3f1;--max-ink: #991b1b;--min-ink: #262626}.sp-btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:6px;flex-shrink:0;border:none;border-radius:10px;padding:8px 18px;min-height:38px;background:var(--accent);color:var(--accent-fg);font-family:inherit;font-size:.88rem;font-weight:800;cursor:pointer;transition:opacity .15s,transform .1s;white-space:nowrap;letter-spacing:.01em}.sp-btn-primary:hover:not(:disabled){opacity:.84;transform:translateY(-1px)}.sp-btn-primary:disabled{opacity:.3;cursor:not-allowed}#solver-submit-btn{background:transparent;color:#000}#fa-submit-btn{border:1px solid #111111;background:#111;color:#fff}#fa-submit-btn:hover:not(:disabled){background:#000;opacity:1}#fa-submit-btn:disabled{border-color:#d4d4d4;background:#d4d4d4;color:#fff}#fa-submit-btn .sp-spinner{border-color:#ffffff59;border-top-color:#fff}#solver-submit-btn .sp-spinner{border-color:#00000040;border-top-color:#000}.sp-spinner{display:inline-block;width:15px;height:15px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:spin .65s linear infinite}.sp-chips{display:flex;flex-wrap:wrap;gap:6px}.sp-chip{border:1px solid var(--line-2);border-radius:999px;padding:4px 12px;background:var(--paper);color:var(--ink-2);font-family:inherit;font-size:.77rem;font-weight:700;cursor:pointer;transition:border-color .12s,background .12s;white-space:nowrap}.sp-chip:hover{border-color:var(--ink-2);background:var(--surface)}.fa2-parameter-panel{display:grid;gap:10px;border:1px solid var(--line-2);border-radius:14px;padding:12px;background:var(--surface)}.fa2-parameter-head{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--ink-3);font-size:.8rem;font-weight:800}.fa2-parameter-head strong{border-radius:999px;padding:4px 10px;background:var(--surface);color:var(--ink);font-family:Courier New,monospace}.fa2-parameter-control{display:grid;grid-template-columns:minmax(0,1fr) 96px;gap:10px;align-items:center}.fa2-parameter-control input[type=range]{width:100%;box-shadow:none}.fa2-parameter-control input[type=number]{width:100%;border:1px solid var(--line-2);border-radius:8px;padding:6px 8px;color:var(--ink);background:var(--paper);font-family:Courier New,monospace;font-size:.85rem;font-weight:800}.fa2-parameter-control input[type=number]:focus{border-color:var(--line-2);box-shadow:none}.fa2-parameter-note,.fa2-parameter-result-note{color:var(--ink-4);font-size:.78rem;line-height:1.45}.fa2-parameter-result-note{border-radius:10px;padding:8px 10px;background:var(--surface);color:var(--ink-3);font-weight:800}.fa2-tool-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.fa2-tool-pill{display:inline-flex;justify-content:center;align-items:center;border:1px solid var(--line);border-radius:8px;padding:6px 10px;background:transparent;color:var(--ink-3);font-family:inherit;font-size:.78rem;font-weight:600;cursor:pointer;transition:background .14s,border-color .14s,color .14s}.fa2-tool-pill:hover,.fa2-tool-pill.is-active{border-color:var(--line-2);background:var(--surface);color:var(--ink)}.fa2-tool-pill:disabled{cursor:not-allowed;opacity:.45}.fa2-tool-panel{display:grid;gap:10px;border:0;border-top:1px solid var(--line);border-radius:0;padding:12px 0 0;background:transparent;box-shadow:none}.fa2-tool-row{display:grid;grid-template-columns:128px minmax(0,1fr) minmax(76px,.4fr);align-items:center;gap:8px}.fa2-tool-stack{display:grid;gap:8px}.fa2-tool-label{color:var(--ink-3);font-size:.78rem;font-weight:600}.fa2-slider-row{display:grid;grid-template-columns:64px minmax(90px,1fr) 76px;align-items:center;gap:8px;color:var(--ink-3);font-size:.78rem;font-weight:800}.fa2-mini-input{width:100%;min-width:0;border:1px solid var(--line-2);border-radius:8px;padding:6px 8px;background:var(--paper);color:var(--ink);font-family:inherit;font-variant-numeric:tabular-nums;font-size:.82rem;font-weight:500}.fa2-result-table{width:100%;border-collapse:separate;border-spacing:0;overflow:hidden;border:1px solid var(--line);border-radius:12px;font-size:.84rem;background:var(--paper)}.fa2-result-table th,.fa2-result-table td{border-bottom:1px solid var(--line);border-right:1px solid var(--line);padding:10px 12px;text-align:left;vertical-align:top}.fa2-result-table tr:last-child th,.fa2-result-table tr:last-child td{border-bottom:0}.fa2-result-table th:last-child,.fa2-result-table td:last-child{border-right:0}.fa2-result-table th{width:90px;background:var(--surface);color:var(--ink-3);font-weight:900}.fa2-interval-analysis{display:grid;gap:12px}.fa2-interval-components{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.fa2-interval-components>span{border:1px solid var(--line);border-radius:8px;padding:6px 8px;background:var(--paper)}.fa2-tool-warnings{margin:0;padding:10px 12px 10px 30px;border:1px solid #f59e0b;border-radius:10px;color:#92400e;background:#fffbeb}.fa2-interval-note{display:flex;align-items:center;gap:10px;flex-wrap:wrap;border:1px solid var(--line);border-radius:12px;padding:10px 12px;color:var(--ink-2);background:var(--surface);font-size:.86rem;font-weight:700}.fa2-interval-note .katex,.fa2-interval-note .fa2-katex{color:var(--ink);font-size:1rem;max-width:100%;overflow-x:auto}.fa2-interval-table th{width:auto}.fa2-interval-table td,.fa2-interval-table th{text-align:center;vertical-align:middle}.fa2-interval-table th:first-child{text-align:left}.fa2-extrema-conclusion{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:10px}.fa2-extrema-conclusion>div,.fa2-extrema-formula{border:1px solid var(--line);border-radius:12px;padding:12px;background:var(--paper)}.fa2-extrema-formula{display:block;overflow-x:auto;text-align:center}.fa2-extrema-formula .katex-display{margin:0}.fa2-extrema-conclusion .katex{color:var(--ink);font-size:1rem}.fa2-condition-card{display:grid;gap:6px;border:1px solid var(--line);border-radius:10px;padding:10px;background:var(--paper)}@media (max-width: 760px){.fa2-tool-row,.fa2-slider-row{grid-template-columns:1fr}}.sp-error{display:flex;align-items:flex-start;gap:6px;border:1px solid #fecaca;border-radius:10px;padding:9px 12px;background:#fff5f5;color:#991b1b;font-size:.85rem;line-height:1.45}.sp-warnings{display:grid;gap:4px;border:1px solid #fde68a;border-radius:10px;padding:8px 12px;background:#fffbeb}.sp-warning{font-size:.8rem;color:#92400e;line-height:1.4}.sp-panel{display:grid;gap:14px;border:0;border-top:1px solid var(--line-2);border-radius:0;padding:18px 0 0;background:transparent;margin-top:0;box-shadow:none}.sp-header{display:flex;align-items:flex-start;gap:12px}.sp-header-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:34px;height:34px;border-radius:10px;background:var(--ink);color:var(--accent-fg)}.sp-header-title{font-size:.97rem;font-weight:900;color:var(--ink);line-height:1.2}.sp-header-sub{font-size:.77rem;color:var(--ink-4);margin-top:2px}.sp-input-wrap{display:flex;align-items:center;gap:8px;border:1.5px solid var(--line-2);border-radius:12px;padding:4px 4px 4px 14px;background:var(--paper);transition:border-color .15s,box-shadow .15s}.sp-input-wrap:focus-within{border-color:var(--ink);box-shadow:0 0 0 3px #0a0a0a14}.sp-input{flex:1;border:none;background:transparent;font-family:inherit;font-size:.93rem;color:var(--ink);outline:none;padding:6px 0;min-width:0}.sp-input:focus,.sp-input:focus-visible{outline:none;box-shadow:none}.sp-input::placeholder{color:var(--ink-4)}.sp-normalized-hint,.sp-input-help{margin-top:-6px;color:var(--ink-4);font-size:.76rem;line-height:1.35}.sp-normalized-hint code{border:1px solid var(--line);border-radius:7px;padding:2px 6px;background:var(--surface-2);color:var(--ink);font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.74rem;overflow-wrap:anywhere}.sp-formula-help{display:grid;gap:10px;border:1px solid var(--line);border-radius:14px;padding:12px;background:var(--paper);box-shadow:var(--shadow-subtle)}.sp-formula-help-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.sp-formula-help-head strong{color:var(--ink);font-size:.85rem}.sp-formula-help-head button{width:24px;height:24px;border:1px solid var(--line);border-radius:999px;padding:0;background:var(--surface);color:var(--ink-3);cursor:pointer}.sp-formula-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.sp-formula-grid button{display:grid;gap:4px;border:1px solid var(--line);border-radius:10px;padding:9px;background:var(--surface);color:var(--ink);text-align:left;cursor:pointer}.sp-formula-grid button:hover{border-color:var(--ink-2);background:var(--paper)}.sp-formula-grid span{color:var(--ink-4);font-size:.72rem;font-weight:700}.sp-formula-grid code{color:var(--ink);font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.78rem;font-weight:800;overflow-wrap:anywhere}@media (max-width: 560px){.sp-formula-grid{grid-template-columns:1fr}}.sp-answer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;border:1.5px solid var(--ink);border-radius:12px;padding:12px 16px;background:var(--ink);color:var(--accent-fg)}.sp-answer-label{font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.1em;opacity:.6}.sp-answer-value{font-size:1rem;font-weight:900;font-family:Courier New,monospace}.sp-trust{display:grid;gap:10px;border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:var(--paper)}.sp-trust--verified{border-color:#bbf7d0;background:#f0fdf4}.sp-trust--partial{border-color:#fde68a;background:#fffbeb}.sp-trust--insufficient{border-color:#fecaca;background:#fff5f5}.sp-trust-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px}.sp-trust-badge{display:inline-flex;align-items:center;min-height:24px;border-radius:999px;padding:3px 9px;background:var(--ink);color:var(--accent-fg);font-size:.72rem;font-weight:900;line-height:1.2}.sp-trust--verified .sp-trust-badge{background:#166534}.sp-trust--partial .sp-trust-badge{background:#92400e}.sp-trust--insufficient .sp-trust-badge{background:#991b1b}.sp-trust-method{color:var(--ink-4);font-size:.74rem;font-weight:800}.sp-trust-section{display:grid;gap:6px}.sp-trust-title{color:var(--ink);font-size:.74rem;font-weight:900}.sp-trust-facts,.sp-trust-issues{display:grid;gap:5px}.sp-trust-fact{display:grid;grid-template-columns:76px 1fr;gap:8px;align-items:start;color:var(--ink);font-size:.78rem;line-height:1.38}.sp-trust-fact span{border:1px solid var(--line);border-radius:7px;padding:2px 6px;background:#ffffffb8;color:var(--ink-4);font-size:.68rem;font-weight:900;text-align:center}.sp-trust-fact p,.sp-trust-issues p{margin:0;overflow-wrap:anywhere}.sp-trust-issues p{color:#92400e;font-size:.78rem;line-height:1.4}.sp-trust--insufficient .sp-trust-issues p{color:#991b1b}@media (max-width: 560px){.sp-trust-fact{grid-template-columns:1fr}.sp-trust-fact span{width:max-content}}.sp-result{display:grid;gap:12px}.sp-steps{display:grid;gap:2px}.sp-steps-meta{font-size:.75rem;font-weight:700;color:var(--ink-4);margin-bottom:4px}.sp-step{display:grid;grid-template-columns:28px 1fr;gap:0 12px;text-align:left;border:none;background:transparent;cursor:pointer;font-family:inherit;width:100%;transition:background .12s;border-radius:10px;padding:10px}.sp-step:hover{background:var(--surface)}.sp-step--on{background:var(--surface);box-shadow:inset 3px 0 0 var(--ink)}.sp-step-num-col{display:flex;flex-direction:column;align-items:center;gap:4px}.sp-step-num{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:24px;height:24px;border-radius:50%;border:2px solid var(--line-2);background:var(--paper);color:var(--ink-3);font-size:.7rem;font-weight:900;transition:border-color .15s,background .15s,color .15s}.sp-step--on .sp-step-num{border-color:var(--ink);background:var(--ink);color:var(--accent-fg)}.sp-step-line{flex:1;width:2px;min-height:12px;background:var(--line);border-radius:1px}.sp-step-content{display:grid;gap:12px;min-width:0;padding-bottom:8px}.sp-step-head{display:flex;align-items:flex-start;gap:8px;flex-wrap:wrap}.sp-step-title{font-size:.88rem;font-weight:800;color:var(--ink);flex:1;line-height:1.3}.sp-step-tag{flex-shrink:0;border:1px solid var(--line-2);border-radius:999px;padding:2px 8px;background:var(--surface);color:var(--ink-3);font-size:.7rem;font-weight:700}.sp-step--on .sp-step-tag{border-color:var(--ink-2);color:var(--ink)}.sp-step-text{margin:0;font-size:.85rem;color:var(--ink-3);line-height:1.55;white-space:pre-line}.sp-step-proof-note{display:grid;gap:4px;border-left:3px solid var(--line-2);padding:8px 10px;background:var(--surface);border-radius:8px;color:var(--ink-3);font-size:.8rem;line-height:1.45}.sp-step-proof-note p{margin:0}.sp-step-proof-note strong{color:var(--ink)}.sp-step-formula{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:12px;border:1px solid var(--line);border-radius:8px;padding:12px 16px;margin-top:6px;margin-bottom:6px;background:var(--surface);font-family:inherit;font-size:.9rem;font-weight:600;line-height:1.5;color:var(--ink);overflow-x:auto;overflow-y:hidden;text-align:center;min-width:0;max-width:100%}.sp-step-formula-label{flex:0 0 auto;color:var(--ink-3);white-space:nowrap}.sp-step-formula-math{flex:1 1 auto;min-width:0;overflow-x:auto;overflow-y:hidden}.sp-step-formula .katex,.sp-step-formula .katex *{color:var(--ink)}.sp-step-result{font-size:.9rem;font-weight:900;color:var(--ink);font-family:Courier New,monospace}@keyframes sp-pulse{0%,to{opacity:1}50%{opacity:.55}}.fa2-panel{display:grid;gap:16px;border:0;border-radius:0;padding:0;background:transparent;margin-top:0;box-shadow:none;min-width:0;max-width:100%}.fa2-workspace{display:grid;grid-template-columns:minmax(320px,372px) minmax(0,1fr);gap:clamp(20px,2.6vw,32px);align-items:start}.fa2-control-panel,.fa2-results-panel{min-width:0}.fa2-control-panel{position:static;display:grid;gap:14px;align-content:start;border:0;border-right:1px solid var(--line-2);border-radius:0;padding:0 20px 0 0;background:transparent;box-shadow:none}.fa2-sticky-controls{z-index:5;display:grid;gap:14px;padding-bottom:14px;margin-bottom:0;border-bottom:1px solid var(--line);background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:0;box-shadow:none}.fa2-advanced-panel{display:grid;gap:0}.fa2-advanced-toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;border:1px solid var(--line-2);border-radius:999px;padding:9px 12px;background:transparent;color:var(--ink-2);font-family:inherit;font-size:.82rem;font-weight:900;cursor:pointer}.fa2-advanced-toggle[aria-expanded=true] svg{transform:rotate(180deg)}.fa2-results-panel{display:grid;gap:14px;max-height:none;overflow-y:visible;overscroll-behavior:contain;padding-right:0}.fa2-control-card,.fa2-empty-result{border:0;border-top:1px solid var(--line-2);border-radius:0;background:transparent;box-shadow:none}.fa2-control-card{display:grid;gap:12px;padding:16px 0}.fa2-formula-card{border-top:0;padding:0}.fa2-control-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--ink-3);font-size:.78rem;font-weight:600}.fa2-formula-row-control{display:grid;grid-template-columns:minmax(0,1fr) auto 112px;gap:8px;align-items:center}.fa2-formula-card.is-dragging{outline:2px dashed var(--ink);outline-offset:8px}.fa2-image-input-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap}.fa2-image-input-button svg{width:16px;height:16px}.fa2-input-mode{margin-left:auto}.fa2-input-mode select{border:1px solid var(--line-2);border-radius:7px;padding:4px 6px;background:var(--paper);color:var(--ink-2);font:inherit;text-transform:none;letter-spacing:normal}.fa2-expression-preview{display:flex;min-height:40px;align-items:center;gap:10px;overflow-x:auto;border:1px solid var(--line);border-radius:10px;padding:8px 10px;background:var(--paper)}.fa2-expression-preview>span:first-child,.fa2-expression-syntax{color:var(--ink-4);font-size:.7rem}.fa2-expression-preview>span:first-child{flex:0 0 auto;font-weight:600}.fa2-expression-syntax{line-height:1.45;overflow-wrap:anywhere}.fa2-copy-values{color:var(--ink-4);font-size:.72rem}.fa2-copy-values>summary{width:fit-content;cursor:pointer;list-style:none}.fa2-copy-values>summary::-webkit-details-marker{display:none}.fa2-copy-values>div{display:grid;gap:6px;padding-top:6px}.fa2-copy-value-group{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.fa2-copy-value-group>span{min-width:68px;color:var(--ink-3)}.fa2-copy-values button{border:0;border-radius:6px;padding:4px 7px;background:var(--surface);color:var(--ink-3);font:inherit;cursor:pointer}.fa2-copy-values [role=status]{color:var(--ink-4);font-size:.72rem}.fa2-parameter-controls{display:grid;gap:10px;margin:0;border:1px solid var(--line);border-radius:12px;padding:10px}.fa2-parameter-controls legend,.fa2-parameter-controls label{color:var(--ink-3);font-size:.76rem;font-weight:600}.fa2-parameter-controls label,.fa2-parameter-value-controls{display:grid;gap:6px}.fa2-parameter-controls select,.fa2-parameter-controls input[type=text],.fa2-parameter-controls input[type=number]{width:100%;border:1px solid var(--line-2);border-radius:8px;padding:8px 10px;background:var(--paper);color:var(--ink);font:inherit}.fa2-parameter-range-inputs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.fa2-parameter-range-inputs small{grid-column:1 / -1}.fa2-parameter-value-controls small{color:var(--ink-4);font-size:.7rem}.fa2-ocr-review{display:grid;gap:10px;border:1px solid var(--line);border-radius:12px;padding:12px;background:var(--paper)}.fa2-ocr-review-head,.fa2-ocr-review-actions{display:flex;align-items:center;justify-content:space-between;gap:8px}.fa2-ocr-review-head span{color:var(--ink-3);font-size:.72rem;font-weight:600}.fa2-ocr-review img{width:100%;max-height:180px;object-fit:contain;border:1px solid var(--line-2);border-radius:8px;background:#fff}.fa2-ocr-review p,.fa2-ocr-confidence,.fa2-ocr-ambiguities,.fa2-ocr-warnings,.fa2-ocr-review details{margin:0;color:var(--ink-3);font-size:.76rem}.fa2-ocr-confidence{display:grid;gap:4px;font-weight:600}.fa2-ocr-confidence progress{width:100%}.fa2-ocr-ambiguities ul,.fa2-ocr-warnings{margin-top:5px;padding-left:18px}.fa2-ocr-review pre{max-height:120px;overflow:auto;white-space:pre-wrap;word-break:break-word}.fa2-ocr-review-actions>*{flex:1}.fa2-upload-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%}.fa2-ocr-dropzone{display:grid;justify-items:center;gap:8px;border:1.5px dashed var(--line-2);border-radius:14px;padding:16px;background:var(--surface);text-align:center;color:var(--ink-3);transition:border-color .15s,background .15s}.fa2-ocr-dropzone.is-dragging{border-color:var(--ink);background:#f5f5f5}.fa2-ocr-dropzone-icon{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:12px;background:var(--paper);color:var(--ink);border:1px solid var(--line)}.fa2-ocr-dropzone strong{color:var(--ink);font-size:.9rem}.fa2-ocr-dropzone span{font-size:.78rem;line-height:1.4}.fa2-control-note{color:var(--ink-4);font-size:.76rem;line-height:1.45}.fa2-chip-groups,.fa2-chip-group{display:grid;gap:8px}.fa2-chip-group-title{color:var(--ink-4);font-size:.72rem;font-weight:900}.fa2-empty-result{min-height:min(520px,calc(100dvh - 176px));display:grid;place-items:center;align-content:center;gap:10px;padding:28px;text-align:center;color:var(--ink-3);background:linear-gradient(90deg,rgba(17,17,17,.035) 1px,transparent 1px),linear-gradient(180deg,rgba(17,17,17,.035) 1px,transparent 1px);background-size:30px 30px}.fa2-loading-result{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:14px}.fa2-skeleton-stack{display:grid;gap:14px}.fa2-skeleton{border-radius:16px;background:linear-gradient(90deg,#f3f4f6,#fff,#f3f4f6 90%);background-size:220% 100%;animation:fa2-skeleton-pulse 1.2s ease-in-out infinite;border:1px solid var(--line)}.fa2-skeleton-graph{min-height:520px}.fa2-skeleton-card{min-height:150px}@keyframes fa2-skeleton-pulse{0%{background-position:0% 50%}to{background-position:220% 50%}}.fa2-empty-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--line-2);border-radius:999px;color:var(--paper);background:var(--ink)}.fa2-empty-result strong{color:var(--ink);font-size:1rem}.fa2-empty-result span{max-width:420px;font-size:.88rem;line-height:1.55}.fa2-header{display:flex;align-items:flex-start;gap:12px}.fa2-header-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:34px;height:34px;border-radius:999px;background:var(--ink);color:var(--accent-fg)}.fa2-header-title{font-size:1.05rem;font-weight:760;color:var(--ink);line-height:1.2}.fa2-header-sub{font-size:.77rem;color:var(--ink-4);margin-top:2px}.fa2-input-wrap{position:relative;display:flex;align-items:center;gap:8px;border:1px solid var(--line-2);border-radius:999px;padding:4px 12px 4px 14px;background:var(--paper);transition:border-color .15s,box-shadow .15s;min-width:0}.fa2-input-wrap:focus-within{border-color:var(--ink);box-shadow:0 0 0 3px #0000000f}.fa2-prefix{font-size:.95rem;font-weight:900;color:var(--ink-3);white-space:nowrap;font-family:Courier New,monospace}.fa2-input{flex:1;border:none;background:transparent;font-family:Courier New,monospace;font-size:.93rem;color:var(--ink);outline:none;padding:6px 0;min-width:0}.fa2-input::placeholder{color:var(--ink-4)}.fa2-input:focus,.fa2-input:focus-visible,.fa2-input:hover{border-color:transparent;box-shadow:none;outline:none}.fa2-guide-btn{display:inline-flex;align-items:center;justify-content:center;flex:0 0 28px;width:28px;height:28px;padding:0;border:0;border-radius:999px;background:#fff;color:#0f172a;cursor:pointer;line-height:1}.fa2-guide-btn svg{display:block;width:16px;height:16px;color:currentColor;stroke:currentColor}.fa2-guide-btn:hover,.fa2-guide-btn:focus,.fa2-guide-btn:focus-visible,.fa2-guide-btn:active{color:#020617;background:#fff;outline:none;box-shadow:none;transform:none}.fa2-guide-btn:disabled{opacity:.4;cursor:not-allowed}.fa2-guide-btn-link{position:relative}.fa2-guide-btn-link:after{content:attr(data-guide-hover);position:absolute;top:calc(100% + 10px);left:50%;transform:translate(-50%);opacity:0;pointer-events:none;white-space:nowrap;border:1px solid rgba(15,23,42,.14);border-radius:8px;background:#f8fafcf5;padding:6px 10px;font-size:.74rem;font-weight:800;color:var(--ink-3);box-shadow:0 10px 24px #0f172a29;transition:opacity .14s ease;z-index:20}.fa2-guide-btn-link:hover:after,.fa2-guide-btn-link:focus-visible:after{opacity:1}.fa2-guide-popover{position:absolute;right:110px;top:calc(100% + 8px);z-index:12;width:min(560px,calc(100vw - 120px));max-height:min(70vh,560px);overflow:auto;border:1px solid rgba(15,23,42,.18);background:#f8fafce0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:10px;padding:10px 12px;box-shadow:0 12px 28px #0f172a24;color:var(--ink-2);font-size:.8rem}.fa2-guide-title{font-size:.76rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-4);margin-bottom:6px}.fa2-guide-popover ul{margin:0;padding-left:16px;display:grid;gap:4px}.fa2-guide-groups{display:grid;gap:10px}.fa2-guide-group{border:1px solid rgba(148,163,184,.34);border-radius:8px;padding:8px;background:#ffffff85}.fa2-guide-group-title{font-size:.74rem;font-weight:900;color:var(--ink-3);margin-bottom:6px;text-transform:uppercase;letter-spacing:.04em}.fa2-guide-list{display:grid;gap:6px}.fa2-guide-row{display:grid;grid-template-columns:minmax(170px,1.45fr) minmax(170px,1fr);gap:8px 10px;align-items:center}.fa2-guide-raw{font-size:.76rem;line-height:1.3;color:var(--ink-2);background:#94a3b824;border:1px solid rgba(148,163,184,.3);border-radius:6px;padding:4px 6px;white-space:normal;overflow-wrap:anywhere}.fa2-guide-latex{font-size:.92rem;color:var(--ink)}.fa2-guide-note{grid-column:1 / -1;font-size:.72rem;color:var(--ink-4);line-height:1.3}@media (max-width: 680px){.fa2-guide-popover{right:0;width:min(540px,calc(100vw - 24px))}.fa2-guide-row{grid-template-columns:1fr}}.fa2-result{display:grid;gap:14px}.fa2-result-shell{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:14px;align-items:start}.fa2-graph-column,.fa2-analysis-column,.fa2-detail-grid{display:grid;gap:14px;min-width:0}.fa2-graph-column{position:static}.fa2-analysis-column{align-content:start}.fa2-tab-panel,.fa2-quick-workbench,.fa2-tools-workbench,.fa2-tools-card,.fa2-tool-results{display:grid;gap:12px;min-width:0}.fa2-tool-empty{border-top:1px solid var(--line);padding-top:12px;color:var(--ink-4);font-size:.82rem;font-weight:500}.fa2-detail-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.fa2-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}.fa2-summary-card{display:grid;gap:5px;border:0;border-top:1px solid var(--line);border-radius:0;padding:10px 0;background:transparent;min-width:0;justify-items:start;text-align:left}.fa2-summary-card>span:first-child{color:var(--ink-4);font-size:.72rem;font-weight:600}.fa2-summary-card strong{color:var(--ink);font-size:.95rem}.fa2-quick-card{display:grid;gap:12px;border:0;border-radius:0;padding:0;background:transparent;min-width:0}.fa2-quick-head{display:grid;gap:8px;min-width:0}.fa2-quick-eyebrow{color:var(--ink-4);font-size:.74rem;font-weight:600}.fa2-quick-expression{padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--paper);overflow-x:auto}.fa2-quick-expression .katex{font-size:1.08rem}.fa2-quick-rows{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));align-items:stretch;gap:10px 14px;min-width:0}.fa2-quick-rows .fa2-summary-card{min-width:0;overflow-wrap:anywhere;border-top:1px solid var(--line);padding:8px 0}.fa2-verification-badge{width:fit-content;border:1px solid currentColor;border-radius:999px;padding:4px 9px;color:var(--ink-3);font-size:.72rem;font-weight:650}.fa2-verification-badge.is-verified{color:#166534}.fa2-verification-badge.is-partially_verified,.fa2-verification-badge.is-unverified{color:#92400e}.fa2-verification-badge.is-failed{color:#b91c1c}.fa2-analysis-steps{display:grid;gap:8px;margin:0;padding:0;list-style:none}.fa2-analysis-steps details{border:1px solid var(--line);border-radius:10px;padding:8px 10px}.fa2-analysis-steps summary{display:flex;justify-content:space-between;gap:12px;cursor:pointer;font-weight:600}.fa2-analysis-steps details>ul{margin:8px 0 0;padding-left:20px}.fa2-step-status{color:var(--ink-4);font-size:.75rem;white-space:nowrap}@media (max-width: 1100px){.fa2-results-panel{max-height:none;overflow-y:visible;padding-right:0}.fa2-workspace{height:auto;max-height:none;overflow:visible;grid-template-rows:none;align-items:start}.fa2-control-panel,.fa2-results-panel{overflow-y:visible;align-self:auto}.fa2-graph-column,.fa2-analysis-column{overflow-y:visible;min-height:0}.fa2-workspace,.fa2-result-shell,.fa2-loading-result{grid-template-columns:1fr}.fa2-control-panel,.fa2-graph-column{position:static}.fa2-control-panel{padding-right:0;border-right:0;border-bottom:1px solid var(--line);padding-bottom:16px}}@media (max-width: 680px){.fa2-formula-row-control,.fa2-upload-actions,.fa2-detail-grid,.fa2-loading-result{grid-template-columns:1fr}.fa2-input{min-width:0}.fa2-graph-card .geogebra-view{min-height:320px;height:48vh}}.fa2-graph-card{display:grid;gap:10px;min-width:0;border:0;border-top:1px solid var(--line-2);border-radius:0;padding:12px 0 0;background:transparent}.fa2-graph-card .geogebra-view{min-height:420px;height:min(60vh,560px);border:1px solid var(--line-2);border-radius:6px;overflow:hidden;background:#fff}.fa2-geogebra-graph-card{position:relative}.fa2-geogebra-point-overlay{position:absolute;top:42px;right:0;bottom:0;left:0;z-index:5;pointer-events:none}.fa2-geogebra-point{position:absolute;width:24px;height:24px;border:2px solid var(--paper);border-radius:999px;background:var(--ink);color:var(--paper);font-size:9px;font-weight:900;line-height:1;transform:translate(-50%,-50%);box-shadow:0 2px 8px #0f172a24;cursor:pointer;pointer-events:auto}.fa2-geogebra-point-max{background:var(--max-ink)}.fa2-geogebra-point-min{background:var(--min-ink)}.fa2-geogebra-point-inflection{background:#b45309}.fa2-geogebra-point-axis-x,.fa2-geogebra-point-axis-y{background:var(--ink-3)}.fa2-geogebra-point-popover{position:absolute;display:grid;gap:2px;min-width:94px;border:1px solid var(--line-2);border-radius:10px;padding:8px 10px;background:#fffffff5;color:var(--ink);box-shadow:0 10px 22px #0f172a29;transform:translate(-50%,-110%);pointer-events:none;z-index:3}.fa2-geogebra-point-popover span{color:var(--ink-4);font-size:10px;font-weight:900;text-transform:uppercase}.fa2-geogebra-point-popover strong{font-family:Courier New,monospace;font-size:12px;font-weight:900}.sp-btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:0;border-radius:8px;padding:6px 10px;min-height:32px;background:var(--paper);color:var(--ink-2);font-family:inherit;font-size:.8rem;font-weight:800;cursor:pointer}.sp-btn-secondary:hover:not(:disabled){background:var(--surface)}.sp-btn-secondary:disabled{opacity:.4;cursor:not-allowed}.fa2-graph-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;color:var(--ink-4);font-size:.75rem;font-weight:700}.fa2-graph-toolbar-actions{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}.fa2-graph-controls{align-items:flex-start}.fa2-graph-toggle-list{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}.fa2-graph-toggle{display:inline-flex;align-items:center;gap:4px;color:var(--ink-3);cursor:pointer}.fa2-graph-toggle input{margin:0}.fa2-graph-toggle.is-disabled{cursor:not-allowed;opacity:.45}.fa2-graph-status{color:var(--ink-4);font-size:.75rem}.fa2-svg-graph{width:100%;max-height:min(440px,54vh);display:block;border:1px solid var(--line);border-radius:12px;touch-action:none;cursor:grab}.fa2-svg-graph:active{cursor:grabbing}.fa2-graph-bg{fill:var(--surface);stroke:var(--line)}.fa2-graph-grid{stroke:var(--line);stroke-width:1}.fa2-graph-axis{stroke:var(--ink-4);stroke-width:1.5}.fa2-graph-asymptote{stroke:#dc2626;stroke-width:1.5;stroke-dasharray:7 5;vector-effect:non-scaling-stroke}.fa2-graph-interval-highlight{fill:#0e74901a;stroke:#0e749061;stroke-width:1;vector-effect:non-scaling-stroke}.fa2-graph-overlay{fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.fa2-graph-derivative{stroke:#2563eb}.fa2-graph-second-derivative{stroke:#7c3aed;stroke-dasharray:5 4}.fa2-graph-tool-line{stroke:#ea580c;stroke-dasharray:8 4}.fa2-graph-trace{pointer-events:none}.fa2-graph-trace line{stroke:var(--ink-4);stroke-width:1;stroke-dasharray:3 3}.fa2-graph-trace circle{fill:var(--ink);stroke:var(--paper);stroke-width:2}.fa2-graph-trace text{fill:var(--ink);font-family:Courier New,monospace;font-size:11px;font-weight:800;paint-order:stroke;stroke:var(--paper);stroke-width:3px}.fa2-graph-path{fill:none;stroke:var(--ink);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.fa2-graph-endpoint{stroke:var(--ink);stroke-width:2}.fa2-graph-endpoint.is-open{fill:var(--surface)}.fa2-graph-endpoint.is-closed{fill:var(--ink)}.fa2-graph-special-point{cursor:pointer;outline:none}.fa2-graph-special-point:hover .fa2-graph-point,.fa2-graph-special-point:focus .fa2-graph-point{stroke:var(--ink);stroke-width:3}.fa2-graph-point{stroke:var(--paper);stroke-width:2}.fa2-graph-point-max{fill:var(--max-ink)}.fa2-graph-point-min{fill:var(--min-ink)}.fa2-graph-point-inflection{fill:#b45309}.fa2-graph-point-axis-x,.fa2-graph-point-axis-y{fill:var(--ink-3)}.fa2-graph-point-popover rect{fill:#fffffff5;stroke:var(--line-2);filter:drop-shadow(0 10px 18px rgba(15,23,42,.14))}.fa2-graph-popover-label{fill:var(--ink-4);font-size:10px;font-weight:900;text-transform:uppercase}.fa2-graph-popover-coords{fill:var(--ink);font-size:12px;font-weight:900;font-family:Courier New,monospace}.fa2-graph-label{fill:var(--ink-3);font-size:11px;font-weight:900;paint-order:stroke;stroke:#fffffff2;stroke-width:3.2px;stroke-linejoin:round}.fa2-graph-tick{fill:var(--ink-4);font-size:10px;font-weight:700;font-family:Courier New,monospace}.fa2-commands{border:1px solid var(--line);border-radius:10px;padding:8px 10px;background:var(--surface);font-size:.8rem}.fa2-commands pre{margin:8px 0 0;white-space:pre-wrap;font-size:.75rem}.fa2-compact-list{display:grid;gap:8px}.fa2-section{border:0;border-top:1px solid var(--line-2);border-radius:0;overflow:visible;background:transparent;min-width:0}.fa2-section-head{display:flex;align-items:center;gap:10px;min-height:auto;padding:14px 0 10px;background:transparent;border-bottom:0}.fa2-section-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid var(--line-2);border-radius:9px;color:var(--ink-3);background:var(--paper);flex-shrink:0}.fa2-section-title{font-size:.82rem;font-weight:650;color:var(--ink-3)}.fa2-section-trailing{margin-left:auto;display:inline-flex;align-items:center;flex-shrink:0}.fa2-section-body{padding:0 0 14px;display:grid;gap:12px;min-width:0}.fa2-graph-section .fa2-section-body{gap:14px}.fa2-formula-row{display:grid;grid-template-columns:auto minmax(0,max-content);align-items:center;justify-content:center;justify-items:center;gap:12px;text-align:center;padding:6px 0;overflow-x:auto}.fa2-label-mono{color:var(--ink-2);white-space:nowrap}.fa2-label-katex .katex{font-size:1.02rem;font-weight:400}.fa2-katex{font-size:1.28rem}.fa2-transform-formula{display:grid;justify-items:center;gap:8px;overflow-x:auto;padding:6px 0;text-align:center}.fa2-transform-rule .katex{color:var(--ink-2);font-size:1rem}.fa2-extrema{display:grid;gap:8px;grid-template-columns:1fr}.fa2-ext{display:flex;align-items:center;gap:10px;border:1px solid var(--line-2);border-radius:12px;padding:8px 10px;background:transparent;width:100%;min-width:0}.fa2-ext-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 30px;width:30px;height:30px;border-radius:10px;background:#ffffffb8}.fa2-ext-max,.fa2-ext-min,.fa2-ext-inflection,.fa2-ext-axis,.fa2-ext-axis-x,.fa2-ext-axis-y{border-color:var(--line-2);background:#fff;color:var(--ink)}.fa2-ext-body{display:flex;align-items:center;gap:10px;min-width:0}.fa2-ext-kind{font-size:.82rem;font-weight:600;color:var(--ink-3);white-space:nowrap}.fa2-ext-coords{font-size:.88rem;font-weight:400;color:var(--ink);overflow-x:auto}.fa2-mono{display:grid;grid-template-columns:auto 1fr;align-items:start;gap:8px;border-radius:8px;padding:6px 9px;font-size:.84rem;font-weight:600;color:var(--ink-2)}.fa2-mono-inc,.fa2-mono-dec{background:#fff;border:1px solid var(--line-2)}.fa2-mono-arrow{font-size:1.1rem;font-weight:900;width:18px;text-align:center}.fa2-mono-inc .fa2-mono-arrow,.fa2-mono-dec .fa2-mono-arrow{color:var(--ink)}.fa2-mono-label{font-weight:600;color:var(--ink-3)}.fa2-mono-val{font-variant-numeric:tabular-nums;word-break:break-word}.fa2-asym-list{display:grid;gap:6px}.fa2-asym{display:grid;grid-template-columns:auto 1fr;align-items:start;gap:10px;border-radius:8px;padding:7px 12px;border:1px solid var(--line);background:var(--surface);font-size:.88rem}.fa2-asym-tag{flex-shrink:0;border-radius:6px;padding:2px 8px;font-size:.72rem;font-weight:600}.fa2-asym-h{background:var(--line);color:var(--ink-2)}.fa2-asym-v{background:#fde8e8;color:#991b1b}.fa2-asym-o{background:#f3e8ff;color:#6b21a8}.fa2-intercepts{display:flex;flex-wrap:wrap;gap:8px}.fa2-intercept{display:flex;align-items:center;gap:8px;border:1px solid var(--line-2);border-radius:8px;padding:7px 12px;background:var(--surface);font-size:.88rem}.fa2-intercept-axis{font-size:.7rem;font-weight:900;background:var(--ink);color:var(--accent-fg);border-radius:4px;padding:1px 6px}.fa2-muted{color:var(--ink-4);font-size:.85rem;font-style:italic}.bbt-layout{display:grid;gap:10px}.bbt-actions{display:flex;justify-content:flex-end}.bbt-zoom-btn,.bbt-modal-close{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line-2);border-radius:999px;padding:6px 12px;background:var(--paper);color:var(--ink-2);font-family:inherit;font-size:.76rem;font-weight:900;cursor:pointer}.bbt-zoom-btn:hover,.bbt-modal-close:hover{background:var(--surface)}.bbt-zoom-btn{padding:8px}.bbt-zoom-btn-borderless{border:none;background:transparent;color:var(--ink-3);border-radius:10px}.bbt-zoom-btn-borderless:hover{background:var(--paper);color:var(--ink-2)}.bbt-timeline{display:none;gap:8px}.bbt-timeline-item{display:grid;grid-template-columns:minmax(0,1.1fr) 34px minmax(0,1fr);align-items:center;gap:8px;border:1px solid var(--line);border-radius:12px;padding:9px 10px;background:var(--paper)}.bbt-timeline-up,.bbt-timeline-down,.bbt-timeline-unknown{border-color:var(--line-2);background:#fff}.bbt-timeline-range,.bbt-timeline-values{min-width:0;overflow-x:auto;font-weight:800}.bbt-timeline-trend{display:flex;justify-content:center;color:var(--ink-2)}.bbt-wrap{display:grid;overflow-x:auto;border:1.5px solid var(--ink);border-radius:12px;font-size:.88rem;min-width:0;max-width:100%;--bbt-label-col: clamp(44px, 7vw, 64px);--bbt-data-col: minmax(48px, 1fr);scrollbar-width:thin}.bbt-v2-warning{display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--line);padding:8px 12px;background:#fff7ed;color:#9a3412;font-size:.82rem;font-weight:800}.bbt-row{display:grid;grid-template-columns:var(--bbt-label-col) repeat(var(--bbt-cols, 1),var(--bbt-data-col));border-bottom:1px solid var(--line)}.bbt-row:last-child{border-bottom:none}.bbt-cell{display:flex;align-items:center;justify-content:center;padding:8px clamp(4px,1vw,12px);min-width:0;border-right:1px solid var(--line)}.bbt-cell:last-child{border-right:none}.bbt-label{min-width:0;font-weight:900;color:var(--ink);background:var(--surface);border-right:2px solid var(--ink-2);font-size:.83rem;justify-content:center}.bbt-label-tex .katex{font-size:1.02rem;font-weight:800}.bbt-gap{background:var(--paper)}.bbt-row-x .bbt-cell{border-bottom:1px solid var(--line);font-weight:700}.bbt-row-fp .bbt-cell{font-size:.85rem;font-weight:800;color:var(--ink-3)}.bbt-row-f .bbt-cell{font-weight:700}.bbt-row-f .bbt-gap{min-height:64px}.bbt-row-f .bbt-f-val{min-height:64px;display:flex}.bbt-x-val{font-weight:800;color:var(--ink)}.bbt-boundary{color:var(--ink-4);font-weight:700}.bbt-fp-arrow{justify-content:center}.bbt-arrow{font-size:1rem;font-weight:900}.bbt-up,.bbt-down,.bbt-zero{color:var(--ink)}.bbt-sign{font-size:1rem;font-weight:900;line-height:1}.bbt-sign-pos{color:var(--up)}.bbt-sign-neg{color:var(--down)}.bbt-f-val{font-weight:800}.bbt-fmax,.bbt-fmin{color:var(--ink);background:#f5f5f5;font-weight:900}.bbt-level-high{align-items:flex-start;padding-top:6px}.bbt-level-low{align-items:flex-end;padding-bottom:6px}.bbt-level-mid{align-items:center}.bbt-curve-cell{padding:4px}.bbt-curve-cell{display:grid;align-content:center;justify-items:center}.bbt-stroke{width:100%;max-width:160px;height:40px;color:var(--ink-2)}.bbt-svg-arrow{color:var(--ink-2);display:block}.bbt-asymptote{color:#991b1b;font-weight:900;background:#fef2f2}.bbt-split-limit{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.bbt-split-divider{color:var(--down);font-weight:900}.bbt-unknown{color:var(--ink-4);font-weight:900}.bbt-stroke-unknown{color:var(--ink-4)}.bbt-unknown-svg{fill:currentColor;font-size:18px;font-weight:900}.bbt-hole-value{color:var(--ink-3)}.bbt-katex-inline .katex{font-size:1rem;font-weight:700}.bbt-katex-inline.bbt-up .katex,.bbt-katex-inline.bbt-sign-pos .katex,.bbt-katex-inline.bbt-down .katex,.bbt-katex-inline.bbt-sign-neg .katex{color:var(--ink)}.bbt-katex-placeholder{display:inline-block;width:.75rem;height:1rem}.bbt-wrap .katex{font-size:.9em}@media (max-width: 560px){.bbt-layout-force-timeline .bbt-wrap{display:none}.bbt-layout-force-timeline .bbt-timeline{display:grid}}.bbt-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;place-items:center;padding:24px;background:#0f172a7a}.bbt-modal-card{display:grid;gap:12px;width:min(1120px,96vw);max-height:88vh;overflow:auto;border:1px solid var(--line);border-radius:18px;padding:16px;background:var(--paper);box-shadow:0 24px 80px #0f172a3d}.bbt-modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--ink-2);font-size:.86rem;font-weight:900;text-transform:uppercase;letter-spacing:.07em}.bbt-wrap-expanded{display:grid!important;min-width:760px;font-size:1.02rem;--bbt-label-col: 76px;--bbt-data-col: minmax(86px, 1fr)}.bbt-wrap-expanded .bbt-row-f .bbt-gap,.bbt-wrap-expanded .bbt-row-f .bbt-f-val{min-height:110px}@media (max-width: 1280px){.fa2-analysis-column .bbt-wrap{display:none}.fa2-analysis-column .bbt-timeline{display:grid}}@media (max-width: 760px){.bbt-wrap{display:none}.bbt-timeline{display:grid}.bbt-timeline-item{grid-template-columns:1fr;justify-items:start}}.analyzer-standalone-wrap{width:100%;max-width:min(1600px,100%);margin:0 auto;min-height:calc(100dvh - 104px);overflow-x:clip}.analyzer-guide-page{display:grid;gap:14px}.analyzer-guide-hero,.analyzer-guide-card,.analyzer-guide-ocr article{border:0;border-top:1px solid var(--line);border-radius:0;padding:16px 0 0;background:transparent}.analyzer-guide-hero{border-top:0;border-left:3px solid var(--ink);padding:4px 0 4px 18px}.analyzer-guide-hero h2{margin:8px 0;font-size:clamp(1.35rem,2.6vw,1.8rem);color:var(--ink)}.analyzer-guide-hero-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.analyzer-guide-hero-head h2{margin:0}.analyzer-guide-label{display:inline-flex;align-items:center;gap:8px;width:fit-content;border:1px solid var(--line);cursor:pointer;font-family:inherit;text-align:left;flex-shrink:0}button.analyzer-guide-label{border:1px solid var(--line);border-radius:999px;padding:6px 12px;background:#fff;color:var(--ink-2);font-size:.8rem;font-weight:800}button.analyzer-guide-label:hover{border-color:#93c5fd;background:var(--surface)}@media (max-width: 900px){.analyzer-guide-hero-head{flex-direction:column;align-items:flex-start}}.analyzer-guide-label-arrow{color:var(--ink);font-size:.95rem;line-height:1}.analyzer-guide-hero p{margin:0;color:var(--ink-3)}.analyzer-guide-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px}.analyzer-guide-card h3{margin:0 0 10px;font-size:.98rem;color:var(--ink)}.analyzer-guide-table{display:grid;gap:8px}.analyzer-guide-row{border:0;border-top:1px solid var(--line);border-radius:0;padding:8px 0;background:transparent;display:grid;gap:6px}.analyzer-guide-row code{font-size:.78rem;color:var(--ink-2);background:#94a3b829;border:1px solid rgba(148,163,184,.28);border-radius:7px;padding:5px 7px;white-space:normal;overflow-wrap:anywhere}.analyzer-guide-katex{font-size:1rem;color:var(--ink)}.analyzer-guide-row p{margin:0;font-size:.75rem;color:var(--ink-4)}.analyzer-guide-ocr{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px}.analyzer-guide-ocr h3{margin:0 0 8px;font-size:.95rem;color:var(--ink)}.analyzer-guide-ocr ol{margin:0;padding-left:18px;display:grid;gap:6px;color:var(--ink-2);font-size:.86rem}@keyframes highlight-pulse{0%,to{opacity:1}50%{opacity:.6}}.solver-panel,.fa-panel{display:grid;gap:14px;border:1px solid var(--line);border-radius:var(--radius-md);padding:16px;background:var(--paper);margin-top:16px}.solver-panel-header,.fa-panel-header{display:flex;align-items:center;gap:8px;font-size:.97rem;font-weight:800;color:#0f172a}.solver-input-row,.fa-input-row{display:flex;align-items:center;gap:8px;border:1.5px solid #d1d5db;border-radius:14px;padding:4px 4px 4px 12px;background:#fff;transition:border-color .15s}.solver-input-row:focus-within,.fa-input-row:focus-within{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11f}.fa-input-prefix{font-size:.95rem;font-weight:700;color:#6366f1;white-space:nowrap}.solver-input,.fa-input{flex:1;border:none;background:transparent;font-family:inherit;font-size:.93rem;color:#0f172a;outline:none;padding:6px 0;min-width:0}.solver-submit-btn,.fa-submit-btn{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:none;border-radius:10px;padding:8px 16px;min-height:36px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;font-family:inherit;font-size:.88rem;font-weight:800;cursor:pointer;transition:opacity .15s,transform .12s;white-space:nowrap}.solver-submit-btn:hover:not(:disabled),.fa-submit-btn:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.solver-submit-btn:disabled,.fa-submit-btn:disabled{opacity:.45;cursor:not-allowed}.solver-spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}.solver-examples{display:flex;flex-wrap:wrap;gap:6px}.solver-example-chip{border:1px solid #c7d2fe;border-radius:999px;padding:4px 12px;background:#eef2ff;color:#4338ca;font-family:inherit;font-size:.78rem;font-weight:700;cursor:pointer;transition:background .12s,border-color .12s;white-space:nowrap}.solver-example-chip:hover{background:#e0e7ff;border-color:#818cf8}.solver-error{display:flex;align-items:flex-start;gap:6px;border:1px solid #fecaca;border-radius:12px;padding:10px 12px;background:#fef2f2;color:#b91c1c;font-size:.87rem;line-height:1.45}.solver-answer-banner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;border:1.5px solid #a5b4fc;border-radius:14px;padding:12px 16px;background:linear-gradient(135deg,#eef2ff,#f5f3ff)}.solver-answer-label{font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#6366f1}.solver-answer-value{font-size:1.05rem;font-weight:900;color:#0f172a;font-family:Courier New,monospace}.solver-steps-label{font-size:.78rem;font-weight:700;color:#64748b;margin-bottom:4px}.solver-steps{display:grid;gap:6px}.solver-step{display:grid;text-align:left;border:1.5px solid #e2e8f0;border-radius:14px;padding:12px 14px;background:#fff;cursor:pointer;transition:border-color .15s,background .15s,box-shadow .15s;font-family:inherit;width:100%}.solver-step:hover{border-color:#a5b4fc;background:#fafafe;box-shadow:0 2px 12px #6366f11a}.solver-step--active{border-color:#6366f1!important;background:linear-gradient(135deg,#f0f0ff,#f5f3ff)!important;box-shadow:0 4px 16px #6366f12e!important}.solver-step-header{display:flex;align-items:center;gap:8px;margin-bottom:6px}.solver-step-index{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:22px;height:22px;border-radius:50%;background:#6366f1;color:#fff;font-size:.72rem;font-weight:900}.solver-step--active .solver-step-index{background:#4f46e5;box-shadow:0 2px 8px #6366f166}.solver-step-title{font-size:.9rem;font-weight:800;color:#0f172a;flex:1}.solver-step-badge{display:inline-flex;align-items:center;gap:4px;border:1px solid #c7d2fe;border-radius:999px;padding:2px 8px;background:#eef2ff;color:#4338ca;font-size:.72rem;font-weight:700}.solver-step-body{display:grid;gap:6px}.solver-step-explanation{margin:0;font-size:.87rem;color:#374151;line-height:1.5;white-space:pre-line}.solver-step-expr{display:block;border:1px solid #e2e8f0;border-radius:8px;padding:8px 10px;background:#f8fafc;font-family:Courier New,monospace;font-size:.85rem;color:#0f172a;overflow-x:auto}.solver-step-result{font-size:.9rem;font-weight:900;color:#4f46e5;font-family:Courier New,monospace}.solver-warnings{display:grid;gap:4px;border:1px solid #fde68a;border-radius:12px;padding:8px 12px;background:#fffbeb}.solver-warning-item{font-size:.82rem;color:#92400e;line-height:1.4}.fa-result{display:grid;gap:12px}.fa-section{border:1px solid #e2e8f0;border-radius:14px;overflow:hidden;background:#fff}.fa-section-title{padding:8px 14px;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-bottom:1px solid #e2e8f0;font-size:.82rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#475569}.fa-section-body{padding:12px 14px;display:grid;gap:8px}.fa-formula{display:block;font-family:Courier New,monospace;font-size:.93rem;color:#0f172a;line-height:1.6;word-break:break-all}.fa-vt-wrapper{overflow-x:auto;padding:2px}.fa-vt{width:100%;border-collapse:collapse;font-size:.88rem}.fa-vt th{padding:8px 12px;background:#f8fafc;border-bottom:2px solid #e2e8f0;font-weight:800;color:#475569;text-align:center}.fa-vt td{padding:8px 12px;border-bottom:1px solid #f1f5f9;text-align:center;font-weight:600;font-family:Courier New,monospace;font-size:.85rem}.fa-vt-max td{background:#fef2f2;color:#991b1b}.fa-vt-min td{background:var(--surface);color:var(--ink-2)}.fa-arrow{font-size:1.2rem;font-weight:900}.fa-arrow-up{color:#16a34a}.fa-arrow-down{color:#dc2626}.fa-extremum-badge{display:inline-block;margin-left:6px;border-radius:999px;padding:1px 8px;font-family:inherit;font-size:.72rem;font-weight:900}.fa-max{background:#fde8e8;color:#991b1b}.fa-min{background:var(--line);color:var(--ink-2)}.fa-cp-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.fa-cp{border:1px solid #e2e8f0;border-radius:12px;padding:10px 12px;display:grid;gap:4px}.fa-cp-max{border-color:#fca5a5;background:#fff5f5}.fa-cp-min{border-color:#93c5fd;background:#f0f7ff}.fa-cp-inflection{border-color:#fcd34d;background:#fffdf0}.fa-cp-label{font-size:.75rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em;color:#475569}.fa-cp-coords{font-family:Courier New,monospace;font-size:.83rem;font-weight:700;color:#0f172a}.fa-monotone{font-size:.88rem;font-weight:600;color:#374151;padding:6px 10px;border-radius:8px}.fa-mono-inc{background:#f0fdf4;border:1px solid #bbf7d0}.fa-mono-dec{background:#fef2f2;border:1px solid #fecaca}.fa-monotone span{font-weight:900}.fa-asymptotes{gap:6px}.fa-asymptote{display:flex;align-items:center;gap:8px;font-size:.88rem;font-weight:600;font-family:Courier New,monospace;padding:6px 10px;border-radius:8px}.fa-ha{background:#f0f9ff;border:1px solid #bae6fd;color:#0369a1}.fa-va{background:#fff7ed;border:1px solid #fed7aa;color:#c2410c}.fa-oa{background:#fdf4ff;border:1px solid #e9d5ff;color:#7c3aed}.fa-asym-badge{border-radius:999px;padding:1px 8px;font-family:inherit;font-size:.72rem;font-weight:900;flex-shrink:0;background:currentColor;color:#fff;opacity:.85}.fa-intercept{font-size:.88rem;font-weight:600;color:#374151;font-family:Courier New,monospace}.fa-muted{color:#9ca3af;font-family:inherit;font-style:italic}.sim-page{display:grid;grid-template-columns:300px minmax(0,1fr);gap:0;min-height:calc(100vh - 86px);max-width:1600px;margin:0 auto;border:1px solid #e5e5e5;background:#fff}.sim-sidebar{display:grid;grid-template-rows:auto 1fr;gap:18px;padding:22px;border-right:1px solid #e5e5e5;background:#fbfbfb}.sim-brand-block{display:grid;gap:4px;padding-bottom:18px;border-bottom:1px solid #e5e5e5}.sim-brand-block span,.sim-header span,.sim-nav-group h3{color:#6b7280;font-size:.72rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.sim-brand-block strong{color:#000;font-size:1.45rem;letter-spacing:-.05em}.sim-nav{display:grid;align-content:start;gap:24px;overflow-y:auto}.sim-nav-group{display:grid;gap:8px}.sim-nav-group h3{margin:0 0 4px}.sim-nav button{width:100%;display:grid;gap:4px;text-align:left;border:1px solid transparent;border-radius:0;padding:13px 12px;background:transparent;color:#111;cursor:pointer;font:inherit;transition:background .14s ease,border-color .14s ease,transform .14s ease}.sim-nav button:hover{background:#f2f2f2;border-color:#e5e5e5}.sim-nav button.active{background:#000;border-color:#000;color:#fff}.sim-nav button span{color:currentColor;opacity:.58;font-size:.68rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.sim-nav button strong{font-size:.96rem;letter-spacing:-.02em}.sim-nav button small{color:currentColor;opacity:.62;line-height:1.35}.sim-main{min-width:0;display:grid;align-content:start;gap:18px;padding:24px;background:#fff}.sim-header{display:flex;align-items:end;justify-content:space-between;gap:18px;padding-bottom:18px;border-bottom:1px solid #e5e5e5}.sim-header h2{margin:4px 0 6px;color:#000;font-size:clamp(2rem,4vw,4.8rem);line-height:.92;letter-spacing:-.08em}.sim-header p{margin:0;color:#525252;font-weight:650}.sim-count{min-width:86px;border:1px solid #000;padding:10px 12px;color:#000;font-size:2rem;font-weight:950;line-height:.9;text-align:right}.sim-count span{display:block;margin-top:5px;color:#525252;font-size:.62rem;letter-spacing:.1em}.sim-content,.csim-page,.csim-control-stack,.csim-visual-stack,.trig-core,.trig-control-panel,.trig-stage-panel{min-width:0}.csim-page{display:grid;align-content:start;gap:clamp(18px,2.4vw,28px);width:100%;min-height:calc(100dvh - 104px);margin:0}.csim-workbench{display:grid;grid-template-columns:minmax(168px,198px) minmax(0,1fr);gap:clamp(16px,2vw,24px);align-items:start;border:0;border-top:1px solid var(--line-2);border-radius:0;padding-top:clamp(14px,1.8vw,20px);background:transparent}.csim-workbench.is-menu-collapsed{grid-template-columns:48px minmax(0,1fr)}.csim-workspace{display:grid;gap:clamp(18px,2.4vw,28px);min-width:0}.csim-menu-panel{position:sticky;top:88px;display:grid;gap:10px;min-width:0;border:0;border-right:1px solid var(--line-2);border-radius:0;padding:0 16px 0 0;background:transparent;box-shadow:none}.csim-menu-toggle,.csim-menu-group-button,.csim-menu-children button{width:100%;border:1px solid transparent;background:transparent;color:var(--ink-2);font:inherit;text-align:left;cursor:pointer;transition:border-color .15s,background .15s,color .15s,transform .12s}.csim-menu-toggle{display:flex;align-items:center;gap:8px;border-color:var(--line);border-radius:999px;padding:7px 10px;background:transparent}.csim-menu-toggle span{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:999px;background:var(--ink);color:var(--paper);font-size:1rem;line-height:1}.csim-menu-toggle strong{font-size:.8rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.csim-menu-content{display:grid;gap:8px}.csim-menu-group{display:grid;gap:6px}.csim-menu-group-button{position:relative;display:block;border-radius:12px;padding:10px 11px}.csim-menu-group-button:hover:not(.active){background:var(--surface)}.csim-menu-group-button.active{border-color:var(--ink);background:var(--ink);color:var(--paper)}.csim-menu-group-button span{font-size:.9rem;font-weight:650}.csim-menu-children{display:grid;gap:5px;padding-left:10px;border-left:1px solid var(--line)}.csim-menu-children button{position:relative;display:block;border-radius:10px;padding:8px 9px;color:var(--ink-3)}.csim-menu-children button:hover:not(.active){background:var(--surface);color:var(--ink);transform:translate(1px)}.csim-menu-children button.active{border-color:var(--line-2);background:var(--paper);color:var(--ink)}.csim-menu-children button strong{display:block;color:inherit;font-size:.8rem;font-weight:600;line-height:1.2}.csim-workbench.is-menu-collapsed .csim-menu-panel{padding:0 10px 0 0}.csim-workbench.is-menu-collapsed .csim-menu-toggle{justify-content:center;padding:6px}.csim-workbench.is-menu-collapsed .csim-menu-toggle strong,.csim-workbench.is-menu-collapsed .csim-menu-content{display:none}.csim-menu-toggle:focus-visible,.csim-menu-group-button:focus-visible,.csim-menu-children button:focus-visible{outline:none;box-shadow:0 0 0 3px #00000014}.csim-tab-subtitle-katex .katex{font-size:.92em}.csim-card,.trig-board,.trig-control-panel,.csim-three-card{border:0!important;border-top:1px solid var(--line-2)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}.csim-card{padding:clamp(16px,2vw,20px)}.csim-control-stack .csim-card{border:0!important;border-top:1px solid var(--line-2)!important;border-radius:0!important;padding:18px 0 0;background:transparent!important}.csim-card-head,.csim-graph-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px;color:#000}.csim-card-head strong,.csim-graph-head strong{font-weight:650}.csim-card-head span,.csim-graph-head span{color:var(--ink-4);font-size:.72rem;font-weight:550;letter-spacing:.08em;text-transform:uppercase}.csim-module-grid{display:grid;grid-template-columns:minmax(240px,280px) minmax(0,1fr);gap:clamp(14px,1.6vw,18px);align-items:start}.csim-module-grid-wide{grid-template-columns:minmax(260px,300px) minmax(0,1fr)}.csim-control-stack,.csim-visual-stack{display:grid;gap:clamp(14px,1.8vw,20px)}.csim-control-stack{position:sticky;top:88px}.csim-split-visuals{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.92fr);gap:16px}.csim-playbar{display:grid;grid-template-columns:auto minmax(300px,1fr);align-items:center;gap:16px;border-bottom:1px solid var(--line-2);padding:0 0 14px}.csim-playbar-actions,.csim-playbar-status{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.csim-playbar-status{justify-content:flex-end;min-width:0}.csim-playbar-status>strong{color:var(--ink-2);font-size:.8rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.csim-btn{border-radius:999px;padding:7px 11px;font:inherit;font-size:.76rem;font-weight:580;cursor:pointer;transition:background .15s,color .15s,border-color .15s,transform .12s}.csim-btn:hover:not(:disabled){transform:translateY(-1px)}.csim-btn-filled{border:1px solid var(--ink);background:var(--ink);color:var(--paper)}.csim-btn-filled:hover:not(:disabled){background:var(--ink-2)}.csim-btn-ghost{border:1px solid var(--line-2);background:var(--paper);color:var(--ink-2)}.csim-btn-ghost:hover:not(:disabled){border-color:var(--ink);background:var(--surface)}.csim-playbar button:disabled{opacity:.36;cursor:not-allowed}.csim-progress{flex:1 1 160px;min-width:120px;height:6px;border-radius:999px;background:var(--line);overflow:hidden}.csim-progress span{display:block;height:100%;background:#000}.csim-progress-dots{display:flex;gap:6px;padding:0;margin:0;list-style:none}.csim-progress-dots li{display:inline-flex}.csim-progress-dots span{width:7px;height:7px;border:1px solid var(--ink-2);border-radius:999px;background:var(--paper)}.csim-progress-dots li.active span{background:#000}.csim-speed-select{display:inline-flex;align-items:center;gap:7px;color:var(--ink-4);font-size:.7rem;font-weight:550}.csim-speed-select select,.csim-field input,.csim-field select{border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink-2);font-family:inherit;font-size:.76rem;transition:border-color .15s,box-shadow .15s}.csim-speed-select select:focus,.csim-field input:focus,.csim-field select:focus{border-color:#000;box-shadow:0 0 0 3px #00000014;outline:none}.csim-speed-select select{width:auto;padding:5px 26px 5px 8px}.csim-field,.csim-slider{display:grid;gap:6px;margin-top:9px;color:var(--ink-3);font-size:.72rem;font-weight:550}.csim-field input,.csim-field select{width:100%;padding:8px 9px}.csim-field input::placeholder{color:var(--ink-4);opacity:1}.csim-two-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.csim-preset-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.csim-chip{border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink-2);padding:7px 11px;font:inherit;font-size:.8rem;font-weight:550;cursor:pointer;transition:background .15s,color .15s,border-color .15s,transform .12s}.csim-chip:hover,.csim-chip:focus-visible{border-color:#000;background:#000;color:#fff;outline:none;transform:translateY(-1px)}.csim-slider span,.csim-result-row{display:flex;justify-content:space-between;gap:12px}.csim-slider input{width:100%;accent-color:#000}.csim-result-card{display:grid;gap:12px}.csim-result-grid{display:grid;gap:0;border-top:1px solid var(--line)}.csim-result-row{align-items:baseline;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;border-bottom:1px solid #e5e5e5;padding:10px 0}.csim-result-row span{color:var(--ink-4);font-size:.8rem;font-weight:500}.csim-result-row strong{color:var(--ink);font-size:.95rem;font-weight:650;font-variant-numeric:tabular-nums;text-align:right}.csim-three-card,.csim-three-canvas{min-height:400px;background:#fafafa!important}.trig-core{display:grid;grid-template-columns:280px minmax(0,1fr);gap:clamp(12px,1.6vw,18px);align-items:start}.trig-control-panel{display:grid;gap:10px;padding:14px;position:sticky;top:88px;font-size:.8rem}.trig-angle-control{display:grid;gap:5px}.trig-angle-control span{font-size:.72rem;font-weight:500;color:var(--ink-3)}.trig-angle-control span,.trig-angle-control strong{display:flex;justify-content:space-between}.trig-angle-control strong{font-size:.78rem;font-weight:650;font-variant-numeric:tabular-nums}.trig-angle-control input{width:100%;accent-color:#000}.trig-param-control{border-top:1px solid #e5e5e5;padding-top:8px}.trig-phase-presets{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}.trig-phase-presets button,.trig-toggle-list button{border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink-2);padding:5px 8px;font-size:.7rem;font-weight:550;cursor:pointer;transition:border-color .15s,background .15s,color .15s,transform .12s}.trig-phase-presets button:hover:not(.active),.trig-toggle-list button:hover:not(.active),.trig-phase-presets button:focus-visible,.trig-toggle-list button:focus-visible{border-color:#000;background:#000;color:#fff;outline:none;transform:translateY(-1px)}.trig-phase-presets button.active,.trig-toggle-list button.active{border-color:#000;background:#000;color:#fff}.trig-phase-readout{display:grid;gap:3px;border:1px solid var(--line);border-radius:10px;background:var(--paper);padding:8px 10px;color:var(--ink-4);font-size:.72rem;font-weight:500}.trig-phase-readout strong{color:var(--ink);font-weight:650}.trig-values-core{display:grid;gap:6px}.trig-value-tile{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:6px 10px;border:1px solid var(--line);border-radius:10px;background:var(--surface);padding:8px 10px}.trig-value-tile-label{justify-self:start;text-align:left;color:var(--ink-4);font-size:.62rem;font-weight:500}.trig-value-tile .trig-value-tile-katex{color:#737373;font-size:.92rem}.trig-value-tile .trig-value-tile-katex .katex{font-size:1.05em}.trig-value-tile strong{justify-self:end;color:var(--ink);font-size:.82rem;font-weight:650;font-variant-numeric:tabular-nums;text-align:right}.trig-toggle-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.trig-stage-panel{--trig-viz-h: min(400px, 32vw);position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.12fr);gap:clamp(10px,1.4vw,16px);align-items:start}.trig-sync-bridge{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;width:100%;height:100%;overflow:visible;pointer-events:none}.trig-sync-bridge-line{stroke-width:2.25;stroke-dasharray:9 7;stroke-linecap:round;opacity:.48}.trig-sync-bridge-line--sin{stroke:#dc2626}.trig-sync-bridge-line--cos{stroke:var(--ink)}.trig-board{padding:4px;overflow:hidden}.trig-board-circle,.trig-board-wave{display:flex;flex-direction:column}.trig-board-wave--rot90{margin-top:0;padding-top:0}.trig-board svg{display:block;touch-action:none;flex-shrink:0}.trig-board-circle svg{height:var(--trig-viz-h);width:auto;max-width:100%;aspect-ratio:1;margin:0 auto}.trig-board-wave svg{width:100%;height:var(--trig-viz-h)}.trig-board-wave--rot90 .trig-wave-rot90-frame{overflow:visible}.trig-canvas-bg{fill:#fff}.trig-axis{stroke:#000;stroke-width:1.35}.trig-grid-line{stroke:#d4d4d4;stroke-width:1.1;stroke-dasharray:4 5}.trig-unit-outline{fill:none;stroke:#000;stroke-width:1.85}.trig-special-dot{fill:#fff;stroke:#000;stroke-width:1.65}.trig-special-label,.trig-graph-label,.trig-y-label,.trig-equation-label,.trig-point-label,.trig-undefined-label{fill:var(--ink-3);font-size:16px;font-weight:600;text-anchor:middle}.trig-equation-label{text-anchor:start;fill:#000}.trig-svg-katex-label{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--ink-3);font-size:14px;font-weight:600;line-height:1;pointer-events:none}.trig-svg-katex-label .katex{font-size:1em}.trig-radius,.trig-base-radius,.trig-phase-arc,.trig-hypotenuse{stroke:#000;stroke-width:1.75}.trig-base-radius{stroke-dasharray:7 6;opacity:.55}.trig-phase-arc{fill:none;stroke-dasharray:4 4;opacity:.9}.trig-phase-arc.is-leading{stroke:#000;fill:none}.trig-phase-arc.is-lagging{stroke:#737373;fill:none}.trig-phase-state.is-leading{fill:#000}.trig-phase-state.is-lagging{fill:#737373}.trig-phase-label,.trig-phase-state{fill:#0a0a0a;font-size:15px;font-weight:900;text-anchor:middle}.trig-phase-state{font-size:14px;letter-spacing:.04em}.trig-phase-label .trig-svg-katex-label{color:#0a0a0a;font-size:15px;font-weight:900}.trig-hypotenuse{opacity:.16}.trig-cos-segment,.trig-wave-path.cos,.trig-wave-dot.cos{stroke:var(--ink);fill:none}.trig-sin-segment,.trig-wave-path.sin,.trig-wave-dot.sin{stroke:#dc2626;fill:none}.trig-tan-segment,.trig-tan-axis,.trig-tan-link,.trig-wave-path.tan{stroke:#111;fill:none}.trig-wave-path.cot{stroke:#047857;fill:none}.trig-cos-segment,.trig-sin-segment,.trig-tan-segment{stroke-width:3.2;stroke-linecap:square}.trig-tan-axis,.trig-tan-link{stroke-width:1.85;stroke-dasharray:6 5}.trig-base-point{fill:#fff;stroke:#000;stroke-width:2.2}.trig-base-point-label{fill:var(--ink-4);font-size:15px;font-weight:600;text-anchor:middle}.trig-point{fill:#000;stroke:#fff;stroke-width:2.6}.trig-wave-path{stroke-width:2.85}.trig-wave-path.tan{stroke-dasharray:7 4}.trig-wave-dot.sin{fill:#dc2626}.trig-wave-dot.cos{fill:var(--ink)}.trig-marker{stroke:#000;stroke-width:2.1;stroke-dasharray:5 5}.trig-graph-label{dominant-baseline:alphabetic}.trig-y-label{text-anchor:end}.csim-graph-card{display:grid;gap:10px;border:0;border-top:1px solid var(--line-2);border-radius:0;background:transparent;padding:clamp(14px,2vw,18px) 0 0;box-shadow:none}.csim-graph-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:4px;font-size:.96rem;font-weight:650;color:var(--ink)}.csim-graph-head span{color:var(--ink-4);font-size:.82rem;font-weight:500}.csim-svg{width:100%;height:auto;display:block;touch-action:none}.csim-svg-bg{fill:#fbfbfa}.csim-grid{stroke:#e2e8f0;stroke-width:1;stroke-dasharray:3 4}.csim-tick{fill:#64748b;font-size:12px;font-weight:500;text-anchor:middle}.csim-axis{stroke:#0f172a;stroke-width:2}.csim-area-fill{fill:#2563eb1f;stroke:none}.csim-riemann-rect{fill:#2563eb2e;stroke:#2563eb6b;stroke-width:1}.csim-path-f{fill:none;stroke:var(--ink);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.csim-path-g{fill:none;stroke:#dc2626;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:8 4}.csim-marker-line{stroke:#0f172a;stroke-width:1.6;stroke-dasharray:6 4}.csim-intersection circle{fill:#fff;stroke:#0f172a;stroke-width:2.2}.csim-intersection text{fill:#0f172a;font-size:11px;font-weight:600}.csim-line.f{display:inline-block;width:18px;height:2px;background:var(--ink);border-radius:2px;vertical-align:middle;margin-right:2px}.csim-line.g{display:inline-block;width:18px;height:2px;background:#dc2626;border-radius:2px;vertical-align:middle;margin-right:2px}.csim-field.has-error input,.csim-field.has-error select{border-color:#dc2626;background:#fef2f2}.csim-field-error{display:block;margin-top:2px;color:#dc2626;font-size:.7rem;font-weight:650}.csim-field-hint{display:block;margin-top:1px;color:var(--ink-4);font-size:.66rem;font-weight:500}.csim-check{display:inline-flex;align-items:center;gap:7px;margin-top:9px;color:var(--ink-3);font-size:.72rem;font-weight:550;cursor:pointer}.csim-check input[type=checkbox]{accent-color:#000;width:18px;height:18px;cursor:pointer}.csim-step-copy{border:0!important;border-left:2px solid var(--ink)!important;border-radius:0!important;background:transparent!important;padding:4px 0 4px 16px!important}.csim-step-copy strong{display:block;margin-bottom:5px;color:var(--ink);font-size:.84rem;font-weight:650}.csim-step-copy p{margin:0;color:var(--ink-4);font-size:.76rem;line-height:1.5}.csim-empty-three{display:flex;align-items:center;justify-content:center;color:#94a3b8;font-size:.85rem;font-weight:500;min-height:400px}.csim-result-card.is-complete{border-left:4px solid #16a34a}.csim-formula{display:block;font-size:1.2rem;margin-bottom:4px}@media (max-width: 1180px){.sim-page,.csim-workbench,.csim-workbench.is-menu-collapsed,.trig-core,.trig-stage-panel,.csim-module-grid,.csim-module-grid-wide,.csim-split-visuals{grid-template-columns:1fr}.sim-sidebar,.csim-menu-panel,.csim-control-stack,.trig-control-panel{position:static}.sim-sidebar{border-right:0;border-bottom:1px solid #e5e5e5}.sim-nav{grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}.csim-graph-card{overflow-x:auto}.csim-svg{min-width:600px}}@media (max-width: 720px){.app-shell:has(.csim-page){padding:14px 14px 0}.sim-page{border-left:0;border-right:0}.sim-main,.sim-sidebar{padding:14px}.sim-header{display:grid}.csim-menu-panel{border-right:0;border-bottom:1px solid var(--line);border-radius:0;padding:0 0 12px}.csim-workbench.is-menu-collapsed .csim-menu-panel{width:48px}.sim-nav,.trig-toggle-list,.csim-two-cols{grid-template-columns:1fr}.csim-playbar{display:grid;grid-template-columns:1fr;gap:12px;align-items:stretch}.csim-playbar-title{padding-bottom:4px}.csim-playbar-actions,.csim-playbar-status{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.csim-playbar-status{flex:0 1 auto}.csim-progress{grid-column:1 / -1;min-width:0}.csim-playbar-actions>*,.csim-speed-select{flex:1 1 auto}.csim-card-head,.csim-graph-head{display:grid;justify-content:start;gap:6px}.csim-graph-card{padding:10px 0 0}.csim-three-card,.csim-three-canvas{min-height:300px}.csim-empty-three{min-height:200px}}.gglab-page{display:grid;grid-template-rows:auto 1fr;min-height:0;gap:0}.gglab-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 24px;padding:16px 0 12px;border-bottom:1px solid var(--line)}.gglab-header-title{display:flex;align-items:center;gap:12px}.gglab-header-title h2{margin:0;font-size:1.2rem;font-weight:820;line-height:1.2;color:var(--ink)}.gglab-logo{display:flex;align-items:center;color:var(--ink)}.gglab-logo svg{width:28px;height:28px}.gglab-subtitle{display:block;font-size:.78rem;color:var(--ink-4);font-weight:500}.gglab-tabs{display:flex;gap:4px;border-radius:var(--radius-md);padding:3px;background:var(--surface-2)}.gglab-tab{display:flex;align-items:center;gap:6px;border:0;border-radius:8px;padding:8px 14px;color:var(--ink-3);background:transparent;font-size:.84rem;font-weight:650;cursor:pointer;transition:background .15s,color .15s,box-shadow .15s;white-space:nowrap}.gglab-tab:hover{color:var(--ink);background:#fff9}.gglab-tab.active{color:var(--ink);background:var(--paper);box-shadow:0 1px 3px #00000014}.gglab-tab-icon{display:flex;align-items:center}.gglab-tab-icon svg{width:16px;height:16px}.gglab-tab-label{line-height:1.2}.gglab-body{display:grid;grid-template-columns:280px 1fr;gap:0;min-height:0;overflow:hidden}.gglab-sidebar{position:relative;display:flex;flex-direction:column;border-right:1px solid var(--line);background:var(--paper);overflow:hidden;min-height:0;min-width:0}.gglab-sidebar-content{display:flex;flex-direction:column;gap:4px;padding:12px 14px;overflow-y:auto;overscroll-behavior:contain;flex:1;min-height:0}.gglab-section{display:grid;gap:8px;padding:10px 0;border-bottom:1px solid var(--line)}.gglab-section:last-child{border-bottom:0}.gglab-section-title{font-size:.78rem;font-weight:700;color:var(--ink-3);text-transform:uppercase;letter-spacing:.04em}.gglab-section-note{margin:0;color:var(--ink-4);font-size:.8rem;line-height:1.45}.gglab-cmd-row{display:flex;gap:6px}.gglab-cmd-input{flex:1;min-width:0;border:1px solid var(--line);border-radius:8px;padding:7px 10px;font-size:.84rem;color:var(--ink);background:var(--paper)}.gglab-cmd-input:focus{outline:none;border-color:var(--ink)}.gglab-cmd-run{flex:0 0 auto;width:34px;height:34px;display:flex;align-items:center;justify-content:center;border:1px solid var(--ink);border-radius:8px;padding:0;color:var(--accent-fg);background:var(--ink);font-size:.9rem;cursor:pointer}.gglab-cmd-run:hover{background:#000}.gglab-cmd-run:disabled{opacity:.4;cursor:not-allowed}.gglab-cmd-history{font-size:.8rem;color:var(--ink-3)}.gglab-cmd-history summary{cursor:pointer;font-weight:600}.gglab-cmd-history ul{margin:6px 0 0;padding:0;list-style:none;max-height:120px;overflow-y:auto}.gglab-cmd-history li button{width:100%;border:0;border-radius:4px;padding:4px 6px;background:transparent;color:var(--ink-3);font-size:.8rem;font-family:monospace;text-align:left;cursor:pointer}.gglab-cmd-history li button:hover{background:var(--surface);color:var(--ink)}.gglab-presets{display:grid;grid-template-columns:1fr 1fr;gap:6px}.gglab-preset{display:grid;gap:2px;border:1px solid var(--line);border-radius:8px;padding:8px 10px;background:var(--paper);color:var(--ink);text-align:left;cursor:pointer;transition:border-color .15s,box-shadow .15s}.gglab-preset:hover{border-color:var(--ink);box-shadow:0 1px 4px #0000000f}.gglab-preset:disabled{opacity:.4;cursor:not-allowed}.gglab-preset strong{font-size:.8rem;font-weight:700}.gglab-preset small{font-size:.72rem;color:var(--ink-4)}.gglab-actions{display:flex;gap:6px;flex-wrap:wrap}.gglab-actions button{flex:1 1 auto;border:1px solid var(--line);border-radius:8px;padding:6px 10px;background:var(--paper);color:var(--ink);font-size:.8rem;font-weight:650;cursor:pointer;white-space:nowrap}.gglab-actions button:hover{border-color:var(--ink);background:var(--surface)}.gglab-actions button:disabled{opacity:.4;cursor:not-allowed}.gglab-obj-count{font-size:.76rem;color:var(--ink-4)}.gglab-save-row{display:flex;gap:6px}.gglab-save-row button{flex:0 0 auto;border:1px solid var(--line);border-radius:8px;padding:6px 10px;background:var(--paper);color:var(--ink);font-size:.8rem;font-weight:650;cursor:pointer;white-space:nowrap}.gglab-save-row button:hover{border-color:var(--ink)}.gglab-save-row button:disabled{opacity:.4;cursor:not-allowed}.gglab-saved-list{display:grid;gap:4px;max-height:160px;overflow-y:auto}.gglab-saved-item{display:flex;align-items:center;gap:4px}.gglab-saved-item button:first-child{flex:1;min-width:0;border:0;border-radius:6px;padding:5px 8px;background:var(--surface);color:var(--ink);font-size:.8rem;text-align:left;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gglab-saved-item button:first-child:hover{background:var(--surface-2)}.gglab-saved-delete{flex:0 0 auto;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border:0;border-radius:4px;padding:0;background:transparent;color:var(--ink-4);font-size:1rem;cursor:pointer}.gglab-saved-delete:hover{color:var(--down);background:var(--max-bg)}.gglab-workspace{position:relative;display:flex;flex-direction:column;min-height:0;overflow:hidden;overscroll-behavior:contain;touch-action:none;background:#fafafa}.gglab-applet{flex:1;min-height:0;width:100%;overflow:hidden}.gglab-applet>article,.gglab-applet>div{width:100%!important;height:100%!important}.gglab-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;display:grid;place-items:center;background:#fafafad9;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.gglab-loading{display:flex;flex-direction:column;align-items:center;gap:12px;color:var(--ink-3);font-size:.92rem;font-weight:600}.gglab-error{display:grid;gap:10px;max-width:360px;text-align:center;color:var(--ink)}.gglab-error strong{font-size:1rem}.gglab-error p{margin:0;color:var(--ink-3);font-size:.88rem}.gglab-error button{justify-self:center;border:1px solid var(--ink);border-radius:8px;padding:8px 18px;background:var(--ink);color:var(--accent-fg);font-weight:700;cursor:pointer}.gglab-mode-badge{position:absolute;bottom:12px;right:14px;z-index:4;display:inline-flex;align-items:center;gap:4px;border-radius:8px;padding:5px 12px;background:#ffffffe0;border:1px solid var(--line);font-size:.76rem;font-weight:700;color:var(--ink-3);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);pointer-events:none}.gglab-mode-badge-icon{display:flex;align-items:center}.gglab-mode-badge-icon svg{width:14px;height:14px}@media (max-width: 900px){.gglab-header{flex-direction:column;align-items:stretch;gap:10px;padding:12px 0 10px}.gglab-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch}.gglab-body{grid-template-columns:1fr;grid-template-rows:auto 1fr}.gglab-sidebar{border-right:0;border-bottom:1px solid var(--line);max-height:260px}.gglab-presets{grid-template-columns:repeat(auto-fill,minmax(110px,1fr))}.gglab-workspace{min-height:420px}}.chat-bubble{position:fixed;right:24px;bottom:24px;z-index:180;display:flex;flex-direction:column;align-items:flex-end;gap:12px}.chat-bubble-button{position:relative;width:58px;height:58px;border:0;border-radius:50%;background:var(--accent);color:var(--accent-fg);box-shadow:var(--shadow-overlay);cursor:pointer;transition:transform .18s ease,box-shadow .18s ease}.chat-bubble:not(.is-open) .chat-bubble-button{animation:chat-bubble-breathe 4.8s ease-in-out infinite}.chat-bubble-button:before,.chat-bubble-button:after{content:"";position:absolute;top:-6px;right:-6px;bottom:-6px;left:-6px;border-radius:inherit;pointer-events:none}.chat-bubble-button:before{border:1px solid color-mix(in srgb,var(--accent) 48%,transparent);animation:chat-bubble-pulse 2.8s ease-out infinite}.chat-bubble-button:after{top:8px;right:8px;bottom:8px;left:8px;background:radial-gradient(circle at 34% 24%,rgba(255,255,255,.44),transparent 32%);opacity:.82}.chat-bubble-button:hover{transform:translateY(-2px) scale(1.04);box-shadow:0 18px 42px color-mix(in srgb,var(--accent) 28%,transparent),var(--shadow-overlay)}.chat-bubble-button svg{position:relative;z-index:1;width:26px;height:26px}@keyframes chat-bubble-breathe{0%,72%,to{transform:translateY(0) scale(1)}80%{transform:translateY(-3px) scale(1.04)}88%{transform:translateY(0) scale(.98)}}@keyframes chat-bubble-pulse{0%{opacity:.62;transform:scale(.86)}70%,to{opacity:0;transform:scale(1.55)}}@media (prefers-reduced-motion: reduce){.chat-bubble:not(.is-open) .chat-bubble-button,.chat-bubble-button:before{animation:none}.chat-bubble-button{transition:none}}.chat-unread-badge{position:absolute;top:-4px;right:-4px;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:#dc2626;color:#fff;display:grid;place-items:center;font-size:12px;font-weight:800;border:2px solid var(--paper)}.chat-panel{width:min(390px,calc(100vw - 32px));height:min(560px,calc(100vh - 112px));border:1px solid var(--line);border-radius:22px;background:var(--paper);box-shadow:var(--shadow-overlay);display:flex;flex-direction:column;overflow:hidden}.chat-panel-header{padding:16px 18px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px}.chat-panel-header strong{display:block;font-size:15px}.chat-panel-header span{display:block;margin-top:3px;color:var(--ink-4);font-size:12px}.chat-panel-header button{width:32px;height:32px;border-radius:50%;border:1px solid var(--line);background:var(--surface);cursor:pointer;font-size:22px;line-height:1}.chat-messages{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:10px;background:var(--surface)}.chat-empty{margin:auto;color:var(--ink-4);text-align:center;font-size:14px;line-height:1.5}.chat-message{max-width:82%;padding:10px 12px;border-radius:16px;border:1px solid var(--line);background:var(--paper)}.chat-message.from-user{align-self:flex-end;background:var(--accent);color:var(--accent-fg);border-color:var(--accent);border-bottom-right-radius:6px}.chat-message.from-admin{align-self:flex-start;border-bottom-left-radius:6px}.chat-message p{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;line-height:1.45}.chat-message time{display:block;margin-top:5px;opacity:.68;font-size:11px}.chat-input-row{padding:12px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr auto;gap:10px;background:var(--paper)}.chat-input-row textarea{resize:none;border:1px solid var(--line);border-radius:14px;padding:10px 12px;font:inherit;line-height:1.4}.chat-input-row button{border:0;border-radius:14px;padding:0 16px;background:var(--accent);color:var(--accent-fg);font-weight:800;cursor:pointer}.chat-input-row button:disabled{cursor:not-allowed;opacity:.45}.chat-closed{padding:14px;border-top:1px solid var(--line);color:var(--ink-4);text-align:center;font-size:14px}@media (max-width: 640px){.chat-bubble{right:16px;bottom:16px}.chat-panel{width:calc(100vw - 24px);height:min(540px,calc(100vh - 92px))}}.admin-chat-layout{display:grid;grid-template-columns:minmax(260px,360px) 1fr;gap:16px;min-height:560px}.admin-chat-list{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);overflow:hidden}.admin-chat-list button{position:relative;width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;padding:14px 42px 14px 14px;text-align:left;cursor:pointer;display:grid;gap:5px}.admin-chat-list button.active,.admin-chat-list button:hover{background:var(--paper)}.admin-chat-list strong,.admin-chat-list span,.admin-chat-list small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-chat-list span{color:var(--ink-3);font-size:13px}.admin-chat-list small{color:var(--ink-4)}.admin-chat-list em{position:absolute;top:14px;right:12px;min-width:22px;height:22px;border-radius:999px;background:#dc2626;color:#fff;display:grid;place-items:center;font-style:normal;font-size:12px;font-weight:800}.admin-chat-thread{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--paper);display:flex;flex-direction:column;min-width:0;overflow:hidden}.admin-chat-thread-header{padding:14px 16px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px}.admin-chat-thread-header span{display:block;margin-top:3px;color:var(--ink-4);font-size:12px}.admin-chat-messages{flex:1;overflow-y:auto;padding:16px;background:var(--surface);display:flex;flex-direction:column;gap:10px}.admin-chat-message{max-width:76%;border:1px solid var(--line);border-radius:16px;padding:10px 12px;background:var(--paper)}.admin-chat-message.from-admin{align-self:flex-end;background:var(--accent);color:var(--accent-fg);border-color:var(--accent)}.admin-chat-message.from-user{align-self:flex-start}.admin-chat-message p{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.45}.admin-chat-message time{display:block;margin-top:5px;opacity:.68;font-size:11px}.admin-chat-reply{border-top:1px solid var(--line);padding:12px;display:grid;grid-template-columns:1fr auto;gap:10px}.admin-chat-reply textarea{resize:vertical;border:1px solid var(--line);border-radius:14px;padding:10px 12px;font:inherit}.admin-chat-reply button{border:0;border-radius:14px;padding:0 18px;background:var(--accent);color:var(--accent-fg);font-weight:800;cursor:pointer}.admin-chat-reply button:disabled{opacity:.45;cursor:not-allowed}@media (max-width: 900px){.admin-chat-layout{grid-template-columns:1fr}}.admin-chat-list>.field-hint,.admin-chat-thread>.field-hint{min-height:220px;display:grid;place-items:center;margin:0;padding:24px;text-align:center}.admin-chat-thread>.field-hint{flex:1}.chat-bubble{right:22px;bottom:22px;gap:10px}.chat-bubble-button{width:auto;min-width:132px;height:46px;padding:0 16px;border:1px solid var(--line-2);border-radius:var(--radius-sm);background:#fffffff5;color:var(--ink);box-shadow:0 10px 28px #11111114;display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:700;letter-spacing:-.01em;transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease}.chat-bubble-button:after{content:"Hỗ trợ"}.chat-bubble-button:hover{transform:translateY(-1px);border-color:var(--ink);background:var(--paper);box-shadow:0 14px 34px #1111111a}.chat-bubble-button:active{transform:translateY(0) scale(.99)}.chat-bubble-button:focus-visible,.chat-panel-header button:focus-visible,.chat-input-row button:focus-visible,.chat-input-row textarea:focus-visible,.admin-chat-list button:focus-visible,.admin-chat-reply textarea:focus-visible,.admin-chat-reply button:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.chat-bubble-button svg{width:20px;height:20px}.chat-unread-badge{top:-7px;right:-7px;background:var(--ink);border-color:var(--paper)}.chat-panel{width:min(382px,calc(100vw - 28px));height:min(528px,calc(100vh - 104px));border-color:var(--line);border-radius:var(--radius-lg);background:var(--paper);box-shadow:0 18px 48px #1111111f}.chat-panel-header{padding:14px 16px;background:linear-gradient(180deg,#fff,#f8f8f6)}.chat-panel-header strong{color:var(--ink);font-size:14px;letter-spacing:-.01em}.chat-panel-header span{color:var(--ink-4)}.chat-panel-header button{border-radius:var(--radius-sm);background:var(--paper);color:var(--ink-3);transition:background .18s ease,color .18s ease,border-color .18s ease}.chat-panel-header button:hover{border-color:var(--ink);color:var(--ink)}.chat-messages{background:linear-gradient(90deg,rgba(17,17,17,.018) 1px,transparent 1px) 0 0 / 28px 28px,var(--surface)}.chat-message{border-radius:var(--radius-md);box-shadow:none}.chat-message.from-user,.admin-chat-message.from-admin{background:var(--ink);color:var(--accent-fg);border-color:var(--ink)}.chat-message.from-admin,.admin-chat-message.from-user{background:var(--paper);color:var(--ink)}.chat-input-row,.admin-chat-reply{background:#fbfbfa}.chat-input-row textarea,.admin-chat-reply textarea{border-color:var(--line);border-radius:var(--radius-sm);background:var(--paper);transition:border-color .18s ease,box-shadow .18s ease}.chat-input-row textarea:focus,.admin-chat-reply textarea:focus{border-color:var(--ink);box-shadow:0 0 0 3px #1111110f}.chat-input-row button,.admin-chat-reply button{border-radius:var(--radius-sm);background:var(--ink);transition:transform .18s ease,opacity .18s ease,background .18s ease}.chat-input-row button:hover,.admin-chat-reply button:hover{background:var(--ink-2);transform:translateY(-1px)}.chat-input-row button:active,.admin-chat-reply button:active{transform:translateY(0) scale(.99)}.admin-chat-layout{gap:14px}.admin-chat-list,.admin-chat-thread{border-radius:var(--radius-sm);background:var(--paper)}.admin-chat-list button{transition:background .18s ease,color .18s ease}.admin-chat-list button.active{background:#f5f5f2;box-shadow:inset 3px 0 0 var(--ink)}.admin-chat-list button:hover{background:#fafaf8}.admin-chat-list span,.admin-chat-list small,.admin-chat-thread-header span{color:var(--ink-4)}.admin-chat-list em{background:var(--ink)}.admin-chat-thread-header{background:linear-gradient(180deg,#fff,#f8f8f6)}.admin-chat-messages{background:linear-gradient(90deg,rgba(17,17,17,.018) 1px,transparent 1px) 0 0 / 28px 28px,var(--surface)}.admin-chat-message{border-radius:var(--radius-md)}.chat-input-row{grid-template-columns:1fr 36px;align-items:end;gap:8px}.chat-input-row textarea{min-height:38px;max-height:118px;overflow-y:auto;line-height:1.42;padding:9px 11px}.chat-input-row .chat-send-button{width:36px;height:36px;min-width:36px;padding:0;display:grid;place-items:center;align-self:end}.chat-send-button svg{width:18px;height:18px;transform:translate(1px,-1px)}.chat-panel-header button{display:grid;place-items:center;padding:0;line-height:1}.chat-panel-header button{border:0;background:transparent;box-shadow:none}.chat-panel-header button:hover{border-color:transparent;background:transparent;color:var(--ink-3);transform:none}.chat-input-row .chat-send-button{border:0;background:transparent;color:var(--ink);box-shadow:none;transform:none}.chat-input-row .chat-send-button:hover,.chat-input-row .chat-send-button:active{background:transparent;color:var(--ink);transform:none}.chat-input-row .chat-send-button:disabled{background:transparent;color:var(--ink-4);opacity:.45}.chat-bubble-button{min-width:0;width:54px;height:54px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--ink);box-shadow:none}.chat-bubble-button:after{content:none}.chat-bubble-button:hover,.chat-bubble-button:active{border:0;background:transparent;box-shadow:none;transform:none}.chat-bubble-button svg{width:36px;height:36px}.chat-bubble-button{width:58px;height:58px;border-radius:50%;background:var(--ink);color:var(--accent-fg);display:grid;place-items:center}.chat-bubble-button:hover,.chat-bubble-button:active{background:var(--ink);color:var(--accent-fg)}.chat-bubble-button svg{width:30px;height:30px}.chat-bubble{bottom:42px}.chat-bubble{bottom:92px}.chat-bubble-button,.chat-bubble-button:hover,.chat-bubble-button:active{background:transparent;color:var(--ink)}.chat-bubble-button svg{width:48px;height:44px}.chat-typing-indicator{align-self:flex-start;color:var(--ink-4);font-size:12px;padding:6px 10px}.admin-chat-typing{margin-top:-2px}.chat-retry-button{margin-top:6px;padding:0;border:0;background:transparent;color:inherit;text-decoration:underline;font:inherit;font-size:12px;cursor:pointer}.admin-nav-badge{margin-left:auto;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--ink);color:var(--accent-fg);display:grid;place-items:center;font-style:normal;font-size:11px;font-weight:800;font-variant-numeric:tabular-nums}.admin-chat-list button.active,.admin-chat-list button.active:hover{background:var(--ink);color:var(--accent-fg);box-shadow:inset 3px 0 0 var(--line-2)}.admin-chat-list button.active strong,.admin-chat-list button.active span,.admin-chat-list button.active small{color:var(--accent-fg)}.admin-chat-thread{min-height:560px}.admin-chat-messages{scroll-behavior:smooth}.admin-chat-reply{grid-template-columns:1fr 44px;align-items:end}.admin-chat-reply button{width:44px;height:44px;padding:0;overflow:hidden;text-indent:-999px;position:relative;background:transparent;color:var(--ink)}.admin-chat-reply button:after{content:"";position:absolute;top:12px;right:12px;bottom:12px;left:12px;background:currentColor;clip-path:polygon(0 43%,100% 0,66% 100%,46% 58%)}.admin-chat-reply button:hover,.admin-chat-reply button:active{background:transparent;color:var(--ink);transform:none}.admin-chat-reply{grid-template-columns:1fr 36px;align-items:end;gap:8px;padding:12px;background:#fbfbfa}.admin-chat-reply textarea{min-height:38px;max-height:132px;overflow-y:auto;resize:none;line-height:1.42;padding:9px 11px}.admin-chat-reply .admin-chat-send-button{width:36px;height:36px;min-width:36px;padding:0;border:0;background:transparent;color:var(--ink);box-shadow:none;text-indent:0;display:grid;place-items:center;align-self:end;position:static}.admin-chat-reply .admin-chat-send-button:after{content:none}.admin-chat-send-button svg{width:18px;height:18px;transform:translate(1px,-1px)}.admin-chat-reply .admin-chat-send-button:hover,.admin-chat-reply .admin-chat-send-button:active{background:transparent;color:var(--ink);transform:none}.admin-chat-reply .admin-chat-send-button:disabled{background:transparent;color:var(--ink-4);opacity:.45}.admin-chat-list button.active,.admin-chat-list button.active:hover{background:var(--paper);color:var(--ink);box-shadow:inset 3px 0 0 var(--ink)}.admin-chat-list button.active strong{color:var(--ink)}.admin-chat-list button.active span{color:var(--ink-3)}.admin-chat-list button.active small{color:var(--ink-4)}.chat-runtime-status{display:inline-flex!important;align-items:center;gap:6px}.chat-runtime-status i{width:8px;height:8px;border-radius:50%;display:inline-block;background:#eab308;box-shadow:0 0 0 3px #eab30824}.chat-runtime-status.is-online i{background:#16a34a;box-shadow:0 0 0 3px #16a34a24}.chat-runtime-status.is-connecting i{background:#eab308;box-shadow:0 0 0 3px #eab30824}.chat-runtime-status.is-offline i{background:#dc2626;box-shadow:0 0 0 3px #dc262624}.admin-chat-list button strong{color:var(--ink)}.admin-chat-list button span{color:var(--ink-3)}.admin-chat-list button small{color:var(--ink-4)}.chat-image-preview{grid-column:1 / -1;position:relative;width:fit-content;max-width:180px;border:1px solid var(--line);border-radius:var(--radius-sm);padding:6px;background:var(--paper)}.chat-image-preview img{display:block;max-width:168px;max-height:128px;border-radius:7px;object-fit:cover}.chat-image-preview button{position:absolute;top:-8px;right:-8px;width:22px;height:22px;min-width:22px;border:1px solid var(--line-2);border-radius:999px;padding:0;background:var(--paper);color:var(--ink);line-height:1}.chat-message-image-link{display:block;overflow:hidden;border-radius:10px;color:inherit}.chat-message-image{display:block;max-width:min(220px,100%);max-height:220px;border-radius:10px;object-fit:cover}.chat-message-image-link+p{margin-top:6px}.chat-attach-button,.admin-chat-reply .chat-attach-button{width:36px;height:36px;min-width:36px;border:0;border-radius:var(--radius-sm);padding:0;background:transparent;color:var(--ink);font-size:20px;line-height:1;display:grid;place-items:center}.chat-attach-button:hover,.admin-chat-reply .chat-attach-button:hover{background:transparent;color:var(--ink);transform:none}.admin-chat-image-preview{max-width:220px}.admin-chat-reply .chat-attach-button:after{content:none}.chat-input-row,.admin-chat-reply{grid-template-columns:36px 1fr 36px}.chat-attach-button,.admin-chat-reply .chat-attach-button{border:0;background:transparent;box-shadow:none}.chat-attach-button svg{width:19px;height:19px}.chat-attach-button,.admin-chat-reply .chat-attach-button{display:inline-flex;align-items:center;justify-content:center;align-self:end;line-height:0}.chat-attach-button svg{display:block;width:20px;height:20px;transform:translateY(1px)}.chat-attach-button,.chat-attach-button:hover,.chat-attach-button:active,.chat-attach-button:focus,.admin-chat-reply .chat-attach-button,.admin-chat-reply .chat-attach-button:hover,.admin-chat-reply .chat-attach-button:active,.admin-chat-reply .chat-attach-button:focus{border:0;background:transparent;color:#000;box-shadow:none;outline:none}.chat-input-row .chat-attach-button,.chat-input-row .chat-attach-button:hover,.chat-input-row .chat-attach-button:active,.chat-input-row .chat-attach-button:focus,.admin-chat-reply .chat-attach-button,.admin-chat-reply .chat-attach-button:hover,.admin-chat-reply .chat-attach-button:active,.admin-chat-reply .chat-attach-button:focus{border:0!important;background:transparent!important;color:#000!important;box-shadow:none!important;outline:none!important;transform:none!important}.chat-input-row .chat-attach-button:disabled,.admin-chat-reply .chat-attach-button:disabled{background:transparent!important}.chat-input-row .chat-attach-button svg,.admin-chat-reply .chat-attach-button svg{width:26px;height:26px;stroke-width:2.1px;transform:translateY(1px)}.chat-input-row .chat-attach-button svg,.admin-chat-reply .chat-attach-button svg{width:32px;height:32px;transform:none}.chat-input-row>.chat-attach-button,.admin-chat-reply>.chat-attach-button{width:46px!important;height:38px!important;min-width:46px!important;padding:0!important;border:0!important;background:transparent!important;color:#000!important;box-shadow:none!important;display:flex!important;align-items:center!important;justify-content:center!important;overflow:visible!important}.chat-input-row>.chat-attach-button svg,.admin-chat-reply>.chat-attach-button svg{width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important;display:block!important;overflow:visible!important;transform:none!important}.chat-input-row>.chat-attach-button svg path,.admin-chat-reply>.chat-attach-button svg path{stroke-width:3.4!important}.chat-input-row,.admin-chat-reply{grid-template-columns:46px minmax(0,1fr) 36px!important}.chat-input-row>.chat-attach-button,.admin-chat-reply>.chat-attach-button{width:40px!important;height:38px!important;min-width:40px!important}.chat-input-row>.chat-attach-button svg,.admin-chat-reply>.chat-attach-button svg{width:28px!important;height:28px!important;min-width:28px!important;min-height:28px!important}.chat-input-row>.chat-attach-button svg path,.admin-chat-reply>.chat-attach-button svg path{stroke-width:2.5!important}.chat-input-row,.admin-chat-reply{grid-template-columns:40px minmax(0,1fr) 36px!important}.chat-input-row>.chat-attach-button,.admin-chat-reply>.chat-attach-button{width:36px!important;min-width:36px!important}.chat-input-row>.chat-attach-button svg,.admin-chat-reply>.chat-attach-button svg{width:24px!important;height:24px!important;min-width:24px!important;min-height:24px!important}.chat-input-row>.chat-attach-button svg path,.admin-chat-reply>.chat-attach-button svg path{stroke-width:2.2!important}.chat-input-row,.admin-chat-reply{grid-template-columns:36px minmax(0,1fr) 36px!important}.chat-input-row>.chat-attach-button,.admin-chat-reply>.chat-attach-button{width:32px!important;min-width:32px!important}.chat-input-row>.chat-attach-button svg,.admin-chat-reply>.chat-attach-button svg{width:20px!important;height:20px!important;min-width:20px!important;min-height:20px!important}.chat-input-row>.chat-attach-button svg path,.admin-chat-reply>.chat-attach-button svg path{stroke-width:2!important}.chat-input-row,.admin-chat-reply{grid-template-columns:32px minmax(0,1fr) 36px!important}.algebra-solver-page{display:grid;width:100%;margin:0;padding:0;color:var(--ink-2);font-size:.9rem}.algebra-workspace{display:grid;grid-template-columns:minmax(420px,560px) minmax(0,1fr);min-height:calc(100dvh - 112px);align-items:stretch;overflow:clip;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--paper);box-shadow:var(--shadow-subtle);font-family:inherit}.algebra-workspace:has(.algebra-input-disclosure:not([open])){grid-template-columns:minmax(220px,260px) minmax(0,1fr)}.algebra-input-panel,.algebra-result-panel,.algebra-empty-result,.algebra-result-card{border:0;border-radius:0;background:transparent;box-shadow:none}.algebra-input-panel{display:grid;align-content:start;gap:16px;padding:20px;border-right:1px solid var(--line);background:#fafafa}.algebra-input-header,.algebra-result-disclosure>summary,.algebra-history-disclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;list-style:none;cursor:pointer}.algebra-result-disclosure>summary::-webkit-details-marker,.algebra-history-disclosure>summary::-webkit-details-marker{display:none}.algebra-result-disclosure>summary:focus-visible,.algebra-history-disclosure>summary:focus-visible{border-radius:var(--radius-sm);outline:2px solid var(--ink);outline-offset:4px}.algebra-input-disclosure-content{display:grid;gap:16px;padding-top:16px}.algebra-panel-heading{display:grid;gap:3px}.algebra-panel-heading strong{color:var(--ink);font-size:1rem;font-weight:620;line-height:1.2;text-wrap:balance}.algebra-input-panel .field-label{gap:6px;color:var(--ink-3);font-size:.76rem;font-weight:600;line-height:1.35}.algebra-panel-heading span,.algebra-eyebrow{color:var(--ink-4);font-size:.66rem;font-weight:650;letter-spacing:.045em;text-transform:uppercase}.algebra-panel-heading h2,.algebra-result-header h2{margin:4px 0 6px;color:var(--ink);font-size:clamp(1.05rem,2vw,1.3rem);font-weight:620;line-height:1.15;text-wrap:balance}.algebra-panel-heading p,.algebra-empty-result span,.algebra-result-card p,.algebra-step-card p{margin:8px 0 0;color:var(--ink-4);font-size:.8rem;line-height:1.5;text-wrap:pretty}.algebra-input-section{display:grid;gap:12px;padding-top:18px;border-top:1px solid var(--line)}.algebra-input-section-head{display:flex;align-items:center;gap:8px;color:var(--ink-3);font-size:.7rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.algebra-input-section-head span{color:var(--ink-4);font-variant-numeric:tabular-nums}.algebra-field-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.algebra-input-panel textarea,.algebra-input-panel select,.algebra-input-panel input{width:100%;border:1px solid var(--line);border-radius:var(--radius-md);padding:10px 12px;background:var(--paper);color:var(--ink-2);font-family:inherit;font-size:.79rem;font-weight:450;line-height:1.4}.algebra-input-panel textarea::placeholder,.algebra-input-panel input::placeholder{color:var(--ink-4);opacity:1}.algebra-input-panel textarea:focus,.algebra-input-panel select:focus,.algebra-input-panel input:focus{border-color:var(--line-2);outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--line-2) 32%,transparent)}.algebra-input-panel textarea{resize:vertical;min-height:112px;font-family:inherit}.algebra-mode-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:4px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface)}.algebra-mode-tabs button{border:0;border-radius:calc(var(--radius-md) - 3px);padding:8px 9px;background:transparent;color:var(--ink-4);font-size:.76rem;font-weight:560;cursor:pointer}.algebra-mode-tabs button.active{background:var(--paper);color:var(--ink);box-shadow:0 1px 3px #0f172a1f}.algebra-quick-examples{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.algebra-quick-examples button,.algebra-topic-suggestion{min-width:0;border:1px solid var(--line);border-radius:var(--radius-md);padding:8px 9px;background:var(--paper);color:var(--ink-2);font:inherit;font-size:.76rem;font-weight:540;line-height:1.25;cursor:pointer}.algebra-quick-examples button:hover,.algebra-topic-suggestion:hover{border-color:var(--ink)}.algebra-topic-suggestion{width:100%;text-align:left}.algebra-ai-option{display:flex;flex-direction:column;gap:.35rem;margin-top:.25rem}.algebra-ai-option-row{display:flex;align-items:center;gap:.5rem;font-weight:600}.algebra-ai-option-row input[type=checkbox]{width:auto;margin:0}.algebra-ai-option-hint{color:var(--ink-4);font-size:.72rem;font-weight:450;line-height:1.4}.algebra-math-field-wrap{gap:8px}.algebra-math-field{width:100%;min-height:96px;border:1px solid var(--line);border-radius:var(--radius-md);padding:14px;background:var(--paper);color:var(--ink);font-size:1.15rem;overflow-x:auto}.algebra-math-field.mq-focused,.algebra-math-field .mq-focused,.algebra-math-field .mq-editable-field.mq-focused{border-color:var(--line-2)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--line-2) 32%,transparent)!important;outline:none!important}.algebra-math-field .mq-cursor,.algebra-math-field .mq-textarea textarea:focus{color:var(--ink)!important;outline:none!important}.algebra-math-toolbar{display:grid;gap:8px}.algebra-snippet-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px;padding:3px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface)}.algebra-snippet-tabs button{display:inline-flex;align-items:center;justify-content:center;min-height:32px;border:0;border-radius:calc(var(--radius-md) - 4px);background:transparent;color:var(--ink-3);font-family:inherit;font-size:.92rem;font-weight:520;line-height:1;cursor:pointer}.algebra-snippet-tabs button.active{background:var(--paper);color:var(--ink);font-weight:560;box-shadow:0 1px 2px #0f172a1a}.algebra-snippet-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.algebra-snippet-grid button{display:inline-flex;align-items:center;justify-content:center;min-height:36px;border:1px solid var(--line);border-radius:var(--radius-md);background:color-mix(in srgb,var(--paper) 70%,var(--surface));color:var(--ink);font-family:inherit;font-size:.92rem;font-weight:520;line-height:1;cursor:pointer}.algebra-snippet-grid button:hover:not(:disabled),.algebra-snippet-tabs button:hover:not(:disabled){background:var(--surface-2)}.algebra-snippet-katex{display:inline-flex;align-items:center;justify-content:center;max-width:100%;color:inherit;line-height:1}.algebra-snippet-katex .katex{font-size:1em;color:inherit;white-space:nowrap}.algebra-snippet-katex .katex-display{margin:0}.algebra-snippet-tabs button.active:hover:not(:disabled){background:var(--paper)}.algebra-input-preview{display:grid;gap:8px;border:1px solid var(--line);border-radius:var(--radius-md);padding:12px;background:var(--surface)}.algebra-input-preview>span{color:var(--ink-3);font-size:.76rem;font-weight:560;text-transform:uppercase}.algebra-option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.algebra-interval-custom{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;border:1px solid var(--line);border-radius:var(--radius-md);padding:12px;background:var(--surface)}.algebra-interval-custom .algebra-ai-option-hint{grid-column:1 / -1}.algebra-confirm-panel{display:grid;gap:14px;margin:18px 22px;padding:18px 20px;border:1px solid var(--line);border-left:3px solid var(--ink);border-radius:var(--radius-sm);background:var(--paper)}.algebra-confirm-lead{margin:0;color:var(--ink-4);font-size:.78rem;line-height:1.45}.algebra-confirm-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.algebra-history-panel{margin:8px clamp(22px,3vw,48px) 24px;padding:16px 0 0;border:0;border-top:1px solid var(--line);border-radius:0;background:transparent}.algebra-history-disclosure>summary{color:var(--ink-3);font-size:.78rem}.algebra-history-disclosure>summary span{color:var(--ink-4);font-variant-numeric:tabular-nums}.algebra-history-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px;color:var(--ink-3);font-size:.76rem}.algebra-history-list{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:6px;max-height:180px;overflow:auto}.algebra-history-item{width:100%;text-align:left;border:1px solid color-mix(in srgb,var(--line) 80%,transparent);border-radius:calc(var(--radius-md) - 2px);background:var(--paper);padding:8px 10px;cursor:pointer;display:grid;gap:2px;font:inherit}.algebra-history-item:hover{border-color:var(--line-2);background:var(--surface)}.algebra-history-meta{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-3)}.algebra-history-input,.algebra-history-answer{color:var(--ink-3);font-size:.76rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.algebra-history-answer{color:var(--ink-3)}.algebra-sequence-builder{display:grid;gap:10px;border:1px solid var(--line);border-radius:var(--radius-md);padding:12px;background:var(--surface)}.algebra-segmented-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:4px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--paper)}.algebra-segmented-row button{border:0;border-radius:calc(var(--radius-md) - 3px);padding:9px 10px;background:transparent;color:var(--ink-3);font:inherit;font-weight:560;cursor:pointer}.algebra-segmented-row button.active{background:var(--ink);color:var(--paper)}.algebra-sequence-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.algebra-submit{width:100%;font-weight:560}.algebra-result-wrap{min-width:0;min-height:100%;background-color:#fbfbfa;background-image:linear-gradient(color-mix(in srgb,var(--line-2) 22%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--line-2) 22%,transparent) 1px,transparent 1px);background-size:32px 32px;background-position:-1px -1px}.algebra-empty-result{min-height:100%;display:grid;place-items:start center;align-content:start;padding:clamp(32px,5vw,48px) 28px;text-align:center;font-family:inherit}.algebra-empty-card{display:grid;justify-items:center;gap:10px;width:min(560px,100%);padding:0}.algebra-empty-eyebrow{margin:0 0 2px;color:var(--ink-4);font-size:.68rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.algebra-empty-result strong,.algebra-empty-result span{max-width:520px;justify-self:center}.algebra-empty-result strong{font-weight:600;color:var(--ink)}.algebra-empty-result span{text-align:center;color:var(--ink-4);font-size:.8rem}.algebra-empty-features{display:flex;flex-wrap:wrap;justify-content:center;gap:7px;margin:8px 0 0;padding:0;list-style:none}.algebra-empty-features li{border:1px solid var(--line);border-radius:999px;padding:6px 10px;background:var(--surface);color:var(--ink-3);font-size:.72rem;font-weight:600}.algebra-result-panel{display:grid;align-content:start;gap:14px;min-height:100%;padding:28px clamp(22px,3vw,48px);font-family:inherit}.algebra-empty-illustration{width:min(190px,42vw);height:auto;margin-bottom:2px;color:var(--ink)}.algebra-empty-illustration rect{fill:color-mix(in srgb,var(--paper) 86%,var(--surface));stroke:var(--ink);stroke-width:2}.algebra-empty-illustration path,.algebra-empty-illustration circle{fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.algebra-empty-illustration .grid-lines{stroke:color-mix(in srgb,var(--line-2) 68%,transparent);stroke-width:1}.algebra-result-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:4px 4px 0}.algebra-result-panel.is-stale{opacity:.92}.algebra-stale-badge{display:inline-block;margin-top:.4rem;padding:.25rem .55rem;border-radius:999px;background:#fff7ed;border:1px solid #fdba74;color:#9a3412;font-size:.8rem;font-weight:600}.algebra-result-actions{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:flex-end;max-width:min(100%,22rem)}.algebra-action-btn{border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:var(--radius-md);padding:.35rem .6rem;font:inherit;font-size:.8rem;cursor:pointer}.algebra-action-btn:hover{border-color:var(--ink)}.algebra-action-primary{background:color-mix(in srgb,var(--accent, #2563eb) 12%,var(--paper));border-color:color-mix(in srgb,var(--accent, #2563eb) 40%,var(--line))}.algebra-export-more{position:relative}.algebra-export-more>summary{list-style:none}.algebra-export-more>summary::-webkit-details-marker{display:none}.algebra-export-dropdown{position:absolute;right:0;top:calc(100% + 4px);z-index:10;display:grid;gap:2px;min-width:170px;padding:6px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--paper);box-shadow:0 4px 16px #0000001a}.algebra-export-dropdown button{display:block;width:100%;padding:.4rem .6rem;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--ink);font:inherit;font-size:.8rem;text-align:left;cursor:pointer}.algebra-export-dropdown button:hover{background:var(--bg-hover, #f4f4f5)}.algebra-step-confidence,.algebra-step-rule,.algebra-step-pedagogy{display:none}.algebra-copy-feedback{margin:.25rem 0 0;font-size:.85rem;color:var(--ink-2)}.algebra-verify-pill{display:inline-flex;width:fit-content;margin-top:.35rem;padding:.2rem .55rem;border-radius:999px;font-size:.78rem;font-weight:650}.algebra-verify-pill.status-verified{background:#ecfdf5;color:#047857}.algebra-verify-pill.status-partially_verified{background:#fffbeb;color:#b45309}.algebra-verify-pill.status-failed{background:#fef2f2;color:#b91c1c}.algebra-verify-pill.status-skipped{background:var(--surface);color:var(--ink-3)}.algebra-result-disclosure>summary{color:var(--ink-3);font-size:.78rem;font-weight:680;text-transform:uppercase}.algebra-result-disclosure>summary small{color:var(--ink-4);font-size:.72rem;font-weight:500;text-transform:none}.algebra-result-disclosure-content{display:grid;gap:12px;padding-top:12px}.algebra-interpretation-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem 1rem;margin:0}.algebra-interpretation-grid dt{color:var(--ink-4);font-size:.66rem;font-weight:650;text-transform:uppercase;letter-spacing:.03em}.algebra-interpretation-grid dd{margin:.15rem 0 0;color:var(--ink-3);font-size:.78rem;overflow-wrap:anywhere}.algebra-interpretation-grid code{color:inherit;font-size:.76rem}.algebra-chip-row{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.5rem}.algebra-chip{border:1px solid var(--line);border-radius:999px;padding:.15rem .55rem;font-size:.78rem;background:var(--surface)}.algebra-section-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.5rem}.algebra-verify-summary{font-size:.82rem;color:var(--ink-2)}.algebra-verify-method{margin:0;font-size:.82rem;color:var(--ink-3)}.algebra-check-status{display:inline-block;margin-left:.4rem;font-size:.72rem;text-transform:uppercase;opacity:.75}.algebra-step-confidence{display:inline-block;margin-left:.4rem;font-size:.72rem;padding:.05rem .4rem;border-radius:999px;background:var(--surface);color:var(--ink-3)}.algebra-step-pedagogy{display:grid;gap:.45rem;margin:.75rem 0 0;padding:.65rem .75rem;border-radius:var(--radius-md);background:var(--surface);border:1px dashed var(--line)}.algebra-step-pedagogy dt{font-size:.72rem;text-transform:uppercase;color:var(--ink-3)}.algebra-step-pedagogy dd{margin:.1rem 0 0;color:var(--ink-2);line-height:1.45}.algebra-nested-steps{margin-top:1rem;padding-left:1rem;border-left:2px dashed var(--line)}@media (max-width: 720px){.algebra-interpretation-grid{grid-template-columns:1fr}.algebra-result-actions{max-width:100%;justify-content:flex-start}}.algebra-result-card{display:grid;gap:12px;padding:16px 0;border-top:1px solid var(--line);box-shadow:none;min-width:0}.algebra-result-card h3{margin:0;color:var(--ink-3);font-size:.78rem;font-weight:680;line-height:1.3;text-transform:uppercase;text-wrap:balance}.algebra-answer-card{display:grid;gap:10px;padding-top:18px}.algebra-answer-katex{max-width:100%;overflow-x:auto;color:var(--ink);font-size:clamp(1.15rem,2vw,1.35rem)}.algebra-answer-katex .katex-display{margin:0}.algebra-answer-text{color:var(--ink);font-size:clamp(1rem,1.8vw,1.25rem);line-height:1.45;overflow-wrap:anywhere}.algebra-answer-note{max-width:72ch;font-size:.9rem}.algebra-result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}.algebra-info-list{margin:0;padding-left:20px;color:var(--ink-3);font-size:.8rem;line-height:1.5;overflow-wrap:anywhere}.algebra-check-list,.algebra-step-list{display:grid;gap:10px}.algebra-check,.algebra-step-card{border:1px solid var(--line);border-radius:var(--radius-md);padding:12px 14px;background:var(--surface);min-width:0}.algebra-check.pass{border-color:#bbf7d0;background:#f0fdf4}.algebra-check.fail{border-color:#fecaca;background:#fef2f2}.algebra-check.warn,.algebra-check.skip{border-color:#fde68a;background:#fffbeb}.algebra-check>span{display:block;margin-top:4px;color:var(--ink-3);font-size:.78rem;line-height:1.45;overflow-wrap:anywhere}.algebra-step-head{display:flex;align-items:flex-start;gap:10px;margin-bottom:6px;min-width:0}.algebra-step-head strong{display:block;min-width:0;color:var(--ink);line-height:1.35;overflow-wrap:anywhere}.algebra-step-head>div{display:grid;gap:5px;min-width:0}.algebra-step-rule{width:fit-content;max-width:100%;border:1px solid var(--line);border-radius:999px;padding:3px 8px;background:var(--paper);color:var(--ink-3);font-size:.74rem;font-weight:600;line-height:1.25;overflow-wrap:anywhere}.algebra-step-index{display:inline-grid;place-items:center;flex:0 0 auto;width:26px;height:26px;border-radius:999px;background:var(--ink);color:var(--paper);font-size:.78rem;font-weight:680}.algebra-transform-row{display:grid;grid-template-columns:minmax(0,1fr);justify-items:stretch;gap:12px;margin-top:14px;min-width:0}.algebra-transform-row>div{width:100%;min-width:0;border:1px solid color-mix(in srgb,var(--line) 70%,transparent);border-radius:8px;padding:12px 14px;background:color-mix(in srgb,var(--paper) 78%,var(--surface));overflow:visible}.algebra-formula-lines{display:grid;gap:12px;min-width:0}.algebra-formula-line{display:flex;align-items:center;justify-content:center;width:100%;min-width:0;overflow:visible;text-align:center}.algebra-transform-arrow{justify-self:center;color:var(--ink-3);font-size:1.15rem;font-weight:650;line-height:1}.algebra-formula-row{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;align-items:start;margin-top:14px;min-width:0}.algebra-formula-row>span:first-child{color:var(--ink-3);font-size:.82rem;font-weight:600}.algebra-katex{display:block;max-width:100%;overflow:visible;text-align:center;line-height:1.8}.algebra-katex .katex,.algebra-answer-katex .katex{display:inline-block;max-width:100%;white-space:nowrap}.algebra-katex .katex-html,.algebra-answer-katex .katex-html{white-space:nowrap}@media (max-width: 960px){.algebra-workspace,.algebra-workspace:has(.algebra-input-disclosure:not([open])),.algebra-result-grid,.algebra-sequence-grid,.algebra-quick-examples,.algebra-option-grid{grid-template-columns:1fr}.algebra-input-panel{border-right:0;border-bottom:1px solid var(--line)}.algebra-result-header{flex-direction:column}.algebra-math-toolbar{grid-template-columns:1fr}}@media (max-width: 640px){.algebra-input-panel,.algebra-result-panel{padding:20px 16px}.algebra-snippet-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.cas-issues-panel{background:#2ed5731a;border:1px solid rgba(46,213,115,.3);border-radius:12px;padding:16px;margin-bottom:16px;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 4px 16px #2ed5730d;animation:slideInFade .4s ease-out}@keyframes slideInFade{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.cas-issues-title{display:block;font-size:.9rem;color:#2ed573;margin-bottom:12px;font-weight:600;letter-spacing:.3px;text-transform:uppercase}.cas-issues-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.cas-issue-item{display:flex;align-items:flex-start;gap:10px;background:#ffffff08;padding:10px 12px;border-radius:8px;border-left:3px solid #2ed573;transition:transform .2s ease,background .2s ease}.cas-issue-item:hover{transform:translate(4px);background:#ffffff0f}.cas-issue-badge{font-size:.75rem;background:#2ed57333;color:#2ed573;padding:3px 6px;border-radius:4px;font-family:monospace;white-space:nowrap}.cas-issue-desc{font-size:.85rem;color:#a4b0be;line-height:1.4}.scene-object-tree{display:grid;gap:12px;padding:14px;border:1px solid var(--line);border-radius:var(--radius-lg);background:#fff;box-shadow:var(--shadow-subtle)}.scene-object-tree-head,.scene-object-tree-detail-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.scene-object-tree-head strong,.scene-object-tree-detail-title strong{display:block;color:var(--ink);font-weight:900}.scene-object-tree-head span,.scene-object-tree-detail-title span{display:block;color:var(--ink-4);font-size:.82rem}.scene-object-tree-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.scene-object-tree-body{display:grid;max-height:360px;overflow:auto;gap:8px;padding-right:4px}.scene-object-tree-body details{border:1px solid var(--line);border-radius:var(--radius-md);background:#fafafa}.scene-object-tree-body summary{display:flex;align-items:center;justify-content:space-between;padding:9px 10px;cursor:pointer;font-weight:850}.scene-object-tree-list{display:grid;gap:4px;padding:0 8px 8px}.scene-object-tree-item{display:grid;gap:3px;width:100%;padding:8px 10px;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--ink);text-align:left}.scene-object-tree-item:hover,.scene-object-tree-item.active,.scene-object-tree-item.context-active{border-color:var(--line-2);background:#fff}.scene-object-tree-item.context-active{box-shadow:inset 3px 0 #f97316}.scene-object-tree-item span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:800}.scene-object-tree-item small,.scene-object-tree-body summary span{color:var(--ink-4);font-size:.76rem}.scene-object-tree-detail{display:grid;gap:10px;padding:12px;border:1px solid var(--line);border-radius:var(--radius-md);background:#fafafa}.scene-object-tree-actions,.scene-object-tree-rename{display:flex;flex-wrap:wrap;gap:8px}.scene-object-tree-actions button,.scene-object-tree-rename button{border:1px solid var(--line-2);border-radius:var(--radius-sm);padding:7px 10px;background:#fff;color:var(--ink);font-weight:800}.scene-object-tree-actions button:disabled,.scene-object-tree-rename button:disabled{opacity:.5;cursor:not-allowed}.scene-object-tree-actions .danger-button{border-color:#fecaca;color:#991b1b;background:#fef2f2}.scene-object-tree-rename input{min-width:0;flex:1;border:1px solid var(--line-2);border-radius:var(--radius-sm);padding:7px 10px}.scene-object-tree-info{display:grid;gap:6px}.scene-object-tree-info strong{color:var(--ink-3);font-size:.82rem}.scene-object-tree-info ul,.scene-object-tree-info p{margin:0;color:var(--ink-4);font-size:.82rem}.scene-object-tree-info ul{display:grid;gap:3px;padding-left:18px}.settings-page{--settings-control-height: 36px}.settings-page .account-hero{align-items:end;padding:8px 0 14px}.settings-page .account-identity{gap:10px}.settings-page .account-icon{width:28px;height:28px;border-radius:8px}.settings-page .account-hero h2{margin-top:4px;font-size:clamp(1.08rem,1.5vw,1.35rem);line-height:1.08}.settings-action-row .secondary-button,.settings-page .auth-actions button,.settings-page .account-section-title>.secondary-button,.settings-page .nested-panel>button,.settings-page .byok-model-row button{width:auto;min-width:0;min-height:var(--settings-control-height);justify-self:start;border-radius:10px;padding:0 12px;font-size:.78rem;font-weight:760}.settings-page .auth-actions{grid-column:1 / -1;display:flex;justify-content:flex-start;align-items:center;gap:8px;margin-top:-2px}.settings-page .auth-actions button:first-child,.settings-page .nested-panel>button{background:var(--ink);color:var(--accent-fg)}.settings-page .auth-actions button:first-child:hover:not(:disabled),.settings-page .nested-panel>button:hover:not(:disabled){background:var(--ink-2)}.settings-page .account-grid{grid-template-columns:repeat(2,minmax(260px,1fr));gap:12px 14px;align-items:end}.settings-page .field-label{gap:6px;color:var(--ink-2);font-size:.76rem;font-weight:760}.settings-page input,.settings-page select{min-height:var(--settings-control-height);border-radius:10px;padding:8px 10px;background:#fff}.settings-page .byok-toggle-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;align-self:stretch;min-height:var(--settings-control-height);border:1px solid var(--line);border-radius:10px;padding:8px 10px;background:#fff}.settings-page .byok-toggle-row input{width:16px;min-height:16px;height:16px;accent-color:var(--ink)}.settings-page .nested-panel{gap:12px;padding-top:12px}.settings-page .byok-model-list{display:grid;gap:8px}.settings-page .byok-model-row{display:grid;grid-template-columns:minmax(180px,1.2fr) minmax(180px,1fr) auto auto auto;align-items:center;gap:8px;border:1px solid var(--line);border-radius:12px;padding:8px;background:#fff}.settings-page .byok-model-row label{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;color:var(--ink-3);font-weight:760}.settings-page .byok-model-row label input{width:15px;min-height:15px;height:15px;accent-color:var(--ink)}.settings-page .nested-panel>button{margin-top:2px}.byok-loading{position:relative;display:inline-flex;align-items:center;gap:9px;width:fit-content;overflow:hidden;border:1px solid var(--line);border-radius:999px;padding:7px 11px;background:#fff;color:var(--ink-2);font-size:.78rem}.byok-loading:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent,rgba(17,17,17,.06),transparent);animation:settings-shimmer 1.2s linear infinite}.byok-loading span{width:8px;height:8px;border-radius:999px;background:var(--ink);box-shadow:0 0 0 4px #11111114}.byok-loading strong{position:relative;z-index:1;font-weight:820}.page-loading-fallback{min-height:min(520px,calc(100dvh - 140px));display:grid;place-items:center;align-content:center;gap:18px;border:0;border-top:1px solid var(--line);border-radius:0;background:radial-gradient(circle at 50% 38%,rgba(17,17,17,.055),transparent 28%),transparent;box-shadow:none}.tool-loading-orb{position:relative;width:62px;height:62px;border:1px solid var(--line-2);border-radius:50%;background:#fff}.tool-loading-orb:before,.tool-loading-orb:after,.tool-loading-orb span{content:"";position:absolute;border-radius:50%}.tool-loading-orb:before{top:8px;right:8px;bottom:8px;left:8px;border:1px solid var(--line)}.tool-loading-orb:after{top:-1px;right:-1px;bottom:-1px;left:-1px;border:2px solid transparent;border-top-color:var(--ink);animation:spin .9s linear infinite}.tool-loading-orb span{top:22px;right:22px;bottom:22px;left:22px;background:var(--ink)}.tool-loading-copy{display:grid;gap:5px;max-width:360px;text-align:center}.tool-loading-copy strong{color:var(--ink);font-size:.98rem}.tool-loading-copy span{color:var(--ink-4);font-size:.84rem}.tool-loading-skeleton{display:grid;gap:7px;width:min(320px,62vw)}.tool-loading-skeleton i{height:9px;overflow:hidden;border-radius:999px;background:var(--line)}.tool-loading-skeleton i:after{content:"";display:block;width:45%;height:100%;border-radius:inherit;background:linear-gradient(90deg,transparent,rgba(255,255,255,.9),transparent);animation:settings-skeleton 1.15s ease-in-out infinite}.tool-loading-skeleton i:nth-child(2){width:78%;justify-self:center}.tool-loading-skeleton i:nth-child(3){width:56%;justify-self:center}@keyframes settings-shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes settings-skeleton{0%{transform:translate(-120%)}to{transform:translate(240%)}}@media (max-width: 900px){.settings-page .account-grid,.settings-page .byok-model-row{grid-template-columns:1fr}.settings-page .auth-actions,.settings-action-row{justify-content:flex-start}}.sim-library-page,.sim-workspace-page{display:grid;width:100%;min-height:0;color:var(--ink-2);font-size:.9rem}.sim-library-page{gap:14px}.sim-workspace-page{gap:16px}.sim-workspace-meta h1{margin:0 0 5px;color:var(--ink);font-size:clamp(1.2rem,2vw,1.55rem);font-weight:680;letter-spacing:-.025em;line-height:1.12}.sim-workspace-meta p{margin:0;max-width:62ch;color:var(--ink-4);font-size:.8rem;line-height:1.5}.sim-library-filters{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(170px,.65fr) minmax(220px,.9fr) auto;gap:10px;align-items:end;padding:8px 0 12px;border-bottom:1px solid var(--line)}.sim-grade-tabs{display:flex;flex-wrap:wrap;gap:8px}.sim-grade-tabs button{border:1px solid var(--line);border-radius:999px;background:var(--paper);color:var(--ink-3);padding:7px 11px;font:inherit;font-size:.76rem;font-weight:600;cursor:pointer}.sim-grade-tabs button.active{background:#111;border-color:#111;color:#fff}.sim-filter-field{display:grid;gap:5px;color:var(--ink-4);font-size:.7rem;font-weight:600}.sim-filter-field select,.sim-filter-field input{border:1px solid var(--line);border-radius:9px;background:var(--paper);color:var(--ink-2);padding:8px 10px;font-family:inherit;font-size:.78rem;font-weight:450}.sim-filter-field input::placeholder{color:var(--ink-4);opacity:1}.sim-library-count{align-self:center;padding:0 2px 1px 6px;color:var(--ink-4);font-size:.72rem;font-variant-numeric:tabular-nums;white-space:nowrap}.sim-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.sim-card{display:grid;grid-template-rows:auto auto auto 1fr auto;gap:9px;min-width:0;padding:15px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--paper);box-shadow:var(--shadow-subtle)}.sim-card h2{margin:0;color:var(--ink);font-size:.96rem;font-weight:650;line-height:1.3}.sim-card>p{margin:0;color:var(--ink-4);font-size:.78rem;line-height:1.45}.sim-card-top,.sim-chip-row{display:flex;flex-wrap:wrap;gap:6px}.sim-chip{display:inline-flex;align-items:center;padding:2px 7px;border-radius:999px;border:1px solid var(--line);background:#f8fafc;color:var(--ink-3);font-size:.65rem;font-weight:650}.sim-chip-status.published,.sim-chip.sim-chip-status{background:#ecfdf5;border-color:#a7f3d0;color:#065f46}.sim-chip-status.draft{background:#fff7ed;border-color:#fed7aa;color:#9a3412}.sim-card-meta{display:flex;flex-wrap:wrap;gap:4px 10px;color:var(--ink-4);font-size:.68rem}.sim-card-meta span+span:before{content:"·";margin-right:10px;color:var(--line-2)}.sim-card-outcomes{margin:0;padding-left:1rem;color:var(--ink-3);font-size:.75rem;line-height:1.45}.sim-card-footer{display:grid;gap:12px;align-self:end;padding-top:2px;border-top:1px solid var(--line)}.sim-card-open{justify-self:start;margin-top:0}.sim-library-empty{padding:28px 20px;border:1px dashed var(--line);border-radius:16px;text-align:center;display:grid;gap:8px;justify-items:center}.sim-workspace-header{display:grid;gap:8px;padding:2px 0 12px;border-bottom:1px solid var(--line-2)}.sim-workspace-meta{display:flex;align-items:end;justify-content:space-between;gap:24px}.sim-workspace-title{min-width:0}.sim-workspace-meta .sim-chip-row{justify-content:flex-end;flex:0 0 auto}.sim-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:6px;color:var(--ink-4);font-size:.68rem}.sim-breadcrumb-back{border:0;padding:0;background:transparent;color:var(--ink-3);font:inherit;font-weight:650;cursor:pointer}.sim-breadcrumb-back:hover{text-decoration:underline;text-underline-offset:3px}.sim-workspace-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,310px);gap:clamp(20px,2.2vw,30px);align-items:start}.sim-workspace-main{display:grid;gap:16px;min-width:0}.sim-template-host{min-width:0;overflow:hidden;padding:14px;border:1px solid var(--line);border-radius:12px;background-color:#fff;background-image:linear-gradient(rgba(15,23,42,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(15,23,42,.045) 1px,transparent 1px);background-size:24px 24px;background-position:-1px -1px}.sim-template-host .csim-module-grid{gap:14px}.sim-template-host .csim-control-stack,.sim-template-host .csim-visual-stack>.csim-card,.sim-template-host .csim-visual-stack>.csim-graph-card,.sim-template-host .csim-visual-stack>.csim-three-card,.sim-template-host .trig-control-panel,.sim-template-host .trig-stage-panel{border:1px solid color-mix(in srgb,var(--line) 86%,transparent)!important;border-radius:9px!important;background:#fffffff0!important;box-shadow:0 1px 2px #0f172a09!important}.sim-template-host .csim-control-stack{position:static;gap:14px;padding:14px}.sim-template-host .csim-control-stack .csim-card{padding-top:14px}.sim-template-host .csim-control-stack .csim-card:first-child{padding-top:0;border-top:0!important}.sim-template-host .csim-visual-stack>.csim-card,.sim-template-host .csim-visual-stack>.csim-graph-card,.sim-template-host .csim-visual-stack>.csim-three-card{padding:14px}.sim-template-host .inline-math{display:inline-block;max-width:100%;vertical-align:-.08em}.sim-template-host .display-math{display:block;max-width:100%;overflow-x:auto;overflow-y:hidden}.sim-template-host .display-math .katex-display{margin:.5rem 0;text-align:left}.csim-playbar-compact{grid-template-columns:auto minmax(0,1fr)}.sim-command-hint{justify-self:end;color:var(--ink-4);font-size:.72rem;line-height:1.4}.sim-step-dot-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;padding:0;margin:0;display:inline-flex;cursor:pointer}.sim-pedagogy{display:grid;gap:0;position:sticky;top:76px;max-height:calc(100dvh - 96px);overflow:auto;border-left:1px solid var(--line);padding-left:20px}.sim-pedagogy-card{display:grid;gap:12px;padding:16px 0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent}.sim-pedagogy-card:first-child{padding-top:0}.sim-pedagogy-head,.sim-pedagogy-toggle{display:flex;justify-content:space-between;gap:10px;align-items:center}.sim-pedagogy-toggle{width:100%;border:0;background:transparent;padding:0;font:inherit;cursor:pointer;text-align:left;color:inherit}.sim-pedagogy-toggle span,.sim-pedagogy-head span{color:var(--ink-4);font-size:.68rem}.sim-pedagogy-list{margin:0;padding-left:1rem;color:var(--ink-3);font-size:.76rem;line-height:1.45}.sim-pedagogy-prereq{margin:0;color:var(--ink-4);font-size:.72rem;line-height:1.4}.sim-pedagogy-field{display:grid;gap:5px;color:var(--ink-4);font-size:.72rem}.sim-pedagogy-field textarea,.sim-pedagogy-field input{border:1px solid var(--line);border-radius:8px;background:#fafafa;color:var(--ink-2);padding:7px 9px;resize:vertical;font-family:inherit;font-size:.76rem}.sim-checkpoint{display:grid;gap:8px;padding-top:8px;border-top:1px solid var(--line)}.sim-checkpoint:first-child{border-top:0;padding-top:0}.sim-checkpoint p{margin:0;color:var(--ink-2);font-size:.78rem;line-height:1.4}.sim-checkpoint-index{display:inline-block;margin-right:6px;color:var(--ink-4);font-size:.68rem;font-weight:700}.sim-checkpoint-choices{display:grid;gap:6px}.sim-checkpoint-choice{display:grid;grid-template-columns:auto 1fr;gap:8px;align-items:start;color:var(--ink-3);font-size:.74rem;cursor:pointer}.sim-checkpoint-actions{display:flex;align-items:center;gap:10px}.sim-check-ok{color:#047857;font-weight:700;font-size:.85rem}.sim-check-bad{color:#b91c1c;font-weight:700;font-size:.85rem}.sim-checkpoint-explain{margin:0;padding:8px 10px;border-radius:10px;background:#f8fafc;color:var(--ink-3);font-size:.84rem;line-height:1.4}.sim-verify-banner{display:grid;gap:2px;padding:10px 12px;border-radius:12px;border:1px solid var(--line);font-size:.84rem;line-height:1.4}.sim-verify-banner strong{font-size:.78rem;text-transform:uppercase;letter-spacing:.03em}.sim-verify-ok{background:#ecfdf5;border-color:#a7f3d0;color:#065f46}.sim-verify-approx{background:#fffbeb;border-color:#fde68a;color:#92400e}.sim-verify-error{background:#fef2f2;border-color:#fecaca;color:#991b1b}.trig-asymptote-hint{margin:0;color:var(--ink-4);font-size:.8rem;line-height:1.4}@media (max-width: 1100px){.sim-workspace-layout{grid-template-columns:1fr}.sim-pedagogy{position:static;grid-template-columns:repeat(3,minmax(0,1fr));max-height:none;overflow:visible;border-top:1px solid var(--line-2);border-left:0;padding-top:16px;padding-left:0;gap:18px}.sim-pedagogy-card,.sim-pedagogy-card:first-child{padding-top:0}.sim-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 900px){.sim-library-filters{grid-template-columns:1fr}.sim-library-count{justify-self:start;padding-left:0}.sim-workspace-meta{align-items:start;flex-direction:column;gap:14px}.sim-workspace-meta .sim-chip-row{justify-content:flex-start}}@media (max-width: 760px){.sim-card-grid,.sim-pedagogy,.sim-template-host .csim-module-grid,.sim-template-host .trig-core{grid-template-columns:1fr}.sim-template-host{padding:8px;border-radius:9px;background-size:20px 20px}.sim-template-host .csim-control-stack{padding:10px}.sim-command-hint{justify-self:start}}.sim-deep-grid{gap:14px}.sim-kv-list{display:grid;gap:6px}.sim-kv-row{display:flex;justify-content:space-between;gap:10px;align-items:baseline;padding:6px 0;border-bottom:1px solid var(--line);font-size:.86rem}.sim-kv-row:last-child{border-bottom:0}.sim-kv-row.highlight{background:#f0fdf4;margin:0 -8px;padding:8px;border-radius:10px;border-bottom:0}.sim-kv-row span{color:var(--ink-3)}.sim-kv-row strong{text-align:right;font-variant-numeric:tabular-nums}.sim-mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.78rem;font-weight:600}.sim-muted{margin:0;color:var(--ink-4);font-size:.86rem;line-height:1.45}.sim-eq-line{margin:8px 0 0;font-size:.9rem}.sim-bbt-scroll{overflow-x:auto}.sim-bbt-table{width:100%;border-collapse:collapse;font-size:.82rem}.sim-bbt-table th,.sim-bbt-table td{border:1px solid var(--line);padding:6px 8px;text-align:center;white-space:nowrap}.sim-bbt-table th{background:#f8fafc}.sim-bbt-table td.pos{color:#047857;font-weight:700}.sim-bbt-table td.neg{color:#b91c1c;font-weight:700}.sim-mono-list{margin:7px 0 0;padding-left:1.05rem;color:var(--ink-3);font-size:.76rem;line-height:1.5}.sim-rich-legend{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.sim-rich-legend-item{display:inline-flex;gap:6px;align-items:center;font-size:.8rem;color:var(--ink-3)}.sim-rich-swatch{width:16px;height:3px;border-radius:2px;background:#2563eb;display:inline-block}.sim-rich-swatch.csim-path-g,.sim-rich-swatch.is-dashed{background:#db2777}.sim-path-dashed{stroke-dasharray:7 5}.sim-secant{stroke:#f59e0b;stroke-width:2.2}.sim-secant.is-fading{stroke-opacity:.35}.sim-tangent{stroke:#dc2626;stroke-width:2.6}.sim-marker circle,.sim-marker-secondary circle,.sim-marker-max circle,.sim-marker-min circle{fill:#1d4ed8;stroke:#fff;stroke-width:1.5}.sim-marker-secondary circle{fill:#d97706}.sim-marker-max circle{fill:#dc2626}.sim-marker-min circle{fill:#059669}.sim-marker text,.sim-marker-secondary text,.sim-marker-max text,.sim-marker-min text{font-size:11px;fill:var(--ink-2)}.sim-svg-math-label{display:inline-flex;align-items:center;width:max-content;max-width:128px;min-height:20px;padding:1px 4px;border:1px solid rgba(226,232,240,.9);border-radius:4px;background:#ffffffe0;color:var(--ink-2);font-size:10px;line-height:1.1;white-space:nowrap}.sim-svg-math-label .katex{font-size:1em}.sim-band-up{fill:#10b9811f}.sim-band-down{fill:#ef44441a}.sim-band-flat{fill:#94a3b81f}.sim-band-default{fill:#3b82f614}.sim-vline,.sim-hline{stroke:#64748b;stroke-dasharray:4 3;stroke-width:1.2}.sim-asymp-v,.sim-asymp-h{stroke:#7c3aed;stroke-dasharray:5 4;stroke-width:1.4}.sim-family-curve{stroke:#94a3b8;stroke-width:1.2;opacity:.75}.sim-fieldset{border:1px solid var(--line);border-radius:12px;padding:10px;margin:0 0 10px;display:grid;gap:8px}.sim-fieldset legend{padding:0 6px;font-size:.8rem;font-weight:650;color:var(--ink-2)}.sim-vec3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.sim-toggle-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px 10px;margin:8px 0}.sim-preset-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.sim-three-wrap{height:min(460px,58vh);border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#f4f6f8}.sim-html-label{font-size:12px;font-weight:700;color:#0f172a;background:#ffffffd9;border:1px solid #e2e8f0;border-radius:6px;padding:1px 5px;white-space:nowrap}.sim-bayes-visuals{display:grid;grid-template-columns:1.1fr 1fr;gap:12px}.sim-tree-svg{width:100%;height:auto}.sim-tree-node{fill:#f8fafc;stroke:#cbd5e1;stroke-width:1.2}.sim-tree-node.risk{fill:#fff7ed;stroke:#fdba74}.sim-tree-node.pos{fill:#ecfdf5;stroke:#6ee7b7}.sim-tree-node.neg{fill:#fef2f2;stroke:#fca5a5}.sim-tree-node.warn{fill:#fffbeb;stroke:#fcd34d}.sim-tree-node.ok{fill:#eff6ff;stroke:#93c5fd}.sim-tree-label{font-size:11px;font-weight:700;fill:#0f172a}.sim-tree-sub{font-size:10px;fill:#475569}.sim-tree-edge{stroke:#94a3b8;stroke-width:1.4}.sim-tree-edge-label{font-size:10px;fill:#64748b}.sim-contingency{width:100%;border-collapse:collapse;font-size:.86rem}.sim-contingency th,.sim-contingency td{border:1px solid var(--line);padding:8px;text-align:center}.sim-contingency th{background:#f8fafc}.tone-pos{color:#047857}.tone-neg{color:#b91c1c}.sim-formula-block{display:grid;gap:8px;font-size:.9rem}.sim-bar-compare{display:flex;align-items:flex-end;justify-content:center;gap:28px;min-height:180px;padding:12px}.sim-bar{width:72px;border-radius:10px 10px 4px 4px;display:flex;align-items:flex-end;justify-content:center;padding:8px 4px;color:#fff;font-size:.72rem;font-weight:700;text-align:center}.sim-bar.tp{background:#059669}.sim-bar.fp{background:#dc2626}@media (max-width: 1100px){.sim-bayes-visuals{grid-template-columns:1fr}}.sim-data-input{width:100%;border:1px solid var(--line);border-radius:10px;background:#fafafa;color:var(--ink);font:inherit;font-size:.88rem;padding:8px 10px;resize:vertical;font-variant-numeric:tabular-nums}.sim-hist{display:flex;align-items:flex-end;gap:6px;min-height:200px;padding:12px 8px 0;overflow-x:auto}.sim-hist-col{flex:1 1 36px;min-width:28px;display:grid;justify-items:center;gap:4px;align-content:end}.sim-hist-bar{width:100%;max-width:42px;border-radius:8px 8px 2px 2px;background:linear-gradient(180deg,#3b82f6,#1d4ed8);min-height:2px;transition:height .15s ease}.sim-hist-label{font-size:.68rem;color:var(--ink-4)}.sim-hist-freq{font-size:.72rem;font-weight:700;color:var(--ink-2)}.sim-stat-markers{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px;font-size:.8rem;font-weight:650}.mk-mean{color:#dc2626}.mk-med{color:#7c3aed}.mk-q{color:#0369a1}.sim-dotplot{width:100%;height:auto;touch-action:none;-webkit-user-select:none;user-select:none}.sim-dot-axis{stroke:#94a3b8;stroke-width:1.5}.sim-dot{fill:#2563eb;stroke:#fff;stroke-width:1.2;cursor:grab}.sim-dot.outlier{fill:#dc2626}.sim-guide-mean{stroke:#dc2626;stroke-width:1.5;stroke-dasharray:4 3}.sim-guide-med{stroke:#7c3aed;stroke-width:1.5;stroke-dasharray:4 3}.sim-iqr-box{fill:#0ea5e92e;stroke:#0284c7;stroke-width:1}.sim-asymp-oblique{stroke:#7c3aed;stroke-width:2;stroke-dasharray:6 4}.sim-hole-line{stroke:#f59e0b;stroke-width:1.3;stroke-dasharray:2 4}.sim-marker-hole circle{fill:#fff;stroke:#d97706;stroke-width:2}.sim-row-active{background:#eff6ff;font-weight:650}.sim-trig-eq-layout{display:grid;grid-template-columns:minmax(220px,.85fr) minmax(0,1.2fr);gap:12px}.sim-unit-eq-svg{width:100%;max-width:280px;margin:0 auto;display:block}.sim-unit-circle{fill:#f8fafc;stroke:#334155;stroke-width:2}.sim-unit-axis{stroke:#94a3b8;stroke-width:1}.sim-unit-ref{stroke:#dc2626;stroke-width:1.5;stroke-dasharray:4 3}.sim-unit-ray{stroke:#2563eb;stroke-width:1.8}.sim-unit-point{fill:#1d4ed8;stroke:#fff;stroke-width:1.5}.sim-unit-lbl{font-size:11px;font-weight:700;fill:#0f172a}.sim-venn{width:100%;height:auto}.sim-venn-omega{fill:#f8fafc;stroke:#cbd5e1}.sim-venn-a{fill:#3b82f6;stroke:#1d4ed8}.sim-venn-b{fill:#f97316;stroke:#c2410c}.sim-venn-lbl{font-size:14px;font-weight:700;fill:#0f172a}@media (max-width: 900px){.sim-trig-eq-layout{grid-template-columns:1fr}}.sim-step-mission{display:flex;gap:18px;align-items:flex-start;justify-content:space-between;padding:12px 0 14px 16px;border:0;border-left:2px solid var(--ink);border-radius:0;background:transparent}.sim-step-mission.is-free{border-left-color:var(--up);background:transparent}.sim-step-mission-main{display:grid;gap:4px;min-width:0}.sim-step-mission-kicker{color:var(--ink-4);font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.sim-step-mission.is-free .sim-step-mission-kicker{color:var(--up)}.sim-step-mission strong{font-size:.98rem}.sim-step-mission p{margin:0;color:var(--ink-3);font-size:.88rem;line-height:1.45}.sim-free-mode-toggle{display:inline-flex;align-items:center;gap:8px;flex-shrink:0;font-size:.82rem;font-weight:650;color:var(--ink-2);cursor:pointer;white-space:nowrap}.sim-chip-trip{background:#eff6ff!important;border-color:#93c5fd!important;color:#1d4ed8!important}.is-step-locked{opacity:.48;pointer-events:none}.is-step-locked input,.is-step-locked select,.is-step-locked textarea,.is-step-locked button{cursor:not-allowed}.sim-checkpoint-unlock{font-style:normal;color:var(--ink-4);font-size:.78rem;font-weight:600}.sim-checkpoint-hint{margin-top:8px}@media (max-width: 700px){.sim-step-mission{flex-direction:column}}.admin-analytics-header{align-items:flex-end;gap:24px}.admin-analytics-heading{min-width:0;max-width:640px}.admin-analytics-heading .home-eyebrow{display:inline-block;margin-bottom:7px;color:#737373;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.admin-analytics-header h2{margin-bottom:5px}.admin-analytics-header p{margin:0;color:#737373;font-size:13px;line-height:1.5}.admin-analytics-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:nowrap;padding:5px;border:1px solid #e5e5e5;border-radius:9px;background:#fafafa}.admin-analytics-period{display:flex;align-items:center;gap:8px;margin-right:3px;padding-right:9px;border-right:1px solid #e5e5e5}.admin-analytics-period>span{color:#737373;font-size:9px;font-weight:750;letter-spacing:.045em;line-height:1.2;text-transform:uppercase;white-space:nowrap}.admin-analytics-actions select,.admin-analytics-actions .secondary-button{min-height:32px;border-radius:6px;font-size:12px}.admin-analytics-actions select{min-width:94px;min-height:32px;border:1px solid #d4d4d4;background:#fff;color:#171717;padding:0 28px 0 9px;font-size:12px;font-weight:650}.admin-export-dropdown{position:relative}.admin-export-trigger{display:inline-flex;align-items:center;gap:5px;padding:0 11px;min-height:32px;font-size:12px;font-weight:600;white-space:nowrap}.admin-export-menu{position:absolute;top:calc(100% + 5px);right:0;min-width:170px;background:#fff;border:1px solid #e5e5e5;border-radius:8px;box-shadow:0 4px 16px #0000001a,0 1px 4px #0000000f;padding:4px;z-index:50;animation:admin-dropdown-in .12s ease}@keyframes admin-dropdown-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.admin-export-item{display:flex;align-items:center;gap:8px;padding:8px 11px;font-size:12.5px;font-weight:500;color:#262626;border-radius:5px;text-decoration:none;cursor:pointer;transition:background .1s}.admin-export-item:hover{background:#f5f5f5;color:#171717}.admin-export-item svg{opacity:.6;flex-shrink:0}.admin-refresh-btn{display:inline-flex;align-items:center;justify-content:center;padding:0;width:32px;min-height:32px;flex-shrink:0}.admin-refresh-btn svg{display:block}@keyframes admin-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.admin-analytics-dashboard{--analytics-accent: #171717;--analytics-success: #166534;--analytics-danger: #991b1b;--analytics-warning: #854d0e;gap:16px}.admin-analytics-function-nav{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));overflow:hidden;border:1px solid #d4d4d4;border-radius:var(--radius-sm);background:#fff}.admin-analytics-function-nav a{display:grid;min-width:0;gap:3px;padding:13px 12px;border-right:1px solid #e5e5e5;color:#171717;text-decoration:none}.admin-analytics-function-nav a:last-child{border-right:0}.admin-analytics-function-nav a:hover,.admin-analytics-function-nav a:focus-visible{background:#f5f5f5}.admin-analytics-function-nav a:focus-visible{outline:2px solid #171717;outline-offset:-2px}.admin-analytics-function-nav span{color:#a3a3a3;font-size:9px;font-weight:750;letter-spacing:.06em}.admin-analytics-function-nav strong{overflow-wrap:anywhere;font-size:12px;line-height:1.25}.admin-analytics-function-nav small{overflow-wrap:anywhere;color:#737373;font-size:10px;line-height:1.35}.admin-analytics-anchor{scroll-margin-top:80px}.admin-analytics-dashboard>.admin-panel,.admin-analytics-grid .admin-panel{min-width:0;padding:18px}.admin-analytics-dashboard .admin-panel-title-row{align-items:flex-start;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #e5e5e5}.admin-analytics-dashboard .admin-panel-title-row h3{margin:0 0 4px;color:#171717;font-size:15px}.admin-analytics-dashboard .admin-panel-title-row p{color:#737373;line-height:1.45}.admin-analytics-scope{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:11px 14px;border:1px solid #d4d4d4;border-radius:var(--radius-sm);background:#fafafa;color:#404040;font-size:12px;line-height:1.5}.admin-analytics-scope>div{display:flex;align-items:baseline;gap:8px;min-width:0}.admin-analytics-scope strong{flex-shrink:0;color:#171717}.admin-analytics-scope span{color:#525252}.admin-analytics-scope small{flex-shrink:0;color:#737373;white-space:nowrap}.admin-analytics-insights,.admin-analytics-comparison{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.admin-analytics-insight,.admin-analytics-comparison article{min-width:0;border:1px solid #e5e5e5;border-radius:var(--radius-sm);background:#fafafa;padding:14px}.admin-analytics-insight{box-shadow:inset 3px 0 #a3a3a3}.admin-analytics-insight.is-accent{box-shadow:inset 3px 0 0 var(--analytics-accent)}.admin-analytics-insight.is-danger{box-shadow:inset 3px 0 0 var(--analytics-danger)}.admin-analytics-insight.is-warning{box-shadow:inset 3px 0 0 var(--analytics-warning)}.admin-analytics-insight span,.admin-analytics-comparison span{display:block;color:#737373;font-size:11px;font-weight:700;letter-spacing:.02em}.admin-analytics-insight strong,.admin-analytics-comparison strong{display:block;margin-top:7px;color:#171717;font-size:20px;line-height:1.2;overflow-wrap:anywhere}.admin-analytics-insight p{margin:6px 0 0;color:#525252;font-size:12px;line-height:1.45}.admin-analytics-comparison article{display:grid;gap:5px}.admin-analytics-comparison small{color:#737373;font-weight:650}.admin-analytics-comparison small.is-positive{color:var(--analytics-success)}.admin-analytics-comparison small.is-negative{color:var(--analytics-danger)}.admin-analytics-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}.admin-analytics-grid>.admin-panel-full{grid-column:1 / -1}.admin-analytics-grid .admin-panel{min-width:0;padding:18px}.admin-analytics-panel-state{min-height:100px;display:grid;place-content:center;color:#737373;text-align:center}.admin-analytics-panel-state.is-error{border-color:#fecaca;background:#fff7f7;color:#991b1b}.admin-analytics-panel-state p{margin:5px 0 0}.admin-analytics-trend{min-height:240px}.admin-analytics-trend svg{display:block;width:100%;height:220px;overflow:visible}.admin-analytics-trend .grid-line{stroke:#e5e5e5;stroke-width:1;vector-effect:non-scaling-stroke}.admin-analytics-trend polyline{fill:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.admin-analytics-trend .trend-users{stroke:var(--analytics-accent)}.admin-analytics-trend .trend-completed{stroke:var(--analytics-success)}.admin-analytics-trend .trend-errors{stroke:var(--analytics-danger)}.admin-analytics-trend .trend-users-dot,.admin-analytics-trend .trend-completed-dot,.admin-analytics-trend .trend-errors-dot{fill:#fff;stroke-width:2}.admin-analytics-trend .trend-users-dot{stroke:var(--analytics-accent)}.admin-analytics-trend .trend-completed-dot{stroke:var(--analytics-success)}.admin-analytics-trend .trend-errors-dot{stroke:var(--analytics-danger)}.admin-analytics-single-day{display:grid;grid-template-columns:minmax(180px,.8fr) minmax(0,1.7fr);align-items:stretch;gap:12px;padding-top:8px}.admin-analytics-single-day>div,.admin-analytics-single-day dl>div{border:1px solid #e5e5e5;border-radius:var(--radius-sm);background:#fafafa}.admin-analytics-single-day>div{display:grid;align-content:center;gap:4px;padding:16px}.admin-analytics-single-day>div strong{color:#171717;font-size:16px}.admin-analytics-single-day>div span,.admin-analytics-single-day dt{color:#737373;font-size:11px}.admin-analytics-single-day dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0}.admin-analytics-single-day dl>div{display:grid;align-content:center;gap:7px;padding:14px}.admin-analytics-single-day dt,.admin-analytics-single-day dd{margin:0}.admin-analytics-single-day dd{color:#171717;font-size:24px;font-weight:700;font-variant-numeric:tabular-nums}.admin-analytics-legend{display:flex;align-items:center;gap:18px;flex-wrap:wrap;color:#525252;font-size:12px;font-weight:650}.admin-analytics-legend span:before{content:"";display:inline-block;width:18px;height:3px;margin-right:6px;vertical-align:middle;border-radius:999px;background:#64748b}.admin-analytics-legend .is-users:before{background:var(--analytics-accent)}.admin-analytics-legend .is-completed:before{background:var(--analytics-success)}.admin-analytics-legend .is-errors:before{background:var(--analytics-danger)}.admin-analytics-legend small{margin-left:auto}.admin-horizontal-bars,.admin-outcome-list{display:grid;gap:13px}.admin-horizontal-bar{display:grid;grid-template-columns:minmax(140px,.9fr) minmax(120px,1fr) 70px;align-items:center;gap:12px}.admin-horizontal-bar div,.admin-outcome-list article>div:first-child{min-width:0}.admin-horizontal-bar strong,.admin-horizontal-bar span{display:block}.admin-horizontal-bar span,.admin-horizontal-bar small,.admin-outcome-list small{color:#737373;font-size:11px}.admin-horizontal-bar i,.admin-outcome-bar{display:flex;height:9px;overflow:hidden;border-radius:999px;background:#e5e5e5}.admin-horizontal-bar i b{min-width:2px;border-radius:inherit;background:var(--analytics-accent)}.admin-horizontal-bar small{text-align:right}.admin-outcome-list article{display:grid;gap:6px}.admin-outcome-list article>div:first-child{display:flex;justify-content:space-between;gap:12px}.admin-outcome-list article>div:first-child span{color:#525252;font-size:12px;font-weight:700}.admin-outcome-bar .is-success{background:var(--analytics-success)}.admin-outcome-bar .is-failed{background:var(--analytics-danger)}.admin-analytics-table{display:grid;overflow-x:auto}.admin-analytics-table>div{display:grid;grid-template-columns:minmax(120px,1.4fr) .55fr .65fr minmax(110px,.8fr);gap:10px;align-items:center;min-width:480px;padding:9px 4px;border-bottom:1px solid #e5e5e5;color:#525252;font-size:12px}.admin-analytics-table>div.is-header{color:#737373;font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:.03em}.admin-analytics-table strong{color:#171717;overflow-wrap:anywhere}.admin-analytics-table .is-danger{color:var(--analytics-danger);font-weight:750}.admin-analytics-subtitle,.admin-ai-breakdown h4{margin:20px 0 10px;color:#334155;font-size:13px}.admin-analytics-mini-metrics{margin-top:12px}.admin-analytics-mini-metrics .admin-metric-card{padding:12px 12px 12px 15px}.admin-analytics-mini-metrics .admin-metric-card strong{font-size:21px}.admin-funnel{display:grid;gap:12px;margin-top:4px}.admin-funnel-step{display:grid;grid-template-columns:minmax(150px,.75fr) minmax(140px,1fr);align-items:center;gap:14px}.admin-funnel-step>div{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:2px 10px}.admin-funnel-step span{color:#404040;font-size:12px;font-weight:650}.admin-funnel-step strong{color:#171717;font-size:18px;font-variant-numeric:tabular-nums}.admin-funnel-step small{grid-column:1 / -1;color:#737373;font-size:10px}.admin-funnel-step>i,.admin-count-row>i{display:block;height:7px;overflow:hidden;border-radius:999px;background:#e5e5e5}.admin-funnel-step>i b,.admin-count-row>i b{display:block;height:100%;border-radius:inherit;background:var(--analytics-accent)}.admin-analytics-diagnostics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.admin-analytics-diagnostics>div{min-width:0;padding:12px;border:1px solid #e5e5e5;border-radius:var(--radius-sm);background:#fafafa}.admin-analytics-diagnostics h4{margin:0 0 8px;color:#334155;font-size:12px}.admin-analytics-diagnostics p{display:flex;justify-content:space-between;gap:12px;margin:0;padding:7px 0;border-bottom:1px solid #e2e8f0;color:#475569;font-size:12px}.admin-analytics-diagnostics p:last-of-type{border-bottom:0}.admin-count-row{display:grid;grid-template-columns:minmax(0,1fr) 50px;align-items:center;gap:3px 8px;padding:7px 0;border-bottom:1px solid #e2e8f0}.admin-count-row:last-of-type{border-bottom:0}.admin-count-row p{grid-column:1 / -1;padding:0;border:0}.admin-count-row small{color:#737373;font-size:9px;text-align:right;white-space:nowrap}.admin-analytics-diagnostics p span{overflow-wrap:anywhere}.admin-analytics-diagnostics p strong{color:#0f172a}.admin-analytics-empty{margin:16px 0;padding:18px;border:1px dashed #d4d4d4;border-radius:var(--radius-sm);background:#fafafa;color:#737373;text-align:center;font-size:13px}.admin-analytics-source-error,.admin-analytics-footnote{margin:0;padding:10px 12px;border-radius:8px;color:#64748b;background:#f8fafc;font-size:12px}.admin-analytics-source-error{color:#991b1b;background:#fff7f7}@media (max-width: 1100px){.admin-analytics-function-nav{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-analytics-function-nav a:nth-child(3n){border-right:0}.admin-analytics-function-nav a:nth-child(-n+3){border-bottom:1px solid #e5e5e5}.admin-analytics-insights,.admin-analytics-comparison{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-analytics-grid{grid-template-columns:1fr}.admin-analytics-grid>.admin-panel-full{grid-column:auto}}@media (max-width: 700px){.admin-analytics-header{align-items:stretch}.admin-analytics-actions{display:grid;grid-template-columns:minmax(0,1fr) 34px;width:100%}.admin-analytics-period{grid-column:1 / -1;justify-content:space-between;margin:0 0 1px;padding:0 0 6px;border-right:0;border-bottom:1px solid #e5e5e5}.admin-analytics-actions select{width:auto}.admin-export-dropdown,.admin-export-trigger{width:100%}.admin-export-trigger{justify-content:center}.admin-refresh-btn{width:34px;min-height:32px}.admin-export-menu{right:auto;left:0;min-width:min(220px,calc(100vw - 48px))}.admin-analytics-function-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-analytics-function-nav a,.admin-analytics-function-nav a:nth-child(3n){border-right:1px solid #e5e5e5;border-bottom:1px solid #e5e5e5}.admin-analytics-function-nav a:nth-child(2n){border-right:0}.admin-analytics-function-nav a:nth-last-child(-n+2){border-bottom:0}.admin-analytics-scope,.admin-analytics-scope>div{align-items:flex-start;flex-direction:column;gap:3px}.admin-analytics-scope small{white-space:normal}.admin-analytics-insights,.admin-analytics-comparison,.admin-analytics-diagnostics,.admin-analytics-single-day,.admin-analytics-single-day dl{grid-template-columns:1fr}.admin-funnel-step{grid-template-columns:1fr;gap:6px}.admin-horizontal-bar{grid-template-columns:1fr 64px}.admin-horizontal-bar i{grid-column:1 / -1;grid-row:2}.admin-horizontal-bar small{grid-column:2;grid-row:1}.admin-analytics-legend small{width:100%;margin-left:0}}.fa2-persistence{display:grid;gap:10px;padding:12px;border:1px solid var(--line-2);border-radius:12px;background:var(--surface)}.fa2-persistence-row{display:flex;flex-wrap:wrap;align-items:end;gap:10px}.fa2-persistence label{display:grid;gap:4px;font-size:.82rem;font-weight:700}.fa2-persistence input,.fa2-persistence select{min-height:36px;border:1px solid var(--line-2);border-radius:8px;padding:6px 9px;background:var(--surface);color:var(--text)}.fa2-tags-input{min-width:min(260px,100%);flex:1}.fa2-pin-toggle{display:flex!important;align-items:center;min-height:36px}.fa2-pin-toggle input{min-height:auto}.fa2-curriculum-chapter,.fa2-persistence-message{font-size:.85rem;color:var(--text-secondary)}.fa2-ecosystem-row{padding-top:10px;border-top:1px solid var(--line-2)}.fa2-share-output{display:block;overflow-wrap:anywhere;padding:8px 10px;border-radius:8px;background:var(--surface-subtle, #f8fafc);color:var(--text-secondary);font-size:.78rem}.fa2-history-drawer{display:grid;gap:10px;max-height:280px;overflow:auto;border-top:1px solid var(--line-2);padding-top:10px}.fa2-history-drawer ul{display:grid;gap:6px;margin:0;padding:0;list-style:none}.fa2-history-drawer button{display:grid;width:100%;gap:3px;padding:9px;border:1px solid var(--line-2);border-radius:8px;background:var(--surface);color:var(--text);text-align:left;cursor:pointer}.fa2-history-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px}.fa2-history-item>.sp-btn-secondary{width:auto;align-content:center}.fa2-history-drawer button span{color:var(--text-secondary);font-size:.78rem}.fa2-curriculum-summary{display:grid;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid var(--line-2);font-size:.85rem}.fa2-curriculum-summary ul{margin:4px 0 0;padding-left:20px}@media print{.fa2-control-panel,.fa2-persistence,.fa2-result-tabs>.fa2-tab-list,.fa2-print-button,.fa2-graph-toolbar,.bbt-actions,.bbt-modal{display:none!important}.fa2-workspace,.fa2-result-shell{display:block;height:auto;overflow:visible}.fa2-results-panel,.fa2-analysis-column,.fa2-graph-column{max-height:none;overflow:visible}.fa2-section,.fa2-quick-card{break-inside:avoid}}.fa2-panel{gap:12px;font-family:inherit}.fa2-panel button,.fa2-panel input,.fa2-panel select,.fa2-panel textarea,.fa2-panel .fa2-mini-input,.fa2-panel .fa2-geogebra-point-popover strong,.fa2-panel .fa2-graph-trace text,.fa2-panel .fa2-graph-popover-coords,.fa2-panel .fa2-graph-tick{font-family:inherit}.fa2-control-panel{display:grid;gap:12px;border:0;border-bottom:1px solid var(--line);padding:0 0 14px}.fa2-sticky-controls{grid-template-columns:minmax(210px,.28fr) minmax(0,1fr);align-items:center;gap:clamp(16px,2vw,28px);border:0;padding:0}.fa2-sticky-controls>.fa2-header{min-width:0}.fa2-sticky-controls>.fa2-formula-card{min-width:0}.fa2-advanced-panel{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;padding-top:2px}.fa2-advanced-panel .fa2-control-card{padding-bottom:0}.fa2-results-panel{min-height:420px}.fa2-actions{position:relative;z-index:20;display:grid;gap:6px;margin-top:4px;border-top:1px solid var(--line);padding-top:10px}.fa2-actions-disclosure>summary,.fa2-tools-disclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;list-style:none;color:var(--ink-3);cursor:pointer;font-size:.82rem;font-weight:600}.fa2-actions-disclosure>summary::-webkit-details-marker,.fa2-tools-disclosure>summary::-webkit-details-marker{display:none}.fa2-actions-disclosure:not([open])>.fa2-action-bar,.fa2-tools-disclosure:not([open])>.fa2-tools-workbench,.fa2-copy-values:not([open])>div{display:none}.fa2-actions-disclosure>summary small,.fa2-tools-disclosure>summary small{color:var(--ink-4);font-size:.72rem;font-weight:400}.fa2-actions-disclosure>summary:focus-visible,.fa2-tools-disclosure>summary:focus-visible{border-radius:6px;outline:2px solid var(--ink);outline-offset:4px}.fa2-actions-disclosure[open]>summary,.fa2-tools-disclosure[open]>summary{color:var(--ink)}.fa2-action-bar{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding-top:10px}.fa2-action-menu{position:relative}.fa2-action-menu>summary,.fa2-graph-settings>summary{display:inline-flex;align-items:center;min-height:32px;border-radius:8px;padding:6px 10px;background:var(--paper);color:var(--ink-2);font-size:.8rem;font-weight:600;cursor:pointer;list-style:none}.fa2-action-menu>summary::-webkit-details-marker,.fa2-graph-settings>summary::-webkit-details-marker{display:none}.fa2-action-menu[open]>summary,.fa2-graph-settings[open]>summary{background:var(--surface-2)}.fa2-action-popover{position:absolute;top:calc(100% + 6px);left:0;z-index:30;width:min(340px,calc(100vw - 32px));max-height:min(420px,70vh);overflow:auto;border:1px solid var(--line-2);border-radius:12px;padding:10px;background:var(--paper);box-shadow:0 18px 48px #0f172a29}.fa2-action-menu-end .fa2-action-popover{right:0;left:auto}.fa2-action-list,.fa2-action-form,.fa2-history-popover,.fa2-history-popover ul{display:grid;gap:8px}.fa2-action-list button,.fa2-history-popover button{width:100%;border:0;border-radius:8px;padding:9px 10px;background:var(--surface);color:var(--ink);text-align:left;cursor:pointer}.fa2-action-form label,.fa2-history-popover label{display:grid;gap:5px;color:var(--ink-3);font-size:.76rem;font-weight:800}.fa2-action-form input,.fa2-action-form select,.fa2-history-popover input{width:100%;min-height:36px;border:1px solid var(--line-2);border-radius:8px;padding:7px 9px;background:var(--paper);color:var(--ink)}.fa2-history-popover ul{margin:0;padding:0;list-style:none}.fa2-history-popover p{margin:4px;color:var(--ink-4);font-size:.8rem}.fa2-action-message,.fa2-tool-status,.fa2-empty-note{margin:0;color:var(--ink-4);font-size:.78rem}.fa2-tools-disclosure{border-top:1px solid var(--line);padding-top:12px}.fa2-tools-workbench{padding-top:12px}.fa2-tool-error{border-left:2px solid #d97706;padding:7px 10px;color:#78350f;background:#fffbeb;font-size:.78rem;line-height:1.45}.fa2-summary-math-list,.fa2-summary-math-list>div{display:grid;gap:5px}.fa2-summary-math-list>div{grid-template-columns:minmax(72px,auto) minmax(0,1fr);align-items:baseline}.fa2-summary-math-list small{color:var(--ink-4);font-size:.72rem}.fa2-verification-details,.fa2-evidence-list,.fa2-tangent-result,.fa2-interval-overview,.fa2-extreme-result,.fa2-conclusion,.fa2-pedagogical-steps{display:grid;gap:8px}.fa2-interval-overview,.fa2-extreme-result,.fa2-conclusion{border:1px solid var(--line);border-radius:10px;padding:10px 12px;background:var(--paper)}.fa2-interval-overview{justify-items:center;overflow-x:auto}.fa2-conclusion{border-color:var(--line-2);background:var(--surface);line-height:1.5}.fa2-evidence-list{margin:0}.fa2-evidence-list>div{display:grid;grid-template-columns:minmax(100px,.35fr) minmax(0,1fr);gap:10px}.fa2-evidence-list dt{color:var(--ink-4)}.fa2-evidence-list dd{margin:0}.fa2-pedagogical-steps ol{margin:0;padding-left:20px}.fa2-tangent-list,.fa2-parameter-cases,.fa2-root-summary{margin-top:12px}.fa2-parameter-cases,.fa2-root-summary{flex-direction:column;align-items:stretch}.fa2-root-summary{align-items:flex-start}.fa2-result-disclosure,.fa2-warning-summary{border-top:1px solid var(--line);padding-top:10px}.fa2-result-disclosure>summary,.fa2-warning-summary>summary{color:var(--ink-3);font-size:.8rem;font-weight:600;cursor:pointer}.fa2-result-disclosure[open]>summary,.fa2-warning-summary[open]>summary{margin-bottom:10px;color:var(--ink)}.fa2-warning-summary{color:#92400e}.fa2-warning-summary ul{margin:8px 0 0;padding-left:20px;font-size:.8rem;line-height:1.5}.fa2-graph-primary-toolbar{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.fa2-graph-settings{position:relative;margin-left:auto}.fa2-graph-settings-panel{position:absolute;top:calc(100% + 6px);right:0;z-index:15;display:grid;gap:12px;width:min(460px,calc(100vw - 32px));border:1px solid var(--line-2);border-radius:12px;padding:12px;background:var(--paper);box-shadow:0 18px 48px #0f172a29}@media (min-width: 1101px){.fa2-result-shell{grid-template-columns:minmax(0,1.1fr) minmax(380px,.9fr);gap:clamp(18px,2vw,28px)}}@media (max-width: 900px){.fa2-sticky-controls,.fa2-advanced-panel{grid-template-columns:1fr}.fa2-sticky-controls{align-items:stretch}.fa2-action-menu-end .fa2-action-popover{right:auto;left:0}}@media (max-width: 560px){.fa2-formula-row-control{grid-template-columns:minmax(0,1fr) auto}.fa2-header-sub,.fa2-expression-preview>span:first-child{display:none}.fa2-tool-strip,.fa2-evidence-list>div,.fa2-summary-math-list>div{grid-template-columns:1fr}.fa2-actions-disclosure>summary small,.fa2-tools-disclosure>summary small{display:none}.fa2-action-bar{overflow-x:auto;flex-wrap:nowrap;padding-bottom:2px}.fa2-action-bar>*,.fa2-action-menu>summary{flex:0 0 auto}.fa2-graph-settings{margin-left:0}.fa2-graph-settings-panel{right:auto;left:0}}@media print{.fa2-actions,.fa2-graph-primary-toolbar{display:none!important}}.scene-workspace-v3{display:grid;gap:18px}.scene-editor-v3{display:grid;gap:16px}.scene-editor-v3-toggle,.scene-editor-v3-history{display:flex;align-items:center;gap:10px}.scene-editor-v3-toggle{justify-content:space-between;width:100%;border:0;padding:0;color:var(--ink);background:transparent;text-align:left}.scene-editor-v3-toggle>span:first-child,.scene-editor-v3-parameters{display:grid;gap:8px}.scene-editor-v3-content{display:grid;gap:16px}.scene-editor-v3-placement{grid-template-columns:repeat(2,minmax(0,1fr))}.scene-inspector-v3,.scene-inspector-v3-list{display:grid;gap:10px}.scene-inspector-v3-object,.scene-inspector-v3-verification,.scene-inspector-v3-issue{display:grid;gap:10px;border:1px solid var(--line);border-radius:10px;padding:12px}.scene-inspector-v3-object.selected{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}.scene-inspector-v3-object-main{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;border:0;padding:0;color:var(--ink);background:transparent;text-align:left}.scene-inspector-v3-object-main span,.scene-inspector-v3-issue{display:grid;gap:3px}.scene-inspector-v3-object-main small,.scene-inspector-v3-issue small{color:var(--ink-4)}.scene-inspector-v3-object-main code{overflow:hidden;max-width:48%;color:var(--ink-4);text-overflow:ellipsis}.scene-inspector-v3 dl,.scene-inspector-v3 dl div,.scene-inspector-v3-actions,.scene-inspector-v3-proposal div{display:flex;gap:8px}.scene-inspector-v3 dl{flex-wrap:wrap;margin:0}.scene-inspector-v3 dt{color:var(--ink-4)}.scene-inspector-v3 dd{margin:0}.scene-inspector-v3 pre{overflow:auto;max-height:220px;margin:8px 0 0;font-size:.78rem}.scene-inspector-v3-verification.status-failed,.scene-inspector-v3-issue.severity-error{border-color:#dc2626}@media (max-width: 640px){.scene-editor-v3-history{align-items:stretch;flex-direction:column}.scene-editor-v3-placement{grid-template-columns:1fr}}html,body,#root{min-width:320px;max-width:100%}html,body{overflow-x:clip}img,svg,canvas,iframe{max-width:100%}.global-header,.app-shell,.app-footer,.workspace,.result-area,.render-stage,.product-page-card,.admin-console,.csim-page,.gglab-page,.pdf-word-page,.algebra-solver-page,.analyzer-standalone-wrap{min-width:0}.header-left{min-width:0;border:0;padding:0;color:inherit;background:transparent;text-align:left}.header-left:hover{background:transparent;transform:none}.header-titles,.header-title,.nav-item-label{min-width:0}.nav-item-label{white-space:nowrap}@media (max-width: 900px){.mobile-renderer-warning{position:static;display:block;padding:10px max(14px,env(safe-area-inset-right)) 0 max(14px,env(safe-area-inset-left));background:transparent}.mobile-renderer-warning-card{display:flex;align-items:center;justify-content:space-between;gap:12px;width:min(100%,860px);margin:0 auto;border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:var(--paper)}.mobile-renderer-warning-card h2,.mobile-renderer-warning-card p{margin:0}.mobile-renderer-warning-card h2{font-size:.86rem}.mobile-renderer-warning-card p{margin-top:2px;color:var(--ink-4);font-size:.78rem;line-height:1.35}.mobile-renderer-warning-card button{flex:0 0 auto;min-height:40px}.global-header{display:grid;grid-template-columns:minmax(0,1fr) auto;padding-right:max(12px,env(safe-area-inset-right));padding-left:max(12px,env(safe-area-inset-left))}.header-nav{min-width:0;overflow:visible}.app-shell{width:100%;padding:14px max(14px,env(safe-area-inset-right)) max(18px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left))}.workspace{gap:22px}.workspace-sidebar{overflow:visible;padding-right:0;border-right:0}.workspace-sidebar-tabs{position:sticky;top:56px;z-index:30;background:#fbfbfaf7}.workspace-sidebar-tabs button,.ocr-action-row button,.submit-button,.secondary-button,.primary-button,.field-label select,.field-label input{min-height:44px}.problem-form textarea{min-height:clamp(190px,36dvh,320px);max-height:52dvh}.ocr-empty-hint{right:64px;line-height:1.35}.submit-button-sticky{position:static;width:100%}.mobile-scroll-notice{position:sticky;bottom:max(10px,env(safe-area-inset-bottom));z-index:24}.three-view,.geogebra-view{height:clamp(360px,62dvh,620px);min-height:360px}.viewer-header-row,.viewer-controls,.geogebra-status,.geogebra-actions,.render-review-chip,.page-title-row,.admin-page-header,.admin-detail-header,.admin-toolbar,.sim-workspace-meta{align-items:stretch}.viewer-header-row,.render-review-chip{flex-direction:column}.viewer-status-badges{justify-content:flex-start;margin-left:0}.render-review-chip .secondary-button{width:100%}.scene-editor-layer{padding-top:calc(56px + env(safe-area-inset-top));padding-bottom:env(safe-area-inset-bottom)}.scene-editor-drawer{max-height:calc(100dvh - 56px - env(safe-area-inset-top))}.notification-stack{top:calc(64px + env(safe-area-inset-top));right:max(10px,env(safe-area-inset-right));left:max(10px,env(safe-area-inset-left));width:auto}.chat-panel{width:min(390px,calc(100vw - 24px));height:min(620px,calc(100dvh - 82px - env(safe-area-inset-top) - env(safe-area-inset-bottom)))}.footer-top,.footer-bottom{padding-right:max(18px,env(safe-area-inset-right));padding-left:max(18px,env(safe-area-inset-left))}.guide-hero h2,.about-hero h2,.home-hero-copy h2,.pdf-word-intro h2{overflow-wrap:anywhere;text-wrap:balance}.guide-page p,.about-page p,.home-page p,.product-page-card p{text-wrap:pretty}.admin-table,.admin-analytics-table,.bbt-v2-scroll,.sim-bbt-scroll,.math-table-wrap{max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain}}@media (max-width: 640px){.global-header{height:54px;gap:6px}.header-left{gap:8px}.header-logo{flex-basis:26px;width:26px;height:26px}.header-title{max-width:min(42vw,168px);font-size:.88rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-nav .nav-item{min-width:44px;padding:0 10px;justify-content:center}.header-nav .nav-item-label,.header-nav .nav-item>svg:last-child{display:none}.account-menu-trigger{min-width:44px;padding:0 6px}.account-menu-trigger>svg{display:none}.tools-dropdown{top:62px;left:max(10px,env(safe-area-inset-left));right:max(10px,env(safe-area-inset-right));max-height:calc(100dvh - 74px - env(safe-area-inset-bottom))}.app-shell{padding-top:10px}.workspace-sidebar-tabs{top:54px}.workspace-sidebar-tabs button{padding-inline:4px;font-size:.8rem}.problem-form{gap:12px}.panel{padding-top:14px}.ocr-action-row{grid-template-columns:1fr 1fr}.ocr-empty-hint{display:none}textarea,input,select{font-size:16px}.three-view,.geogebra-view,.gglab-workspace{height:clamp(320px,56dvh,520px);min-height:320px}.viewer-header{padding-inline:10px}.viewer-controls,.geogebra-status,.geogebra-actions{gap:8px}.viewer-controls>*,.geogebra-actions>*{max-width:100%}.scene-editor-drawer .tool-mode-grid,.scene-editor-v3-placement,.scene-inspector-v3-actions{grid-template-columns:1fr}.chat-bubble{right:max(10px,env(safe-area-inset-right))}.chat-bubble.is-open{right:12px;bottom:max(8px,env(safe-area-inset-bottom))!important;left:12px;align-items:stretch}.chat-bubble.is-open .chat-panel{width:100%}.chat-bubble.is-open .chat-bubble-button{align-self:flex-end}.pdf-word-modal-backdrop{align-items:end;padding:0}.pdf-word-modal{width:100%;max-height:calc(100dvh - env(safe-area-inset-top));overflow-y:auto;border-radius:18px 18px 0 0;padding-bottom:max(20px,env(safe-area-inset-bottom))}.home-hero-copy,.home-hero-copy h2,.home-hero-copy p,.home-actions,.home-visual-card{width:100%;max-width:100%}.guide-hero,.about-hero{padding-left:14px}.guide-hero h2,.about-hero h2{font-size:clamp(1.75rem,9vw,2.2rem)}.account-stat-grid,.footer-nav,.admin-metric-grid,.admin-grid,.sim-card-grid,.sim-pedagogy{grid-template-columns:1fr}}@media (max-width: 900px){.algebra-workspace,.algebra-result-grid,.algebra-input-grid,.algebra-advanced-grid,.pdf-word-workspace,.pdf-word-field-grid,.pdf-word-option-toggles,.pdf-word-result-summary,.gglab-body,.sim-workspace-layout{grid-template-columns:minmax(0,1fr)}.algebra-solver-page,.algebra-workspace,.algebra-result-wrap,.pdf-word-shell,.gglab-body,.gglab-main,.sim-workspace-main,.sim-template-host{min-width:0;max-width:100%}.algebra-answer-katex,.algebra-formula-line,.algebra-step-card,.katex-display,.pdf-word-terminal,.pdf-word-artifact-list,.gglab-tabs,.sim-breadcrumb,.csim-playbar-actions,.csim-progress-dots{max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain}.gglab-sidebar{max-height:none;overflow:visible}.gglab-tabs,.sim-breadcrumb,.csim-playbar-actions{flex-wrap:nowrap;scrollbar-width:thin}.gglab-tabs>*,.sim-breadcrumb>*,.csim-playbar-actions>*{flex:0 0 auto}.pdf-word-shell{width:100%;padding-inline:0}.pdf-word-dropzone{min-height:180px}.pdf-word-preview-panel iframe,.pdf-word-artifact-preview iframe{min-height:min(58dvh,520px)}}@media (max-width: 640px){.algebra-input-panel,.algebra-result-card,.algebra-step-card,.sim-template-host,.pdf-word-dropzone,.pdf-word-options-column{padding-right:10px;padding-left:10px}.algebra-input-actions,.algebra-result-actions,.pdf-word-preview-actions,.pdf-word-downloads,.csim-playbar,.csim-playbar-status{align-items:stretch;flex-direction:column}.algebra-input-actions>*,.algebra-result-actions>*,.pdf-word-preview-actions>*,.pdf-word-downloads>*{width:100%}.sim-workspace-meta h1{overflow-wrap:anywhere;text-wrap:balance}.sim-template-host canvas,.sim-template-host svg{max-height:58dvh}}@media (max-width: 900px){.home-page,.guide-page,.about-page,.legal-page,.feedback-page,.login-page,.account-page,.settings-page,.admin-console,.admin-shell,.admin-main,.admin-content{min-width:0;max-width:100%}.home-hero,.about-hero-row,.guide-grid,.guide-columns,.guide-renderer-grid,.about-grid,.about-steps,.about-capabilities,.about-audience,.login-card,.account-hero,.account-layout,.account-form-grid,.settings-hero,.admin-dashboard,.admin-chat-layout,.admin-provider-config .admin-field-grid,.admin-field-grid.admin-ocr-grid,.admin-provider-config .admin-field-grid.admin-field-grid-router9{grid-template-columns:minmax(0,1fr)}.admin-sidebar{position:static;width:100%;height:auto;max-height:none;overflow:visible}.admin-sidebar-nav,.account-tabs,.admin-tabs{max-width:100%;overflow-x:auto;flex-wrap:nowrap;overscroll-behavior-inline:contain}.admin-sidebar-nav>*,.account-tabs>*,.admin-tabs>*{flex:0 0 auto}.admin-table,.admin-analytics-table,.admin-plan-grid,.admin-chart,.admin-horizontal-bars{width:100%;max-width:100%;overflow-x:auto}.login-card,.account-card,.product-page-card,.admin-console{width:100%}.home-visual-card,.home-tetrahedron-wrap,.about-hero-row .home-visual-card{min-height:clamp(260px,48dvh,420px)}}@media (max-width: 640px){.home-actions,.auth-actions,.settings-action-row,.feedback-actions,.page-title-row,.admin-topbar,.admin-detail-header,.admin-toolbar,.admin-provider-card-head,.admin-provider-card-head-actions,.admin-row-actions{align-items:stretch;flex-direction:column}.home-actions>*,.auth-actions>*,.settings-action-row>*,.feedback-actions>*,.admin-toolbar>button,.admin-row-actions>button{width:100%}.login-form,.account-card,.admin-card,.admin-provider-card{padding-right:14px;padding-left:14px}.footer-top{gap:16px}.footer-nav div{gap:10px}.footer-nav .footer-nav-link{min-height:40px}.footer-bottom{padding-bottom:max(12px,env(safe-area-inset-bottom))}.notification-card{max-height:calc(100dvh - 84px);overflow-y:auto}.admin-chat-message,.chat-message{max-width:92%}}.nlp-preflight{display:grid;gap:14px;border:1px solid var(--line-2);border-radius:14px;padding:16px;background:var(--paper);color:var(--ink);outline:none}.nlp-preflight:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 25%,transparent)}.nlp-preflight--needs_confirmation{border-color:#f59e0b;background:color-mix(in srgb,#fffbeb 70%,var(--paper))}.nlp-preflight--unsupported,.nlp-preflight--abstained,.nlp-preflight--error{border-color:#fecaca;background:color-mix(in srgb,#fff5f5 70%,var(--paper))}.nlp-preflight__head,.nlp-preflight__actions{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.nlp-preflight__head h2{margin:3px 0 0;font-size:1rem}.nlp-preflight__status{color:var(--ink-4);font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.nlp-preflight__body,.nlp-preflight__summary,.nlp-preflight__details,.nlp-preflight__candidates{display:grid;gap:10px}.nlp-preflight__summary,.nlp-preflight__details{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));margin:0}.nlp-preflight dl div{min-width:0}.nlp-preflight dt,.nlp-preflight__canonical>span,.nlp-preflight__candidates legend{color:var(--ink-4);font-size:.75rem;font-weight:700}.nlp-preflight dd{margin:3px 0 0;overflow-wrap:anywhere}.nlp-preflight__canonical{display:grid;gap:6px}.nlp-preflight__math-preview{display:block;overflow-x:auto;border:1px solid var(--line-2);border-radius:10px;padding:12px;background:var(--paper-2);color:var(--ink);font-size:1.08rem}.nlp-preflight__canonical textarea{width:100%;resize:vertical;border:1px solid var(--line-2);border-radius:10px;padding:10px 12px;background:var(--paper);color:var(--ink);font:inherit;line-height:1.45}.nlp-preflight__canonical textarea:focus-visible{border-color:var(--accent);outline:2px solid color-mix(in srgb,var(--accent) 20%,transparent)}.nlp-preflight__candidates{margin:0;border:0;padding:0}.nlp-preflight__candidates label{display:flex;align-items:center;gap:8px;cursor:pointer}.nlp-preflight__question,.nlp-preflight__blocking,.nlp-preflight--error p{margin:0;line-height:1.5}.nlp-preflight__blocking{color:#991b1b;font-weight:650}.nlp-preflight__actions{justify-content:flex-end}@media (max-width: 640px){.nlp-preflight__head,.nlp-preflight__actions{align-items:stretch;flex-direction:column}.nlp-preflight__actions button{width:100%}}.math-input-composer{display:grid;gap:10px;min-width:0}.math-input-composer__head,.math-input-composer__footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.math-input-composer__label{color:var(--ink);font-size:.84rem;font-weight:750}.math-input-composer__tabs{display:inline-grid;grid-template-columns:repeat(2,1fr);padding:3px;border:1px solid var(--line-2);border-radius:10px;background:var(--paper-2)}.math-input-composer__tabs button{min-height:36px;border:0;border-radius:7px;padding:6px 12px;background:transparent;color:var(--ink-4);font:inherit;font-size:.8rem;font-weight:700}.math-input-composer__tabs button.active{background:var(--paper);color:var(--ink);box-shadow:0 1px 4px #0f172a1f}.math-formula-control{display:grid;gap:8px;min-width:0}.math-formula-host{min-width:0}.math-formula-keyboard-toggle{justify-self:end;min-height:40px;border:1px solid var(--line-2);border-radius:9px;padding:8px 12px;background:var(--paper-2);color:var(--ink);font:inherit;font-size:.8rem;font-weight:700}.math-formula-keyboard-toggle:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 18%,transparent)}.math-input-composer textarea,.math-formula-field{box-sizing:border-box;width:100%;min-height:116px;border:1px solid var(--line-2);border-radius:12px;padding:14px;background:var(--paper);color:var(--ink);font:inherit;line-height:1.55}.math-formula-field{display:block;font-size:1.18rem;--caret-color: var(--accent);--selection-background-color: color-mix(in srgb, var(--accent) 20%, transparent);--contains-highlight-background-color: color-mix(in srgb, var(--accent) 12%, transparent)}.math-input-composer textarea:focus-visible,.math-formula-field:focus-within{border-color:var(--accent);outline:3px solid color-mix(in srgb,var(--accent) 18%,transparent)}.math-input-composer__footer{color:var(--ink-4);font-size:.72rem}.sp-composer-wrap{display:grid;gap:10px;padding:0 12px}.sp-composer-submit{justify-self:end;width:auto;min-width:120px;min-height:42px;padding-inline:18px}@media (max-width: 640px){.math-input-composer__head{align-items:stretch;flex-direction:column}.math-input-composer__tabs,.math-formula-keyboard-toggle,.sp-composer-submit{width:100%}.math-input-composer textarea,.math-formula-field{min-height:132px;font-size:16px}.math-input-composer__footer span:first-child{display:none}body:has(.ML__keyboard.is-visible){padding-bottom:var(--keyboard-height, 0px)}}.math-capability-summary{margin:12px 0;border:1px solid var(--line-2);border-radius:12px;background:var(--paper-2);color:var(--ink)}.math-capability-summary summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;padding:10px 14px;cursor:pointer;font-size:.82rem}.math-capability-summary summary strong{color:var(--accent);font-size:.75rem}.math-capability-summary dl{display:grid;gap:8px;margin:0;padding:0 14px 12px}.math-capability-summary dl div{display:grid;grid-template-columns:minmax(90px,.28fr) minmax(0,1fr);gap:10px}.math-capability-summary dt{color:var(--ink-4);font-size:.75rem;font-weight:700}.math-capability-summary dd{min-width:0;margin:0;overflow-wrap:anywhere;font-size:.78rem}.math-capability-summary ul{display:grid;gap:5px;margin:0;padding:0 14px 14px 30px;font-size:.75rem}.math-capability-summary li[data-status=fail]{color:var(--danger)}@media (max-width: 640px){.math-capability-summary dl div{grid-template-columns:1fr;gap:2px}}.fa2-panel{--fa-grid: rgba(17, 17, 17, .045);display:grid;gap:14px;min-width:0;padding:clamp(12px,2vw,22px);background:linear-gradient(90deg,var(--fa-grid) 1px,transparent 1px),linear-gradient(180deg,var(--fa-grid) 1px,transparent 1px),var(--paper);background-size:28px 28px}.fa2-control-panel{display:grid;gap:12px;min-width:0;border:0;border-bottom:1px solid var(--line-2);padding:0 0 14px;background:transparent}.fa2-sticky-controls{display:grid;grid-template-columns:minmax(190px,.24fr) minmax(0,1fr);align-items:center;gap:clamp(14px,2vw,26px);border:0;padding:0;background:transparent}.fa2-formula-card{min-width:0;border:0;padding:0;background:transparent}.fa2-formula-workspace-row{display:grid;grid-template-columns:minmax(360px,1.35fr) minmax(240px,.65fr);align-items:stretch;gap:8px}.fa2-formula-row-control{display:grid;grid-template-columns:minmax(180px,1fr) auto auto;align-items:center;gap:8px;min-width:0}.fa2-expression-preview{display:flex;align-items:center;gap:10px;min-width:0;min-height:40px;overflow-x:auto;border:1px solid var(--line-2);border-radius:6px;padding:8px 10px;background:#fffffff0;white-space:nowrap}.fa2-expression-syntax{display:none}.fa2-results-panel{display:grid;gap:12px;min-width:0;min-height:420px;max-height:none;overflow:visible;padding:0}.fa2-result-shell{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(310px,.55fr);align-items:start;gap:clamp(14px,2vw,24px)}.fa2-graph-column,.fa2-analysis-column{min-width:0}.fa2-graph-column{position:sticky;top:72px;align-self:start}.fa2-section,.fa2-quick-card,.fa2-result-tabs,.fa2-graph-card{border-color:var(--line-2);border-radius:6px;box-shadow:none}.fa2-graph-card{background:linear-gradient(90deg,var(--fa-grid) 1px,transparent 1px),linear-gradient(180deg,var(--fa-grid) 1px,transparent 1px),var(--paper);background-size:28px 28px}.fa2-graph-card .geogebra-view,.fa2-svg-graph{border:1px solid var(--line-2);border-radius:4px;background:var(--paper)}.fa2-svg-graph{touch-action:pan-y}.fa2-graph-primary-toolbar,.fa2-action-bar{gap:4px}.fa2-graph-settings-panel{position:static;width:100%;margin-top:8px;border:1px solid var(--line-2);border-radius:6px;padding:10px;background:#fffffff5;box-shadow:none}.fa2-action-popover{z-index:40;border-radius:6px;box-shadow:0 12px 28px #1111111f}.fa2-interval-tool-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.fa2-interval-tool-row>.fa2-tool-label{width:100px;flex:0 0 auto;margin:0}.fa2-interval-bound,.fa2-inline-check{display:flex;align-items:center;gap:4px}.fa2-interval-bound{flex:1 1 120px;min-width:120px}.fa2-inline-check,.fa2-interval-separator{margin:0;white-space:nowrap;font-size:.85rem}.fa2-inline-check{cursor:pointer}.fa2-inline-check input{margin:0}.fa2-quick-rows,.fa2-compact-list{gap:8px}.fa2-interval-note,.fa2-action-message,.fa2-tool-status{line-height:1.45}@media (max-width: 1180px){.fa2-sticky-controls{grid-template-columns:1fr;align-items:stretch}.fa2-header-sub{display:none}.fa2-result-shell{grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr)}}@media (max-width: 900px){.fa2-formula-workspace-row,.fa2-result-shell{grid-template-columns:1fr}.fa2-graph-column{position:static}}@media (max-width: 620px){.fa2-panel{padding:10px}.fa2-formula-row-control{grid-template-columns:minmax(0,1fr) auto}.fa2-formula-row-control .sp-btn-primary{grid-column:1 / -1}.fa2-expression-preview>span:first-child,.fa2-header-sub{display:none}.fa2-action-bar{overflow-x:auto;flex-wrap:nowrap;padding-bottom:3px}.fa2-header,.fa2-sticky-controls,.fa2-results-panel,.fa2-result-shell,.fa2-graph-column,.fa2-analysis-column,.fa2-section,.fa2-graph-card{min-width:0;max-width:100%}.fa2-header{align-items:flex-start}.fa2-formula-row-control>button,.fa2-action-bar button,.fa2-action-bar summary,.fa2-mini-input{min-height:44px}.fa2-expression-preview,.fa2-table-scroll,.bbt-v2-scroll,.fa2-katex-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain}.fa2-graph-card .geogebra-view,.fa2-svg-graph{min-height:320px;height:min(54dvh,480px)}.fa2-action-popover,.fa2-graph-settings-panel{width:min(100%,calc(100vw - 28px));max-height:calc(100dvh - 84px);overflow-y:auto}}
