@font-face{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-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-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-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-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-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-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-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-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-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-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-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-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-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-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-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-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-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-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-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2) format("woff2"),url(/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff) format("woff"),url(/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf) format("truetype")}.katex{font: 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;text-indent:0;text-rendering:auto}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.16.11"}.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 .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;display:inline-table;table-layout:fixed}.katex .vlist-r{display:table-row}.katex .vlist{display:table-cell;position:relative;vertical-align:bottom}.katex .vlist>span{display:block;height:0;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{overflow:hidden;width:0}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{display:table-cell;font-size:1px;min-width:2px;vertical-align:bottom;width:2px}.katex .vbox{align-items:baseline;display:inline-flex;flex-direction:column}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{display:inline-flex;flex-direction:row}.katex .thinbox{max-width:0;width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .clap,.katex .llap,.katex .rlap{position:relative;width:0}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.katex .sqrt>.root{margin-left:.2777777778em;margin-right:-.5555555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.1666666667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.6666666667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.4566666667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.1466666667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.7142857143em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.8571428571em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.1428571429em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.2857142857em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.4285714286em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.7142857143em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.0571428571em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.4685714286em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.9628571429em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.5542857143em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.7777777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.8888888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.1111111111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.3044444444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.7644444444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.5833333333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.7283333333em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.0733333333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.4861111111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.4402777778em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.7277777778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.2893518519em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.4050925926em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.462962963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.5208333333em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.5787037037em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.2002314815em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.4398148148em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.2410800386em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.2892960463em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.337512054em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.3857280617em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.4339440694em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.4821600771em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.5785920926em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.6943105111em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.8331726133em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.1996142719em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.2009646302em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.2411575563em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.2813504823em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.3215434084em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.3617363344em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.4019292605em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.4823151125em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.578778135em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.6945337621em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.8336012862em}.katex .fontsize-ensurer.reset-size11.size11,.katex .sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{display:inline-block;width:.12em}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{display:inline-block;min-width:1px}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;fill-rule:nonzero;fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:block;height:inherit;position:absolute;width:100%}.katex svg path{stroke:none}.katex img{border-style:none;max-height:none;max-width:none;min-height:0;min-width:0}.katex .stretchy{display:block;overflow:hidden;position:relative;width:100%}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{overflow:hidden;position:relative;width:100%}.katex .halfarrow-left{left:0;overflow:hidden;position:absolute;width:50.2%}.katex .halfarrow-right{overflow:hidden;position:absolute;right:0;width:50.2%}.katex .brace-left{left:0;overflow:hidden;position:absolute;width:25.1%}.katex .brace-center{left:25%;overflow:hidden;position:absolute;width:50%}.katex .brace-right{overflow:hidden;position:absolute;right:0;width:25.1%}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{border:.04em solid;box-sizing:border-box}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{border-right:.049em solid;border-top:.049em solid;box-sizing:border-box;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{display:inline-block;position:absolute;right:calc(50% + .3em);text-align:left}.katex .cd-label-right{display:inline-block;left:calc(50% + .3em);position:absolute;text-align:right}.katex-display{display:block;margin:1em 0;text-align:center}.katex-display>.katex{display:block;text-align:center;white-space:nowrap}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{padding-left:2em;text-align:left}body{counter-reset:katexEqnNo mmlEqnNo}:root{--paper: #f6f7f4;--grid: #e2e6ec;--surface: #ffffff;--ink: #1c2333;--ink-soft: #545e72;--rule: #d3d8e0;--verified: #17795a;--numerical: #a86200;--argument: #3550e0;--marker: #ffe07a;--marker-ink: #1c2333;--danger: #b3261e;--cited: #6b4fa0;--focus: #3550e0;--radius-sm: 6px;--radius-lg: 14px;--dock-shadow: 0 -1px 0 var(--rule);color-scheme:light}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--paper: #141922;--grid: #1f2633;--surface: #1b2130;--ink: #e8ebf2;--ink-soft: #9aa4b8;--rule: #2c3446;--verified: #4fc79a;--numerical: #f0a640;--argument: #8c9dff;--marker: #6b5a12;--marker-ink: #fff6cc;--danger: #ff8a80;--focus: #8c9dff;--cited: #c3a6f5;color-scheme:dark}}:root[data-theme=dark]{--paper: #141922;--grid: #1f2633;--surface: #1b2130;--ink: #e8ebf2;--ink-soft: #9aa4b8;--rule: #2c3446;--verified: #4fc79a;--numerical: #f0a640;--argument: #8c9dff;--marker: #6b5a12;--marker-ink: #fff6cc;--danger: #ff8a80;--focus: #8c9dff;--cited: #c3a6f5;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background-color:var(--paper);background-image:linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);background-size:22px 22px;color:var(--ink);font:17px/1.5 Atkinson Hyperlegible,system-ui,sans-serif;-webkit-text-size-adjust:100%}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.45}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}h1,h2,h3{margin:0}.muted{color:var(--ink-soft);font-weight:400}.app{display:flex;flex-direction:column;min-height:100%;max-width:760px;margin:0 auto}.top{display:flex;align-items:baseline;gap:12px;padding:max(12px,env(safe-area-inset-top)) 16px 8px}.brand{font-size:1.35rem;letter-spacing:-.01em}.field-badge{position:relative;border:1.5px solid var(--ink);background:var(--surface);border-radius:999px;min-width:44px;height:44px;padding:0 12px;font-size:1.1rem}.field-badge .count{position:absolute;top:-6px;right:-6px;background:var(--ink);color:var(--paper);font-size:.72rem;border-radius:999px;min-width:20px;height:20px;line-height:20px}.main{flex:1;padding:0 16px 16px}.problem{margin:4px 0 12px;font-size:1.05rem}.empty,.timeline-empty{color:var(--ink-soft);padding:24px 0}.toast{margin:0 16px 8px;padding:10px 12px;border-left:4px solid var(--danger);background:var(--surface);display:flex;gap:12px;justify-content:space-between;align-items:start}.btn{min-height:44px;padding:0 16px;border-radius:var(--radius-sm);border:1.5px solid var(--ink);background:var(--ink);color:var(--paper);font-weight:700}.btn-quiet{background:transparent;color:var(--ink)}.btn-small{min-height:36px;padding:0 12px;font-size:.92rem}.btn-hint{background:transparent;color:var(--argument);border-color:var(--argument)}.link{background:none;border:0;padding:8px 4px;color:var(--argument);text-decoration:underline;text-underline-offset:3px;min-height:40px}.chip{border:1px solid var(--rule);background:var(--surface);border-radius:999px;padding:6px 12px;min-height:36px}.branches{display:flex;gap:6px;overflow-x:auto;padding:2px 0 10px;scrollbar-width:none}.branch{flex:none;min-height:36px;padding:0 12px;border:1px solid var(--rule);background:var(--surface);border-radius:999px}.branch[aria-selected=true],.branch[aria-pressed=true]{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}.branch-new{color:var(--argument)}.workpad{background:var(--surface);border:1.5px solid var(--ink);border-radius:var(--radius-lg);padding:16px 12px 6px}.workpad-tools{display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px;margin-top:6px}.goal{margin-left:auto;display:flex;align-items:center;gap:6px;color:var(--ink-soft);font-size:.9rem}.goal select{max-width:13em;min-height:36px;border:1px solid var(--rule);border-radius:var(--radius-sm);background:var(--paper)}.matrix{display:grid;gap:2px;overflow-x:auto;padding:4px 0;font-size:1.2rem}.matrix-large{font-size:2rem}.mrow{display:flex;align-items:stretch;gap:8px;border-radius:var(--radius-sm)}.mrow.is-selected .mcells{background:color-mix(in srgb,var(--argument) 10%,transparent)}.row-handle{flex:none;width:52px;border:1px dashed var(--rule);background:transparent;border-radius:var(--radius-sm);font-size:.95rem;display:grid;place-items:center;line-height:1.1;min-height:44px}.mrow.is-selected .row-handle{border:1.5px solid var(--argument);color:var(--argument)}.row-order{font-size:.64rem;color:var(--argument)}.mcells{display:grid;gap:2px;flex:1;position:relative;padding:0 10px;border-radius:var(--radius-sm)}.matrix>.mrow:first-child .mcells{border-top-left-radius:14px;border-top-right-radius:14px}.mcells:before,.mcells:after{content:"";position:absolute;top:0;bottom:0;width:6px;border:1.5px solid var(--ink)}.mcells:before{left:0;border-right:0}.mcells:after{right:0;border-left:0}.matrix>.mrow:not(:first-child) .mcells:before,.matrix>.mrow:not(:first-child) .mcells:after{border-top:0}.matrix>.mrow:not(:last-child) .mcells:before,.matrix>.mrow:not(:last-child) .mcells:after{border-bottom:0}.matrix>.mrow:first-child .mcells:before{border-top-left-radius:8px}.matrix>.mrow:first-child .mcells:after{border-top-right-radius:8px}.matrix>.mrow:last-child .mcells:before{border-bottom-left-radius:8px}.matrix>.mrow:last-child .mcells:after{border-bottom-right-radius:8px}.mcell{border:0;background:transparent;padding:6px 8px;min-height:44px;min-width:2.6em;border-radius:4px;text-align:center;white-space:nowrap}.mcell:disabled{opacity:1;cursor:default}.mcell.is-changed{background:var(--marker);color:var(--marker-ink)}.mcell.is-entry{box-shadow:inset 0 0 0 2px var(--argument)}.timeline{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:10px}.timeline-empty{font-size:.95rem}.step{display:grid;grid-template-columns:32px 1fr;gap:8px}.seal{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-weight:700;color:var(--surface);margin-top:6px}.step-verified .seal{background:var(--verified)}.step-numerical .seal{background:var(--numerical)}.step-user .seal{background:var(--argument)}.step-cited .seal{background:var(--cited)}.step-cited .step-body{border-left:3px solid var(--cited)}.step-body{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-sm);padding:6px 12px 10px;min-width:0}.step-numerical .step-body{border-style:dashed;border-color:var(--numerical)}.step-user .step-body{border-left:3px solid var(--argument)}.step-head{display:flex;gap:8px;align-items:baseline;width:100%;text-align:left;background:none;border:0;padding:6px 0;min-height:40px}.step-no{color:var(--ink-soft);font-variant-numeric:tabular-nums;font-size:.85rem}.step-title{font-weight:700}.step-math{overflow-x:auto;padding:2px 0}.unfold{overflow-x:auto;-webkit-overflow-scrolling:touch}.step-more{border-top:1px solid var(--rule);margin-top:6px;padding-top:6px}.note{margin:6px 0;color:var(--ink-soft);font-size:.95rem}.assumes{margin:6px 0;font-size:.95rem}.step-tools{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.argument{margin:4px 0;font-style:italic}.annotation{margin:8px 0 0;padding-left:10px;border-left:2px solid var(--argument);color:var(--ink-soft)}.note-edit{display:grid;gap:6px;margin-top:8px}.tex-display .katex-display{margin:.4em 0}.bottom{position:sticky;bottom:0;z-index:6;background:var(--paper);box-shadow:var(--dock-shadow);padding-bottom:env(safe-area-inset-bottom)}.dock{padding:10px 16px 4px}.dock-help{margin:0 0 6px;font-size:.85rem;color:var(--ink-soft);line-height:1.35}.dock-help .link{min-height:0;padding:0 4px}.dock-help strong{color:var(--ink)}.dock-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding-bottom:4px;min-width:0}.dock-actions .btn{flex:0 1 auto;min-width:0;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dock-tail{display:flex;gap:8px;margin-left:auto;flex:none;max-width:100%}.dock-tail .btn{flex:none;overflow:visible}@media (max-width: 400px){.dock-actions .btn{padding:0 12px}.dock{padding-left:12px;padding-right:12px}}.hint{border-left:4px solid var(--argument);background:var(--surface);padding:8px 12px;margin-bottom:10px}.hint p{margin:0 0 6px}.hint-actions{display:flex;gap:8px}.tabs{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--rule)}.tabs button{min-height:52px;background:none;border:0;font-size:.9rem;color:var(--ink-soft)}.tabs button[aria-current=page]{color:var(--ink);font-weight:700;box-shadow:inset 0 3px 0 var(--ink)}.panel{display:grid;gap:20px;padding-top:4px}.group{display:grid;gap:10px}.group h3{font-size:1.05rem}.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.tile{text-align:left;background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-sm);padding:10px 12px;min-height:60px;display:grid;gap:2px}.tile span{font-size:.85rem;color:var(--ink-soft)}.tile-numerical{border-style:dashed;border-color:var(--numerical)}.segmented{display:flex;flex-wrap:wrap;gap:6px;border:0;padding:0;margin:0}.segmented legend{margin-bottom:6px;color:var(--ink-soft);font-size:.9rem}.segmented button{min-height:44px;min-width:44px;padding:0 12px;border:1px solid var(--rule);background:var(--surface);border-radius:var(--radius-sm)}.segmented button[aria-pressed=true],.segmented button[aria-checked=true]{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink);font-weight:700}.segmented-large button{flex:1;display:grid;place-items:center;padding:8px}.segmented-large span{font-size:.8rem;color:var(--ink-soft)}.conditions{list-style:none;padding:0;margin:0;display:grid;gap:6px}.cond{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-sm);padding:8px 12px;display:grid;gap:2px}.cond-operation{border-left:3px solid var(--verified)}.cond-user{border-left:3px solid var(--argument)}.cond-src{font-size:.85rem;color:var(--ink-soft)}.inline-form{display:flex;gap:8px}.inline-form input,.field input,.argument-form input,.argument-form textarea,.note-edit textarea,.latex-input textarea,.cell-text{flex:1;min-height:44px;border:1.5px solid var(--rule);border-radius:var(--radius-sm);background:var(--surface);padding:8px 10px;width:100%}textarea{resize:vertical}.field{display:grid;gap:6px}.field>span:first-child,.field-label{color:var(--ink-soft);font-size:.9rem}.preview{min-height:1.6em}.argument-form{display:grid;gap:8px}.error{color:var(--danger);margin:4px 0}.exercises,.saved,.menu{list-style:none;padding:0;margin:0;display:grid;gap:8px}.exercises button,.saved .saved-open,.menu button{width:100%;text-align:left;background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-sm);padding:10px 12px;display:grid;gap:2px}.exercises span,.saved span,.menu span{font-size:.9rem;color:var(--ink-soft)}.level{font-style:normal;font-size:.78rem;justify-self:start;padding:0 8px;border-radius:999px;border:1px solid var(--rule)}.level-advanced{border-color:var(--numerical);color:var(--numerical)}.level-research{border-color:var(--argument);color:var(--argument)}.level-open{border-color:var(--cited);color:var(--cited);font-weight:700}.saved li{display:flex;gap:8px;align-items:center}.saved li.is-current .saved-open{border-color:var(--ink)}.scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a0e1673;display:grid;align-items:end;z-index:10}.sheet{background:var(--paper);border-radius:var(--radius-lg) var(--radius-lg) 0 0;padding:8px 16px max(16px,env(safe-area-inset-bottom));max-height:92vh;overflow-y:auto;width:100%;max-width:640px;margin:0 auto}.sheet-grip{width:40px;height:4px;border-radius:2px;background:var(--rule);margin:0 auto 10px}.sheet-title{font-size:1.1rem;margin-bottom:12px}.sheet-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}.argform{display:grid;gap:14px}@media (min-width: 720px){.scrim{align-items:center}.sheet{border-radius:var(--radius-lg)}}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--paper);z-index:20;display:grid;grid-template-rows:auto 1fr}.overlay-close{justify-self:end;margin:max(12px,env(safe-area-inset-top)) 16px 0}.overlay-scroll{overflow:auto;padding:24px 16px;touch-action:pan-x pan-y pinch-zoom}.editor{display:grid;gap:12px}.editor-size{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.stepper{display:flex;align-items:center;gap:6px}.stepper span{color:var(--ink-soft);font-size:.9rem}.stepper button{width:40px;height:40px;border-radius:50%;border:1px solid var(--rule);background:var(--surface)}.stepper output{min-width:1.5em;text-align:center;font-weight:700}.edit-grid{display:grid;gap:4px}.edit-cell{min-height:48px;border:1px solid var(--rule);background:var(--surface);border-radius:var(--radius-sm)}.edit-cell.is-current{border:2px solid var(--argument)}.placeholder{color:var(--ink-soft)}.keypad{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}.key{min-height:48px;border-radius:var(--radius-sm);border:1px solid var(--rule);background:var(--surface);font-size:1.1rem;touch-action:manipulation}.key-alt{background:var(--grid)}.key-next{grid-column:span 2;background:var(--ink);color:var(--paper);font-size:.95rem;font-weight:700}.latex-input{display:grid;gap:8px}.latex-input textarea{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.95rem}.compare{display:grid;grid-auto-flow:column;grid-auto-columns:88%;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px}.compare-col{scroll-snap-align:start;background:color-mix(in srgb,var(--surface) 70%,transparent);border:1px solid var(--rule);border-radius:var(--radius-lg);padding:12px;min-width:0}.compare-col h3{margin-bottom:8px}@media (min-width: 720px){.compare{grid-auto-columns:calc(50% - 6px)}}@media (prefers-reduced-motion: reduce){*{scroll-behavior:auto!important;transition:none!important}}.signin{min-height:100%;max-width:440px;margin:0 auto;padding:max(40px,env(safe-area-inset-top)) 16px 32px;display:grid;align-content:center;gap:28px}.signin-head{display:grid;gap:10px}.signin-brand{font-size:2.6rem;letter-spacing:-.02em;line-height:1}.signin-formula{justify-self:start;background:var(--marker);color:var(--marker-ink);padding:2px 10px;border-radius:var(--radius-sm);font-size:1.05rem}.signin-formula .tex-display .katex-display{margin:.35em 0}.signin-card{background:var(--surface);border:1.5px solid var(--ink);border-radius:var(--radius-lg);padding:20px 18px;display:grid;gap:14px}.signin-title{font-size:1.2rem}.signin-submit{width:100%}.signin-switch{margin:0;color:var(--ink-soft)}.signin-loading{text-align:center}.field-hint{color:var(--ink-soft);font-size:.85rem}.sync{font-size:.82rem;color:var(--ink-soft);white-space:nowrap}.sync-saved:before{content:"✓ ";color:var(--verified)}.sync-offline,.sync-error{color:var(--numerical)}.account{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin-top:20px;padding-top:12px;border-top:1px solid var(--rule)}.lang-picker{flex-wrap:nowrap;gap:4px}.lang-picker button{min-height:36px;padding:0 10px;font-size:.9rem}.signin-lang{position:fixed;top:max(10px,env(safe-area-inset-top));right:12px;z-index:5}.studio{display:grid;gap:10px;padding-top:10px}.studio-formula{display:flex;align-items:center;gap:6px;overflow-x:auto;-webkit-overflow-scrolling:touch}.studio-formula>.tex{flex:none;color:var(--ink-soft)}.expr{flex:1;min-width:0;overflow-x:auto;font-size:1.25rem;border-radius:var(--radius-sm)}.expr-large{font-size:2.1rem}.expr .katex-display{margin:.2em 0}.expr-interactive{cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:manipulation}.expr-interactive:focus-visible{outline:3px solid var(--focus)}.expr [data-path].part{border-radius:4px;transition:background-color .12s}.expr [data-path].is-selected{background:var(--marker);color:var(--marker-ink);box-shadow:0 0 0 2px var(--marker)}.expr [data-path].is-selected [data-path]{background:transparent}.expr [data-path].is-linked{background:color-mix(in srgb,var(--argument) 14%,transparent);box-shadow:inset 0 -2px 0 var(--argument)}.scene-chips{display:flex;flex-wrap:wrap;gap:6px}.chip-static{display:inline-flex;align-items:center}.chips{display:flex;flex-wrap:wrap;gap:6px}.plane{margin:0}.plane svg{display:block;width:100%;max-width:420px;margin:0 auto;aspect-ratio:1;background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-sm);touch-action:manipulation}.plane-pick{cursor:crosshair}.plane-bar{display:flex;align-items:center;justify-content:space-between;max-width:420px;margin:4px auto 0;font-size:.85rem;color:var(--ink-soft)}.plane-zoom{display:flex;gap:4px}.plane-zoom button{min-width:36px;min-height:36px;border:1px solid var(--rule);background:var(--surface);border-radius:var(--radius-sm)}.gridline{stroke:var(--grid);stroke-width:1}.axis{stroke:var(--ink-soft);stroke-width:1.2}.tick{fill:var(--ink-soft);font-size:10px;font-family:inherit}.region{fill:color-mix(in srgb,var(--verified) 13%,transparent);stroke:var(--verified);stroke-width:1;stroke-dasharray:4 3}.contour path{fill:none;stroke:var(--ink);stroke-width:2}.contour .contour-arrow{stroke-width:2}.arrowhead{fill:var(--ink)}.curve{fill:none;stroke-width:1.6}.curve-image{stroke:var(--argument);stroke-width:2}.curve-grid-h{stroke:color-mix(in srgb,var(--numerical) 70%,transparent);stroke-width:1.1}.curve-grid-v{stroke:color-mix(in srgb,var(--argument) 60%,transparent);stroke-width:1.1}.point{cursor:pointer}.point .hit{fill:transparent}.point .mark{stroke:var(--danger);stroke-width:2.4;fill:none;stroke-linecap:round}.point .mark-fill{fill:var(--danger);stroke-width:1}.point .mark-hollow{fill:var(--surface)}.point.kind-zero .mark,.point.kind-origin .mark{fill:var(--verified);stroke:var(--verified)}.point.kind-removable .mark{stroke:var(--ink-soft)}.point.kind-branch .mark,.point.kind-cut .mark{fill:var(--numerical);stroke:var(--numerical)}.point.kind-critical .mark{stroke:var(--argument)}.point.role-outside .mark{opacity:.45}.point.is-linked .hit{fill:color-mix(in srgb,var(--argument) 18%,transparent)}.point.is-selected .hit{fill:var(--marker);stroke:var(--ink);stroke-width:1.5}.point:focus-visible{outline:none}.point:focus-visible .hit{stroke:var(--focus);stroke-width:3}.point .order{font-size:10px;fill:var(--ink);font-weight:700}.mapview{display:grid;gap:10px}@media (min-width: 720px){.mapview{grid-template-columns:1fr 1fr}}.step-figure{margin-top:6px}.followups{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.chip-next{border-color:var(--argument);color:var(--argument)}.chip-figure{margin-top:6px}.tile-hint{font-style:normal;font-size:.78rem;color:var(--ink-soft)}.contour-editor,.map-picker,.expr-editor{display:grid;gap:12px}.contour-formula,.map-formula{margin:0;min-height:1.6em;text-align:center}.contour-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.contour-fields-4{grid-template-columns:repeat(4,1fr)}.contour-fields input,.map-picker input{min-height:44px;border:1.5px solid var(--rule);border-radius:var(--radius-sm);background:var(--surface);padding:8px 10px;width:100%}.stepper-input{display:flex;gap:4px;align-items:stretch}.stepper-input button{min-width:44px;border:1px solid var(--rule);background:var(--surface);border-radius:var(--radius-sm)}.stepper-input button.is-on{border-color:var(--ink);font-weight:700;box-shadow:inset 0 0 0 1px var(--ink)}.presets button[aria-pressed=true]{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}.expr-editor textarea{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:1rem;min-height:64px;border:1.5px solid var(--rule);border-radius:var(--radius-sm);background:var(--surface);padding:8px 10px;width:100%}.expr-preview{min-height:3em;display:grid;place-items:center;background:var(--surface);border:1px dashed var(--rule);border-radius:var(--radius-sm);overflow-x:auto}.keypad-wide{grid-template-columns:repeat(5,1fr)}.module-blurb{margin:-6px 0 0;font-size:.9rem}.expr .vlist-t,.expr .vlist-r,.expr .vlist,.expr .vlist>span,.expr .pstrut,.expr .frac-line,.expr .vlist-s,.expr .strut{pointer-events:none}.expr .vlist>span>:not(.pstrut):not(.frac-line){pointer-events:auto}.point:focus{outline:none}.contour-infinite path:first-child{stroke-dasharray:7 5}.plot .plot-svg{aspect-ratio:auto}.plot .curve-exact{stroke:var(--verified);stroke-width:2.2}.plot .curve-numeric{stroke:var(--numerical);stroke-width:2;stroke-dasharray:5 3}.plot .curve-trajectory{stroke:var(--argument);stroke-width:1.3;opacity:.85}.plot .curve-snapshot{stroke:var(--ink);stroke-width:1.6}.plot .segments{stroke:var(--ink-soft);stroke-width:1;opacity:.75;fill:none}.plot .hline{stroke:var(--danger);stroke-width:1.2;stroke-dasharray:6 4}.plot .plot-point .mark{fill:var(--danger);stroke:var(--surface);stroke-width:1.5}.plot .plot-point.kind-start .mark{fill:var(--argument)}.plot .plot-point.kind-source .mark{fill:var(--ink)}.axis-name{fill:var(--ink);font-size:12px;font-style:italic;font-family:Times New Roman,serif}.plot-legend{display:flex;flex-wrap:wrap;gap:4px 14px;max-width:420px;margin:4px auto 0;font-size:.8rem;color:var(--ink-soft)}.legend-item{display:inline-flex;align-items:center;gap:5px}.legend-item .curve{fill:none}.heat-bar{display:inline-block;width:64px;height:8px;border-radius:2px;border:1px solid var(--rule)}.facts{display:flex;flex-wrap:wrap;gap:4px;margin:0;padding:0;list-style:none}.facts li{font-size:.78rem;padding:1px 8px;border-radius:999px;background:color-mix(in srgb,var(--verified) 12%,transparent);color:var(--ink);border:1px solid color-mix(in srgb,var(--verified) 35%,transparent)}.rows-editor,.geometry-editor{display:grid;gap:10px}.row-input{display:flex;gap:6px;align-items:center}.row-input input,.geometry-editor input,.geometry-editor textarea{flex:1;min-height:44px;border:1.5px solid var(--rule);border-radius:var(--radius-sm);background:var(--surface);padding:8px 10px;width:100%;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.95rem}.row-input button{min-width:44px;min-height:44px;border:1px solid var(--rule);background:var(--surface);border-radius:var(--radius-sm)}.legend-item{white-space:nowrap}.plane .legend-item svg{border:0;background:none;aspect-ratio:auto;width:22px;height:8px;margin:0;display:inline-block;border-radius:0}.plot .heat{opacity:.8}.plot .curve-level{stroke:var(--ink-soft);stroke-width:.9;opacity:.55}.plot .curve-constraint{stroke:var(--danger);stroke-width:2.4}.plot .curve-iterates{stroke:var(--argument);stroke-width:1.6;stroke-dasharray:2 2}.plot .curve-method-gradient{stroke:var(--numerical);stroke-width:2}.plot .curve-method-newton{stroke:var(--verified);stroke-width:2}.plot .curve-method-bfgs{stroke:var(--argument);stroke-width:2}.plot .curve-scatter{stroke:var(--argument);stroke-width:2.6;stroke-linecap:round;opacity:.7}.plot .hline-bound{stroke:var(--verified);stroke-dasharray:3 3}.plot .plot-point.kind-minimum .mark{fill:var(--verified)}.plot .plot-point.kind-maximum .mark{fill:var(--danger)}.plot .plot-point.kind-saddle .mark{fill:var(--numerical)}.plot .plot-point.kind-degenerate .mark,.plot .plot-point.kind-candidate .mark,.plot .plot-point.kind-kkt .mark{fill:var(--surface);stroke:var(--ink);stroke-width:2}.plot .plot-point.kind-irregular .mark{fill:var(--ink)}.claim{margin-left:auto;flex:none;font-size:.72rem;font-weight:600;padding:0 7px;border-radius:999px;border:1px solid var(--rule);color:var(--ink-soft);white-space:nowrap}.claim-established{border-color:var(--cited);color:var(--cited)}.claim-evidence,.claim-heuristic{border-color:var(--numerical);color:var(--numerical);border-style:dashed}.claim-conjecture,.claim-open{border-color:var(--argument);color:var(--argument)}.graph .graph-svg{aspect-ratio:auto}.graph-node{cursor:pointer}.graph-node rect{fill:var(--surface);stroke:var(--ink-soft);stroke-width:1.5}.graph-node text{fill:var(--ink);font-size:9px}.graph-node .graph-id{font-weight:700;font-size:11px}.graph-node.tone-settled rect{stroke:var(--verified);fill:color-mix(in srgb,var(--verified) 12%,var(--surface))}.graph-node.tone-unsettled rect{stroke:var(--numerical);stroke-dasharray:4 2}.graph-node.tone-open rect{stroke:var(--argument);fill:color-mix(in srgb,var(--argument) 10%,var(--surface))}.graph-node.tone-broken rect{stroke:var(--danger);stroke-width:2.2}.graph-node.is-selected rect{fill:var(--marker)}.graph-node:focus{outline:none}.graph-node:focus-visible rect{stroke:var(--focus);stroke-width:3}.graph-edge{stroke:var(--ink-soft);stroke-width:1.2}.graph-edge-back{stroke:var(--danger);stroke-dasharray:4 3}.graph-arrowhead{fill:var(--ink-soft)}.graph-legend{display:flex;flex-wrap:wrap;gap:4px 12px;max-width:420px;margin:4px auto 0;font-size:.8rem;color:var(--ink-soft)}.swatch{display:inline-block;width:12px;height:12px;border-radius:3px;border:1.5px solid var(--ink-soft)}.tone-settled .swatch{border-color:var(--verified);background:color-mix(in srgb,var(--verified) 20%,transparent)}.tone-unsettled .swatch{border-color:var(--numerical);border-style:dashed}.tone-open .swatch{border-color:var(--argument)}.tone-broken .swatch{border-color:var(--danger)}.document{display:grid;gap:10px;list-style:none;margin:0;padding:0}.doc-summary{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:.85rem}.doc-gaps{margin:0;padding:8px 10px;border:1px dashed var(--numerical);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--numerical) 7%,var(--surface));font-size:.88rem}.doc-gaps ul{margin:4px 0 0;padding:0;list-style:none;display:grid;gap:2px}.doc-gaps button{background:none;border:0;padding:4px 0;text-align:left;color:var(--ink);min-height:32px}.doc-item{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-sm);padding:8px 12px;border-left:4px solid var(--ink-soft)}.doc-item.tone-settled{border-left-color:var(--verified)}.doc-item.tone-unsettled{border-left-color:var(--numerical)}.doc-item.tone-open{border-left-color:var(--argument)}.doc-item.tone-broken{border-left-color:var(--danger)}.doc-item.is-selected,.doc-step.is-selected{box-shadow:0 0 0 3px var(--marker)}.doc-head{display:flex;flex-wrap:wrap;gap:6px;align-items:baseline;width:100%;text-align:left;background:none;border:0;padding:2px 0;min-height:40px;color:inherit}.doc-kind{font-weight:700}.doc-title{font-style:italic}.status{margin-left:auto;font-size:.75rem;padding:0 8px;border-radius:999px;border:1px solid var(--rule);white-space:nowrap}.status.tone-settled{border-color:var(--verified);color:var(--verified)}.status.tone-unsettled{border-color:var(--numerical);color:var(--numerical)}.status.tone-open{border-color:var(--argument);color:var(--argument)}.status.tone-broken{border-color:var(--danger);color:var(--danger)}.doc-statement{margin:2px 0 4px}.doc-reason{margin:0;font-size:.82rem;color:var(--ink-soft)}.doc-uses{font-size:.8rem;color:var(--ink-soft);margin:2px 0}.doc-proof{margin-top:6px}.doc-proof h4{margin:0 0 2px;font-size:.85rem;color:var(--ink-soft);font-weight:600}.doc-steps{list-style:none;margin:0;padding:0;display:grid;gap:4px}.doc-step{display:grid;grid-template-columns:26px 1fr;gap:6px;align-items:start;width:100%;text-align:left;background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius-sm);padding:6px 8px;min-height:40px;color:inherit}.doc-step .mark{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:.8rem;font-weight:700;color:var(--surface);background:var(--ink-soft)}.doc-step.step-open{border-style:dashed;border-color:var(--numerical)}.doc-step.step-open .mark{background:var(--surface);color:var(--numerical);border:1.5px dashed var(--numerical)}.doc-step.step-argued .mark{background:var(--argument)}.doc-step.step-verified .mark{background:var(--verified)}.doc-step.step-failed .mark{background:var(--danger)}.doc-check{display:block;font-size:.78rem;color:var(--ink-soft)}.problem-head{background:var(--surface);border:1px solid var(--rule);border-left:4px solid var(--cited);border-radius:var(--radius-sm);padding:10px 12px;display:grid;gap:6px}.problem-head h2{margin:0;font-size:1.15rem}.problem-meta{font-size:.82rem;color:var(--ink-soft)}.problem-status{justify-self:start;font-size:.8rem;font-weight:700;padding:1px 10px;border-radius:999px;border:1.5px solid var(--cited);color:var(--cited)}.problem-display{overflow-x:auto}.uses-field{border:0;padding:0;margin:0;display:grid;gap:6px}.uses-field legend{color:var(--ink-soft);font-size:.9rem;margin-bottom:4px}.uses-field .chip[aria-pressed=true]{border-color:var(--ink);background:var(--marker);color:var(--marker-ink)}.field textarea{min-height:72px;border:1.5px solid var(--rule);border-radius:var(--radius-sm);background:var(--surface);padding:8px 10px;width:100%;font:inherit}.preview-text{display:block;font-size:.9rem;color:var(--ink-soft)}.review-overdue{margin:0;padding:6px 10px;border-radius:var(--radius-sm);font-size:.85rem;border:1.5px dashed var(--numerical);color:var(--ink);background:color-mix(in srgb,var(--numerical) 10%,var(--surface))}.problem-review{margin:0;font-size:.78rem;color:var(--ink-soft)}.problem-status.status-resolved{border-color:var(--verified);color:var(--verified)}.problem-status.status-claimed{border-style:dashed}.claim-help{display:grid;gap:2px;font-size:.82rem;color:var(--ink-soft);margin-top:6px}.claim-help code{font-size:.8rem}.field select{min-height:44px;border:1.5px solid var(--rule);border-radius:var(--radius-sm);background:var(--surface);padding:8px 10px;width:100%;font:inherit}.points-chip{border:1.5px solid var(--numerical);color:var(--ink);background:color-mix(in srgb,var(--numerical) 12%,var(--surface));border-radius:999px;padding:2px 10px;min-height:32px;font-weight:700;font-size:.9rem;white-space:nowrap}.exercise-bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 0 8px;padding:6px 10px;border:1px solid var(--rule);border-radius:var(--radius-sm);background:var(--surface);font-size:.9rem}.exercise-bar .btn{margin-left:auto}.exercise-bar.is-solved{border-color:var(--verified)}.exercise-bar .earned{color:var(--verified);font-weight:700}.exercise-bar .worth{font-weight:700}.level-tag{font-size:.75rem;font-weight:700;padding:1px 8px;border-radius:999px;border:1.5px solid var(--ink-soft)}.level-tag.level-core{border-color:var(--verified);color:var(--verified)}.level-tag.level-advanced{border-color:var(--numerical);color:var(--numerical)}.level-tag.level-research{border-color:var(--argument);color:var(--argument)}.level-tag.level-open{border-color:var(--cited);color:var(--cited)}.exercise-tags{display:flex;gap:6px;align-items:center}.points{font-style:normal;font-size:.78rem;font-weight:700;color:var(--numerical)}.points-earned{color:var(--verified)}.module-score{font-weight:400;font-size:.85rem}.score-summary{display:flex;gap:10px;align-items:center;width:100%;text-align:left;background:var(--surface);border:1.5px solid var(--numerical);border-radius:var(--radius-sm);padding:10px 12px;color:inherit}.score-summary .score,.score-card .score{font-size:1.4rem;font-weight:800;color:var(--numerical)}.answer-form{display:grid;gap:12px}.answer-prompt{margin:0}.question .mark{font-weight:800}.question.is-right .mark,.requirements .is-right{color:var(--verified)}.question.is-wrong .mark,.requirements .is-wrong{color:var(--danger)}.question.is-wrong input{border-color:var(--danger)}.question.is-right input{border-color:var(--verified)}.question-help{font-size:.78rem}.requirements ul{margin:4px 0 0;padding:0;list-style:none;display:grid;gap:4px;font-size:.9rem}.answer-verdict{margin:0;padding:10px 12px;border-radius:var(--radius-sm)}.answer-verdict.is-right{border:1.5px solid var(--verified);background:color-mix(in srgb,var(--verified) 10%,var(--surface))}.answer-verdict.is-wrong{border:1.5px dashed var(--danger);color:var(--danger)}.breakdown{list-style:none;margin:6px 0;padding:0;display:grid;gap:2px;font-size:.88rem}.breakdown li{display:flex;justify-content:space-between;gap:10px}.cost-note{margin:0;font-size:.85rem}.btn .cost{font-size:.72rem;font-weight:600;opacity:.8}.btn-costly{box-shadow:inset 0 0 0 2px var(--numerical)}.menu .cost{font-weight:500;color:var(--numerical)}.progress-panel{display:grid;gap:4px}.score-line{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.bar{height:8px;border-radius:999px;background:var(--grid);overflow:hidden;margin-top:4px}.bar span{display:block;height:100%;background:var(--numerical);border-radius:999px}.progress-table{width:100%;border-collapse:collapse;font-size:.9rem}.progress-table th,.progress-table td{text-align:left;padding:4px 6px;border-bottom:1px solid var(--rule)}.module-progress{list-style:none;margin:0;padding:0;display:grid;gap:10px}.module-line{display:flex;justify-content:space-between;gap:8px;font-size:.9rem;flex-wrap:wrap}.achievements{list-style:none;margin:0;padding:0;display:grid;gap:8px}.achievements li{display:flex;gap:10px;align-items:flex-start;opacity:.55}.achievements li.is-earned{opacity:1}.achievements li>span:last-child{display:grid;font-size:.9rem}.medal{font-size:1.3rem;color:var(--numerical);line-height:1}:root{--q-spring: #3550e0;--q-weight: #b3261e;--q-normal: #17795a;--q-tension: #a86200;--q-velocity: #6b4fa0}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--q-spring: #8c9dff;--q-weight: #ff8a80;--q-normal: #4fc79a;--q-tension: #f0a640;--q-velocity: #c3a6f5}}.quanta{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;padding-top:10px}.quanta>*,.q-stage>*,.q-panel>*,.q-equations>*,.q-editor>*,.q-plots>*,.q-energy>*,.q-derive>*,.q-model>*,.q-dstep>*{min-width:0}.q-board-wrap{min-width:0;max-width:100%}.q-head{display:flex;justify-content:space-between;align-items:start;gap:8px}.q-head>div{min-width:0;flex:1}.q-title{font-size:1.05rem}.q-summary{color:var(--ink-soft);font-size:.92rem}.q-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}.q-tex{color:var(--ink)}.q-tex-display{display:block;padding:2px 0}.q-tex-display svg{max-width:none}.q-tex-inline svg{vertical-align:middle}.q-tex-tappable [class*=qf-]{cursor:pointer}.q-tex .qf-spring{color:var(--q-spring)}.q-tex .qf-weight{color:var(--q-weight)}.q-tex .qf-normal{color:var(--q-normal)}.q-tex .qf-tension{color:var(--q-tension)}.q-tex[data-hot=spring] .qf-spring,.q-tex[data-hot=weight] .qf-weight,.q-tex[data-hot=normal] .qf-normal,.q-tex[data-hot=tension] .qf-tension{stroke:currentColor;stroke-width:45}.q-tex[data-hot]{background:linear-gradient(transparent,transparent)}.q-stage{position:sticky;top:0;z-index:3;background:var(--surface);display:grid;gap:6px;padding-bottom:6px;border-bottom:1px solid var(--rule)}.q-board{width:100%;max-width:100%;height:min(28vh,240px);touch-action:none;border-radius:var(--radius-sm);background:var(--paper)}.q-board-plot{height:190px}.q-transport{display:grid;gap:4px}.q-transport-main{display:flex;align-items:center;gap:4px}.q-transport-main .q-step{min-width:36px;padding:0}.q-scrub{flex:1 1 auto;min-width:0;min-height:44px;accent-color:var(--argument)}.q-time{font-variant-numeric:tabular-nums;min-width:6.5ch;text-align:right;font-size:.92rem}.q-transport-more{display:flex;align-items:center;gap:8px;overflow-x:auto}.q-rates{flex-wrap:nowrap;gap:4px}.q-rates button{min-width:38px;padding:0 6px;font-size:.8rem;min-height:30px}.q-loop{font-size:.85rem;color:var(--ink-soft);display:flex;align-items:center;gap:4px;min-height:30px;white-space:nowrap}.q-cta,.q-stale{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:.92rem;color:var(--ink-soft)}.q-stale{border-left:3px solid var(--numerical);padding-left:8px}.q-readouts{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:4px 10px;margin:0;font-variant-numeric:tabular-nums;font-size:.9rem}.q-readouts>div{display:flex;justify-content:space-between;gap:6px;border-bottom:1px dotted var(--rule)}.q-readouts dt{color:var(--ink-soft)}.q-readouts dd{margin:0}.q-equations{display:grid;gap:4px}.q-force-chips{display:flex;flex-wrap:wrap;gap:6px}.q-force-chip{display:inline-flex;align-items:center;gap:6px}.q-force-chip[aria-pressed=true]{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink);font-weight:700}.q-force-chip i,.q-forces i,.q-legend i{display:inline-block;width:10px;height:10px;border-radius:50%}.q-equation{display:grid;grid-template-columns:minmax(70px,auto) 1fr;align-items:center;gap:8px}.q-eq-label{color:var(--ink-soft);font-size:.85rem}.q-reduced,.q-accel{color:var(--ink-soft)}.q-force-note{margin:4px 0 0;font-size:.92rem}.q-runs{display:flex;gap:6px;overflow-x:auto}.q-runs .chip[aria-selected=true]{border-color:var(--ink);font-weight:700}.q-tabs{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch}.q-tabs button{flex:none}.q-panel{display:grid;gap:10px}.q-badge{font-size:.75rem;border:1px solid var(--numerical);color:var(--numerical);border-radius:999px;padding:0 8px;margin-left:6px;white-space:nowrap}.q-badge-quiet{border-color:var(--rule);color:var(--ink-soft)}.q-badge-ok{border-color:var(--verified);color:var(--verified)}.q-badge-off{border-color:var(--danger);color:var(--danger)}.q-help{color:var(--ink-soft);font-size:.88rem;display:block}.q-issues{list-style:none;padding:0;margin:4px 0 0;display:grid;gap:4px}.q-issue{font-size:.9rem;padding:4px 8px;border-radius:var(--radius-sm);display:block}.q-issue-error{color:var(--danger);background:color-mix(in srgb,var(--danger) 8%,transparent)}.q-issue-warning{color:var(--numerical);background:color-mix(in srgb,var(--numerical) 8%,transparent)}.q-invalid{border-left:4px solid var(--danger);padding:6px 10px;background:var(--paper)}.q-invalid ul,.q-warnings{margin:4px 0 0;padding-left:18px}.q-warnings{list-style:none;padding:0;display:grid;gap:4px}.q-editor{display:grid;gap:14px}.q-templates{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;border:0;padding:0;margin:0}.q-templates legend{color:var(--ink-soft);font-size:.9rem;margin-bottom:6px}.q-template{display:grid;gap:4px;text-align:left;padding:10px;border:1px solid var(--rule);border-radius:var(--radius-lg);background:var(--surface);min-height:44px}.q-template[aria-checked=true]{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}.q-template span{color:var(--ink-soft);font-size:.85rem}.q-template-icon{width:40px;height:28px;stroke:var(--ink);stroke-width:1.6;fill:none}.q-group{display:grid;gap:10px}.q-group h4{margin:0;font-size:.95rem}.q-field{display:grid;gap:4px}.q-field label{display:flex;align-items:baseline;gap:8px;color:var(--ink-soft);font-size:.9rem}.q-field-input{display:flex;align-items:center;gap:8px}.q-field-input input{flex:1;min-height:44px;padding:0 10px;border:1px solid var(--rule);border-radius:var(--radius-sm);background:var(--surface);font-variant-numeric:tabular-nums}.q-field.is-invalid .q-field-input input{border-color:var(--danger)}.q-unit{color:var(--ink-soft);min-width:2.5em}.q-slider{width:100%;min-height:32px;accent-color:var(--argument)}.q-option legend{display:flex;align-items:center}.q-option .q-help{flex-basis:100%}.q-assumptions summary{cursor:pointer;color:var(--argument);min-height:36px}.q-plot{margin:0;display:grid;gap:4px}.q-legend{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:.85rem;color:var(--ink-soft)}.q-legend-item{display:inline-flex;align-items:center;gap:4px}.q-report{border-left:3px solid var(--verified);padding:4px 10px;display:grid;gap:2px}.q-report.is-off{border-left-color:var(--danger)}.q-report-title{font-weight:700;font-size:.95rem}.q-compare-actions{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.q-bars{display:grid;gap:4px;font-variant-numeric:tabular-nums}.q-bars>div{display:grid;grid-template-columns:1.5em 1fr;align-items:center;gap:6px}.q-bars i{display:block;height:10px;border-radius:5px;transition:none}.q-bar-T{background:var(--q-velocity)}.q-bar-V{background:var(--q-spring)}.q-derivation-head{display:flex;justify-content:space-between;align-items:baseline}.q-dsteps{list-style:none;padding:0;margin:0;display:grid;gap:8px}.q-dstep{border-left:3px solid var(--verified);padding:2px 0 2px 10px;display:grid;gap:2px}.q-dstep.is-approximation{border-left-color:var(--numerical)}.q-dstep.is-gap{border-left-color:var(--argument)}.q-dstep.is-completed{border-left-color:var(--argument);background:color-mix(in srgb,var(--argument) 6%,transparent)}.q-dstep-head{display:flex;align-items:baseline;gap:8px}.q-dstep-no{color:var(--ink-soft);font-size:.8rem}.q-dstep-note{margin:0;color:var(--ink-soft);font-size:.9rem}.q-expand{justify-self:start}.q-details{margin:4px 0 0;padding-left:10px;border-left:1px dashed var(--rule);display:grid;gap:6px}.q-details dt{color:var(--ink-soft);font-size:.88rem}.q-details dd{margin:0}.q-gap{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.q-mathfield{flex:1 1 180px;min-height:44px;border:1px solid var(--argument);border-radius:var(--radius-sm);padding:4px 8px;font-size:1.1rem;background:var(--surface)}.q-checks{color:var(--verified);font-size:.9rem}.q-derive,.q-practice,.q-derive-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.q-derive{display:grid}.q-predict{display:grid;gap:8px}.q-lead{margin:0}.q-predict-form{display:grid;gap:8px}.q-predict-value{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.q-predictions{margin:0;padding-left:18px;display:grid;gap:4px}.q-predictions .is-judged .q-verdict{font-weight:700}.q-model{display:grid;gap:12px}.q-model h4{margin:0 0 4px;font-size:.95rem}.q-model ul{margin:0;padding-left:18px}.q-forces{list-style:none;padding:0!important;display:grid;gap:8px}.q-forces li.is-hot{background:color-mix(in srgb,var(--marker) 40%,transparent);border-radius:var(--radius-sm)}.q-3d-canvas canvas{width:100%;height:auto;border-radius:var(--radius-sm);touch-action:none}@media (min-width: 720px){.q-board{height:320px}}@media (max-height: 560px){.q-stage{position:static}}.q-drawing-note{margin:0;font-size:.75rem;color:var(--ink-soft);line-height:1.3}.q-board-oscillator,.q-board-chain{height:min(22vh,190px)}.q-board-string{height:min(24vh,200px)}.q-explore,.q-card{display:grid;gap:8px;min-width:0}.q-explore-actions,.q-mixer-actions{display:flex;flex-wrap:wrap;gap:6px}.q-card{border:1px solid var(--rule);border-radius:var(--radius-sm);padding:8px 10px;background:var(--surface)}.q-gauges{list-style:none;margin:0;padding:0;display:grid;gap:6px}.q-gauge{display:grid;grid-template-columns:minmax(70px,auto) 1fr;gap:2px 8px;align-items:center;font-size:.9rem}.q-gauge-value{grid-column:1 / -1;color:var(--ink-soft);font-size:.85rem}.q-gauge-bar{position:relative;height:10px;border-radius:5px;background:linear-gradient(90deg,#8fb3ff,#8fb3ff 48%,#17795a 49%,#17795a 51%,#f3b37a 52%,#f3b37a)}.q-gauge-bar b{position:absolute;top:-3px;width:4px;height:16px;margin-left:-2px;background:var(--ink);border-radius:2px}.q-mode-cards{list-style:none;margin:0;padding:0;display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.q-mode-cards li{display:grid;gap:4px;min-width:0}.q-mode-card{display:grid;gap:2px;text-align:left;border:2px solid var(--rule);border-radius:var(--radius-sm);background:var(--paper);padding:6px 8px;font:inherit;color:inherit;min-height:44px}.q-mode-card.is-solo{box-shadow:0 0 0 3px color-mix(in srgb,var(--argument) 35%,transparent)}.q-shape{position:relative;display:flex;gap:4px;height:32px;align-items:stretch}.q-shape:before{content:"";position:absolute;left:0;right:0;top:50%;border-top:1px solid var(--rule)}.q-shape span{position:relative;flex:1 1 0}.q-shape i{position:absolute;left:20%;right:20%;display:block;border-radius:2px}.q-numerics-rows{margin:0;display:grid;gap:6px}.q-numerics-rows div{display:grid;grid-template-columns:minmax(90px,30%) 1fr;gap:8px}.q-numerics-rows dt{font-weight:700;font-size:.85rem}.q-numerics-rows dd{margin:0;display:grid;gap:2px;min-width:0;font-size:.9rem}.q-boundary{margin:0;padding-left:18px;display:grid;gap:4px;font-size:.9rem}.q-reasons{margin:2px 0;padding-left:18px;color:var(--danger);font-size:.9rem}.q-spacetime{margin:0;display:grid;gap:4px}.q-spacetime-map{position:relative;width:100%;height:220px;border-radius:var(--radius-sm);overflow:hidden;border:1px solid var(--rule);cursor:crosshair}.q-spacetime-map canvas{width:100%;height:100%;image-rendering:pixelated;display:block}.q-spacetime-cursor{position:absolute;left:0;right:0;height:2px;margin-top:-1px;background:var(--argument);box-shadow:0 0 0 1px #ffffffb3;pointer-events:none}.q-mode-sketch{width:72px;height:24px}.q-mode-sketch line{stroke:var(--rule);stroke-width:1}.q-mode-sketch polyline{fill:none;stroke-width:2}.q-card>*,.q-explore>*{min-width:0;max-width:100%}.q-warn{color:var(--danger);font-weight:600}.q-card>.q-badge{justify-self:start}.fields .f-stage{position:static;isolation:isolate}.f-board{height:auto;aspect-ratio:1 / 1;max-height:60vh}.fields .q-time{white-space:nowrap;min-width:8ch;font-size:.85rem}.f-board.is-placing{outline:2px dashed var(--argument);outline-offset:-2px;cursor:crosshair}.f-toolbar{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.fields .chip.is-on,.fields .chip[aria-pressed=true]{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink);font-weight:700}.f-legend{display:grid;gap:2px;font-size:.85rem;color:var(--ink-soft)}.f-legend p{margin:0}.f-legend svg{vertical-align:middle}.f-level{font-variant-numeric:tabular-nums}.f-check.is-ok{color:var(--verified)}.f-check.is-off{color:var(--danger);font-weight:700}.f-live{margin:0;font-size:.9rem;font-variant-numeric:tabular-nums}.f-selected{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0}.f-selected i,.f-sources i,.f-key i{display:inline-block;width:10px;height:10px;border-radius:50%}.f-sources{display:flex;flex-wrap:wrap;gap:6px}.f-table{width:100%;border-collapse:collapse;font-size:.85rem;font-variant-numeric:tabular-nums;display:block;overflow-x:auto}.f-table th,.f-table td{padding:4px 6px;border-bottom:1px solid var(--rule);text-align:right;white-space:nowrap}.f-table th[scope=row]{text-align:left}.f-table tr.is-hot{background:color-mix(in srgb,var(--argument) 10%,transparent)}.f-table tr.f-total{font-weight:700}.f-charges{width:100%;border-collapse:collapse}.f-charges th,.f-charges td{padding:2px 4px;text-align:left;vertical-align:top}.f-charges input{width:100%;min-width:0;min-height:40px;padding:0 6px;border:1px solid var(--rule);border-radius:var(--radius-sm)}.f-charges input[aria-invalid=true],.f-editor input[aria-invalid=true]{border-color:var(--danger)}.f-row-actions{white-space:nowrap}.f-editor fieldset{border:1px solid var(--rule);border-radius:var(--radius-lg);padding:8px 10px;display:grid;gap:8px;min-width:0}.f-editor .q-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:8px 10px}.f-editor .q-field{min-width:0;align-content:start}.f-editor .q-field-label{font-size:.86rem;color:var(--ink-soft);overflow-wrap:break-word}.f-editor .q-field input,.f-editor .q-field select{width:100%;min-width:0;box-sizing:border-box;min-height:40px;padding:0 8px;border:1px solid var(--rule);border-radius:var(--radius-sm)}.f-charges{table-layout:fixed}.f-charges th{font-size:.82rem;font-weight:600}.f-charges th:first-child{width:3.8em;overflow-wrap:anywhere}.f-charges th:last-child{width:5.6em}.f-charges input{box-sizing:border-box}.f-editor .has-error input{border-color:var(--danger)}.f-variants{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.f-variant{margin:0;display:grid;gap:4px;justify-items:center;font-size:.82rem}.f-mini{max-width:100%;height:auto;border-radius:var(--radius-sm)}.f-save{display:flex;gap:6px}.f-save input{flex:1;min-height:40px;padding:0 8px;border:1px solid var(--rule);border-radius:var(--radius-sm)}.f-nulls,.f-axes{margin:0;padding-left:18px}.f-formula{display:grid;gap:2px}.f-topics{flex-wrap:wrap}.f-map-panel{display:grid;gap:8px}.quantum .qm-stage{position:static;isolation:isolate}.qm-ladder{height:min(42vh,340px)}.qm-density{height:min(32vh,260px)}.qm-wave{height:min(30vh,240px)}.quantum .q-time{white-space:nowrap;min-width:8ch;font-size:.85rem}.qm-scale{margin:0}.qm-legend{display:flex;flex-wrap:wrap;gap:4px 14px;margin:0;font-size:.85rem;color:var(--ink-soft)}.qm-legend svg{vertical-align:middle}.qm-level{display:grid;gap:4px;padding:8px 10px;border:1px solid var(--rule);border-left:4px solid #17795a;border-radius:var(--radius-sm);min-width:0}.qm-level .q-help{margin:0}.qm-interval{display:grid;gap:4px}.qm-prob{margin:0;font-variant-numeric:tabular-nums}.qm-result{margin:4px 0;font-variant-numeric:tabular-nums}.qm-phasors{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px}.qm-phasors .q-help{flex-basis:100%;margin:0}.qm-phasor{margin:0;display:grid;justify-items:center;font-size:.78rem;font-variant-numeric:tabular-nums}.qm-levels,.qm-gram{border-collapse:collapse;font-size:.86rem;font-variant-numeric:tabular-nums;display:block;overflow-x:auto}.qm-levels th,.qm-levels td,.qm-gram td{padding:4px 8px;border-bottom:1px solid var(--rule);text-align:right;white-space:nowrap}.qm-levels tr.is-on{background:color-mix(in srgb,#17795a 12%,transparent)}.qm-gram td.is-diag{font-weight:700}.qm-ladders{display:flex;flex-wrap:wrap;gap:10px}.qm-ladder-mini{margin:0;display:grid;justify-items:center;font-size:.8rem}.qm-templates{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:6px}.qm-template{display:grid;gap:2px;justify-items:center;padding:4px;border:1px solid var(--rule);border-radius:var(--radius-sm);background:var(--paper, #fff);font-size:.78rem;min-height:44px}.qm-template[aria-checked=true]{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink);font-weight:700}.qm-sketch{display:block;max-width:100%}.qm-editor fieldset{border:1px solid var(--rule);border-radius:var(--radius-lg);padding:8px 10px;display:grid;gap:8px;min-width:0}.qm-editor .q-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:8px 10px}.qm-editor .q-field{min-width:0;align-content:start}.qm-editor .q-field-label{font-size:.86rem;color:var(--ink-soft);overflow-wrap:break-word}.qm-editor .q-field input,.qm-editor .q-field select{width:100%;min-width:0;box-sizing:border-box;min-height:40px;padding:0 8px;border:1px solid var(--rule);border-radius:var(--radius-sm)}.qm-editor .has-error input,.qm-editor input[aria-invalid=true],.qm-editor select[aria-invalid=true]{border-color:var(--danger)}.qm-terms{width:100%;border-collapse:collapse;table-layout:fixed}.qm-terms th,.qm-terms td{padding:2px 4px;text-align:left;vertical-align:top;font-size:.84rem}.qm-terms th:first-child{width:4em}.qm-terms th:last-child{width:2.8em}.qm-terms input[type=range]{width:100%}.qm-terms select,.qm-num{width:100%;min-width:0;box-sizing:border-box;min-height:36px;padding:0 4px;border:1px solid var(--rule);border-radius:var(--radius-sm)}.qm-states,.qm-probability,.qm-observables,.qm-evolution,.qm-scattering,.qm-compare{display:grid;gap:8px;min-width:0}:root{--lemma: #3550e0;--quanta: #0f7f8c;--ohm: #a8590a;--mole: #2e7d32;--accent: var(--ink)}.app[data-workspace=lemma]{--accent: var(--lemma)}.app[data-workspace=quanta]{--accent: var(--quanta)}.app[data-workspace=ohm]{--accent: var(--ohm)}.app[data-workspace=mole]{--accent: var(--mole)}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--lemma: #8c9dff;--quanta: #4fc7d4;--ohm: #f0b060;--mole: #7fd18a}}.brand-home{display:inline-flex;align-items:baseline;gap:6px;border:0;background:none;padding:0;font:inherit;color:var(--accent);font-weight:700;letter-spacing:-.01em;min-height:44px}.ws-mark{display:inline-grid;place-items:center;width:1.5em;height:1.5em;border-radius:50%;font-weight:700;background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent);font-size:.9em}.ws-lemma{--accent: var(--lemma)}.ws-quanta{--accent: var(--quanta)}.ws-ohm{--accent: var(--ohm)}.ws-mole{--accent: var(--mole)}.home{display:grid;gap:10px}.ws-switch{display:grid;grid-template-columns:1fr 1fr;gap:8px}.ws-tab{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1.5px solid var(--rule);background:var(--surface);border-radius:var(--radius-lg);text-align:left;min-height:56px;color:var(--ink)}.ws-tab[aria-selected=true]{border-color:var(--accent);box-shadow:inset 0 0 0 1.5px var(--accent)}.ws-tab strong{color:var(--accent);font-size:1.1rem}.ws-tagline{display:block;font-size:.85rem;color:var(--ink-soft)}.ws-about{margin:0;font-size:.92rem}.search input{width:100%;min-height:44px;padding:0 12px;border:1px solid var(--rule);border-radius:999px;background:var(--surface)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.module-seq{list-style:none;margin:0;padding:0;display:grid;gap:8px;counter-reset:none}.module-card>.group{margin:0}.module-head{display:flex;align-items:center;gap:12px;width:100%;padding:10px 12px;border:1px solid var(--rule);border-left:4px solid var(--accent);background:var(--surface);border-radius:var(--radius-lg);text-align:left;min-height:56px}.module-card.is-open .module-head{border-bottom-left-radius:0;border-bottom-right-radius:0}.module-no{flex:none;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;font-weight:700;background:var(--accent);color:#fff}.module-name{flex:1;min-width:0;display:grid}.module-name .muted{font-size:.82rem}.module-score{font-size:.82rem;white-space:nowrap}.module-body{display:grid;gap:8px;padding:10px 12px;border:1px solid var(--rule);border-top:0;border-radius:0 0 var(--radius-lg) var(--radius-lg);background:var(--surface)}.module-body .module-blurb{margin:0}.module-mine{margin:0;font-size:.9rem}.continue-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}.continue-card{display:flex;align-items:center;gap:10px;width:100%;padding:8px 12px;border:1px solid var(--rule);background:var(--surface);border-radius:var(--radius-lg);text-align:left;min-height:52px}.continue-text{display:grid;min-width:0}.continue-text strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.continue-text .muted{font-size:.85rem}.this-notebook .nb-tools,.exports{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.exports .field-label{flex-basis:100%}.import-file{display:inline-block;margin-top:6px}.label-chip{display:inline-flex;align-items:center;gap:3px;padding:1px 8px;border-radius:999px;font-size:.78rem;white-space:nowrap;border:1px solid currentColor;background:var(--surface);line-height:1.6}.label-exact{color:var(--verified)}.label-transformation{color:var(--verified);border-style:dashed}.label-numerical{color:var(--numerical)}.label-reasoning{color:var(--argument)}.label-cited{color:var(--cited)}.label-input{color:var(--ink-soft)}.label-counts{display:flex;flex-wrap:wrap;gap:6px}.step-headline{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}.step-headline .step-head{flex:1;min-width:0}.step-fold{border:0;background:none;padding:0 4px;min-width:32px;min-height:32px;color:var(--ink-soft);font-size:1rem}.step.is-folded .step-title{color:var(--ink-soft)}.step.is-dimmed{opacity:.55}.derivation{display:grid;gap:6px}.timeline-tools{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 12px;align-items:center}.label-filter{display:flex;flex-wrap:wrap;gap:4px}.label-toggle{border:0;background:none;padding:0;border-radius:999px}.label-toggle.is-on .label-chip{background:var(--ink);color:var(--surface);border-color:var(--ink)}.timeline-nav{display:flex;gap:12px;flex-wrap:wrap;font-size:.9rem}.running-bar{display:flex;align-items:center;gap:10px;padding:8px 16px;background:var(--surface);border-top:1px solid var(--rule);font-size:.92rem}.running-bar>span:nth-child(2){flex:1;min-width:0}.running-dot{display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--accent);animation:lemma-pulse 1.2s ease-in-out infinite}@keyframes lemma-pulse{50%{opacity:.3}}.jobs-chip{display:inline-flex;align-items:center;gap:4px}.toast-info{border-left-color:var(--accent);display:flex;gap:12px;align-items:center}.jobs-list{list-style:none;padding:0;margin:0;display:grid;gap:8px}.jobs-list li{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.jobs-list li>span{flex:1;min-width:12em}.session{display:grid;gap:10px}.session h4{margin:6px 0 2px}.session p{margin:2px 0}.session-branch{border-top:1px solid var(--rule);padding-top:8px;display:grid;gap:4px;min-width:0}.session-object{overflow-x:auto}.session-vars{border-collapse:collapse;font-size:.9rem;width:100%;display:block;overflow-x:auto}.session-vars th,.session-vars td{padding:3px 8px;border-bottom:1px solid var(--rule);text-align:left;vertical-align:top}.session-list{margin:0;padding-left:18px;font-size:.92rem}.versions{display:grid;gap:10px}.version-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.version-list li{display:grid;gap:4px;padding:8px 10px;border:1px solid var(--rule);border-radius:var(--radius-sm);background:var(--surface)}.version-list li.is-named{border-left:4px solid var(--accent)}.version-actions{display:flex;gap:6px;flex-wrap:wrap}.q-board-wrap,.q-plot{position:relative}.q-fit{position:absolute;top:6px;right:6px;z-index:2;border:1px solid var(--rule);background:var(--surface);border-radius:999px;padding:2px 10px;font-size:.82rem;min-height:32px}.plane-zoom .is-kept{font-weight:700;color:var(--accent)}.motion-picker{flex-wrap:wrap}@media (prefers-reduced-motion: reduce){:root:not([data-motion=full]) *,:root:not([data-motion=full]) *:before,:root:not([data-motion=full]) *:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}:root[data-motion=reduce] *,:root[data-motion=reduce] *:before,:root[data-motion=reduce] *:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.circuit-pad{display:flex;flex-direction:column;gap:8px}.circuit-pad.is-full{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;background:var(--paper);overflow:auto;padding:max(10px,env(safe-area-inset-top)) 12px 12px}.circuit-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.circuit-toolbar .btn[aria-pressed=true]{background:var(--ink);color:var(--paper)}.overlay-toggles{display:inline-flex;gap:4px;margin-left:auto}.overlay-toggles .toggle{min-width:40px;min-height:36px;padding:0 8px;border-radius:999px;font-weight:700;border:1px solid var(--rule);background:var(--surface);color:var(--ink-soft)}.overlay-toggles .toggle[aria-pressed=true]{border-color:var(--ink);color:var(--ink)}.overlay-toggles .toggle[aria-pressed=false]{text-decoration:line-through;opacity:.55}.canvas-controls{position:absolute;top:8px;right:8px;z-index:2;display:flex;flex-direction:column;gap:6px}.canvas-controls button{display:grid;place-items:center;width:40px;height:40px;padding:0;border-radius:10px;border:1px solid var(--rule);background:color-mix(in srgb,var(--surface) 88%,transparent);color:var(--ink);box-shadow:0 1px 3px #00000014}.canvas-controls button[aria-pressed=true]{border-color:var(--ink)}.palette{display:flex;flex-wrap:wrap;gap:4px;width:100%}.palette button{display:grid;place-items:center;min-width:52px;min-height:52px;padding:4px 6px;border:1px solid var(--rule);background:var(--surface);border-radius:var(--radius-sm);line-height:1.1}.palette button span{font-size:1.25rem}.palette button small{font-size:.68rem;color:var(--ink-soft);max-width:64px;text-align:center}.palette button[aria-checked=true]{border-color:var(--argument);box-shadow:inset 0 0 0 1.5px var(--argument)}.edit-actions{display:flex;gap:6px;margin-left:auto}.circuit-help{margin:0;color:var(--ink-soft);font-size:.92rem}.canvas-frame{position:relative}.circuit-canvas{display:block;width:100%;background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-lg);touch-action:none;user-select:none;-webkit-user-select:none}.circuit-canvas.mode-static{touch-action:auto}.circuit-canvas.tool-active{cursor:crosshair}.circuit-canvas .canvas-bg{pointer-events:all}.circuit-canvas .grid-dot{fill:var(--rule)}.circuit-canvas .wire-line{fill:none;stroke-width:.09;stroke-linecap:round;stroke-linejoin:round}.circuit-canvas .wire-hit{fill:none;stroke:transparent;stroke-width:.7;stroke-linecap:round}.circuit-canvas .wire.is-on .wire-line{stroke-width:.17;filter:drop-shadow(0 0 .08px var(--focus))}.circuit-canvas .junction{fill:var(--ink)}.circuit-canvas .part-hit{fill:transparent}.circuit-canvas .part-line{fill:none;stroke:var(--ink);stroke-width:.09;stroke-linecap:round;stroke-linejoin:round}.circuit-canvas .part-body{fill:var(--surface)}.circuit-canvas .contact,.circuit-canvas .label-dot{fill:var(--ink)}.circuit-canvas .polarity path{fill:none;stroke:var(--ink);stroke-width:.06}.circuit-canvas .label-flag{fill:var(--surface);stroke:var(--argument);stroke-width:.06}.circuit-canvas .label-text{font-size:.42px;fill:var(--argument);font-weight:700}.circuit-canvas .part-text{font-size:.42px;fill:var(--ink-soft);pointer-events:none}.circuit-canvas .part-id{fill:var(--ink);font-weight:700}.circuit-canvas .part.is-selected .part-line{stroke:var(--argument);stroke-width:.15}.circuit-canvas .part.is-selected .part-hit{fill:color-mix(in srgb,var(--argument) 12%,transparent)}.circuit-canvas .part.is-hot .part-line{stroke:var(--danger);stroke-width:.15}.circuit-canvas [data-part],.circuit-canvas [data-wire]{outline:none}.circuit-canvas .part:focus-visible .part-hit{fill:color-mix(in srgb,var(--focus) 18%,transparent);stroke:var(--focus);stroke-width:.06}.circuit-canvas .wire:focus-visible .wire-line{stroke-width:.2}.circuit-canvas .part-flow{stroke:var(--verified);stroke-width:.08}.circuit-canvas .part-flow.is-emphasised{stroke-width:.14}.circuit-canvas .polarity-badges circle{fill:var(--argument)}.circuit-canvas .polarity-badges path{stroke:var(--surface);stroke-width:.07;fill:none}.circuit-canvas .arrow-head{fill:var(--verified)}.circuit-canvas .arrow-head-ink{fill:var(--ink)}.circuit-canvas .flow-dots{stroke:var(--verified);stroke-width:.13;stroke-linecap:round;stroke-dasharray:.01 .5;animation:ohm-flow 2s linear infinite;opacity:.9;pointer-events:none}.circuit-canvas .flow-arrow{stroke:var(--verified);stroke-width:.07;pointer-events:none;opacity:0}@keyframes ohm-flow{to{stroke-dashoffset:-.51}}@media (prefers-reduced-motion: reduce){.circuit-canvas .flow-dots{animation:none;opacity:0}.circuit-canvas .flow-arrow{opacity:1}}.circuit-canvas .anchor{fill:none;stroke:var(--argument);stroke-width:.05;opacity:.7}.circuit-canvas .wire-draft circle{fill:var(--argument)}.circuit-canvas .wire-draft polyline{fill:none;stroke:var(--argument);stroke-width:.07;stroke-dasharray:.2 .15}.circuit-canvas .probe path{stroke:var(--ink);stroke-width:.04}.circuit-canvas .probe-red path{fill:#d33}.circuit-canvas .probe-black path{fill:var(--ink)}.circuit-canvas .probe text{font-size:.4px;font-weight:700;fill:var(--ink)}.circuit-canvas .probe-red text{fill:#d33}.schematic-figure{max-width:420px}.inspector{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;padding:10px 12px;background:var(--surface);border:1px solid var(--rule);border-left:4px solid var(--argument);border-radius:var(--radius-sm)}.part-inspector{flex-direction:column;align-items:stretch;min-width:0;max-width:100%}.part-inspector>*{min-width:0;max-width:100%}.inspector-head{display:flex;justify-content:space-between;align-items:center;gap:8px}.readings{display:grid;grid-template-columns:minmax(0,1fr);gap:4px 12px;margin:0}@media (min-width: 560px){.readings{grid-template-columns:repeat(3,minmax(0,1fr))}}.readings div{display:flex;gap:8px;align-items:baseline}.readings dt{font-weight:700;min-width:1.2em}.readings dd{margin:0;min-width:0;overflow-x:auto}.reading-v dt{color:var(--argument)}.reading-i dt{color:var(--verified)}.reading-p dt{color:var(--numerical)}.equation{overflow-x:auto;max-width:100%}.equation .katex-display{margin:.4em 0}.value-editor{display:flex;flex-direction:column;gap:6px}.value-editor .slider{display:flex;flex-direction:column;gap:2px}.value-editor input[type=range]{width:100%;min-height:36px;accent-color:var(--argument)}.value-entry{display:flex;gap:6px;align-items:center;min-width:0}.value-entry input{flex:1;min-width:0;min-height:40px;padding:0 10px;border:1.5px solid var(--rule);border-radius:var(--radius-sm);background:var(--surface)}.value-entry .unit{color:var(--ink-soft)}.meter{margin-top:8px;padding:10px 12px;background:var(--surface);border:1px solid var(--rule);border-left:4px solid var(--numerical);border-radius:var(--radius-sm)}.meter-head{display:flex;justify-content:space-between;align-items:center}.meter-display{display:block;margin:8px 0 4px;padding:8px 12px;border-radius:var(--radius-sm);background:#1d2a22;color:#b6f5c8;font:700 1.9rem/1.1 ui-monospace,SFMono-Regular,monospace;letter-spacing:.04em;text-align:right}.meter-display.is-blank{color:#6d8a76}.meter-warning{border-left:3px solid var(--danger);padding-left:8px}.probe-line{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:4px 0}.probe-red{color:#c62828;font-weight:700}.probe-black{font-weight:700}.legend{margin-top:6px}.legend-bar{height:10px;border-radius:999px}.legend-ends{display:flex;justify-content:space-between;font-size:.9rem}.legend-nodes{display:flex;flex-wrap:wrap;gap:4px 8px;list-style:none;padding:0;margin:6px 0 0}.legend-nodes button{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:2px 10px;border:1px solid var(--rule);border-radius:999px;background:var(--surface)}.legend-nodes .swatch{width:14px;height:14px;border-radius:50%;border:1px solid var(--rule)}.legend-power{margin:6px 0 0;font-size:.9rem}.circuit-issues{list-style:none;padding:0;margin:4px 0 0;display:flex;flex-direction:column;gap:6px}.circuit-issues button{display:flex;gap:8px;align-items:baseline;width:100%;text-align:left;padding:8px 10px;background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-sm)}.circuit-issues button[aria-pressed=true]{border-color:var(--ink)}.issue-error button{border-left:4px solid var(--danger)}.issue-warning button{border-left:4px solid var(--numerical)}.issue-info button{border-left:4px solid var(--rule)}.issue-mark{font-weight:700;flex:none}.issue-text{flex:1;min-width:0}.issue-error .issue-mark{color:var(--danger)}.issue-warning .issue-mark{color:var(--numerical)}.circuit-status{margin:2px 0 0}.top{align-items:center;gap:8px}.home-button{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 10px 0 6px;border:1px solid transparent;border-radius:999px;background:transparent;color:var(--ink)}.home-button .brand{font-size:1.2rem;font-weight:800;letter-spacing:-.01em}.home-button[aria-current=page]{border-color:var(--rule);background:var(--surface)}.star{border:0;background:none;color:var(--numerical);font-size:1.25rem;min-width:36px;min-height:36px;padding:0}.star[aria-pressed=false]{color:var(--ink-soft)}.sync-saved{color:var(--verified)}.section-chip{display:inline-flex;align-items:center;gap:5px;min-height:36px;padding:0 10px;border-radius:999px;border:1.5px solid var(--ink);background:var(--surface);font-weight:700;font-size:.88rem;white-space:nowrap}.section-mark{font-family:"Latin Modern Math","STIX Two Math",serif;font-weight:700}.section-lemma .section-mark,.section-chip.section-lemma .section-mark{color:var(--argument)}.section-ohm .section-mark,.section-chip.section-ohm .section-mark{color:var(--numerical)}.section-quanta .section-mark,.section-chip.section-quanta .section-mark{color:var(--cited)}.section-mole .section-mark,.section-chip.section-mole .section-mark{color:var(--mole)}.avatar-button{border:0;background:none;padding:0;border-radius:50%;min-width:44px;min-height:44px;display:grid;place-items:center}.avatar{border-radius:50%;object-fit:cover;display:inline-block;flex:none}.avatar-initials{display:inline-grid;place-items:center;background:var(--argument);color:#fff;font-weight:800}@media (max-width: 420px){.section-chip .section-name{display:none}}.top-spacer{flex:1;min-width:0}@media (max-width: 340px){.home-button .brand{display:none}}.section-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.section-list button{display:flex;gap:12px;align-items:flex-start;width:100%;text-align:left;padding:12px;border:1px solid var(--rule);border-radius:var(--radius-sm);background:var(--surface)}.section-list button[aria-current=true]{border-color:var(--ink);box-shadow:inset 3px 0 0 var(--ink)}.section-list button>span:last-child{display:flex;flex-direction:column;gap:2px}.section-list .section-mark{font-size:1.5rem;line-height:1}.dashboard{display:flex;flex-direction:column;gap:4px;padding-bottom:16px}.hello{display:flex;gap:14px;align-items:center;padding:8px 0 4px}.hello h2{font-size:1.35rem}.hello p{margin:2px 0 0}.hello .bio{font-style:italic;color:var(--ink-soft)}.nb-cards{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.nb-card{display:flex;align-items:stretch;background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-sm)}.nb-card.is-favorite{border-left:4px solid var(--numerical)}.nb-card-open{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;text-align:left;padding:10px 12px;border:0;background:none}.nb-card .star{align-self:center;margin-right:6px}.nb-why{color:var(--numerical);font-size:.9rem}.nb-solved{color:var(--verified);font-size:.9rem}.section-cards{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.section-cards button{width:100%;height:100%;display:flex;flex-direction:column;gap:4px;text-align:left;padding:12px;border:1px solid var(--rule);border-radius:var(--radius-sm);background:var(--surface)}.section-cards button[aria-current=true]{border-color:var(--ink)}.section-cards .section-mark{font-size:1.6rem;line-height:1}.saved li{display:flex;align-items:center;gap:4px}.saved li>.saved-open{flex:1;min-width:0}.saved .star,.saved .link{flex:none}.section-head h3{font-size:1.15rem;margin-bottom:2px}.section-head p{margin:0}.profile-head{display:flex;gap:14px;align-items:center;margin-bottom:8px}.profile-picture{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.file-button{position:relative;overflow:hidden;display:inline-grid;place-items:center}.file-button input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.counter{display:block;text-align:right;font-size:.8rem;margin-top:-4px}.section-progress{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}.section-progress-head{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap}.module-progress{list-style:none;padding:0;margin:4px 0 0;font-size:.92rem}.module-progress li{display:flex;justify-content:space-between;gap:8px;padding:2px 0}.account-end{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.plot .plot-band{fill:color-mix(in srgb,var(--ink) 7%,transparent)}.plot .curve-steady{stroke:var(--ink-soft);stroke-width:1.4;stroke-dasharray:5 4}.plot .curve-dissipated{stroke:var(--danger);stroke-width:2}.plot .curve-delivered{stroke:var(--argument);stroke-width:2;stroke-dasharray:6 3}.part .capacitor-plates,.part .inductor-coil{stroke-width:.1}.part .wave-glyph{stroke-width:.07}.part .flip-mark{stroke-width:.05;stroke-dasharray:none}.dynamic-panel{display:flex;flex-direction:column;gap:8px;margin-top:10px}.dyn-facts{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:6px;font-size:.92rem}.dyn-facts li{border:1px solid var(--rule);border-radius:999px;padding:2px 10px;background:var(--surface)}.dyn-facts .case{font-weight:700}.dyn-facts .warn{color:var(--danger);border-color:var(--danger)}.scope{margin:0}.scope-svg{width:100%;height:auto;display:block;border-radius:var(--radius-sm);touch-action:none;cursor:crosshair}.scope-bg{fill:#10151d}.scope-grid{stroke:#ffffff1a;stroke-width:.6}.scope-axis{stroke:#ffffff59;stroke-width:1}.scope-transient{fill:#ffffff12}.scope-trace{fill:none;stroke-width:1.8;vector-effect:non-scaling-stroke}.scope-steady{fill:none;stroke-width:1.1;stroke-dasharray:4 4;opacity:.6}.scope-ground{stroke-width:2}.scope-cursor{stroke:#f2f2f2;stroke-width:1;stroke-dasharray:3 3}.scope-legend{display:flex;flex-wrap:wrap;gap:10px;font-size:.82rem;margin-top:4px}.scope-readout{display:flex;flex-wrap:wrap;gap:4px 12px;font-variant-numeric:tabular-nums;font-size:.92rem}.scope-time{font-weight:700}.scope-controls{display:flex;flex-direction:column;gap:6px}.time-cursor{width:100%}.scope-buttons{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.timebase{display:inline-flex;align-items:center;gap:4px;border:1px solid var(--rule);border-radius:999px;padding:0 4px}.timebase button{border:0;background:none;min-width:32px;min-height:32px;font-size:1.1rem}.timebase span{font-variant-numeric:tabular-nums;font-size:.88rem}.channel-picker{display:flex;flex-wrap:wrap;gap:6px}.channel-picker .chip[aria-pressed=true]{border-color:var(--ink);background:var(--ink);color:var(--paper)}.scope-note{margin:0;font-size:.85rem}.phasors{margin:0;display:flex;flex-direction:column;align-items:center}.phasors svg{width:180px;height:180px}.phasor-circle{fill:none;stroke:var(--rule)}.phasor-axis{stroke:var(--rule)}.phasor-arrow{stroke-width:2.4}.phasor-shadow{stroke-width:1;stroke-dasharray:2 2}.phasors figcaption{font-size:.85rem;text-align:center}.energy h4,.signal-generator h4,.initial-value h4{margin:4px 0;font-size:.95rem}.energy ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:4px}.energy li{display:grid;grid-template-columns:9em 1fr 6em;align-items:center;gap:6px;font-size:.88rem}.energy-track{height:10px;background:var(--rule);border-radius:999px;overflow:hidden}.energy-fill{display:block;height:100%;background:var(--verified)}.energy-dissipated .energy-fill{background:var(--danger)}.energy-delivered .energy-fill{background:var(--argument)}.energy-value{text-align:right;font-variant-numeric:tabular-nums}.signal-generator,.initial-value{border-top:1px solid var(--rule);padding-top:8px;margin-top:8px;display:flex;flex-direction:column;gap:6px}.gen-fields{display:grid;grid-template-columns:1fr 1fr;gap:6px}.gen-fields .field input{width:100%}.dyn-inspector .check{display:flex;gap:8px;align-items:center;margin-top:8px}.circuit-canvas .state-badge{font-weight:700;fill:var(--verified)}.circuit-canvas .state-badge.state-off,.circuit-canvas .state-badge.state-cutoff{fill:var(--ink-soft)}.circuit-canvas .state-badge.state-saturation,.circuit-canvas .state-badge.state-satp,.circuit-canvas .state-badge.state-satm,.circuit-canvas .state-badge.state-triode,.circuit-canvas .part-npn .state-badge.state-saturation,.circuit-canvas .part-pnp .state-badge.state-saturation{fill:var(--numerical)}.circuit-canvas .part-nmos .state-badge.state-saturation,.circuit-canvas .part-pmos .state-badge.state-saturation{fill:var(--verified)}.circuit-canvas .part.is-clipped .part-body{fill:color-mix(in srgb,var(--danger) 16%,var(--surface))}.circuit-canvas .diode-body.is-conducting{fill:color-mix(in srgb,var(--verified) 30%,var(--surface))}.circuit-canvas .opamp-signs{stroke-width:.07}.circuit-canvas .rails{font-size:.36px}.scope-band-clip{fill:#e6504629}.scope-band-conducts{fill:#50c88c1f}.band-key{display:inline-block;margin-right:8px}.band-clip{color:var(--danger)}.band-conducts{color:var(--verified)}.analog-panel{margin-top:10px;padding:10px 12px;background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:6px;min-width:0}.analog-panel h4,.device-model h4{margin:4px 0 0;font-size:.95rem}.device-states{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:6px}.chip.region-amp,.region-badge.region-amp{border-color:var(--verified);color:var(--verified)}.chip.region-out,.region-badge.region-out{border-color:var(--danger);color:var(--danger)}.region-badge{border:1px solid var(--rule);border-radius:999px;padding:2px 10px;font-size:.85rem;font-weight:700}.signal-path{display:flex;gap:10px;flex-wrap:wrap}.signal-path select{min-height:40px;min-width:96px;border:1.5px solid var(--rule);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);padding:0 8px}.small-signal{display:grid;grid-template-columns:minmax(0,1fr);gap:2px 12px;margin:0}@media (min-width: 560px){.small-signal{grid-template-columns:repeat(2,minmax(0,1fr))}}.small-signal div{display:flex;gap:8px;align-items:baseline;min-width:0}.small-signal dt{font-weight:700;min-width:2.4em}.small-signal dd{margin:0;min-width:0;overflow-x:auto}.device-card{flex-direction:column;align-items:stretch;min-width:0;max-width:100%}.device-card>*{min-width:0;max-width:100%}.device-values{border-collapse:collapse;width:100%;font-size:.92rem}.device-values th,.device-values td{text-align:left;padding:3px 6px;border-bottom:1px solid var(--rule)}.device-values thead th{color:var(--ink-soft);font-weight:600;font-size:.85rem}.device-values td{overflow-x:auto;max-width:11em}.device-checks{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:4px 12px;font-size:.9rem}.device-checks .ok span{color:var(--verified);font-weight:700}.device-checks .fail span{color:var(--danger);font-weight:700}.device-model{display:flex;flex-direction:column;gap:6px}.device-model .segmented{flex-wrap:wrap}.device-params{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:flex-end}.device-params .field{flex:1 1 130px;min-width:0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2px 6px}.device-params .field>span:first-child{grid-column:1 / -1}.device-params .field .unit{color:var(--ink-soft)}.device-params input{min-height:40px;width:100%;padding:0 8px;border:1.5px solid var(--rule);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink)}.analog-actions{display:flex;flex-wrap:wrap;gap:6px}.curve-plot{margin:4px 0;max-width:100%}.curve-plot svg{width:100%;height:auto;display:block}.curve-plot .plot-bg{fill:var(--paper);stroke:var(--rule)}.curve-plot .plot-grid{stroke:var(--rule);stroke-width:.5}.curve-plot .plot-axis{stroke:var(--ink-soft);stroke-width:.8}.curve-plot .plot-tick{font-size:9px;fill:var(--ink-soft)}.curve-plot .plot-axis-label{font-size:10px;fill:var(--ink);font-weight:600}.curve{fill:none;stroke-width:1.6;stroke-linejoin:round}.curve-ideal{stroke:var(--ink)}.curve-ideal-alt{stroke:var(--argument);stroke-dasharray:5 3}.curve-exact{stroke:var(--argument);opacity:.85}.curve-load{stroke:var(--numerical);stroke-width:1.8;stroke-dasharray:6 4}.curve-bound{stroke:var(--ink-soft);stroke-width:1;stroke-dasharray:2 3;fill:none}.curve.is-q-family{stroke-width:2.4}.curve-trail{fill:none;stroke:var(--danger);stroke-width:1;opacity:.35}.plot-point circle{stroke:var(--surface);stroke-width:1.5}.point-q circle{fill:var(--verified)}.point-sim circle{fill:none;stroke:var(--argument);stroke-width:2}.point-break circle{fill:var(--ink-soft)}.plot-point-label{font-size:10px;font-weight:700;fill:var(--ink)}.plot-cursor{fill:var(--danger);stroke:var(--surface);stroke-width:1.5}.curve-legend{display:flex;flex-wrap:wrap;gap:2px 12px;font-size:.82rem;color:var(--ink-soft)}.curve-legend>span{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.point-key.point-q{color:var(--verified)}.point-key.point-sim{color:var(--argument)}.point-key.point-cursor{color:var(--danger)}:root{--logic-1: #1f9d55;--logic-0: #3b4a6b;--logic-x: #c0392b;--trace-up: #d9822b;--trace-down: #2f6fd6;--trace-self: #b0458f}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--logic-1: #4fd88a;--logic-0: #8a9bc4}}:root[data-theme=dark]{--logic-1: #4fd88a;--logic-0: #8a9bc4}.circuit-canvas .block-body,.circuit-canvas .gate-body,.circuit-canvas .bubble{fill:var(--surface)}.circuit-canvas .pin.pin-1{stroke:var(--logic-1)}.circuit-canvas .pin.pin-0{stroke:var(--logic-0)}.circuit-canvas .block-word{font-size:.4px;fill:var(--ink);pointer-events:none}.circuit-canvas .block-word.pin-number{font-size:.3px;fill:var(--ink-soft)}.circuit-canvas .block-word.chip-model{font-size:.42px;font-weight:700}.circuit-canvas .block-word.block-mark{font-weight:700}.circuit-canvas .probe-lamp{fill:var(--surface)}.circuit-canvas .probe-lamp.is-lit{fill:#ff4d3d;filter:drop-shadow(0 0 .25px #ff4d3d)}.circuit-canvas .probe-lamp.is-x{fill:color-mix(in srgb,var(--logic-x) 25%,var(--surface))}.circuit-canvas .logic-in.is-high{fill:color-mix(in srgb,var(--logic-1) 30%,var(--surface))}.circuit-canvas .transistor-body.is-on{fill:color-mix(in srgb,var(--verified) 28%,var(--surface))}.circuit-canvas .heater-glow{fill:#ff6a2b;transition:opacity .15s}.circuit-canvas .heater-case{fill:none;stroke-dasharray:.12 .08}.circuit-canvas .motor-body{fill:var(--surface)}.circuit-canvas .motor-rotor line{stroke:var(--numerical);stroke-width:.09;stroke-linecap:round}.circuit-canvas .motor-rotor .motor-m{font-size:.5px;font-weight:700;fill:var(--ink)}.circuit-canvas .part.is-traced-up .part-line{stroke:var(--trace-up)}.circuit-canvas .part.is-traced-down .part-line{stroke:var(--trace-down)}.system-panel{display:grid;gap:.75rem;margin-top:.5rem}.system-panel h3{margin:.25rem 0;font-size:1rem}.analyzer{border:1px solid var(--rule);border-radius:10px;padding:.5rem;background:var(--surface)}.analyzer svg{width:100%;height:auto;touch-action:none;display:block}.analyzer .trace{fill:none;stroke:var(--logic-1);stroke-width:1.4}.analyzer .trace.is-bus{stroke:var(--trace-down)}.analyzer .trace-x{fill:color-mix(in srgb,var(--logic-x) 20%,transparent)}.analyzer .row-name{font-size:10px;fill:var(--ink);cursor:pointer}.analyzer .row-name.is-traced{fill:var(--trace-self);font-weight:700}.analyzer .row-level{font-size:10px;fill:var(--ink-soft)}.analyzer .cursor{stroke:var(--numerical);stroke-width:1}.analyzer .bus-code{font-size:8px;fill:var(--ink-soft)}.analyzer-controls{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap;font-size:.85rem}.analyzer-controls input[type=range]{flex:1 1 8rem}.signal-card{border-left:4px solid var(--trace-self);padding:.4rem .6rem;background:var(--surface);border-radius:8px}.signal-card .chain{display:flex;flex-wrap:wrap;gap:.25rem;align-items:center}.signal-card .chain span{padding:.05rem .35rem;border-radius:6px;background:var(--paper);font-size:.85rem}.signal-card .chain .is-up{border:1px solid var(--trace-up)}.signal-card .chain .is-down{border:1px solid var(--trace-down)}.signal-card .chain .is-self{border:1px solid var(--trace-self);font-weight:700}.measurements{list-style:none;padding:0;margin:0;display:grid;gap:.25rem}.measurements li{display:flex;justify-content:space-between;gap:.5rem;font-size:.9rem;border-bottom:1px dotted var(--rule)}.measurements .m-kind{font-size:.7rem;padding:0 .3rem;border-radius:4px;background:var(--paper);color:var(--ink-soft)}.measurements .m-kind.kind-model{color:var(--numerical)}.analysis-card{border:1px solid var(--rule);border-radius:10px;padding:.5rem;background:var(--surface);overflow-x:auto}.analysis-card h4{margin:0 0 .25rem;font-size:.95rem}.chip-view{border:1px solid var(--rule);border-radius:10px;padding:.5rem;background:var(--surface)}.chip-view svg{width:100%;height:auto;display:block}.chip-view .dip{fill:var(--paper);stroke:var(--ink);stroke-width:1.2}.chip-view .pin-box{stroke:var(--ink);stroke-width:1;fill:var(--surface)}.chip-view .pin-box.lv-1{fill:var(--logic-1)}.chip-view .pin-box.lv-0{fill:var(--logic-0)}.chip-view .pin-label{font-size:9px;fill:var(--ink)}.chip-view .pin-net{font-size:8px;fill:var(--ink-soft)}.chip-view .mini{fill:none;stroke:var(--logic-1);stroke-width:1}.block-inspector .params{display:grid;gap:.3rem}.block-inspector .param-row{display:flex;gap:.35rem;align-items:center;font-size:.85rem}.block-inspector .param-row label{flex:1 1 auto}.block-inspector .param-row input{width:6.5rem}.context-banner{display:grid;gap:.15rem;padding:.55rem .7rem;border-radius:10px;background:var(--surface);border:1px solid var(--rule);margin-bottom:.6rem}.context-banner .ctx-where{display:flex;gap:.35rem;align-items:center;flex-wrap:wrap;font-size:.85rem}.context-banner .ctx-section{font-weight:700;padding:0 .4rem;border-radius:6px;background:var(--paper)}.context-banner .ctx-object{font-size:.85rem;color:var(--ink-soft)}.context-banner .ctx-scope{font-size:.85rem}.tile .tile-scope{font-size:.7rem;color:var(--ink-soft);font-style:normal}.model-card{border:1px solid var(--rule);border-radius:10px;padding:.5rem .6rem;background:var(--surface)}.model-card.is-selected{border-color:var(--trace-self);box-shadow:0 0 0 2px color-mix(in srgb,var(--trace-self) 30%,transparent)}.model-card h4{margin:0 0 .25rem;font-size:.95rem}.model-card dl{display:grid;grid-template-columns:auto 1fr;gap:.1rem .5rem;margin:.25rem 0;font-size:.85rem}.model-card ul{margin:.2rem 0 .2rem 1rem;padding:0;font-size:.85rem}.model-card .m-head{font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-soft);margin-top:.3rem}.lab-card{border-left:4px solid var(--verified)}.system-panel,.system-panel>*{min-width:0;max-width:100%}.system-panel .system-method{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center}.system-panel .window-buttons{display:inline-flex;gap:.25rem}.measurements li{flex-wrap:wrap}.measurements li>span:last-child{margin-left:auto;text-align:right}.template-picker{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}.template-picker select{max-width:100%}.analysis-card summary{cursor:pointer}.signal-card dl.readings{display:grid;grid-template-columns:auto 1fr;gap:.1rem .5rem}.signal-card dl.readings>div{display:contents}.chip-view,.analyzer{overflow:hidden}.block-inspector{max-width:100%}.block-inspector .param-row{flex-wrap:wrap;min-width:0}.block-inspector select{max-width:100%;min-width:0}.block-inspector .equation,.model-card .equation,.analysis-card .equation{overflow-x:auto;max-width:100%}.model-card{max-width:100%;overflow-x:hidden}.chip-view .mini-analog{stroke:var(--trace-down)}.exercises li.is-locked button{opacity:.6;cursor:not-allowed}.locked-tag{font-style:normal;font-size:.8rem;color:var(--ink-soft);border:1px dashed var(--rule);border-radius:999px;padding:0 8px}.exercise-no{color:var(--ink-soft);font-variant-numeric:tabular-nums}.exercise-bar.is-locked{border-color:var(--rule)}.locked-note{flex:1;font-size:.9rem;color:var(--ink-soft)}.mole-model-line{margin:2px 0 0}.mole-stage{gap:8px}.mole-species{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}.mole-species-chip{position:relative;display:inline-flex;align-items:baseline;gap:6px;padding:4px 10px 8px;border:1px solid var(--rule);border-radius:var(--radius-sm);background:var(--surface);min-width:64px}.mole-species-chip.role-acid{border-color:color-mix(in srgb,var(--danger) 55%,var(--rule))}.mole-species-chip.role-base{border-color:color-mix(in srgb,var(--argument) 55%,var(--rule))}.mole-species-chip.role-spectator{border-style:dashed}.mole-conc{font-size:.78rem;color:var(--ink-soft);font-variant-numeric:tabular-nums}.mole-bar{position:absolute;left:0;bottom:0;height:3px;background:var(--mole);border-radius:2px}.mole-headline{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 12px;margin:0}.mole-ph{font-size:1.2rem;font-weight:700}.mole-equations,.mole-solution,.mole-compare,.mole-explore,.mole-charts,.mole-energy,.mole-derive,.mole-capture,.mole-model{display:grid;gap:8px;min-width:0}.mole-equations h4,.mole-solution h4,.mole-explore h4,.mole-charts h4,.mole-model h4{margin:6px 0 0;font-size:.95rem}.mole-reactions,.mole-eqs,.mole-approx,.mole-routes,.mole-constants{list-style:none;margin:0;padding:0;display:grid;gap:6px}.mole-eqs{counter-reset:eq}.mole-eq{display:grid;gap:2px;border-left:3px solid var(--rule);padding-left:8px}.mole-eq.kind-charge_balance{border-left-color:var(--argument)}.mole-eq.kind-equilibrium{border-left-color:var(--verified)}.mole-eq.kind-mass_balance{border-left-color:var(--numerical)}.mole-reaction{display:grid;gap:2px}.mole-reaction.is-equilibrium{border-left:3px solid var(--verified);padding-left:8px}.mole-table{border-collapse:collapse;width:100%;font-variant-numeric:tabular-nums;font-size:.9rem}.mole-table th,.mole-table td{text-align:right;padding:2px 6px;border-bottom:1px solid var(--rule)}.mole-table th:first-child,.mole-table td:first-child{text-align:left}.mole-iterations{font-size:.8rem}.mole-checks{list-style:none;margin:0;padding:0;font-size:.85rem}.mole-checks .is-ok{color:var(--verified)}.mole-checks .is-off{color:var(--danger)}.mole-routes li{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.mole-routes li>span{flex:1 1 12em}.mole-relation{display:grid;gap:4px}.mole-constants li{display:grid;gap:2px}.mole-constants li.is-user{border-left:3px solid var(--numerical);padding-left:8px}.mole-model li.is-off{color:var(--numerical)}.mole-sources{margin:0;padding-left:18px}.mole-preview{margin:0;color:var(--ink-soft)}.mole-preps{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.mole-cards{list-style:none;margin:0;padding:0;display:grid;gap:10px}.mole-card{display:grid;gap:6px;padding:10px;border:1px solid var(--rule);border-radius:var(--radius-lg);background:var(--surface)}.mole-card-acid{border-left:4px solid var(--danger)}.mole-card-base{border-left:4px solid var(--argument)}.mole-card-strong_acid,.mole-card-strong_base{border-left:4px solid var(--ink-soft)}.mole-card-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.mole-card .q-help{margin:0}.mole-card select,.mole-builder select{min-height:44px;border:1px solid var(--rule);border-radius:var(--radius-sm);background:var(--surface);padding:0 8px;max-width:100%}.mole-modes button{min-height:36px;font-size:.85rem}.mole-add{display:flex;flex-wrap:wrap;gap:6px}.mole-constant{display:grid;gap:6px}.mole-constant-fields{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.mole-constant-fields input{min-height:40px;width:8em;padding:0 8px;border:1px solid var(--rule);border-radius:var(--radius-sm)}.mole-constant-T{display:inline-flex;align-items:center;gap:4px}.mole-constant-T input{width:4.5em}.plot .curve-species-acid{stroke:var(--danger);stroke-width:2.2}.plot .curve-species-base{stroke:var(--argument);stroke-width:2.2}.plot .curve-species-h{stroke:var(--numerical);stroke-width:1.6}.plot .curve-species-oh{stroke:var(--cited);stroke-width:1.6}.plot .curve-full{stroke:var(--verified);stroke-width:2.2}.plot .curve-approx{stroke:var(--ink-soft);stroke-width:1.6;stroke-dasharray:5 3}.plot .curve-energy{stroke:var(--mole);stroke-width:2.2}.plot .hline-spectator{stroke:var(--ink-soft);stroke-dasharray:2 3}.plot .hline-zero{stroke:var(--ink-soft)}:root{--kin0: #3550e0;--kin1: #b3261e;--kin2: #17795a;--kin3: #a86200;--kin4: #6b4fa0;--kin5: #0f7f8c;--kin6: #7a4b2a;--kin7: #545e72}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--kin0: #8c9dff;--kin1: #ff8a80;--kin2: #4fc79a;--kin3: #f0a640;--kin4: #c3a6f5;--kin5: #4fc7d4;--kin6: #d9a27a;--kin7: #9aa4b8}}:root[data-theme=dark]{--kin0: #8c9dff;--kin1: #ff8a80;--kin2: #4fc79a;--kin3: #f0a640;--kin4: #c3a6f5;--kin5: #4fc7d4;--kin6: #d9a27a;--kin7: #9aa4b8}.kin0{--kc: var(--kin0)}.kin1{--kc: var(--kin1)}.kin2{--kc: var(--kin2)}.kin3{--kc: var(--kin3)}.kin4{--kc: var(--kin4)}.kin5{--kc: var(--kin5)}.kin6{--kc: var(--kin6)}.kin7{--kc: var(--kin7)}.kin-network-panel,.kin-exact,.kin-explore,.kin-scenarios,.kin-fit,.kin-equations,.kin-model{display:grid;gap:8px;min-width:0}.kin-explore h4,.kin-model h4,.kin-equations h4{margin:6px 0 0;font-size:.95rem}.kin-network{margin:0}.kin-network-svg{width:100%;max-height:46vh;display:block;background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-lg);user-select:none;-webkit-user-select:none}.kin-node{cursor:pointer;outline:none}.kin-node-ring{fill:var(--surface);stroke:var(--kc);stroke-width:2}.kin-node-fill{fill:color-mix(in srgb,var(--kc) 45%,transparent);transition:height .08s linear,y .08s linear}.kin-node.is-selected .kin-node-ring,.kin-node:focus-visible .kin-node-ring{stroke-width:4;stroke:var(--focus)}.kin-node.role-intermediate .kin-node-ring{stroke-dasharray:4 2}.kin-node-name{font-size:11px;font-weight:700;fill:var(--ink);pointer-events:none}.kin-node-conc{font-size:9px;fill:var(--ink-soft);font-variant-numeric:tabular-nums;pointer-events:none}.kin-arrow{fill:none;stroke:var(--kc);stroke-linecap:round;opacity:.85;transition:stroke-width .08s linear}.kin-arrow.is-idle{opacity:.35}.kin-arrow.is-backward{stroke-dasharray:6 3}.kin-head{fill:var(--ink-soft)}.kin-rlabel{font-size:9px;fill:var(--ink-soft);font-variant-numeric:tabular-nums}.kin-player{display:flex;align-items:center;gap:8px}.kin-scrubber{flex:1;min-width:0}.kin-time{min-width:7em;text-align:right;font-variant-numeric:tabular-nums}.kin-speed{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;font-size:.9rem}.kin-speed select{min-height:36px}.kin-chart-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px}.kin-axes{display:flex;gap:6px}.kinetics .chip[aria-pressed=true],.kin-editor .chip.is-on,.kinetics .chip.is-on{background:var(--accent);color:var(--surface);border-color:var(--accent)}.kin-chart{margin:0}.kin-line{fill:none;stroke:var(--kc);stroke-width:2}.kin-line.is-dashed{stroke-dasharray:6 4}.kin-line.is-exact{stroke:var(--ink);stroke-width:1;stroke-dasharray:1.5 3;opacity:.7}.kin-dot{fill:var(--surface);stroke:var(--kc);stroke-width:2}.kin-cursor{stroke:var(--ink);stroke-width:1.2;stroke-dasharray:3 2}.kin-readouts>div{border-left:3px solid var(--kc, var(--rule));padding-left:6px}.kin-run summary{cursor:pointer;color:var(--ink-soft)}.kin-row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:6px 10px;min-width:0}.kin-row .q-field{min-width:0}.kin-narrow input,input.kin-narrow,.kin-narrow select{width:6em}.kin-grow{flex:1 1 14em}.kin-unit{width:9em}.kin-side{flex:1 1 7em;min-width:5em;min-height:40px}.kin-editor input,.kin-editor select,.kin-editor textarea{min-height:40px;border:1px solid var(--rule);border-radius:var(--radius-sm);background:var(--surface);padding:0 8px;color:var(--ink);max-width:100%}.kin-editor textarea{padding:6px 8px;font-family:inherit}.kin-card{display:grid;gap:6px;padding:10px;border:1px solid var(--rule);border-radius:var(--radius-lg);background:var(--surface)}.kin-chips{display:flex;flex-wrap:wrap;gap:6px}.kin-balance{margin:0;font-size:.85rem}.kin-balance.is-ok{color:var(--verified)}.kin-balance.is-off{color:var(--danger)}.kin-balance.is-unchecked{color:var(--ink-soft)}.kin-param{align-items:center}.kin-obs input,.kin-obs select{width:100%;min-width:4em}.kin-params,.kin-scenario-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}.kin-params li{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.kin-stoich td{text-align:center}.admin-form{display:grid;gap:8px}.admin-ws{display:flex;flex-wrap:wrap;gap:6px;border:0;padding:0;margin:0}.admin-ws .chip[aria-pressed=true]{background:var(--accent, var(--ink));color:var(--surface);border-color:var(--accent, var(--ink))}.admin-ws .chip.ws-lemma[aria-pressed=true]{background:var(--lemma);border-color:var(--lemma)}.admin-ws .chip.ws-quanta[aria-pressed=true]{background:var(--quanta);border-color:var(--quanta)}.admin-ws .chip.ws-ohm[aria-pressed=true]{background:var(--ohm);border-color:var(--ohm)}.admin-ws .chip.ws-mole[aria-pressed=true]{background:var(--mole);border-color:var(--mole)}.admin-users{list-style:none;margin:0;padding:0;display:grid;gap:10px}.admin-user{display:grid;gap:6px;padding:10px;border:1px solid var(--rule);border-radius:var(--radius-lg);background:var(--surface)}.admin-user-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px}.admin-user-stats{margin:0;font-size:.85rem}.admin-inline{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.admin-inline input{min-height:40px;flex:1 1 10em;min-width:0;border:1px solid var(--rule);border-radius:var(--radius-sm);padding:0 8px}.admin-role select{min-height:40px;max-width:100%}.admin-search{width:100%;min-height:40px;border:1px solid var(--rule);border-radius:var(--radius-sm);padding:0 8px}.link.danger{color:var(--danger)}.thermo-reactions,.thermo-accounting,.thermo-energies,.thermo-conditions,.thermo-temperature,.thermo-hess,.thermo-schematic-panel,.thermo-data,.thermo-practice{display:grid;gap:10px;min-width:0}.thermo-reaction-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}.thermo-reaction{display:grid;gap:2px;width:100%;text-align:left;padding:8px 10px;border:1px solid var(--rule);border-radius:var(--radius-lg);background:var(--surface);color:var(--ink);min-width:0}.thermo-reaction[aria-pressed=true]{border-color:var(--mole);box-shadow:inset 4px 0 0 var(--mole)}.thermo-equation{width:100%;min-height:44px;font-family:var(--mono, monospace)}.thermo-catalogue ul{columns:2;padding-left:16px;font-size:.85rem}.thermo-activity .thermo-sp{min-width:6em}.thermo-bars{margin:0;display:grid;gap:8px}.thermo-bars-side{display:grid;gap:4px}.thermo-bars-side h5{margin:0;font-size:.85rem;color:var(--ink-soft)}.thermo-bar{display:grid;grid-template-columns:minmax(5em,7em) 1fr auto;align-items:center;gap:8px;width:100%;min-height:40px;padding:2px 6px;border:1px solid transparent;border-radius:var(--radius-sm);background:none;color:var(--ink);text-align:left}.thermo-bar.is-selected,.thermo-bar[aria-pressed=true]{border-color:var(--kc);background:color-mix(in srgb,var(--kc) 8%,transparent)}.thermo-bar-track{height:12px;background:var(--grid);border-radius:6px;overflow:hidden}.thermo-bar-fill{display:block;height:100%;background:var(--kc)}.thermo-bar-fill.is-negative{background:repeating-linear-gradient(45deg,var(--kc),var(--kc) 4px,transparent 4px,transparent 7px)}.thermo-bar-value{font-variant-numeric:tabular-nums;font-size:.85rem}.thermo-bars-sum{border-top:1px solid var(--rule);padding-top:6px}.thermo-table tr.is-selected td{background:color-mix(in srgb,var(--mole) 10%,transparent)}.thermo-sum td{border-top:2px solid var(--ink)}.thermo-hidden{display:inline-block;min-width:2em;text-align:center;border:1px dashed var(--ink-soft);border-radius:4px}.thermo-card{display:grid;gap:4px;padding:10px;border-radius:var(--radius-lg);border:1px solid var(--rule);background:var(--surface);min-width:0}.thermo-card.is-standard{border-left:5px solid var(--argument)}.thermo-card.is-actual{border-left:5px solid var(--numerical)}.thermo-card.is-approximation{border-style:dashed}.q-badge-actual{background:var(--numerical);color:var(--surface)}.q-badge-warn{background:color-mix(in srgb,var(--numerical) 25%,var(--surface));color:var(--ink)}.thermo-direction{margin:0;font-weight:700}.thermo-direction.is-forward{color:var(--verified)}.thermo-direction.is-backward{color:var(--danger)}.thermo-range{margin:0;padding:6px 10px;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--verified) 10%,transparent)}.thermo-range.is-missing{background:color-mix(in srgb,var(--numerical) 14%,transparent)}.thermo-schematic{margin:0}.thermo-schematic svg{width:100%;max-height:40vh;background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-lg)}.thermo-level{stroke-width:4;stroke-linecap:round}.thermo-level.is-elements{stroke:var(--ink-soft);stroke-width:1.5;stroke-dasharray:4 3}.thermo-level.is-reactants{stroke:var(--danger)}.thermo-level.is-products{stroke:var(--argument)}.thermo-level-label{font-size:10px;fill:var(--ink)}.thermo-delta{stroke:var(--ink);stroke-width:1.5}.thermo-schematic-caption{font-style:italic}.thermo-provenance summary{cursor:pointer}.thermo-provenance tr.is-user td{background:color-mix(in srgb,var(--numerical) 10%,transparent)}.thermo-reconstruct{list-style:none;margin:0;padding:0;display:grid;gap:6px}.thermo-reconstruct li{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px}.thermo-reconstruct form{display:flex;gap:6px}.thermo-reconstruct input{width:8em;min-height:40px;border:1px solid var(--rule);border-radius:var(--radius-sm);padding:0 8px}.thermo .chip[aria-pressed=true],.thermo-editor .chip.is-on{background:var(--accent);color:var(--surface)}.plot .curve-approx-alt{stroke:var(--ink-soft);stroke-width:1.6;stroke-dasharray:1.5 3}.whereami{display:flex;align-items:center;gap:6px;padding:0 16px 6px 10px;min-width:0}.back-button{flex:none;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;border:1px solid var(--rule);background:var(--surface);color:var(--ink);padding:0}.back-button:disabled{opacity:.35}.crumbs{display:flex;align-items:center;flex-wrap:nowrap;gap:0;list-style:none;margin:0;padding:0;min-width:0;overflow:hidden;font-size:.85rem;color:var(--ink-soft)}.crumb{display:inline-flex;align-items:center;min-width:0;flex:0 1 auto}.crumb+.crumb:before{content:"›";padding:0 5px;color:var(--ink-soft);flex:none}.crumb>span,.crumb-link{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.crumb-link{border:0;background:none;padding:6px 0;font:inherit;color:inherit;text-decoration:underline;text-decoration-color:var(--rule);text-underline-offset:3px;min-width:0;max-width:100%}.crumb[aria-current=page]{color:var(--ink);font-weight:700;flex:none}.crumb-notebook{flex-shrink:3;color:var(--ink)}.crumb-notebook .star{min-width:30px;min-height:36px;font-size:1.1rem;flex:none}.step:focus,.hint:focus{outline:2px solid var(--argument);outline-offset:3px;border-radius:var(--radius-sm)}.step{scroll-margin-top:12px}:root{--workshop: #6d4c9f}.app[data-workspace=workshop]{max-width:min(1600px,100%);--accent: var(--workshop)}.ws-workshop{--accent: var(--workshop)}.section-workshop .section-mark,.section-chip.section-workshop .section-mark{color:var(--workshop)}.ws{display:flex;flex-direction:column;gap:10px}.ws-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.ws-level{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;margin:0;font-size:.85rem}.ws-section{font-weight:700;color:var(--workshop)}.ws-difficulty{display:inline-flex;gap:4px;align-items:center;padding:1px 8px;border-radius:999px;font-style:normal;font-size:.78rem;font-weight:700;border:1px solid currentColor}.ws-difficulty-basic{color:#2e7d32}.ws-difficulty-easy{color:#1b7fa6}.ws-difficulty-intermediate{color:#b7791f}.ws-difficulty-hard{color:#c0392b}.ws-difficulty-nightmare{color:#fff;background:#2b1b3d;border-color:#2b1b3d}.ws-title{margin:2px 0;font-size:1.15rem;line-height:1.25}.ws-goal{margin:0;display:flex;flex-wrap:wrap;gap:6px;align-items:center}.ws-goal-icon{font-size:1.4rem}.ws-chips{display:inline-flex;gap:4px;flex-wrap:wrap}.ws-chip{display:inline-block;padding:0 7px;border-radius:999px;font-size:.72rem;font-weight:700;color:#fff;background:var(--accent, #777);margin-left:4px;text-transform:capitalize}.ws-body{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}@media (min-width: 900px),(orientation: landscape) and (min-width: 560px){.ws-body{grid-template-columns:minmax(0,1fr) minmax(280px,36%);align-items:start}.ws-side{position:sticky;top:8px;max-height:calc(100vh - 24px);overflow-y:auto}}.ws-canvas{overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;border:1px solid var(--rule);border-radius:var(--radius-sm);background:repeating-linear-gradient(0deg,transparent 0 23px,#8881 23px 24px),var(--surface)}.ws-canvas svg{display:block;height:clamp(200px,50vh,460px);width:auto;max-width:none;color:var(--ink)}@media (orientation: landscape) and (max-height: 500px){.ws-canvas svg{height:clamp(170px,58vh,300px)}}.ws-bay{cursor:pointer}.ws-bay:focus{outline:none}.ws-bay:focus-visible .ws-bay-frame{stroke:var(--accent);stroke-width:3}.ws-bay-frame{fill:var(--paper);stroke:var(--rule);stroke-width:1.5}.ws-bay-title{font-size:11px;font-weight:700;fill:var(--ink-soft)}.ws-bay-running .ws-bay-frame{stroke:var(--accent);stroke-width:3}.ws-bay-done .ws-bay-frame{stroke:var(--verified);stroke-width:2}.ws-bay-failed .ws-bay-frame{stroke:#c0392b;stroke-width:3}.ws-bay-unreached{opacity:.45}.ws-bay.is-selected .ws-bay-frame{stroke-dasharray:6 4;stroke:var(--accent);stroke-width:2.5}.ws-bay-mark{font-size:16px;font-weight:800}.ws-bay-mark.is-done{fill:var(--verified)}.ws-bay-mark.is-failed{fill:#c0392b}.ws-link.is-on{animation:ws-flow .8s linear infinite;stroke-dasharray:10 6}@keyframes ws-flow{to{stroke-dashoffset:-32}}.ws-finale.is-on text:first-of-type{animation:ws-pop .6s ease-out;transform-origin:center;transform-box:fill-box}@keyframes ws-pop{0%{transform:scale(.3)}to{transform:scale(1)}}.ws-finale-caption{font-size:12px;font-weight:700;fill:var(--ink)}.ws-finale.is-failed .ws-bay-frame{stroke:#c0392b}[data-motion=reduce] .ws-link.is-on,[data-motion=reduce] .ws-finale.is-on text{animation:none}.ws-controls{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;margin-top:8px}.ws-scrubber{flex:1 1 160px;min-width:120px}.ws-clock{font-variant-numeric:tabular-nums;font-weight:700;min-width:8ch}.ws-result{font-weight:700}.ws-result.is-done{color:var(--verified)}.ws-result.is-failed{color:#c0392b}.ws-stage-list{list-style:none;margin:0 0 10px;padding:0;display:flex;flex-direction:column;gap:4px}.ws-stage-item{width:100%;text-align:left;border:1px solid var(--rule);border-radius:var(--radius-sm);background:var(--surface);padding:6px 8px;display:flex;flex-wrap:wrap;gap:4px;align-items:baseline}.ws-stage-item.is-selected{border-color:var(--accent);box-shadow:inset 3px 0 0 var(--accent)}.ws-stage-state{margin-left:auto;font-size:.8rem;font-variant-numeric:tabular-nums}.ws-stage-state.is-done{color:var(--verified)}.ws-stage-state.is-failed{color:#c0392b}.ws-stage-state.is-idle{color:var(--ink-soft)}.ws-stage-card{border:1px solid var(--rule);border-radius:var(--radius-sm);padding:10px;background:var(--surface)}.ws-stage-card h4{margin:0 0 4px}.ws-params{border-collapse:collapse;width:100%;font-size:.88rem;margin:6px 0}.ws-params th{text-align:left;font-weight:400;color:var(--ink-soft);padding:2px 8px 2px 0}.ws-params td{text-align:right;font-variant-numeric:tabular-nums;padding:2px 0}.ws-exercise-link{border-left:3px solid var(--accent);padding-left:8px;margin:8px 0}.ws-fired{color:var(--verified);font-weight:700}.ws-not-fired{color:#c0392b;font-weight:700}.ws-predictions{padding-left:18px}.ws-predictions .is-right{color:var(--verified)}.ws-predictions .is-off{color:#c0392b}.ws-library-list,.ws-objects{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:4px}.ws-library-list button{width:100%;text-align:left;border:1px solid var(--rule);border-radius:var(--radius-sm);background:var(--surface);padding:6px 8px}.ws-object-icon{display:inline-block;width:1.6em;text-align:center}.ws-domain summary{font-weight:700;cursor:pointer;margin:6px 0}.ws-kind-detail{border-left:3px solid var(--rule);padding-left:8px;margin:4px 0 8px}.ws-editor fieldset{border:1px solid var(--rule);border-radius:var(--radius-sm);margin:0 0 10px}.ws-editor-stages{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.ws-editor-stage{border:1px solid var(--rule);border-radius:var(--radius-sm);padding:8px;background:var(--surface)}.ws-editor-params{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:6px 10px}.ws-editor-params .q-field>span:first-child{white-space:normal;overflow-wrap:anywhere}.ws-editor-inputs{display:flex;flex-wrap:wrap;gap:8px;align-items:center;border:0;padding:4px 0;margin:0}.ws-rotate{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:24px;text-align:center;background:color-mix(in srgb,var(--paper) 94%,transparent)}.ws-rotate-icon{animation:ws-rotate 2.4s ease-in-out infinite;color:var(--workshop)}@keyframes ws-rotate{0%,30%{transform:rotate(0)}60%,to{transform:rotate(-90deg)}}[data-motion=reduce] .ws-rotate-icon{animation:none}.exercise-group-title{margin:10px 0 4px;font-size:.9rem;color:var(--workshop)}.ws-story summary{cursor:pointer;color:var(--ink-soft);font-size:.88rem}.ws-story p{margin:4px 0 0}.ws-player:focus{outline:none}.ws-player.is-full{position:fixed;top:0;right:0;bottom:0;left:0;z-index:35;background:var(--paper);display:flex;flex-direction:column;padding:max(6px,env(safe-area-inset-top)) max(8px,env(safe-area-inset-right)) 6px max(8px,env(safe-area-inset-left));gap:4px}.ws-player.is-full .ws-canvas{flex:1 1 auto;min-height:0}.ws-player.is-full .ws-canvas svg{height:100%}.ws-canvas.is-fit{overflow-x:hidden}.ws-canvas.is-fit svg{width:100%;height:auto;max-height:70vh}.ws-player.is-full .ws-canvas.is-fit svg{height:100%;width:100%}.ws-player.is-full .ws-controls{margin-top:0}.ws-full-bar{display:flex;align-items:center;gap:10px}.ws-full-bar .btn{margin-left:auto}.ws-full-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media (orientation: landscape) and (max-height: 520px){.dock-help{display:none}.tabs button{min-height:34px;padding-top:4px;padding-bottom:4px}.top{padding-top:4px;padding-bottom:2px}.whereami{padding-bottom:2px}}.ws-look{display:flex;flex-wrap:wrap;gap:4px 14px;align-items:center;margin-bottom:4px;font-size:.88rem}.ws-look .link[aria-pressed=true]{font-weight:700;text-decoration:none;color:var(--ink)}.ws-world-wrap{position:relative;height:clamp(220px,52vh,520px);border:1px solid var(--rule);border-radius:var(--radius-sm);overflow:hidden;background:#f6f1e4}@media (orientation: landscape) and (max-height: 520px){.ws-world-wrap{height:clamp(170px,60vh,320px)}}.ws-player.is-full .ws-world-wrap{flex:1 1 0;min-height:120px;height:auto}.ws-player.is-full .ws-look{margin:0}.ws-world{display:block;width:100%;height:100%}.ws-world .ws-part{cursor:pointer}.ws-world .ws-part:focus{outline:none}.ws-world .ws-part:focus-visible .ws-tag rect,.ws-world .ws-part.is-selected .ws-tag rect{stroke:var(--accent, #1b7fa6);stroke-width:.004}.ws-world .ws-part-unreached{opacity:.5}.ws-tag rect{fill:#fff;stroke:#1c2333;stroke-width:.0022}.ws-tag text{fill:#1c2333;font-weight:700;font-family:inherit}.ws-tag-running rect{fill:#1c2333;stroke:#1c2333;stroke-width:.0022}.ws-tag-running text{fill:#fff}.ws-tag-done rect{fill:#e6f4e6;stroke:#17795a}.ws-tag-failed rect{fill:#fde3df;stroke:#b3261e;stroke-width:.003}.ws-note{fill:#1c2333;font-family:ui-monospace,monospace}.ws-full-bar .ws-look{margin:0;flex-wrap:nowrap;white-space:nowrap}.ws-full-title{min-width:0;flex:0 1 auto}@media (max-width: 900px){.ws-full-stage{display:none}}@media (orientation: landscape) and (max-height: 520px){.ws-player.is-full .ws-warp,.ws-player.is-full .ws-goto{display:none}.ws-player.is-full .ws-controls{flex-wrap:nowrap;gap:6px;white-space:nowrap}.ws-player.is-full .ws-scrubber{min-width:80px}.ws-player.is-full .ws-result{font-size:.85rem}}@media (orientation: portrait) and (max-width: 760px){.ws-world-wrap{height:auto;aspect-ratio:1.15}}.difficulty-filter{display:flex;flex-wrap:wrap;gap:4px;margin:8px 0}.difficulty-filter button{font-size:.82rem;padding:4px 10px}.difficulty-filter button[aria-checked=true]{font-weight:700;box-shadow:inset 0 -2px 0 currentColor}details.exercise-group>summary{display:flex;align-items:baseline;gap:8px;cursor:pointer;list-style:none}details.exercise-group>summary::-webkit-details-marker{display:none}details.exercise-group>summary:before{content:"▸";color:var(--workshop);transition:transform .15s}details.exercise-group[open]>summary:before{transform:rotate(90deg)}details.exercise-group>summary .exercise-group-title{margin:8px 0 4px}.ws-tag rect{transition:fill .35s ease,stroke .35s ease}[data-motion=reduce] .ws-tag rect{transition:none}.difficulty-chip-basic{color:#2e7d32}.difficulty-chip-easy{color:#1b7fa6}.difficulty-chip-intermediate{color:#b7791f}.difficulty-chip-hard{color:#c0392b}.difficulty-chip-nightmare{color:#2b1b3d}.difficulty-chip-nightmare:before{content:"☠ "}
