@font-face{font-display:block;font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2) format("woff2"),url(/assets/KaTeX_AMS-Regular-DMm9YOAa.woff) format("woff"),url(/assets/KaTeX_AMS-Regular-DRggAlZN.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff) format("woff"),url(/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff) format("woff"),url(/assets/KaTeX_Fraktur-Regular-CB_wures.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Main-Bold-Cx986IdX.woff2) format("woff2"),url(/assets/KaTeX_Main-Bold-Jm3AIy58.woff) format("woff"),url(/assets/KaTeX_Main-Bold-waoOVXN0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2) format("woff2"),url(/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff) format("woff"),url(/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2) format("woff2"),url(/assets/KaTeX_Main-Italic-BMLOBm91.woff) format("woff"),url(/assets/KaTeX_Main-Italic-3WenGoN9.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Main-Regular-B22Nviop.woff2) format("woff2"),url(/assets/KaTeX_Main-Regular-Dr94JaBh.woff) format("woff"),url(/assets/KaTeX_Main-Regular-ypZvNtVU.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2) format("woff2"),url(/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff) format("woff"),url(/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Math-Italic-t53AETM-.woff2) format("woff2"),url(/assets/KaTeX_Math-Italic-DA0__PXp.woff) format("woff"),url(/assets/KaTeX_Math-Italic-flOr_0UB.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:700;src:url(/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff) format("woff"),url(/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:italic;font-weight:400;src:url(/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff) format("woff"),url(/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:400;src:url(/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff) format("woff"),url(/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Script-Regular-D3wIWfF6.woff2) format("woff2"),url(/assets/KaTeX_Script-Regular-D5yQViql.woff) format("woff"),url(/assets/KaTeX_Script-Regular-C5JkGWo-.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2) format("woff2"),url(/assets/KaTeX_Size1-Regular-C195tn64.woff) format("woff"),url(/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2) format("woff2"),url(/assets/KaTeX_Size2-Regular-oD1tc_U0.woff) format("woff"),url(/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAA4oAA4AAAAAHbQAAA3TAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAABmAAgRQIDgmcDBEICo1oijYBNgIkA14LMgAEIAWJAAeBHAyBHBvbGiMRdnO0IkRRkiYDgr9KsJ1NUAf2kILNxgUmgqIgq1P89vcbIcmsQbRps3vCcXdYOKSWEPEKgZgQkprQQsxIXUgq0DqpGKmIvrgkeVGtEQD9DzAO29fM9jYhxZEsL2FeURH2JN4MIcTdO049NCVdxQ/w9NrSYFEBKTDKpLKfNkCGDc1RwjZLQcm3vqJ2UW9Xfa3tgAHz6ivp6vgC2yD4/6352ndnN0X0TL7seypkjZlMsjmZnf0Mm5Q+JykRWQBKCVCVPbARPXWyQtb5VgLB6Biq7/Uixcj2WGqdI8tGSgkuRG+t910GKP2D7AQH0DB9FMDW/obJZ8giFI3Wg8Cvevz0M+5m0rTh7XDBlvo9Y4vm13EXmfttwI4mBo1EG15fxJhUiCLbiiyCf/ZA6MFAhg3pGIZGdGIVjtPn6UcMk9A/UUr9PhoNsCENw1APAq0gpH73e+M+0ueyHbabc3vkbcdtzcf/fiy+NxQEjf9ud/ELBHAXJ0nk4z+MXH2Ev/kWyV4k7SkvpPc9Qr38F6RPWnM9cN6DJ0AdD1BhtgABtmoRoFCvPsBAumNm6soZG2Gk5GyVTo2sJncSyp0jQTYoR6WDvTwaaEcHsxHfvuWhHA3a6bN7twRKtcGok6NsCi7jYRrM2jExsUFMxMQYuJbMhuWNOumEJy9hi29Dmg5zMp/A5+hhPG19j1vBrq8JTLr8ki5VLPmG/PynJHVul440bxg5xuymHUFPBshC+nA9I1FmwbRBTNHAcik3Oae0cxKoI3MOriM42UrPe51nsaGxJ+WfXubAsP84aabUlQSJ1IiE0iPETLUU4CATgfXSCSpuRFRmCGbO+wSpAnzaeaCYW1VNEysRtuXCEL1kUFUbbtMv3Tilt/1c11jt3Q5bbMa84cpWipp8Elw3MZhOHsOlwwVUQM3lAR35JiFQbaYCRnMF2lxAWoOg2gyoIV4PouX8HytNIfLhqpJtXB4vjiViUI8IJ7bkC4ikkQvKksnOTKICwnqWSZ9YS5f0WCxmpgjbIq7EJcM4aI2nmhLNY2JIUgOjXZFWBHb+x5oh6cwb0Tv1ackHdKi0I9OO2wE9aogIOn540CCCziyhN+IaejtgAONKznHlHyutPrHGwCx9S6B8kfS4Mfi4Eyv7OU730bT1SCBjt834cXsf43zVjPUqqJjgrjeGnBxSG4aYAKFuVbeCfkDIjAqMb6yLNIbCuvXhMH2/+k2vkNpkORhR59N1CkzoOENvneIosjYmuTxlhUzaGEJQ/iWqx4dmwpmKjrwTiTGTCVozNAYqk/zXOndWxuWSmJkQpJw3pK5KX6QrLt5LATMqpmPAQhkhK6PUjzHUn7E0gHE0kPE0iKkolgkUx9SZmVAdDgpffdyJKg3k7VmzYGCwVXGz/tXmkOIp+vcWs+EMuhhvN0h9uhfzWJziBQmCREGSIFmQIkgVpAnSBRmC//6hkLZwaVhwxlrJSOdqlFtOYxlau9F2QN5Y98xmIAsiM1HVp2VFX+DHHGg6Ecjh3vmqtidX3qHI2qycTk/iwxSt5UzTmEP92ZBnEWTk4Mx8Mpl78ZDokxg/KWb+Q0QkvdKVmq3TMW+RXEgrsziSAfNXFMhDc60N5N9jQzjfO0kBKpUZl0ZmwJ41j/B9Hz6wmRaJB84niNmQrzp9eSlQCDDzazGDdVi3P36VZQ+Jy4f9UBNp+3zTjqI4abaFAm+GShVaXlsGdF3FYzZcDI6cori4kMxUECl9IjJZpzkvitAoxKue+90pDMvcKRxLl53TmOKCmV/xRolNKSqqUxc6LStOETmFOiLZZptlZepcKiAzteG8PEdpnQpbOMNcMsR4RR2Bs0cKFEvSmIjAFcnarqwUL4lDhHmnVkwu1IwshbiCcgvOheZuYyOteufZZwlcTlLgnZ3o/WcYdzZHW/WGaqaVfmTZ1aWCceJjkbZqsfbkOtcFlUZM/jy+hXHDbaUobWqqXaeWobbLO99yG5N3U4wxco0rQGGcOLASFMXeJoham8M+/x6O2WywK2l4HGbq1CoUyC/IZikQhdq3SiuNrvAEj0AVu9x2x3lp/xWzahaxidezFVtdcb5uEnzyl0ZmYiuKI0exvCd4Xc9CV1KB0db00z92wDPde0kukbvZIWN6jUWFTmPIC/Y4UPCm8UfDTFZpZNon1qLFTkBhxzB+FjQRA2Q/YRJT8pQigslMaUpFyAG8TMlXigiqmAZX4xgijKjRlGpLE0GdplRfCaJo0JQaSxNBk6ZmMzcya0FmrcisDdn0Q3HI2sWSppYigmlM1XT/kLQZSNpMJG0WkjYbSZuDpM1F0uYhFc1HxU4m1QJjDK6iL0S5uSj5rgXc3RejEigtcRBtqYPQsiTskmO5vosV+q4VGIKbOkDg0jtRrq+Em1YloaTFar3EGr1EUC8R0kus1Uus00usL97ABr2BjXoDm/QGNhuWtMVBKOwg/i78lT7hBsAvDmwHc/ao3vmUbBmhjeYySZNWvGkfZAgISDSaDo1SVpzGDsAEkF8B+gEapViUoZgUWXcRIGFZNm6gWbAKk0bp0k1MHG9fLYtV4iS2SmLEQFARzRcnf9PUS0LVn05/J9MiRRBU3v2IrvW974v4N00L7ZMk0wXP1409CHo/an8zTRHD3eSJ6m8D4YMkZNl3M79sqeuAsr/m3f+8/yl7A50aiAEJgeBeMWzu7ui9UfUBCe2TIqZIoOd/3/udRBOQidQZUERzb2/VwZN1H/Sju82ew2H2Wfr6qvfVf3hqwDvAIpkQVFy4B9Pe9e4/XvPeceu7h3dvO56iJPf0+A6cqA2ip18ER+iFgggiuOkvj24bby0N9j2UHIkgqIt+sVgfodC4YghLSMjSZbH0VR/6dMDrYJeKHilKTemt6v6kvzvn3/RrdWtr0GoN/xL+Sex/cPYLUpepx9cz/D46UPU5KXgAQa+NDps1v6J3xP1i2HtaDB0M9aX2deA7SYff//+gUCovMmIK/qfsFcOk+4Y5ZN97XlG6zebqtMbKgeRFi51vnxTQYBUik2rS/Cn6PC8ADR8FGxsRPB82dzfND90gIcshOcYUkfjherBz53odpm6TP8txlwOZ71xmfHHOvq053qFF/MRlS3jP0ELudrf2OeN8DHvp6ZceLe8qKYvWz/7yp0u4dKPfli3CYq0O13Ih71mylJ80tOi10On8wi+F4+LWgDPeJ30msSQt9/vkmHq9/Lvo2b461mP801v3W4xTcs6CbvF9UDdrSt+A8OUbpSh55qAUFXWznBBfdeJ8a4d7ugT5tvxUza3h9m4H7ptTqiG4z0g5dc0X29OcGlhpGFMpQo9ytTS+NViZpNdvU4kWx+LKxNY10kQ1yqGXrhe4/1nvP7E+nd5A92TtaRplbHSqoIdOqtRWti+fkB5/n1+/VvCmz12pG1kpQWsfi1ftlBobm0bpngs16CHkbIwdLnParxtTV3QYRlfJ0KFskH7pdN/YDn+yRuSd7sNH3aO0DYPggk6uWuXrfOc+fa3VTxFVvKaNxHsiHmsXyCLIE5yuOeN3/Jdf8HBL/5M6shjyhxHx9BjB1O0+4NLOnjLLSxwO7ukN4jMbOIcD879KLSi6Pk61Oqm2377n8079PXEEQ7cy7OKEC9nbpet118fxweTafpt69x/Bt8UqGzNQt7aelpc44dn5cqhwf71+qKp/Zf/+a0zcizOUWpl/iBcSXip0pplkatCchoH5c5aUM8I7/dWxAej8WicPL1URFZ9BDJelUwEwTkGqUhgSlydVes95YdXvhh9Gfz/aeFWvgVb4tuLbcv4+wLdutVZv/cUonwBD/6eDlE0aSiKK/uoH3+J1wDE/jMVqY2ysGufN84oIXB0sPzy8ollX/LegY74DgJXJR57sn+VGza0x3DnuIgABFM15LmajjjsNlYj+JEZGbuRYcAMOWxFkPN2w6Wd46xo4gVWQR/X4lyI/R6K/YK0110GzudPRW7Y+UOBGTfNNzHeYT0fiH0taunBpq9HEW8OKSaBGj21L0MqenEmNRWBAWDWAk4CpNoEZJ2tTaPFgbQYj8HxtFilErs3BTRwT8uO1NXQaWfIotchmPkAF5mMBAliEmZiOGVgCG9LgRzpscMAOOwowlT3JhusdazXGSC/hxR3UlmWVwWHpOIKheqONvjyhSiTHIkVUco5bnji8m//zL7PKaT1Vl5I6UE609f+gkr6MZKVyKc7zJRmCahLsdlyA5fdQkRSan9LgnnLEyGSkaKJCJog0wAgvepWBt80+1yKln1bMVtCljfNWDueKLsWwaEbBSfSPTEmVRsUcYYMnEjcjeyCZzBXK9E9BYBXLKjOSpUDR+nEV3TFSUdQaz+ot98QxgXwx0GQ+EEUAKB2qZPkQQ0GqFD8UPFMqyaCHM24BZmSGic9EYMagKizOw9Hz50DMrDLrqqLkTAhplMictiCAx5S3BIUQdeJeLnBy2CNtMfz6cV4u8XKoFZQesbf9YZiIERiHjaNodDW6LgcirX/mPnJIkBGDUpTBhSa0EIr38D5hCIszhCM8URGBqImoWjpvpt1ebu/v3Gl3qJfMnNM+9V+kiRFyROTPHQWOcs1dNW94/ukKMPZBvDi55i5CttdeJz84DLngLqjcdwEZ87bFFR8CIG35OAkDVN6VRDZ7aq67NteYqZ2lpT8oYB2CytoBd6VuAx4WgiAsnuj3WohG+LugzXiQRDeM3XYXlULv4dp5VFYC) format("woff2"),url(/assets/KaTeX_Size3-Regular-CTq5MqoE.woff) format("woff"),url(/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2) format("woff2"),url(/assets/KaTeX_Size4-Regular-BF-4gkZK.woff) format("woff"),url(/assets/KaTeX_Size4-Regular-DWFBv043.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2) format("woff2"),url(/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff) format("woff"),url(/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf) format("truetype")}.katex{font: 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;position:relative;text-indent:0;text-rendering:auto}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.18.7"}.katex .katex-mathml{border:0;-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;overflow:hidden;padding:0;position:absolute;width:1px}.katex .katex-html>.katex-newline{display:block}.katex .katex-base{position:relative;white-space:nowrap;width:-webkit-min-content;width:-moz-min-content;width:min-content}.katex .katex-base,.katex .katex-strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;display:inline-table;table-layout:fixed}.katex .vlist-r{display:table-row}.katex .vlist{display:table-cell;position:relative;vertical-align:bottom}.katex .vlist>span{display:block;height:0;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{overflow:hidden;width:0}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{display:table-cell;font-size:1px;min-width:2px;vertical-align:bottom;width:2px}.katex .katex-vbox{align-items:baseline;display:inline-flex;flex-direction:column}.katex .katex-thinbox{display:inline-flex;flex-direction:row;max-width:0;width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .katex-hdashline,.katex .katex-hline,.katex .katex-overline .overline-line,.katex .katex-rule,.katex .katex-underline .underline-line,.katex .mfrac .frac-line{min-height:1px}.katex .mspace{display:inline-block}.katex .katex-smash{display:inline;line-height:0}.katex .clap,.katex .llap,.katex .rlap{position:relative;width:0}.katex .clap>.katex-inner,.katex .llap>.katex-inner,.katex .rlap>.katex-inner{position:absolute}.katex .clap>.katex-fix,.katex .llap>.katex-fix,.katex .rlap>.katex-fix{display:inline-block}.katex .llap>.katex-inner{right:0}.katex .clap>.katex-inner,.katex .rlap>.katex-inner{left:0}.katex .clap>.katex-inner>span{margin-left:-50%;margin-right:50%}.katex .katex-rule{border:0 solid;display:inline-block;position:relative}.katex .katex-hline,.katex .katex-overline .overline-line,.katex .katex-underline .underline-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .katex-hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.katex .sqrt>.katex-root{margin-left:.2777777778em;margin-right:-.5555555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .katex-sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .katex-sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .katex-sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .katex-sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .katex-sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .katex-sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .katex-sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .katex-sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .katex-sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .katex-sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .katex-sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .katex-sizing.reset-size2.size1{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .katex-sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .katex-sizing.reset-size2.size3{font-size:1.1666666667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .katex-sizing.reset-size2.size4{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .katex-sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .katex-sizing.reset-size2.size6{font-size:1.6666666667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .katex-sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .katex-sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .katex-sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .katex-sizing.reset-size2.size10{font-size:3.4566666667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .katex-sizing.reset-size2.size11{font-size:4.1466666667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .katex-sizing.reset-size3.size1{font-size:.7142857143em}.katex .fontsize-ensurer.reset-size3.size2,.katex .katex-sizing.reset-size3.size2{font-size:.8571428571em}.katex .fontsize-ensurer.reset-size3.size3,.katex .katex-sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .katex-sizing.reset-size3.size4{font-size:1.1428571429em}.katex .fontsize-ensurer.reset-size3.size5,.katex .katex-sizing.reset-size3.size5{font-size:1.2857142857em}.katex .fontsize-ensurer.reset-size3.size6,.katex .katex-sizing.reset-size3.size6{font-size:1.4285714286em}.katex .fontsize-ensurer.reset-size3.size7,.katex .katex-sizing.reset-size3.size7{font-size:1.7142857143em}.katex .fontsize-ensurer.reset-size3.size8,.katex .katex-sizing.reset-size3.size8{font-size:2.0571428571em}.katex .fontsize-ensurer.reset-size3.size9,.katex .katex-sizing.reset-size3.size9{font-size:2.4685714286em}.katex .fontsize-ensurer.reset-size3.size10,.katex .katex-sizing.reset-size3.size10{font-size:2.9628571429em}.katex .fontsize-ensurer.reset-size3.size11,.katex .katex-sizing.reset-size3.size11{font-size:3.5542857143em}.katex .fontsize-ensurer.reset-size4.size1,.katex .katex-sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .katex-sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .katex-sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .katex-sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .katex-sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .katex-sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .katex-sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .katex-sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .katex-sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .katex-sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .katex-sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .katex-sizing.reset-size5.size1{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .katex-sizing.reset-size5.size2{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .katex-sizing.reset-size5.size3{font-size:.7777777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .katex-sizing.reset-size5.size4{font-size:.8888888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .katex-sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .katex-sizing.reset-size5.size6{font-size:1.1111111111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .katex-sizing.reset-size5.size7{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .katex-sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .katex-sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .katex-sizing.reset-size5.size10{font-size:2.3044444444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .katex-sizing.reset-size5.size11{font-size:2.7644444444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .katex-sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .katex-sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .katex-sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .katex-sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .katex-sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .katex-sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .katex-sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .katex-sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .katex-sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .katex-sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .katex-sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .katex-sizing.reset-size7.size1{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .katex-sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .katex-sizing.reset-size7.size3{font-size:.5833333333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .katex-sizing.reset-size7.size4{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .katex-sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .katex-sizing.reset-size7.size6{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .katex-sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .katex-sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .katex-sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .katex-sizing.reset-size7.size10{font-size:1.7283333333em}.katex .fontsize-ensurer.reset-size7.size11,.katex .katex-sizing.reset-size7.size11{font-size:2.0733333333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .katex-sizing.reset-size8.size1{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .katex-sizing.reset-size8.size2{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .katex-sizing.reset-size8.size3{font-size:.4861111111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .katex-sizing.reset-size8.size4{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .katex-sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .katex-sizing.reset-size8.size6{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .katex-sizing.reset-size8.size7{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .katex-sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .katex-sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .katex-sizing.reset-size8.size10{font-size:1.4402777778em}.katex .fontsize-ensurer.reset-size8.size11,.katex .katex-sizing.reset-size8.size11{font-size:1.7277777778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .katex-sizing.reset-size9.size1{font-size:.2893518519em}.katex .fontsize-ensurer.reset-size9.size2,.katex .katex-sizing.reset-size9.size2{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .katex-sizing.reset-size9.size3{font-size:.4050925926em}.katex .fontsize-ensurer.reset-size9.size4,.katex .katex-sizing.reset-size9.size4{font-size:.462962963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .katex-sizing.reset-size9.size5{font-size:.5208333333em}.katex .fontsize-ensurer.reset-size9.size6,.katex .katex-sizing.reset-size9.size6{font-size:.5787037037em}.katex .fontsize-ensurer.reset-size9.size7,.katex .katex-sizing.reset-size9.size7{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .katex-sizing.reset-size9.size8{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .katex-sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .katex-sizing.reset-size9.size10{font-size:1.2002314815em}.katex .fontsize-ensurer.reset-size9.size11,.katex .katex-sizing.reset-size9.size11{font-size:1.4398148148em}.katex .fontsize-ensurer.reset-size10.size1,.katex .katex-sizing.reset-size10.size1{font-size:.2410800386em}.katex .fontsize-ensurer.reset-size10.size2,.katex .katex-sizing.reset-size10.size2{font-size:.2892960463em}.katex .fontsize-ensurer.reset-size10.size3,.katex .katex-sizing.reset-size10.size3{font-size:.337512054em}.katex .fontsize-ensurer.reset-size10.size4,.katex .katex-sizing.reset-size10.size4{font-size:.3857280617em}.katex .fontsize-ensurer.reset-size10.size5,.katex .katex-sizing.reset-size10.size5{font-size:.4339440694em}.katex .fontsize-ensurer.reset-size10.size6,.katex .katex-sizing.reset-size10.size6{font-size:.4821600771em}.katex .fontsize-ensurer.reset-size10.size7,.katex .katex-sizing.reset-size10.size7{font-size:.5785920926em}.katex .fontsize-ensurer.reset-size10.size8,.katex .katex-sizing.reset-size10.size8{font-size:.6943105111em}.katex .fontsize-ensurer.reset-size10.size9,.katex .katex-sizing.reset-size10.size9{font-size:.8331726133em}.katex .fontsize-ensurer.reset-size10.size10,.katex .katex-sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .katex-sizing.reset-size10.size11{font-size:1.1996142719em}.katex .fontsize-ensurer.reset-size11.size1,.katex .katex-sizing.reset-size11.size1{font-size:.2009646302em}.katex .fontsize-ensurer.reset-size11.size2,.katex .katex-sizing.reset-size11.size2{font-size:.2411575563em}.katex .fontsize-ensurer.reset-size11.size3,.katex .katex-sizing.reset-size11.size3{font-size:.2813504823em}.katex .fontsize-ensurer.reset-size11.size4,.katex .katex-sizing.reset-size11.size4{font-size:.3215434084em}.katex .fontsize-ensurer.reset-size11.size5,.katex .katex-sizing.reset-size11.size5{font-size:.3617363344em}.katex .fontsize-ensurer.reset-size11.size6,.katex .katex-sizing.reset-size11.size6{font-size:.4019292605em}.katex .fontsize-ensurer.reset-size11.size7,.katex .katex-sizing.reset-size11.size7{font-size:.4823151125em}.katex .fontsize-ensurer.reset-size11.size8,.katex .katex-sizing.reset-size11.size8{font-size:.578778135em}.katex .fontsize-ensurer.reset-size11.size9,.katex .katex-sizing.reset-size11.size9{font-size:.6945337621em}.katex .fontsize-ensurer.reset-size11.size10,.katex .katex-sizing.reset-size11.size10{font-size:.8336012862em}.katex .fontsize-ensurer.reset-size11.size11,.katex .katex-sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{display:inline-block;width:.12em}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .katex-accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .katex-accent .accent-body{position:relative}.katex .katex-accent .accent-body:not(.accent-full){width:0}.katex .katex-overlay{display:block}.katex .mtable .vertical-separator{display:inline-block;min-width:1px}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;display:block;height:inherit;position:absolute;width:100%}.katex svg path{stroke:none}.katex svg{fill-rule:nonzero;fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1}.katex img{border-style:none;max-height:none;max-width:none;min-height:0;min-width:0}.katex .katex-stretchy{display:block;overflow:hidden;position:relative;width:100%}.katex .katex-stretchy:after,.katex .katex-stretchy:before{content:""}.katex .hide-tail{overflow:hidden;position:relative;width:100%}.katex .halfarrow-left{left:0;overflow:hidden;position:absolute;width:50.2%}.katex .halfarrow-right{overflow:hidden;position:absolute;right:0;width:50.2%}.katex .brace-left{left:0;overflow:hidden;position:absolute;width:25.1%}.katex .brace-center{left:25%;overflow:hidden;position:absolute;width:50%}.katex .brace-right{overflow:hidden;position:absolute;right:0;width:25.1%}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{border:.04em solid;box-sizing:border-box}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .katex-sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{border-right:.049em solid;border-top:.049em solid;box-sizing:border-box;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .reflectbox{display:inline-block;transform:scaleX(-1)}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{display:inline-block;position:absolute;right:calc(50% + .3em);text-align:left}.katex .cd-label-right{display:inline-block;left:calc(50% + .3em);position:absolute;text-align:right}.katex-display{display:block;margin:1em 0;text-align:center}.katex-display>.katex{display:block;text-align:center;white-space:nowrap}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.katex-tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.katex-tag{left:0;right:auto}.katex-display.fleqn>.katex{padding-left:2em;text-align:left}body{counter-reset:katexEqnNo mmlEqnNo}.race-page{max-width:1040px;margin:0 auto;padding:14px 16px 40px}.race-head{display:flex;align-items:center;gap:12px;margin-bottom:12px}.race-head h1{font-size:1.25rem;flex:1}.race-card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:14px 16px;margin-bottom:12px}.race-card h2{font-size:1.05rem;margin-bottom:10px}.race-row{display:flex;gap:10px;align-items:flex-start;margin:8px 0}.race-row>span:first-child{width:96px;color:var(--sub);font-size:.9rem;padding-top:4px;flex:none}.race-row select,.race-row input[type=number]{padding:5px 8px;border:1px solid var(--line);border-radius:8px}.race-queue{list-style:none;margin:0;padding:0}.race-queue li{padding:3px 0}.race-queue.small li{font-size:.9rem;color:var(--sub)}.race-queue.small li.now{color:var(--ink);font-weight:600}.race-queue.small li.done{text-decoration:line-through;opacity:.7}.race-two{display:grid;grid-template-columns:1.3fr 1fr;gap:12px}@media(max-width:760px){.race-two{grid-template-columns:1fr}}.race-label{font-weight:600;margin-bottom:8px}.race-label.sub{margin-top:12px;font-size:.9rem}.race-last{background:#f3efe6;border-radius:8px;padding:8px 10px;margin-top:10px;font-size:.92rem}.race-tickets{display:flex;gap:6px;flex-wrap:wrap;min-height:34px;align-items:center}.race-ticket{display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center;border:2px dashed var(--accent);border-radius:8px;font-size:1.1rem;background:#fff8f2}.race-slot{display:flex;align-items:center;gap:10px;margin:10px 0;padding:8px 12px;border-radius:10px;background:#fff3d6;border:1px solid #f0d28a}.race-slot-icon{font-size:1.6rem;display:inline-block;width:36px;text-align:center}.race-slot:not(.stop) .race-slot-icon{animation:race-blur .12s linear infinite}@keyframes race-blur{0%{transform:translateY(-4px);opacity:.5}to{transform:translateY(4px);opacity:1}}.race-slot.stop{background:#e6f4ea;border-color:#b7dfc2}.race-items{display:flex;gap:6px;flex-wrap:wrap;min-height:34px;align-items:center}.race-item{padding:6px 10px;border:1px solid var(--line);border-radius:10px;background:#fff}.race-item.on{border-color:var(--accent);background:var(--accent-soft)}.race-use{margin:8px 0;padding:8px 10px;border-radius:8px;background:#fbf7f0;font-size:.92rem}.race-use select{margin-left:4px}.race-page button.primary{margin-top:10px}.race-map-wrap{position:relative;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:8px;margin-bottom:12px}.race-map{width:100%;height:auto;display:block}.race-cell{fill:#fbf8f1;stroke:#ddd5c4}.race-cell.start{fill:#e6f0fa}.race-cell.finish{fill:#fde9d9}.race-cell-no{font-size:11px;fill:#8a867d}.race-path{stroke:#e6e2d9;stroke-width:2;stroke-dasharray:3 4}.race-token-name{font-size:9px;fill:#fff;font-weight:700;pointer-events:none}.race-token.moving circle{stroke:#ffd166;stroke-width:3}.race-token.hit circle{animation:race-shake .15s linear 3}@keyframes race-shake{0%{transform:translate(0)}50%{transform:translate(-3px)}to{transform:translate(3px)}}.race-dice{font-size:11px;font-weight:700;fill:#2b2a27}.race-hit{font-size:14px}.race-playing{position:absolute;top:12px;right:16px;background:#2b2a27;color:#fff;padding:4px 10px;border-radius:999px;font-size:.85rem}.race-legend{display:flex;gap:14px;flex-wrap:wrap;padding:6px 8px 2px;font-size:.85rem;color:var(--sub)}.race-legend i{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:4px}.race-final ol{padding-left:22px}.race-final li{margin:4px 0;font-weight:600}.race-page textarea{width:100%;padding:8px 10px;border:1px solid var(--line);border-radius:8px;margin:8px 0;font:inherit}.race-page .wb-tools button,.race-drawer .wb-tools button{width:auto;margin-top:0}.race-drawer .wb-tools{margin-top:12px}.race-fab{position:fixed;right:18px;bottom:72px;z-index:960;display:flex;align-items:center;gap:6px;padding:10px 14px;border-radius:999px;background:#2b2a27;color:#fff;font-size:1.1rem;box-shadow:0 4px 14px #00000040}.race-fab-badge{font-size:.82rem;background:#fff;color:#2b2a27;border-radius:999px;padding:2px 8px;font-weight:600}.race-toast{position:fixed;right:18px;bottom:124px;z-index:961;background:#fff3d6;border:1px solid #f0d28a;border-radius:12px;padding:10px 14px;box-shadow:0 4px 14px #00000026;cursor:pointer;animation:race-pop .25s ease-out}@keyframes race-pop{0%{transform:translateY(10px);opacity:0}to{transform:none;opacity:1}}.race-drawer-back{position:fixed;inset:0;z-index:1200;background:#00000059;display:flex;justify-content:flex-end}.race-drawer{width:min(720px,100%);height:100%;overflow-y:auto;background:var(--bg);padding:14px 16px 30px;box-shadow:-6px 0 24px #0003;animation:race-slide .22s ease-out}@keyframes race-slide{0%{transform:translate(40px);opacity:0}to{transform:none;opacity:1}}.race-drawer .race-head h1{font-size:1.1rem}.race-here{outline:3px solid #ffd166;outline-offset:4px;border-radius:10px;transition:outline-color .4s}.race-drawer .race-head button.primary{margin-top:0;width:auto}.race-col{background:#fffdfa;border:1px solid #e8e2d8;border-radius:12px;overflow:hidden}.race-col-head{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;border-bottom:1px solid var(--line)}.race-col-body{flex:1;min-height:0;overflow-y:auto;padding:10px}.race-col-toast{margin:8px 10px 0;background:#fff3d6;border:1px solid #f0d28a;border-radius:10px;padding:8px 10px;font-size:.9rem;animation:race-pop .25s ease-out}.race-col .race-card{padding:10px 12px}.race-col .race-map-wrap{padding:4px}.race-col .wb-tools button{width:auto;margin-top:0}.race-col .race-legend{gap:8px;font-size:.78rem}*{box-sizing:border-box;margin:0;padding:0}:root{color-scheme:light;--bg: #f6f4ef;--card: #ffffff;--ink: #2b2a27;--sub: #8a867d;--accent: #c96f4a;--accent-soft: #f3e2d8;--line: #e6e2d9;--danger: #b3402f;--ok: #4a7c59}body{font-family:PingFang TC,Noto Sans TC,system-ui,sans-serif;background:var(--bg);color:var(--ink)}button{font:inherit;cursor:pointer;border:none;border-radius:10px}input,select{font:inherit}.sub{color:var(--sub);font-size:.82rem;font-weight:400;margin-left:8px}.hint{color:var(--sub);font-size:.85rem;margin-top:8px}.error{color:var(--danger);font-size:.9rem;margin:8px 0}.error.center{text-align:center}.login-page{min-height:100vh;display:grid;place-items:center;padding:20px}.login-card{background:var(--card);border-radius:18px;padding:36px 32px;width:100%;max-width:380px;box-shadow:0 8px 30px #0000000f}.login-card h1{font-size:1.6rem;letter-spacing:.5px}.tagline{color:var(--sub);margin:4px 0 20px}.tabs{display:flex;gap:6px;margin-bottom:18px;background:var(--bg);border-radius:10px;padding:4px}.tabs button{flex:1;padding:8px;background:transparent;color:var(--sub);border-radius:8px}.tabs button.active{background:var(--card);color:var(--ink);box-shadow:0 1px 4px #00000014}form input,form select{width:100%;padding:11px 13px;margin-bottom:10px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink)}.primary{width:100%;padding:11px;background:var(--accent);color:#fff;font-weight:600}.primary:disabled{opacity:.5;cursor:default}.ghost{background:transparent;color:var(--sub);padding:8px 12px}.ghost:hover{color:var(--ink)}.ghost.small{font-size:.85rem;padding:4px 10px}.chat-page{width:100%;margin:0 auto;min-height:100vh;display:flex;flex-direction:column}.chat-header{max-width:1500px;width:100%;margin:0 auto;box-sizing:border-box}.chat-header{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;background:var(--card);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}.chat-body{flex:1;padding:18px;overflow-y:auto;display:flex;flex-direction:column;gap:10px}.bubble{max-width:82%;padding:10px 14px;border-radius:16px;line-height:1.55;white-space:pre-wrap;word-break:break-word;font-size:.95rem}.bubble.user{align-self:flex-end;background:var(--accent);color:#fff;border-bottom-right-radius:4px}.bubble.assistant{align-self:flex-start;background:var(--card);border:1px solid var(--line);border-bottom-left-radius:4px}.bubble.typing{color:var(--sub);font-style:italic}.chat-input{display:flex;gap:8px;padding:12px 16px;background:var(--card);border-top:1px solid var(--line);position:sticky;bottom:0}.chat-input input{flex:1;margin:0}.chat-input .primary{width:auto;padding:11px 20px}.notice{text-align:center;font-size:.75rem;color:var(--sub);padding:6px;background:var(--card)}.empty{text-align:center;color:var(--sub);margin-top:60px}.dash-page{max-width:860px;margin:0 auto;padding-bottom:60px}.dash-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:var(--card);border-bottom:1px solid var(--line);margin-bottom:20px}.cards{display:grid;gap:18px;padding:0 16px}.card{background:var(--card);border-radius:16px;padding:22px;box-shadow:0 4px 18px #0000000a}.card-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:14px}.card-head h2{font-size:1.15rem}.chip{display:inline-block;background:var(--accent-soft);color:var(--accent);border-radius:999px;padding:3px 10px;font-size:.8rem;margin:2px}.field{display:block;margin-bottom:14px}.field span{display:block;font-size:.82rem;color:var(--sub);margin-bottom:4px}.field select{width:100%;padding:9px 12px;border:1px solid var(--line);border-radius:10px;background:#fff}.alert.danger{background:#fbe9e5;color:var(--danger);border-radius:10px;padding:10px 14px;font-size:.9rem;margin-bottom:12px}.stat{margin-bottom:12px}.stat .label,.report-head .label{font-size:.82rem;color:var(--sub);display:block;margin-bottom:5px}.stat-row.minor{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:.85rem;color:var(--sub);margin-bottom:12px}.intent-bar{display:flex;height:10px;border-radius:5px;overflow:hidden;gap:2px}.seg.exploration{background:var(--ok)}.seg.validation{background:#7d9bbd}.seg.answer_seeking{background:var(--accent)}.seg.procedural{background:#c9c4b8}.seg.off_task{background:#ded9cf}.legend{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:.78rem;color:var(--sub);margin-top:6px}.dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:4px}.dot.exploration{background:var(--ok)}.dot.validation{background:#7d9bbd}.dot.answer_seeking{background:var(--accent)}.dot.procedural{background:#c9c4b8}.dot.off_task{background:#ded9cf}.report-block{border-top:1px solid var(--line);padding-top:14px;margin-top:6px}.report-head{display:flex;justify-content:space-between;align-items:center}.report-content{white-space:pre-wrap;line-height:1.7;font-size:.93rem;margin-top:8px}.modal-backdrop{position:fixed;inset:0;background:#00000059;display:grid;place-items:center;z-index:20;padding:20px}.modal{background:var(--card);border-radius:16px;padding:26px;width:100%;max-width:400px}.modal h2{margin-bottom:16px;font-size:1.1rem}.modal-actions{display:flex;justify-content:flex-end;gap:8px}.modal-actions .primary{width:auto;padding:10px 22px}.dev-switcher{position:sticky;top:0;z-index:999;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:4px;padding:4px 8px;background:#141418eb;box-shadow:0 2px 8px #0000002e;font-size:12px}.dev-switcher .dev-tag{font-size:10px;font-weight:700;letter-spacing:.08em;color:#ffb020;padding-right:2px}.dev-switcher button{border:0;border-radius:999px;padding:3px 9px;font-size:12px;cursor:pointer;background:#ffffff1f;color:#f2f2f4}.dev-switcher button:hover:not(:disabled){background:#fff3}.dev-switcher button.active{background:#4a8cff;color:#fff;cursor:default}.dev-switcher button:disabled:not(.active){opacity:.45;cursor:default}.mission-block{border-top:1px solid #e8e4dd;margin-top:18px;padding-top:14px}.mission-history{font-size:13px;padding:3px 6px;border-radius:6px;border:1px solid #ddd7cd;background:#fff;max-width:180px}.mission-input{width:100%;box-sizing:border-box;margin:8px 0;padding:10px 12px;border:1px solid #ddd7cd;border-radius:10px;font:inherit;font-size:15px;resize:vertical}.mission-input:focus{outline:2px solid #c07a52;outline-offset:-1px;border-color:transparent}.mission-examples{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.chip.clickable{cursor:pointer;border:1px dashed #d6cec1;background:transparent;font-size:12px}.chip.clickable:hover{background:#f3ece3;border-style:solid}.proposal{margin-top:16px;padding:16px;border-radius:12px;background:#faf7f2;border:1px solid #ebe4d9}.proposal-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.proposal-head h3{margin:0;font-size:18px}.proposal-summary{margin:6px 0 12px;color:#55504a;line-height:1.6}.section-label{font-size:12px;color:#8a8279;margin:14px 0 8px;letter-spacing:.04em}.node-card{background:#fff;border:1px solid #ece5da;border-radius:10px;padding:12px 14px;margin-bottom:10px}.node-head{display:flex;gap:10px;align-items:flex-start}.node-seq{flex:none;width:22px;height:22px;border-radius:50%;background:#c07a52;color:#fff;font-size:12px;font-weight:700;display:grid;place-items:center;margin-top:2px}.node-name{font-weight:700}.node-desc{color:#5c564f;font-size:14px;line-height:1.5;margin-top:2px}.node-why{font-size:13px;color:#7b736a;margin:8px 0;line-height:1.5}.scenarios{margin-top:10px;display:grid;gap:10px}.scenario{background:#f7f4ef;border-radius:8px;padding:10px 12px}.scenario-label{font-size:12px;font-weight:700;color:#6f6558}.scenario-label .sub{font-weight:400;margin-left:6px;color:#9a9187}.scenario-prompt{margin:6px 0;line-height:1.6}.golden-label{font-size:12px;color:#8a8279;margin-top:8px}.golden{margin:4px 0 0;padding-left:18px;font-size:14px;line-height:1.7;color:#3f3a34}.proposal-actions{display:flex;gap:8px;margin-top:14px}.alert.info{background:#eef3f8;border:1px solid #d6e2ee}.alert.info{color:#3d5a73}.alert.warn{background:#fdf6e6;border:1px solid #f0e2bd;color:#7a6224}.header-actions{display:flex;gap:6px;align-items:center}.badge{display:inline-grid;place-items:center;min-width:17px;height:17px;margin-left:5px;padding:0 4px;border-radius:9px;background:#d9534f;color:#fff;font-size:11px;font-weight:700}.my-missions{display:grid;gap:8px}.mission-row{background:#fff;border:1px solid #e8e2d8;border-radius:10px;overflow:hidden}.mission-row.done{border-color:#cfe3cf;background:#f7fbf7}.mission-row.declined{opacity:.65}.mission-row-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;cursor:pointer}.mission-row-head:hover{background:#faf8f4}.mission-title{font-weight:700;font-size:15px}.mission-meta{font-size:12px;color:#8a8279;margin-top:2px}.mission-status{flex:none;font-size:12px;padding:3px 9px;border-radius:999px;background:#eee9e1;color:#6f6558}.mission-status.pending{background:#fdeee2;color:#a85c22;font-weight:700}.mission-status.active{background:#e6efe6;color:#3f6b3f}.mission-status.done{background:#d9ecd9;color:#2e5c2e;font-weight:700}.mission-row-body{padding:0 12px 12px;border-top:1px solid #f0ece5}.mission-reason{margin:10px 0}.mission-reason .label{font-size:11px;color:#9a9187}.mission-reason p{margin:3px 0 0;font-size:14px;color:#55504a;line-height:1.5}.node-list{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}.node-pill{font-size:12px;padding:4px 9px;border-radius:999px;background:#f2eee7;color:#6f6558}.node-pill.mastered{background:#dcecdc;color:#2e5c2e}.node-pill.teaching{background:#fdf0dc;color:#8a6320}.decide-box{margin-top:8px}.decide-actions{display:flex;gap:8px;margin-top:8px}.decline-input{width:100%;box-sizing:border-box;margin-top:6px;padding:8px 10px;border:1px solid #ddd7cd;border-radius:8px;font:inherit;font-size:14px}.pretest{margin-top:12px;padding:12px;border-radius:10px;background:#f7f4ef}.pretest-label{font-size:11px;color:#9a9187;letter-spacing:.05em}.pretest-question{margin:6px 0 10px;font-size:15px;line-height:1.6}.pretest-input{width:100%;box-sizing:border-box;padding:10px 12px;margin-bottom:8px;border:1px solid #ddd7cd;border-radius:8px;font:inherit;font-size:15px;resize:vertical}.pretest-result .alert{margin-bottom:8px}.pretest-result .alert p{margin:6px 0 0;font-weight:400;line-height:1.6}.alert.done-banner{background:#e4f2e4;border:1px solid #c6e0c6;color:#2e5c2e;font-weight:700}.dual-label{display:block;font-size:12px;font-weight:700;color:#6f6558;margin:10px 0 4px}.dual-label .sub{font-weight:400;color:#a89f93;margin-left:6px}.xp-bar{background:#fff;border:1px solid #ece5da;border-radius:10px;padding:10px 12px;margin-bottom:12px}.xp-bar.levelup{animation:xp-flash .6s ease 2}@keyframes xp-flash{0%,to{box-shadow:0 0 #e0a83e00}50%{box-shadow:0 0 0 4px #e0a83e59}}.xp-head{display:flex;align-items:center;gap:9px;position:relative}.xp-level{flex:none;font-size:12px;font-weight:700;color:#fff;background:#c07a52;padding:2px 8px;border-radius:999px}.xp-track{flex:1;height:9px;border-radius:999px;background:#efe9e0;overflow:hidden}.xp-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,#e0a83e,#c07a52);transition:width .9s cubic-bezier(.22,1,.36,1)}.xp-total{flex:none;font-size:13px;font-weight:700;color:#6f6558;min-width:34px;text-align:right}.xp-gain{position:absolute;right:-4px;top:-4px;font-size:15px;font-weight:800;color:#d98324;animation:xp-float 1.5s ease-out forwards;pointer-events:none}@keyframes xp-float{0%{opacity:0;transform:translateY(6px) scale(.8)}18%{opacity:1;transform:translateY(-4px) scale(1.25)}40%{opacity:1;transform:translateY(-10px) scale(1)}to{opacity:0;transform:translateY(-26px) scale(1)}}.xp-meta{display:flex;gap:10px;justify-content:space-between;margin-top:5px;font-size:11px;color:#a89f93}.streak{color:#d98324;font-weight:700}.combo-row{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px;min-height:0}.combo{font-size:11px;font-weight:700;padding:3px 9px;border-radius:999px;background:#fdf0dc;color:#a05c14;border:1px solid #f0dcb8;animation:combo-pop .45s cubic-bezier(.34,1.56,.64,1) both}@keyframes combo-pop{0%{opacity:0;transform:scale(.5) translateY(6px)}to{opacity:1;transform:scale(1) translateY(0)}}.levelup-banner{margin-top:8px;padding:7px 10px;border-radius:8px;text-align:center;background:linear-gradient(90deg,#fdf0dc,#fbe4c4);color:#8a5a12;font-weight:800;font-size:14px;animation:combo-pop .5s cubic-bezier(.34,1.56,.64,1) both}@media(prefers-reduced-motion:reduce){.xp-fill{transition:none}.xp-gain,.combo,.levelup-banner,.xp-bar.levelup{animation:none}.xp-gain{opacity:1}}.mission-layout{display:flex;gap:12px;align-items:flex-start}.mission-sidebar{flex:none;width:190px;display:flex;flex-direction:column;gap:6px}.sidebar-title{font-size:12px;font-weight:700;color:#8a8279;padding:2px 4px 4px}.mission-item{text-align:left;border:1px solid #e8e2d8;background:#fff;border-radius:9px;padding:8px 10px;cursor:pointer;font:inherit}.mission-item:hover{background:#faf8f4}.mission-item.selected{border-color:#c07a52;box-shadow:0 0 0 2px #c07a5226}.mission-item.done{background:#f7fbf7;border-color:#cfe3cf}.mission-item.declined{opacity:.6}.mi-title{font-size:13px;font-weight:700;line-height:1.35}.mi-lamps{display:flex;align-items:center;gap:3px;margin-top:5px;flex-wrap:wrap}.lamp{font-size:12px}.mi-status{font-size:10px;padding:1px 6px;border-radius:999px;background:#eee9e1;color:#6f6558;margin-left:auto}.mi-status.pending{background:#fdeee2;color:#a85c22;font-weight:700}.mi-status.done{background:#d9ecd9;color:#2e5c2e}.mission-main{flex:1;min-width:0}.pane-card{background:#fff;border:1px solid #e8e2d8;border-radius:10px;padding:14px}.pane-card h3{margin:0 0 8px;font-size:17px}.concept-lamps{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px;align-items:center}.concept-chip{font-size:12px;padding:4px 10px;border-radius:999px;background:#f2eee7;color:#6f6558;transition:background .4s,color .4s}.concept-chip.yellow{background:#fdf0dc;color:#8a6320}.concept-chip.green{background:#dcecdc;color:#2e5c2e;font-weight:700}.phase-tag{font-size:11px;color:#a05c14;background:#fdf0dc;padding:3px 9px;border-radius:999px}.convo{display:flex;flex-direction:column}.convo-log{background:#fff;border:1px solid #e8e2d8;border-radius:10px;padding:12px;max-height:46vh;overflow-y:auto;display:flex;flex-direction:column;gap:8px;margin-bottom:10px}.convo-system{align-self:center;font-size:12px;color:#8a6320;background:#fdf0dc;padding:4px 12px;border-radius:999px}.my-question{margin-top:5px;padding-top:5px;border-top:1px solid rgba(0,0,0,.08);font-size:13px;opacity:.85}.green-pop{margin-top:6px;font-size:12px;font-weight:700;color:#2e5c2e;animation:combo-pop .5s cubic-bezier(.34,1.56,.64,1) both}.dual-input{background:#fff;border:1px solid #e8e2d8;border-radius:10px;padding:12px}@media(max-width:720px){.mission-layout{flex-direction:column}.mission-sidebar{width:100%;flex-direction:row;overflow-x:auto}.mission-item{flex:none;min-width:150px}}.opening-q{background:#fff;border-left:3px solid #c07a52;border-radius:0 8px 8px 0;padding:11px 14px;margin:6px 0 4px;font-size:15px;line-height:1.65;color:#3f3a34}.opening-q.transfer{border-left-color:#8a9ec0}.section-label .sub{font-weight:400;margin-left:8px;color:#a89f93}.node-why.misconception{color:#a05c14}.xp-pop{position:fixed;top:22%;left:50%;transform:translate(-50%);z-index:900;pointer-events:none;text-align:center;animation:pop-in .45s cubic-bezier(.34,1.56,.64,1) both,pop-out .5s ease-in 2.1s both}@keyframes pop-in{0%{opacity:0;transform:translate(-50%) scale(.55) translateY(14px)}to{opacity:1;transform:translate(-50%) scale(1) translateY(0)}}@keyframes pop-out{to{opacity:0;transform:translate(-50%) scale(1.05) translateY(-22px)}}.xp-pop-num{font-size:58px;font-weight:900;line-height:1;color:#d98324;text-shadow:0 3px 16px rgba(217,131,36,.35);letter-spacing:-.02em}.xp-pop-num span{font-size:20px;margin-left:5px;font-weight:800}.xp-pop.zero .xp-pop-num{color:#a89f93;text-shadow:none}.xp-pop-combo{display:flex;flex-direction:column;gap:5px;margin-top:10px;align-items:center}.xp-pop-combo span{font-size:14px;font-weight:800;padding:4px 14px;border-radius:999px;background:#fff;color:#a05c14;border:1.5px solid #f0dcb8;box-shadow:0 3px 12px #00000017;animation:combo-pop .4s cubic-bezier(.34,1.56,.64,1) both}.xp-pop-hint{margin-top:8px;font-size:13px;color:#8a8279;background:#fff;padding:5px 14px;border-radius:999px;box-shadow:0 3px 12px #00000017}@media(prefers-reduced-motion:reduce){.xp-pop,.xp-pop-combo span{animation:none}}.chat-layout{flex:1;display:flex;gap:12px;min-height:0;padding:12px 14px;max-width:1000px;width:100%;margin:0 auto;box-sizing:border-box}.chat-main{flex:1;min-width:0;display:flex;flex-direction:column}.chat-layout .mission-sidebar{overflow-y:auto;max-height:100%}.mi-sub{font-size:11px;color:#a89f93}.chat-main .convo-log{flex:1;max-height:none;min-height:240px}.chat-input{display:flex;gap:8px;align-items:flex-end;background:#fff;border:1px solid #e8e2d8;border-radius:10px;padding:10px}.chat-input textarea{flex:1;min-width:0;border:0;outline:0;resize:none;font:inherit;font-size:15px;line-height:1.5;background:transparent}.chat-input button{flex:none}@media(max-width:720px){.chat-layout{flex-direction:column;padding:10px}.chat-layout .mission-sidebar{width:100%;flex-direction:row;overflow-x:auto;max-height:none;padding-bottom:4px;align-items:flex-start}.chat-layout .mission-item{flex:none;min-width:145px}.sidebar-title{display:none}}body:has(.dev-switcher) .chat-header,body:has(.dev-switcher) .app-header{padding-top:30px}.chat-layout.three-col{max-width:1500px}.chat-layout.three-col .chat-layout.three-col .chat-main{flex:1 1 0;min-width:320px}.quiz-tags .chip{font-size:11px}.quiz-opt:hover:not(:disabled){background:#faf8f4}.quiz-opt.picked{border-color:#c07a52;background:#fdf6f1}.quiz-opt.correct{border-color:#6aa06a;background:#eef7ee}.quiz-opt.wrong{border-color:#c96b6b;background:#fbf0f0}.quiz-opt:disabled{cursor:default}@media(max-width:1100px){.chat-layout.three-col{flex-wrap:wrap}}.chat-layout.three-col{max-width:1560px;align-items:stretch}.chat-layout.three-col .mission-sidebar{flex:0 0 190px}.reader-col{flex:1 1 0;min-width:0;display:flex}.chat-layout.three-col .chat-main{flex:0 0 clamp(320px,26%,400px);min-width:0;display:flex;flex-direction:column}.reader{flex:1;min-width:0;overflow-y:auto;background:#fffdfa;border:1px solid #e8e2d8;border-radius:12px}.reader-doc{max-width:660px;margin:0 auto;padding:34px 40px 80px}.doc-kicker{font-size:12px;letter-spacing:.1em;color:#b0a698;text-transform:uppercase;font-weight:700}.reader-doc h1{margin:6px 0 12px;font-size:27px;letter-spacing:-.01em;color:#2b2721}.doc-lead{color:#6f6558;line-height:1.85;font-size:15px;margin:0 0 20px}.doc-progress{display:flex;align-items:center;gap:10px;font-size:12px;color:#8a8279}.doc-progress-bar{flex:1;height:4px;border-radius:999px;background:#eee8df;overflow:hidden}.doc-progress-bar div{height:100%;background:#c07a52;transition:width .5s cubic-bezier(.22,1,.36,1)}.doc-section{padding:30px 0;border-top:1px solid #efe9e0}.doc-section:first-of-type{border-top:0}.sec-marker{display:flex;align-items:center;gap:10px;margin-bottom:14px}.sec-no{flex:none;width:26px;height:26px;border-radius:50%;background:#2b2721;color:#fff;font-size:13px;font-weight:700;display:grid;place-items:center;font-variant-numeric:tabular-nums}.doc-section.answered .sec-no{background:#c9c0b3}.sec-tags{font-size:12px;color:#a89f93;letter-spacing:.03em}.sec-tags em{font-style:normal;color:#a05c14}.sec-stem{font-size:17px;line-height:2;color:#2b2721;margin:0 0 20px;letter-spacing:.01em;white-space:pre-wrap}.sec-options{display:flex;flex-direction:column;gap:7px;margin-bottom:18px}.sec-opt{display:flex;gap:12px;align-items:flex-start;text-align:left;width:100%;padding:13px 15px;border:1.5px solid #ebe5db;border-radius:10px;background:#fff;font:inherit;font-size:15px;line-height:1.75;cursor:pointer;transition:border-color .15s,background .15s}.sec-opt:hover:not(:disabled){border-color:#d9cdbd;background:#fdfbf8}.sec-opt.picked{border-color:#c07a52;background:#fdf6f1}.sec-opt.correct{border-color:#7aa87a;background:#f2f9f2}.sec-opt.wrong{border-color:#cd8585;background:#fdf3f3}.sec-opt:disabled{cursor:default}.opt-key{flex:none;width:23px;height:23px;border-radius:50%;margin-top:1px;background:#f1ece4;color:#8a8279;font-size:12px;font-weight:700;display:grid;place-items:center}.sec-opt.picked .opt-key{background:#c07a52;color:#fff}.sec-opt.correct .opt-key{background:#6aa06a;color:#fff}.sec-opt.wrong .opt-key{background:#c96b6b;color:#fff}.opt-text{flex:1}.opt-mark{flex:none;font-size:11px;font-weight:700;color:#2e5c2e;background:#dcecdc;padding:2px 8px;border-radius:999px;margin-top:2px}.sec-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.sec-result{border-left:3px solid #d9cdbd;padding-left:14px}.sec-result.ok{border-left-color:#7aa87a}.sec-result.no{border-left-color:#cd8585}.res-line{display:flex;align-items:baseline;gap:10px;margin-bottom:10px;font-size:15px}.res-meta{font-size:12px;color:#a89f93}.doc-end{margin-top:34px;padding:18px;text-align:center;border-radius:10px;background:#f4f8f4;color:#2e5c2e;font-weight:700}@media(max-width:1180px){.chat-layout.three-col{flex-wrap:wrap}.chat-layout.three-col .chat-main{flex-basis:100%}.reader-doc{padding:26px 24px 60px}}.hint-stack{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.hint-item{background:#fdf6e6;border:1px solid #f0e2bd;border-radius:8px;padding:9px 12px;font-size:14px;line-height:1.7;color:#6b5518;animation:combo-pop .35s ease both}.hint-item b{color:#a05c14;margin-right:4px}.opt-wrap{display:flex;flex-direction:column}.opt-row{display:flex;gap:6px;align-items:stretch}.opt-row .sec-opt{flex:1}.opt-why{flex:none;align-self:center;border:0;font:inherit;font-size:12px;color:#a05c14;font-weight:700;padding:5px 10px;border-radius:999px;background:#fdf0dc;cursor:pointer;white-space:nowrap}.opt-why:hover{background:#f8e3c4}.opt-note{margin:4px 0 2px 35px;padding:9px 12px;border-radius:8px;background:#f7f4ef;border-left:3px solid #cd8585;font-size:13.5px;line-height:1.7;color:#4a453e;animation:combo-pop .3s ease both}.opt-note.ok{border-left-color:#7aa87a}.opt-misc{margin-top:6px;font-size:12px;color:#a05c14}.explanation{margin:8px 0;padding:12px 14px;border-radius:9px;background:#f7f4ef;font-size:14.5px;line-height:1.85;color:#3a352e}.exp-warn{margin-top:8px;font-size:12px;color:#a05c14}.sel-pop{position:fixed;transform:translate(-50%,calc(-100% - 8px));z-index:950;display:flex;gap:2px;padding:3px;border-radius:999px;background:#2b2721;box-shadow:0 4px 16px #00000040;animation:combo-pop .25s cubic-bezier(.34,1.56,.64,1) both}.sel-pop button{border:0;cursor:pointer;font:inherit;font-size:13px;font-weight:700;white-space:nowrap;padding:6px 12px;border-radius:999px;background:transparent;color:#fff}.sel-pop button:hover{background:#c07a52}.sel-pop:after{content:"";position:absolute;left:50%;bottom:-5px;transform:translate(-50%);border:5px solid transparent;border-top:5px solid #2b2721}.doc-note{margin:10px 0 0;padding:8px 12px;font-size:12.5px;line-height:1.6;color:#8a7f70;background:#faf7f2;border-left:3px solid #e0d5c5;border-radius:0 6px 6px 0}.sec-opt,.sec-opt .opt-text{user-select:text;-webkit-user-select:text}.sec-figure{margin:0 0 18px}.sec-figure img{max-width:100%;height:auto;display:block;border:1px solid #ece5da;border-radius:8px;background:#fff;padding:8px}.opt-img{display:block;max-width:250px;height:auto;margin-top:6px;background:#fff;border:1px solid #efe9e0;border-radius:6px}.behavior-block{margin:18px 0;padding:16px;background:#fff;border:1px solid #ece5da;border-radius:10px}.bh-row{display:flex;gap:10px;margin:12px 0;flex-wrap:wrap}.bh-num{flex:1 1 70px;text-align:center;padding:10px 6px;background:#faf7f2;border-radius:8px}.bh-num b{display:block;font-size:22px;color:#2b2721;line-height:1.2}.bh-num span{font-size:12px;color:#8a7f70}.bh-facts{margin:12px 0 0;padding-left:18px;color:#5c5348;font-size:13.5px;line-height:1.9}.bh-facts .sub{color:#a89c8c;font-size:12px}.bh-searches{margin-top:10px}.bh-q{display:flex;gap:8px;align-items:flex-start;padding:7px 0;border-bottom:1px solid #f3ece2;font-size:13px;color:#5c5348;line-height:1.5}.bh-q .chip{flex:none}.behavior-block .alert p{margin:4px 0 0;font-size:12.5px;opacity:.85}.note-card{position:fixed;right:20px;bottom:20px;z-index:960;width:300px;padding:14px;background:#fff;border:1px solid #ece5da;border-radius:12px;box-shadow:0 8px 28px #00000029;animation:combo-pop .25s cubic-bezier(.34,1.56,.64,1) both}.note-head{font-size:13px;font-weight:700;color:#2b2721;margin-bottom:8px}.note-card textarea{width:100%;box-sizing:border-box;resize:none;font:inherit;font-size:13.5px;line-height:1.6;padding:8px 10px;border:1px solid #e0d5c5;border-radius:8px}.note-actions{display:flex;gap:8px;margin-top:8px}.my-notes{margin:10px 0}.my-note{font-size:13px;line-height:1.7;color:#5c5348;background:#fdf9ee;border-left:3px solid #e5c76b;padding:8px 12px;border-radius:0 8px 8px 0;margin-bottom:6px}.my-note-tag{display:block;font-size:11.5px;color:#a89c8c;margin-bottom:2px}.bh-note{display:block;margin-top:3px;font-size:12.5px;color:#8a7f70}.chapter-item .mi-title{font-size:13px}.wrong-item .mi-title{color:#1e50a2}.wb-badge{display:inline-block;margin-left:8px;padding:2px 9px;font-size:11.5px;font-weight:700;border-radius:999px;color:#fff}.wb-0{background:#1e50a2}.wb-1{background:#5b87c9}.wb-2{background:#a8c4e6;color:#23406e}.curve-block{margin:18px 0;padding:16px;background:#fff;border:1px solid #ece5da;border-radius:10px}.curve-wrap{position:relative}.curve-svg{width:100%;height:auto;display:block}.curve-svg .grid{stroke:#f0eae0;stroke-width:1}.curve-svg .tick{font-size:10px;fill:#8a7f70;font-variant-numeric:tabular-nums}.curve-legend{display:flex;flex-wrap:wrap;gap:14px;margin:10px 0 6px;font-size:12px;color:#5c5348;align-items:center}.curve-legend .lg-line{display:inline-block;width:18px;height:2px;margin-right:5px;vertical-align:middle;border-radius:1px}.curve-legend .lg-dash{background-image:linear-gradient(90deg,currentColor 5px,transparent 5px)}.curve-legend .lg-sw{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:5px;vertical-align:-1px}.curve-tip{position:absolute;top:8px;transform:translate(-50%);background:#2b2721;color:#fff;font-size:12px;line-height:1.7;padding:8px 12px;border-radius:8px;pointer-events:none;white-space:nowrap;z-index:20}.curve-tip .sub{opacity:.7;font-size:11px}.curve-table{margin-top:8px;font-size:12.5px}.curve-table summary{cursor:pointer;color:#8a7f70}.curve-table table{width:100%;border-collapse:collapse;margin-top:6px}.curve-table th,.curve-table td{padding:4px 8px;border-bottom:1px solid #f3ece2;text-align:right;font-variant-numeric:tabular-nums}.curve-table th:first-child,.curve-table td:first-child{text-align:left}.prev-strip{margin-top:10px;padding:7px 12px;font-size:12.5px;color:#8a7f70;background:#faf7f2;border-left:3px solid #d8cbb8;border-radius:0 6px 6px 0}.chip-on{background:#2b2721!important;color:#fff!important}.th-drill{margin-top:10px;padding:12px;background:#faf7f2;border-radius:8px}.th-qs{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.th-pie{margin-top:12px;padding-top:10px;border-top:1px solid #ece5da;font-size:13px;color:#2b2721}.th-pie-row{display:flex;gap:14px;align-items:center;margin-top:6px}.th-pie-legend{list-style:none;margin:0;padding:0;line-height:1.9;color:#5c5348}.th-pie-legend .sub{color:#a89c8c;font-size:12px}.th-flag{margin-top:6px;padding:6px 10px;font-size:12.5px;background:#fdf3ee;border-left:3px solid #d97742;border-radius:0 6px 6px 0;color:#5c5348}.doc-section{--bg: #faf7f2;--fg: #2b2721;--muted: #8a7f70;--line: #ece5da;--panel: #fff;--grid-minor: #f3d9c9;--grid-major: #d99a5a;--frame: #c07a52;--student: #1a1a1a;--answer: #2f8f4e;--accent: #1f6feb}.plot{width:100%;height:auto;display:block;background:var(--panel);border:1px solid var(--line);border-radius:10px;touch-action:none}.grid-minor{stroke:var(--grid-minor);stroke-width:1;vector-effect:non-scaling-stroke}.grid-major{stroke:var(--grid-major);stroke-width:1.4;vector-effect:non-scaling-stroke}.axis-zero{stroke:var(--grid-major);stroke-width:2.2;vector-effect:non-scaling-stroke}.frame{fill:none;stroke:var(--frame);stroke-width:2;vector-effect:non-scaling-stroke}.plot .tick{fill:var(--grid-major);font-size:13px}.axis-label{fill:var(--fg);font-size:14px}.student-line{fill:none;stroke:var(--student);stroke-width:2.5;vector-effect:non-scaling-stroke}.student-dot{fill:var(--student)}.hint-dot{fill:none;stroke:var(--muted);stroke-width:1.5;stroke-dasharray:3 3;vector-effect:non-scaling-stroke}.answer-line{fill:none;stroke:var(--answer);stroke-width:2;stroke-dasharray:6 4;vector-effect:non-scaling-stroke}.answer-dot{fill:none;stroke:var(--answer);stroke-width:2;vector-effect:non-scaling-stroke}.qtable{margin:0 0 12px}.qtable figcaption{font-size:13px;color:var(--muted);margin-bottom:4px}.qtable .scroll{overflow-x:auto}.qtable table{border-collapse:collapse;font-size:13px;font-variant-numeric:tabular-nums;white-space:nowrap}.qtable th,.qtable td{border:1px solid var(--line);padding:3px 8px;text-align:center}.qtable th{background:#f5f0e8;font-weight:600}.qtable th.group{background:#efe7da;font-weight:700}.qtable td[rowspan]{vertical-align:middle}.qtable .rowhead{text-align:left;color:var(--muted)}.qtable .hi{background:#e3ecfb;font-weight:700}.group-passage{background:#faf7f2;border-left:3px solid #e0d5c5;padding:10px 14px;border-radius:0 8px 8px 0}.numeric-field{display:inline-flex;align-items:center;gap:10px;font-size:14px;margin:12px 0 0}.numeric-field input{width:150px;padding:6px 10px;font-size:14px;border:1px solid var(--line);border-radius:6px}.formula{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:16px 18px}.given{margin:0 0 14px;padding-left:20px;font-size:13px;color:var(--muted)}.field{display:flex;align-items:center;gap:10px;margin-bottom:8px}.flabel{font-size:14px;font-weight:600;min-width:42px}.finput{flex:1;padding:9px 12px;font-size:15px;border:1px solid var(--line);border-radius:6px;background:var(--bg);color:var(--fg)}.finput:focus{outline:2px solid var(--accent);outline-offset:-1px}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.unit{font-size:14px;color:var(--muted)}.keypad{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 10px 52px}.keypad button{min-width:42px;padding:6px 10px;font-size:15px;font-family:ui-monospace,Menlo,monospace;border:1px solid var(--line);border-radius:6px;background:#fff;cursor:pointer}.keypad .clr{font-family:inherit;font-size:13px;color:var(--muted)}.evalbar{margin:0 0 16px 52px;padding:7px 12px;border-radius:6px;font-size:13.5px;background:var(--bg);border:1px solid var(--line);color:var(--muted)}.evalbar.ok b{color:var(--accent);font-family:ui-monospace,Menlo,monospace}.evalbar.bad{color:var(--frame);border-color:var(--frame)}.evalbar.idle{border-style:dashed}.evalbar.small{margin-bottom:4px;padding:4px 12px;font-size:12.5px}.refbox{margin-top:16px;padding-top:14px;border-top:1px dashed var(--line);color:var(--answer);font-size:14px}.textanswer{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:16px 18px}.tinput{width:100%;box-sizing:border-box;padding:10px 12px;font-size:15px;line-height:1.7;border:1px solid var(--line);border-radius:6px;resize:vertical;font-family:inherit}.tinput:focus{outline:2px solid var(--accent);outline-offset:-1px}.counter{text-align:right;font-size:12px;color:var(--muted);margin-top:4px}.counter.bad{color:var(--frame);font-weight:600}.criteria{margin-top:14px;padding-top:12px;border-top:1px dashed var(--line)}.crit{font-size:13.5px;margin-bottom:4px}.mark{display:inline-block;width:18px;font-weight:700}.mark.ok{color:var(--answer)}.mark.no{color:var(--frame)}.mark.wait{color:var(--muted)}.judgedby{margin-left:8px;font-size:11.5px;opacity:.7}.hintmsg{color:var(--muted);font-size:13px}.rubric-list{list-style:none;margin:10px 0;padding:0;display:grid;gap:8px;font-size:14px}.rubric-list li.ok{color:#2f7a44}.rubric-list li.no{color:#b3432b}.rub-detail{display:block;font-size:12.5px;color:#8a7f70;padding-left:20px}.rub-criteria{list-style:none;margin:4px 0 0;padding-left:20px;font-size:12.5px;color:#5c5348}.choicetext{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:16px 18px}.choicetable{border-collapse:collapse;margin-bottom:14px}.choicetable td{padding:5px 14px 5px 0;vertical-align:top}.choicetable .rowlab{font-weight:600;font-size:14px;white-space:nowrap;padding-top:7px}.choicetext .opt{display:flex;align-items:center;gap:7px;font-size:14px;padding:4px 0;cursor:pointer}.choicetext .opt input{cursor:pointer}.choicetext .tfield{display:block}.choicetext .tlabel{display:block;margin-bottom:5px}.hotspot{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:14px 16px}.hsvg{max-width:320px;width:100%;height:auto;display:block;margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:8px;cursor:crosshair;touch-action:manipulation;-webkit-user-select:none;user-select:none}.hs-mark circle{fill:#1a1a1a}.hs-answer circle{fill:none;stroke:var(--answer);stroke-width:3}.hs-answer-ring{fill:none;stroke:var(--answer);stroke-width:2.5;stroke-dasharray:8 6}.waveplot,.angledial{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:14px 16px}.wvsvg{width:100%;height:auto;display:block;background:var(--bg);border:1px solid var(--line);border-radius:8px;touch-action:none;-webkit-user-select:none;user-select:none}.wv-frame{fill:none;stroke:var(--frame);stroke-width:1.5;vector-effect:non-scaling-stroke}.wv-grid{stroke:var(--grid-minor);stroke-width:1;vector-effect:non-scaling-stroke}.wv-dash{stroke:var(--grid-major);stroke-width:1.4;stroke-dasharray:7 5;vector-effect:non-scaling-stroke}.wv-axis{stroke:var(--frame);stroke-width:2.4;vector-effect:non-scaling-stroke}.wv-label{fill:var(--fg);font-size:17px;font-weight:700}.wv-tick{fill:var(--muted);font-size:12px}.wv-ref{fill:none;stroke:var(--grid-major);stroke-width:2;vector-effect:non-scaling-stroke}.wv-student{fill:none;stroke:var(--student);stroke-width:2.6;vector-effect:non-scaling-stroke}.wv-handle{fill:var(--accent);stroke:#fff;stroke-width:2;cursor:grab}.adsvg{max-width:380px;width:100%;height:auto;display:block;margin:0 auto;background:var(--bg);border:1px solid var(--line);border-radius:8px;cursor:crosshair}.ad-slow{fill:color-mix(in srgb,var(--frame) 22%,transparent)}.ad-circle,.ad-rim{fill:none;stroke:var(--grid-major);stroke-width:1.6;vector-effect:non-scaling-stroke}.ad-tick{stroke:var(--grid-major);stroke-width:1.3;vector-effect:non-scaling-stroke}.ad-interface,.ad-incident{stroke:var(--frame);stroke-width:2.6;vector-effect:non-scaling-stroke}.ad-incident-head{fill:var(--frame)}.ad-ilabel{fill:var(--frame);font-size:16px;font-style:italic}.ad-dashed{stroke:var(--frame);stroke-width:1.4;stroke-dasharray:6 5;vector-effect:non-scaling-stroke}.ad-ray line{stroke:var(--student);stroke-width:3;vector-effect:non-scaling-stroke}.ad-ray polygon{fill:var(--student)}.ad-answer line{stroke:var(--answer);stroke-width:2.5;stroke-dasharray:6 4;vector-effect:non-scaling-stroke}.angledial .controls{display:flex;align-items:center;gap:10px;margin-top:10px;flex-wrap:wrap}.fb-form{margin-top:10px;padding:12px;background:#faf7f2;border-radius:8px}.fb-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.fb-form textarea{width:100%;box-sizing:border-box;font:inherit;font-size:13.5px;padding:8px 10px;border:1px solid #e0d5c5;border-radius:8px;resize:vertical}.fb-actions{display:flex;gap:8px;margin-top:8px;align-items:center}.fb-actions input{flex:1;max-width:180px;font:inherit;font-size:12.5px;padding:6px 10px;border:1px solid #e0d5c5;border-radius:8px}.fb-thanks{font-size:12.5px;color:#2f7a44;align-self:center}.rev-note{margin-top:8px;font-size:12px;color:#8a7f70;border-top:1px dashed #e0d5c5;padding-top:6px}.bell-wrap,.bell{position:relative}.bell-badge{position:absolute;top:-2px;right:-4px;background:#c0392b;color:#fff;font-size:10px;font-weight:700;border-radius:999px;padding:1px 5px}.bell-drop{position:absolute;right:0;top:110%;z-index:980;width:320px;background:#fff;border:1px solid #ece5da;border-radius:10px;box-shadow:0 8px 28px #00000024;max-height:380px;overflow-y:auto}.bell-item{padding:10px 14px;font-size:13px;line-height:1.6;color:#5c5348;border-bottom:1px solid #f3ece2;cursor:pointer}.bell-item.unread{background:#fdf9ee;font-weight:500;color:#2b2721}.bell-time{font-size:11px;color:#a89c8c;margin-top:3px}.bell-empty{padding:16px;font-size:13px;color:#8a7f70;text-align:center}.ad-ray-reflected line{stroke:var(--student)}.ad-ray-reflected polygon{fill:var(--student)}.ad-ray-refracted line{stroke:var(--accent)}.ad-ray-refracted polygon{fill:var(--accent)}.ad-dot{display:inline-block;width:9px;height:9px;border-radius:999px;margin-right:5px}.ad-dot-reflected{background:#1a1a1a}.ad-dot-refracted{background:#1f6feb}.numeric-block{margin:12px 0 0;display:grid;gap:6px}.working-input{width:260px;padding:6px 10px;font:inherit;font-size:14px;border:1px solid var(--line);border-radius:6px;font-family:ui-monospace,Menlo,monospace}.chat-fab{display:none}@media(max-width:700px){.chat-layout.three-col .chat-main{position:fixed;inset:0;z-index:900;background:#fbfaf7;padding:12px 12px 0;box-sizing:border-box}.chat-fab{display:flex;align-items:center;justify-content:center;position:fixed;right:16px;bottom:18px;z-index:950;width:52px;height:52px;border-radius:999px;border:0;background:#2b2721;color:#fff;font-size:22px;cursor:pointer;box-shadow:0 6px 20px #0000004d}.chat-header{padding:8px 12px}.chat-header .sub{display:none}.header-actions .ghost:not(.bell){font-size:12px;padding:6px 8px}.reader-doc{padding:14px 12px 80px}.doc-head h1{font-size:20px}.doc-section{padding:14px 0}.sec-stem{font-size:15.5px;line-height:1.85}.sec-opt{min-height:44px;padding:10px 12px;font-size:15px}.opt-row{flex-wrap:wrap}.opt-why,.opt-pre{min-height:40px}.sec-actions{flex-wrap:wrap;gap:8px}.sec-actions button{min-height:42px}.sec-figure img,.opt-img{width:100%}.working-input{width:100%;box-sizing:border-box}.adsvg{max-width:100%}.keypad,.evalbar{margin-left:0}.sel-pop{max-width:92vw}.note-card{right:10px;left:10px;width:auto;bottom:80px}.bell-drop{position:fixed;left:10px;right:10px;width:auto;top:54px}}.join-banner{background:#eef4fb;border:1px solid #c9dcf2;border-radius:8px;padding:10px 14px;font-size:13.5px;margin-bottom:12px;line-height:1.6}.invite-box code,.observer-link code{display:inline-block;background:#faf7f2;border:1px dashed #d8cbb8;border-radius:6px;padding:4px 10px;font-size:12.5px;cursor:pointer;word-break:break-all;margin:4px 6px 0 0}.viewer-main{max-width:900px;margin:0 auto;padding:16px}.student-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.viewer-list{list-style:none;margin:8px 0;padding:0}.viewer-list li{display:flex;align-items:center;gap:10px;padding:6px 0;font-size:14px;border-bottom:1px solid #f3ece2}.viewer-list .sub{font-size:12px;color:#a89c8c}.observer-link{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.my-report{flex:1;overflow-y:auto;padding:14px}.app-shell{min-height:100vh;display:flex;flex-direction:column}.app-shell>.app-header{display:flex;justify-content:space-between;align-items:center;padding:12px 20px;border-bottom:1px solid #eee5d8;background:#fffdf9}.app-shell>.app-header .sub{margin-left:8px;font-size:13px;color:#a89c8c}.dict-zone{position:relative}.dw{cursor:pointer;border-bottom:1px dashed #d8c9b2;border-radius:2px}.dw:hover{background:#f6eddf}.dict-pop{position:absolute;z-index:40;display:block;min-width:200px;max-width:300px;background:#fffdf8;border:1px solid #e2d5c0;border-radius:10px;box-shadow:0 6px 24px #5a46282e;padding:10px 12px;font-size:13.5px;line-height:1.55;white-space:pre-line}.dp-head{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.dp-word{font-size:15px;font-weight:700}.dp-ph{color:#a4977f;font-size:12.5px}.dp-lv{font-size:11px;padding:1px 7px;border-radius:99px;font-weight:700}.dp-lv.core{background:#e7f2e4;color:#4a7c43}.dp-lv.adv{background:#fdeeda;color:#b0713f}.dp-lv.off{background:#eee9e1;color:#8d8272}.dp-tr{display:block;margin-top:6px;color:#4c4437}.dp-miss{display:block;margin-top:4px;color:#a4977f}@media(max-width:700px){.dict-pop{position:fixed;left:12px!important;right:12px;top:auto!important;bottom:12px;max-width:none}}.mpsvg{width:100%;height:auto;color:#3d3628}.mp-item.armed .mp-dot{stroke:#a89c8c;stroke-width:6;stroke-opacity:.18}.qfigure figcaption{text-align:center;font-size:13px;color:#a89c8c;margin-top:4px}.sec-tags+.src-btn{margin-left:auto}.src-btn{margin-left:8px;border:1px solid #e0d6c4;background:#fbf8f2;border-radius:99px;font-size:12px;padding:3px 10px;cursor:pointer;color:#7a6f5c;flex-shrink:0}.src-btn.on{background:#efe6d5;color:#4c4437}.src-crop{display:block;width:100%;border:1px solid #e8e0d2;border-radius:8px;margin:8px 0;box-shadow:0 2px 10px #5a462814}@media(min-width:701px){.chat-page{height:100vh;overflow:hidden}.mission-sidebar{overflow-y:auto;min-height:0}}.ad-answer polygon{fill:var(--answer)}.essay{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:14px 16px}.einput{width:100%;padding:12px 14px;font-size:15px;line-height:2;border:1px solid var(--line);border-radius:6px;resize:vertical;background:var(--bg);color:var(--fg);font-family:inherit}.einput:focus{outline:2px solid var(--accent);outline-offset:-1px}.echecks{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px;font-size:12.5px;align-items:center}.echk.ok{color:var(--answer)}.echk.no{color:var(--frame);font-weight:600}.levels{margin-top:14px;background:var(--panel);border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:8px;padding:10px 14px}.levels>summary{cursor:pointer;font-size:13.5px;font-weight:600}.levels .scroll{overflow-x:auto;margin:10px 0 6px}.levels table{border-collapse:collapse;font-size:12.5px}.levels th,.levels td{border:1px solid var(--line);padding:5px 9px;text-align:left;vertical-align:top}.levels th{background:color-mix(in srgb,var(--line) 40%,transparent);white-space:nowrap}.levels tr.cur{background:color-mix(in srgb,var(--accent) 14%,transparent)}.levels .lv{font-weight:700;text-align:center;white-space:nowrap}.levels .lv-A{color:var(--answer)}.levels .lv-B{color:var(--accent)}.levels .lv-C{color:var(--frame)}.etools{display:flex;align-items:center;gap:12px;margin-bottom:8px;flex-wrap:wrap}.mic{display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap}.micbtn{display:inline-flex;align-items:center;gap:7px;padding:6px 14px;border-radius:20px;font-size:13.5px;border:1px solid var(--line);background:var(--panel);color:var(--fg);cursor:pointer}.micbtn .dot{width:9px;height:9px;border-radius:50%;background:var(--muted)}.micbtn.on{border-color:var(--frame);color:var(--frame);font-weight:600}.micbtn.on .dot{background:var(--frame);animation:micpulse 1.1s ease-in-out infinite}@keyframes micpulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(1.35)}}.interim{font-size:13px;color:var(--muted);font-style:italic;border-bottom:1px dashed var(--line);padding-bottom:1px}.micerr{font-size:12.5px;color:var(--frame)}.metrics{margin-top:12px;background:var(--bg);border:1px solid var(--line);border-left:3px solid var(--muted);border-radius:8px;padding:9px 13px}.metrics>summary{cursor:pointer;font-size:13px;color:var(--muted)}.metrics ul{margin:9px 0 8px;padding-left:20px;font-size:13px;line-height:1.8}.metrics .k{line-height:1.7}.advice{margin:8px 0 4px;padding:8px 11px;border-radius:7px;background:color-mix(in srgb,var(--ok, #2a7) 7%,transparent);border-left:3px solid var(--ok, #2a7)}.advicehead{font-size:12px;font-weight:600;color:var(--muted);margin-bottom:6px}.adviceitem{margin-bottom:9px;font-size:13px;line-height:1.65}.adviceitem:last-child{margin-bottom:0}.advicewhy{color:var(--muted)}.advicewhy .lv{font-size:11px;font-family:ui-monospace,monospace;background:var(--line);border-radius:3px;padding:1px 5px;margin-right:6px}.advicewhy .dim{font-weight:600;color:var(--fg);margin-right:6px}.advicefix{margin-top:2px;padding-left:2px}.rewrite{margin-top:12px;padding:9px 12px;border:1px solid var(--line);border-radius:7px}.rw{font-size:13px;line-height:1.7;padding:4px 0 4px 10px;border-left:3px solid var(--line)}.rw.before{color:var(--muted);text-decoration:line-through;text-decoration-color:var(--line)}.rw.after{border-left-color:var(--ok, #2a7);margin-bottom:5px}.essaycard .stage.self{background:var(--line);color:var(--muted)}.essaycard.selfcheck{border-style:dashed}.nexttask{margin:10px 0;padding:10px 13px;border-radius:8px;background:color-mix(in srgb,#e0a33e 12%,transparent);border-left:3px solid #e0a33e}.nexttext{font-size:14px;line-height:1.7;font-weight:600}.coverage{margin:10px 0;padding:9px 12px;border:1px solid var(--line);border-radius:8px}.coverage table{width:100%;border-collapse:collapse;font-size:13px}.coverage td{padding:4px 6px;border-bottom:1px solid var(--line);vertical-align:top}.coverage tr:last-child td{border-bottom:none}.coverage .rid{width:30px;font-family:ui-monospace,monospace;color:var(--muted)}.coverage .rp{width:96px;text-align:right;color:var(--muted);white-space:nowrap}.coverage tr.miss td,.coverage tr.miss .rp{color:#e06c5c}.patterns{margin:10px 0;padding:9px 13px;border:1px solid var(--line);border-radius:8px}.patterns>summary{cursor:pointer;font-size:13px;color:var(--muted)}.pat{margin-top:12px;padding-left:10px;border-left:3px solid var(--line)}.patname{font-weight:600;font-size:14px;margin-bottom:3px}.pat ol{margin:7px 0;padding-left:20px;font-size:13px;line-height:1.75}.patwhy{font-size:13px;line-height:1.7;color:var(--muted)}.elements{margin:10px 0;padding:10px 13px;border:1px solid var(--line);border-radius:8px}.elements table{width:100%;border-collapse:collapse;font-size:13px;line-height:1.7}.elements td{padding:5px 6px;border-bottom:1px solid var(--line);vertical-align:top}.elements tr:last-child td{border-bottom:none}.elements .elabel{width:78px;color:var(--muted);white-space:nowrap}.elements tr.miss .elabel{color:#e06c5c}.eempty{color:var(--muted);font-size:12px}.gate{margin-top:10px;padding:9px 12px;border-radius:7px;font-size:13px;line-height:1.7}.gate.ideal{background:color-mix(in srgb,#2a7 10%,transparent);border-left:3px solid #2a7}.gate.many{background:color-mix(in srgb,#e0a33e 12%,transparent);border-left:3px solid #e0a33e}.gate.none{background:color-mix(in srgb,#e06c5c 12%,transparent);border-left:3px solid #e06c5c}.conflict{margin-top:8px;padding-left:10px;border-left:2px solid var(--line)}.sides{font-size:13px;line-height:1.75;margin:3px 0}.sourcing{margin-top:10px;padding:10px 12px;border:1px dashed var(--line);border-radius:7px}.sourcing ol{margin:7px 0 12px;padding-left:20px;font-size:13px;line-height:1.8}.tier{font-size:13px;line-height:1.7;margin-bottom:5px}.stage1,.stage2,.stage3{margin:10px 0;padding:10px 13px;border:1px solid var(--line);border-radius:8px}.stage1{border-left:3px solid #6aa3e0}.stage1.warn{border-left-color:#e0a33e}.logline{font-size:15px;line-height:1.75;margin-bottom:6px}.stage2{border-left:3px solid #6aa3e0}.stage2 table{width:100%;border-collapse:collapse;font-size:13px}.stage2 td{padding:5px 6px;border-bottom:1px solid var(--line);vertical-align:top}.stage2 tr:last-child td{border-bottom:none}.stage2 .pn{width:20px;color:var(--muted);font-family:ui-monospace,monospace}.stage2 .pj{width:96px;font-weight:600;white-space:nowrap}.stage2 .pd{color:var(--muted);line-height:1.65}.stage2 .pa{width:92px;text-align:right;color:var(--muted);white-space:nowrap}.stage2 tr.miss .pj,.stage2 tr.miss .pa{color:#e06c5c}.stage3{border-left:3px solid #6aa3e0}.spot{margin-bottom:11px;padding-left:10px;border-left:2px solid var(--line)}.spotwhat{font-size:13px;line-height:1.7;margin:2px 0}.kindtag{font-size:11px;background:var(--line);color:var(--muted);border-radius:3px;padding:1px 6px;margin-right:7px}.anti{margin-top:10px;padding:9px 11px;border:1px dashed var(--line);border-radius:7px;font-size:13px}.cline{margin-top:3px;font-size:12px;color:#6aa3e0;line-height:1.6}.sourcing ol>li{margin-bottom:8px}.guidebox{margin:12px 0;padding:11px 14px;border:1px solid var(--line);border-left:3px solid #9a7ae0;border-radius:8px}.guide{margin-bottom:14px}.guide:last-child{margin-bottom:0}.gtitle{font-weight:600;font-size:14px;margin-bottom:5px}.guide p{margin:4px 0;font-size:13px;line-height:1.8;color:var(--fg)}.ops{margin:7px 0 4px}.optag{display:inline-block;font-size:12px;background:color-mix(in srgb,#9a7ae0 18%,transparent);color:var(--fg);border-radius:4px;padding:2px 8px;margin-right:6px}.changes{margin:5px 0 6px;padding-left:20px;font-size:13px;line-height:1.75}.praise{margin:10px 0;padding:11px 14px;border-radius:8px;background:color-mix(in srgb,#2a7 8%,transparent);border-left:3px solid #2a7}.pitem{margin-bottom:10px}.pitem:last-child{margin-bottom:0}.pquote{font-size:14px;line-height:1.75}.pwhy{font-size:13px;line-height:1.7;color:var(--muted);margin-top:2px}.para-sum{color:var(--muted)}.sumtag{font-size:11px;background:var(--line);border-radius:3px;padding:1px 5px;margin-right:6px}.elements tr.sum .elabel{color:var(--muted)}.tiertag{font-size:11px;background:color-mix(in srgb,#6aa3e0 22%,transparent);border-radius:3px;padding:1px 6px;margin-right:6px}.stage2 .pc{width:52px;color:var(--muted);white-space:nowrap;font-size:12px}.planref{margin-top:10px}.planref>summary{cursor:pointer;font-size:13px;color:var(--muted)}.planref table{margin-top:8px}.essaycard .stage.plain{background:color-mix(in srgb,#9a7ae0 25%,transparent);color:var(--fg)}.essaycard.plaincard{border-left:3px solid #9a7ae0}.plainrewrite{font-size:14px;line-height:1.9;white-space:pre-wrap;padding:8px 0 8px 12px;border-left:3px solid var(--line)}.judgecomment{margin:10px 0;padding:11px 14px;border-radius:8px;background:var(--bg);border-left:3px solid var(--muted);font-size:14px;line-height:1.85}.finalscore{margin-top:14px;padding:12px 14px;border-radius:8px;background:var(--bg);border:1px solid var(--line);display:flex;align-items:baseline;gap:12px}.fslabel{font-size:13px;color:var(--muted)}.fsnum{font-size:22px;font-weight:700}.fsgrade{font-size:14px;color:var(--muted)}.planstep{margin:10px 0;padding:9px 0 9px 11px;border-left:3px solid var(--line)}.psh{display:flex;align-items:baseline;gap:9px;margin-bottom:3px}.psn{font-family:ui-monospace,monospace;font-size:12px;color:var(--muted)}.psj{font-weight:600;font-size:14px}.psuse{margin-top:6px}.psneed{margin-top:5px;font-size:13px;line-height:1.7;color:#e0a33e}.covitem{margin-bottom:12px}.covitem:last-child{margin-bottom:0}.covhead{font-size:13px;line-height:1.7}.covhead .rid{font-family:ui-monospace,monospace;color:var(--muted);margin-right:6px}.ehow{margin-top:4px;color:var(--fg)}.eeg{margin-top:3px;padding-left:9px;border-left:2px solid var(--line);color:var(--muted);line-height:1.75}.rw.after.auto{border-left-color:#9a7ae0;color:var(--muted)}.ad-ray-reflected{stroke:currentColor;fill:currentColor}.ad-ray-refracted{stroke:#5b8dd6;fill:#5b8dd6}.ad-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px;vertical-align:baseline}.ad-dot-reflected{background:currentColor}.ad-dot-refracted{background:#5b8dd6}.gp-given{fill:currentColor;opacity:.45}.matchpairs{margin:10px 0}.mpsvg{width:100%;height:auto;color:var(--fg)}.mp-item{cursor:pointer}.mp-label{font-size:15px}.mp-label.on{font-weight:700}.mp-dot{transition:r .12s}.mp-item.armed .mp-dot{stroke:var(--muted);stroke-width:6;stroke-opacity:.18}.mp-line{opacity:.85}.qfigure{margin:12px 0}.qfigure figcaption{text-align:center;font-size:13px;color:var(--muted);margin-top:4px}.gp-sline{stroke-width:1.6}.gp-annoband{cursor:pointer}.gp-annohint{font-size:12px;fill:var(--muted);opacity:.8}.gp-annotext{font-size:12px}.gpwrap{display:block}.gptools{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:8px}.gptools button{font-size:13px;padding:5px 12px;border-radius:6px;border:1px solid var(--line);background:var(--bg);color:var(--fg);cursor:pointer}.gptools button.on{border-color:#6aa3e0;background:color-mix(in srgb,#6aa3e0 18%,transparent);font-weight:600}.gptools .hintmsg{font-size:12px;color:var(--muted)}.essayzone{margin-top:12px;display:flex;flex-direction:column;gap:10px;align-items:flex-start}.quotecard{border:1px solid var(--line);border-left:3px solid #e0a33e;border-radius:8px;padding:12px 14px;background:var(--panel);font-size:13.5px;width:100%}.quotecard .qrow{display:flex;justify-content:space-between;gap:12px;padding:2px 0}.quotecard .qrow.usd b{color:#b0713f}.quotecard .qprompt pre{max-height:260px;overflow:auto;font-size:11.5px;line-height:1.5;background:#faf7f2;border:1px solid var(--line);border-radius:6px;padding:8px;white-space:pre-wrap}.quotecard .qbtns{display:flex;gap:8px;margin-top:10px}.essaycard{border:1px solid var(--line);border-radius:10px;padding:14px 16px;margin-top:12px;background:var(--panel);font-size:14px;line-height:1.75}.wb-chips{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0}.wb-chips .chip{border:1px solid var(--line, #e6e2d9);background:#fff;border-radius:99px;padding:4px 14px;font-size:13px;cursor:pointer}.wb-chips .chip.on{background:#b0713f;color:#fff;border-color:#b0713f;font-weight:600}.wb-tools{margin:6px 0;display:flex;gap:8px;align-items:center;flex-wrap:wrap}.wb-summary{border:1px solid #e2d5c0;border-left:3px solid #b0713f;border-radius:8px;padding:12px 14px;margin:10px 0;background:#fffdf8;font-size:14px;line-height:1.7}.wb-point{margin-bottom:10px}.wb-pit{color:#a05252;font-size:13px}.wb-cooling,.wb-grad{margin:18px 0;padding:12px 14px;border:1px dashed #d8cbb8;border-radius:10px}.wb-cool-item{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:6px 0;border-bottom:1px solid #f3ece2;font-size:13.5px}.wb-cool-item:last-child{border-bottom:none}.wb-cool-due{color:#a4977f;white-space:nowrap}.wb-scope{display:flex;gap:6px;flex-wrap:wrap;align-items:center;border:1px dashed #d8cbb8;border-radius:8px;padding:8px 10px}.wb-scope .chip{border:1px solid var(--line, #e6e2d9);background:#fff;border-radius:99px;padding:4px 12px;font-size:13px;cursor:pointer}.wb-scope .chip.on{background:#b0713f;color:#fff;border-color:#b0713f}.wb-chapters{display:flex;gap:5px;flex-wrap:wrap;align-items:center;width:100%;margin-top:6px}.wb-chapters .chip{font-size:12px;padding:3px 10px}.wb-section{margin-bottom:10px}.wb-sec-title{font-weight:700;font-size:13px;color:#b0713f;margin-bottom:4px;border-bottom:1px solid #f0e6d8;padding-bottom:2px}.wb-summary ul{margin:0 0 4px;padding-left:20px}.wb-summary li{margin-bottom:5px;line-height:1.65}.rn-head{display:flex;align-items:baseline;gap:4px;width:100%;background:none;border:none;cursor:pointer;font-size:15px;padding:2px 0;text-align:left}.rn-head .rn-toggle{margin-left:auto;font-size:12px;color:#b0713f}.elo-chip{margin-left:auto;font-weight:700;font-size:13px;padding:2px 10px;border-radius:99px}.elo-chip.up{background:#e7f2e4;color:#2f7c43}.elo-chip.down{background:#fbe7e2;color:#b0483f}.elo-big{font-size:42px;font-weight:800;letter-spacing:1px}.elo-sub{font-size:13px;font-weight:400;color:#8a7f70}.elo-svg{width:100%;height:120px;margin:6px 0}.elo-line{fill:none;stroke:#b0713f;stroke-width:2.5}.elo-base{stroke:#e6e2d9;stroke-dasharray:4 4}.elo-last{font-size:13px}.elo-row{display:flex;justify-content:space-between;padding:3px 0;border-bottom:1px solid #f3ece2}.elo-row .up{color:#2f7c43;font-weight:600}.elo-row .down{color:#b0483f;font-weight:600}.elo-subjects{margin:8px 0 4px}.elo-sj{display:flex;align-items:baseline;gap:10px;padding:5px 0;border-bottom:1px solid #f3ece2;font-size:14px}.elo-sj-name{font-weight:700;min-width:52px}.elo-sj-rating{font-weight:700;color:#b0713f}.elo-sj-est{margin-left:auto;background:#f3ecdf;border-radius:99px;padding:2px 10px;font-size:12.5px}.elo-sjblock{margin:10px 0 4px;padding-bottom:6px;border-bottom:1px solid #f0e9dd}.elo-sjblock:last-of-type{border-bottom:none}.sb-group{display:flex;align-items:center;gap:6px;width:100%;text-align:left;padding:8px 10px;border:1px solid #e8e2d9;border-radius:10px;background:#fff;cursor:pointer;font-size:13px;font-weight:700;color:#3d3833}.sb-group:hover{background:#faf8f4}.sb-group.on{border-color:#c07a52}.sb-group .caret{display:inline-block;width:12px;color:#a89f93;transition:transform .15s}.sb-group.open .caret{transform:rotate(90deg)}.sb-group .cnt{margin-left:auto;font-size:11px;font-weight:500;color:#a89f93}.sb-children{display:flex;flex-direction:column;gap:4px;margin:2px 0 6px 10px;padding-left:8px;border-left:2px solid #efe9e0}.sb-child{text-align:left;padding:6px 8px;border:1px solid transparent;border-radius:8px;background:transparent;font-size:12.5px;color:#3d3833;cursor:pointer;line-height:1.35}.sb-child:hover{background:#faf8f4}.sb-child.selected{background:#fff;border-color:#c07a52;box-shadow:0 0 0 2px #c07a521f}.sb-child .sub{display:block;font-size:11px;color:#a89f93}.sb-theme{font-size:11px;font-weight:700;color:#8a8279;padding:6px 0 2px}@media(max-width:720px){.chat-layout .sb-group{flex:none;min-width:120px}.chat-layout .sb-children{flex-direction:row;margin:0;padding:0;border:0}.chat-layout .sb-child{flex:none;min-width:140px;background:#fff;border-color:#e8e2d9}.chat-layout .sb-theme,.chat-layout .mission-sidebar>.hint{flex:none;white-space:nowrap;align-self:center;padding:0 6px}}.exfig{margin:10px 0;padding:8px;background:#fff;border:1px solid #e8e2d9;border-radius:10px}.exfig figcaption{margin-top:6px;line-height:1.5}.tex .katex{font-size:1.05em}.tex-block{display:block;text-align:center;margin:6px 0}.rt-passage{display:block;border:1px solid #7a7368;padding:12px 16px;margin:6px 0 14px;border-radius:3px}.rt-box{display:inline-block;border:1px solid #7a7368;padding:2px 12px;margin:4px 0;vertical-align:middle}.rt-box .tex-block{text-align:left;margin:2px 0}.rt-note{display:block;width:fit-content;max-width:100%;margin:10px 0 0 auto;border:1px solid #7a7368;padding:1px 10px;font-size:.9em;line-height:1.8}.rt-note:before{content:"📖 "}.coach-requests ul{list-style:none;margin:8px 0;padding:0}.coach-requests li{display:flex;align-items:center;gap:8px;padding:4px 0;flex-wrap:wrap}.coach-list{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px;align-items:center}.coach-list .chip button{margin-left:6px;padding:0 6px;font-size:11px}.cp-list{margin-top:8px}.cp-item{border-top:1px solid var(--line, #ece5da);padding:10px 0}.cp-item.done{opacity:.7}.cp-head{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:13px}.cp-stat{margin-left:auto;color:#7a6224;font-size:12px}.cp-stem{margin:6px 0;font-size:14px;line-height:1.7;cursor:pointer;white-space:pre-wrap}.cp-ans{font-size:13px;line-height:1.7}.cp-wrong{color:#b0433a}.cp-right{color:#2e6b2e;font-weight:600}.cp-attempts{margin:4px 0 0 18px;padding:0;font-size:13px}.cp-attempts li{margin:4px 0;display:flex;gap:8px;align-items:center;flex-wrap:wrap}.cp-score{background:#f3ece3;border-radius:6px;padding:1px 8px;font-size:12px}.cp-text{white-space:pre-wrap;background:#faf7f2;border:1px solid #ece5da;border-radius:8px;padding:10px 12px;font-size:13px;line-height:1.7;width:100%;margin:4px 0;font-family:inherit}.cp-reviews>div{margin:6px 0;display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:13px}.cp-reviews>div>.essay-review,.cp-reviews>div>section{width:100%}.practice-log{margin-top:12px;border-top:1px dashed var(--line, #ece5da);padding-top:10px}.practice-log ol{margin:6px 0 0 18px;padding:0;font-size:13px}.practice-log li{margin:4px 0;display:flex;gap:8px;align-items:center;flex-wrap:wrap}.numericfill .nf-row{display:flex;align-items:flex-end;flex-wrap:wrap;gap:6px;font-size:20px;line-height:1.6;margin:6px 0 12px}.numericfill .nf-text{white-space:pre-wrap}.numericfill .nf-cell{display:inline-flex;flex-direction:column;align-items:center;gap:2px}.numericfill .nf-input{width:40px;height:44px;text-align:center;font-size:22px;border:1.5px solid var(--line, #c9c2b8);border-radius:6px;background:#fff}.numericfill .nf-input:focus{outline:2px solid var(--accent, #b4593a);outline-offset:1px}.numericfill .nf-tag{font-size:11px;color:var(--muted, #8a8175)}.audio-block{display:flex;flex-direction:column;gap:8px;margin:4px 0 16px;padding:10px 12px;background:#faf7f2;border:1px solid #ece5da;border-radius:10px}.audio-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.audio-row audio{height:36px;max-width:100%;flex:1 1 240px}.audio-row.instruction{opacity:.85}.audio-label{font-size:13px;color:#6b655c;white-space:nowrap}.audio-count{font-size:12px;color:#8a8175}.audio-count.over{color:#b0433a}.opt-img{display:block;max-width:100%;max-height:220px;margin-top:4px;border-radius:6px;border:1px solid #ece5da}.lab-list{display:grid;gap:10px}.lab-card{text-align:left;display:flex;flex-direction:column;gap:4px;padding:14px 16px;border:1px solid var(--line, #e6e2d9);border-radius:12px;background:#fff;cursor:pointer}.lab-card:hover{background:#faf7f2}.chip.warn{background:#fdf6e6;color:#7a6224;border:1px solid #f0e2bd;width:fit-content}.lesson-head{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:8px}.lesson-head h2{margin:0}.lab-block{border:1px solid var(--line, #e6e2d9);border-radius:12px;padding:16px 18px;margin:14px 0;background:#fff}.lab-label{font-weight:700;margin-bottom:8px;color:#6b655c}.lab-chat{display:flex;flex-direction:column;gap:10px}.lab-chat .bubble{max-width:100%}.lab-input textarea{width:100%;box-sizing:border-box;padding:10px 12px;border:1px solid var(--line, #e6e2d9);border-radius:10px;font-size:15px;line-height:1.7;font-family:inherit}.lab-hits{display:flex;flex-direction:column;gap:4px;padding:8px 12px;background:#faf7f2;border-radius:10px}.lab-hit{display:flex;gap:8px;align-items:flex-start;font-size:14px;line-height:1.7}.lab-hit.ok{color:#2e6b2e}.lab-hit.miss{color:#7a6224}.lab-hit.bonus{color:#8a6d1f}.lab-hit .sub{color:#8a8175;font-size:12px}.lab-second{border-left:3px solid #e0d5c5;padding-left:12px;display:flex;flex-direction:column;gap:8px}.lab-feedback{border-top:1px dashed var(--line, #e6e2d9);padding-top:12px}.lab-ref{background:#eef3f8;border:1px solid #d6e2ee;border-radius:10px;padding:10px 14px;margin-bottom:10px}.lab-ref p{margin:4px 0 0;line-height:1.8}.lab-article{white-space:pre-wrap;line-height:1.9;font-size:15px}.lab-teach{background:#fdf6e6;border:1px solid #f0e2bd;border-radius:10px;padding:10px 14px;margin-top:10px;line-height:1.8}.lab-teach .sub{color:#7a6224;font-size:13px}.lab-quiz{margin-bottom:14px}.lab-score{margin-left:10px;font-weight:700;color:#b0713f}.lab-score .sub{font-weight:400;color:#8a8175;font-size:12px}.lab-score.big{font-size:32px}.lab-scorecard{display:flex;gap:18px;align-items:center;margin-bottom:10px}.lab-scorecard ul{margin:0;padding-left:18px;font-size:13px;line-height:1.8}.lab-featured{margin-top:12px;background:#fff8e6;border:1px solid #f0dca0;border-radius:10px;padding:10px 14px;line-height:1.8}.lab-table{width:100%;border-collapse:collapse;font-size:13px}.lab-table th,.lab-table td{border-bottom:1px solid var(--line, #ece5da);padding:6px 8px;text-align:left;vertical-align:top}.lab-table tr.featured{background:#fff8e6}.lab-quote{max-width:360px;color:#6b655c}.lab-hit.err{color:#b0433a}.content-md{font-size:15px;line-height:1.9}.content-md .cm-h1{font-size:19px;margin:4px 0 10px}.content-md .cm-h2{font-size:15.5px;margin:20px 0 8px;color:var(--accent)}.content-md .cm-h3{font-size:14.5px;margin:14px 0 6px}.content-md .cm-quote{margin:0 0 16px;padding:8px 12px;border-left:3px solid var(--accent);background:var(--bg);color:var(--muted);font-size:14px}.content-md .cm-p{margin:0 0 10px}.content-md .cm-list{margin:0 0 12px;padding-left:22px}.content-md .cm-list>li{margin-bottom:7px}.lab-banklinks ul{list-style:none;margin:6px 0 4px;padding:0;display:flex;flex-wrap:wrap;gap:6px}.lab-banklinks li{margin:0}.doc-section.q-flash{animation:qflash 1.6s ease-out}@keyframes qflash{0%{background:#c0392b24}to{background:transparent}}.content-md .cm-tablewrap{overflow-x:auto;margin:10px 0}.content-md .cm-table{border-collapse:collapse;font-size:14px;min-width:100%}.content-md .cm-table th,.content-md .cm-table td{border:1px solid var(--line);padding:5px 9px;text-align:left;vertical-align:top}.content-md .cm-table th{background:var(--bg-soft, rgba(127,127,127,.08));font-weight:600;white-space:nowrap}.content-md .cm-ref{font-size:11px;vertical-align:super;line-height:0;color:var(--muted);border:1px solid var(--line);border-radius:4px;padding:1px 3px;margin:0 2px;cursor:help;text-decoration:none}.content-md .cm-ref:hover{color:var(--fg);border-color:var(--muted)}.content-md .cm-sub{margin:4px 0 4px 2px;padding-left:10px;border-left:2px solid var(--line);font-size:14px}.content-md .cm-cont{margin:4px 0}.content-md .cm-fig{margin:14px 0;text-align:center}.content-md .cm-fig img{max-width:100%;height:auto}.content-md .cm-fig figcaption{font-size:12.5px;color:var(--muted);margin-top:6px}.mathboard{display:flex;flex-direction:column;gap:8px}.board-blocks{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.board-blocks .blk{border:1px solid var(--line);background:var(--panel);color:var(--fg);border-radius:8px;padding:7px 12px;font:inherit;font-size:14px;cursor:pointer;min-height:40px}.board-blocks .blk:hover:not(:disabled){border-color:var(--accent)}.board-blocks .blk:disabled{opacity:.4;cursor:progress}.board-blocks .blk.op{min-width:44px;text-align:center}.board-blocks .blk.warn{margin-left:auto;color:var(--muted)}.blk-sep{width:1px;align-self:stretch;background:var(--line);margin:2px 4px}.cboard-host{border:1px solid var(--line);border-radius:8px;background:var(--panel);padding:12px 10px;min-height:52px;font-size:18px;line-height:1.2;display:flex;align-items:center;flex-wrap:wrap;overflow-x:auto}.crow{display:inline-flex;align-items:center;gap:2px}.cop{padding:0 5px;color:var(--fg)}.cbx{border:1px solid var(--line);border-radius:5px;background:var(--bg);color:var(--fg);font:inherit;font-size:inherit;text-align:center;padding:3px 5px;min-width:40px;min-height:40px}.cbx.blank{border-style:dashed;background:transparent}.cbx:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 25%,transparent)}.cbx.wrong{border-color:#c0392b;background:color-mix(in srgb,#c0392b 8%,transparent)}.cfrac{display:inline-flex;flex-direction:column;align-items:center;vertical-align:middle;margin:0 3px}.cfrac .cbar{width:100%;min-width:28px;height:1px;background:var(--fg);margin:3px 0}.cnum,.cden{display:flex;align-items:center;padding:0 3px}.cpow{display:inline-flex;align-items:flex-start}.cpow sup{font-size:.72em;margin-left:1px;position:relative;top:-.35em}.cpow sup .cbx{min-width:30px;min-height:30px;padding:2px 4px}.csqrt{display:inline-flex;align-items:stretch;margin:0 2px}.csqrt .crad{font-size:1.35em;line-height:1;display:flex;align-items:center}.csqrt .cbody{border-top:1px solid var(--fg);padding:3px 4px 0;display:flex;align-items:center}.cparen{display:inline-flex;align-items:center}.cparen .cbr{font-size:1.25em;color:var(--muted);padding:0 1px}.blk.exit{color:var(--accent)}.blk.exit:disabled{color:var(--muted)}.cboard-where{font-size:12px;color:var(--muted);background:var(--bg);border:1px solid var(--line);border-radius:6px;padding:5px 8px}@media(max-width:480px){.board-blocks{gap:5px}.board-blocks .blk{padding:7px 8px;font-size:13px}.board-blocks .blk.op{min-width:38px;padding:7px 6px}.board-blocks .blk.warn{margin-left:0}.blk-sep{display:none}.cboard-host{font-size:17px;padding:10px 8px}}.board-field{display:flex;flex-direction:column;gap:6px;align-items:stretch}.mathboard .evalbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:13px;margin:0}.lab-pretest{border:1px dashed var(--line);border-radius:10px;padding:14px 16px;margin-bottom:18px;background:color-mix(in srgb,var(--accent) 4%,transparent)}.lab-pretest .sec-stem{margin-top:0}.lab-place .lab-tier{display:inline-block;font-size:12.5px;padding:3px 12px;border-radius:999px;background:var(--accent);color:#fff;margin-bottom:8px}.lab-place p{margin:6px 0}.lab-place ul.lab-hits{margin-top:10px}.lab-story{margin:10px 0;padding:12px 14px;border-radius:8px;background:var(--panel);border:1px solid var(--line);font-size:14.5px;line-height:1.85}.lab-story .cm-p{margin:0 0 10px}.lab-story .cm-p:last-child{margin-bottom:0}.pre-claims{list-style:none;margin:10px 0;padding:0}.pre-claims li{margin-bottom:8px}.pre-claims label{display:flex;gap:9px;align-items:flex-start;cursor:pointer;font-size:14.5px}.pre-claims input{margin-top:4px;flex:none}.pre-claims .sub{display:block;font-size:12.5px;color:var(--muted);margin-top:2px}.lab-warm-item{display:flex;flex-direction:column;gap:8px;padding:14px 0 16px;border-top:1px solid var(--line)}.lab-warm-item:first-of-type{border-top:0;padding-top:4px}.lab-warm-item.done{opacity:.92}.lab-warm-no{font-weight:700;color:var(--accent);display:flex;gap:4px;align-items:baseline}.lab-cartoon{display:flex;flex-direction:column;gap:6px;margin:4px 0 6px}.lab-say{display:flex;gap:8px;align-items:baseline;background:#fbf7f0;border:1px solid var(--line);border-radius:12px 12px 12px 2px;padding:8px 12px}.lab-say b{flex:none;color:var(--accent)}.lab-warm-stem{font-weight:600}.lab-follow{background:#fff8ec;border:1px solid #f0d9a8;border-radius:12px 12px 12px 2px;padding:10px 14px;line-height:1.7;animation:race-pop .25s ease-out}.lab-follow.ok{background:#eef7ee;border-color:#b7dfc2}.lab-follow-ask{margin-top:6px;font-weight:600}.lab-reveal{margin-top:8px}.lab-hints{margin:6px 0 8px 20px;font-size:.92rem;line-height:1.7}.lab-hints li+li{margin-top:2px}.lab-bet{background:#fff8ec;border-color:#f0d9a8}.lab-bet-reveal{background:#fff8ec;border-radius:10px;padding:10px 14px}.lab-reveal ul{margin:4px 0 0 18px}.lab-warm-open{margin-top:6px;display:flex;flex-direction:column;gap:8px}.lab-ruler{display:flex;gap:6px;flex-wrap:wrap}.lab-rung{font-size:.82rem;padding:3px 10px;border-radius:999px;border:1px solid var(--line);color:var(--sub);background:#fff}.lab-rung.on{background:#e6f4ea;border-color:#b7dfc2;color:#2f6b45}.lab-rung.top{font-weight:700;box-shadow:0 0 0 2px #b7dfc2}.lab-warm-teach{background:#fbf7f0;border-radius:8px;padding:8px 12px;font-size:.92rem}.lab-warm-teach summary{cursor:pointer;color:var(--sub)}.lab-warm .wb-tools button{width:auto}.lab-shell .sb-child .sub{margin-left:6px;font-size:10.5px;color:#b5651d}@media(min-width:1101px){.lab-shell .race-open-btn{display:none}}.lab-tabs{display:flex;gap:6px;margin-bottom:10px}.lab-shell #lab-sec-text,.lab-shell #lab-sec-loop,.lab-shell .lab-warm{scroll-margin-top:80px}@media(max-width:700px){.lab-shell .lab-layout{flex-direction:column}.lab-shell .mission-sidebar{width:100%;max-height:180px}}@media(min-width:701px){.lab-shell .reader-col{min-height:0;max-height:100%}.lab-shell .reader-col>.reader{min-height:0;max-height:100%}}.note-toggle{margin-top:10px;padding-top:8px;border-top:1px dashed var(--line)}.note-toggle>button.has{color:var(--accent);font-weight:600}.note-editor{margin-top:8px;display:flex;flex-direction:column;gap:8px}.note-block{position:relative;border:1px solid var(--line);border-radius:10px;padding:8px 10px;background:#fffdf8}.note-block-tools{position:absolute;right:6px;top:4px;display:flex;gap:2px;opacity:.35}.note-block:hover .note-block-tools,.note-block:focus-within .note-block-tools{opacity:1}.note-block textarea{width:100%;border:0;background:transparent;resize:vertical;font:inherit;line-height:1.6;padding:4px 60px 4px 0;outline:none}.note-image img{max-width:100%;height:auto;border-radius:8px;display:block}.note-pad-area{border:1px solid var(--line);border-radius:8px;background:#fff;touch-action:none;cursor:crosshair}.note-pad-area.erase{cursor:cell}.note-sketch{width:100%;height:auto;display:block}.note-sketch-wrap{border:1px solid var(--line);border-radius:8px;background:#fff}.note-pad .wb-tools button.on{background:var(--accent-soft)}.note-add .note-state{margin-left:auto}.note-view{display:flex;flex-direction:column;gap:8px;margin:8px 0}.note-text{white-space:pre-wrap;line-height:1.7}.note-text a,.note-links a{color:#2c6fb0;word-break:break-all}.nb-card{border:1px solid var(--line);border-radius:14px;background:var(--card);margin:16px 0;overflow:hidden}.nb-card-head{display:flex;justify-content:space-between;align-items:center;padding:10px 16px;background:#faf7f2;border-bottom:1px solid var(--line)}.nb-card-q{padding:4px 16px 8px}.nb-exp{padding:0 16px 10px}.nb-note{border-top:1px solid var(--line);padding:8px 16px 12px;background:#fffdf8}.nb-note-toggle{background:none;font-weight:600;padding:4px 0}.mobile-bar,.sheet-back{display:none}@media(max-width:720px){.mobile-bar{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;padding:8px 10px 0}.mobile-bar>button{display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 2px;border:1px solid #e8e2d9;border-radius:10px;background:#fff;font-size:18px;line-height:1;color:#3d3833}.mobile-bar>button span{font-size:11px}.mobile-bar>button.on{border-color:#c07a52;background:#fff7f1}.mobile-bar>button:disabled{opacity:.45}.mobile-bar>button.mobile-pick{grid-column:1 / -1;flex-direction:row;justify-content:space-between;padding:10px 12px;font-size:14px;font-weight:700}.mobile-bar>button.mobile-pick .cur{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-bar>button.mobile-pick .caret{color:#a89f93}.chat-layout.has-picker .mission-sidebar{display:none}.chat-layout.has-picker .mission-sidebar.sheet{display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;align-items:stretch;position:fixed;left:0;right:0;bottom:0;top:12vh;z-index:1210;max-height:none;background:#fbfaf7;border-radius:16px 16px 0 0;padding:10px 14px 30px;box-shadow:0 -8px 30px #00000040;animation:race-slide-up .22s ease-out}@keyframes race-slide-up{0%{transform:translateY(30px);opacity:0}to{transform:none;opacity:1}}.sheet-back{display:block;position:fixed;inset:0;z-index:1200;background:#00000059}.sheet-head{display:flex;justify-content:space-between;align-items:center;padding:2px 0 8px}.sheet-head button{width:auto}body.sheet-open{overflow:hidden}.chat-layout.has-picker .mission-sidebar.sheet .sb-tool{display:none}.chat-layout.has-picker .mission-sidebar.sheet .sidebar-title{display:block}.chat-layout.has-picker .mission-sidebar.sheet .mission-item,.chat-layout.has-picker .mission-sidebar.sheet .sb-group{min-width:0}.chat-layout.has-picker .mission-sidebar.sheet .sb-children{flex-direction:column;margin:2px 0 6px 10px;padding-left:8px;border-left:2px solid #efe9e0}.chat-layout.has-picker .mission-sidebar.sheet .sb-child{min-width:0;background:transparent;border-color:transparent}.chat-layout.has-picker .mission-sidebar.sheet .sb-child.selected{background:#fff;border-color:#c07a52}.chat-layout.has-picker .mission-sidebar.sheet .sb-theme,.chat-layout.has-picker .mission-sidebar.sheet>.hint{white-space:normal;align-self:auto;padding:6px 0 2px}}.chapter-lessons{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:8px 0 12px;padding:10px 12px;border:1px solid #e8dccf;border-radius:10px;background:#fffaf3}.chapter-lessons .doc-lead{flex-basis:100%;margin:0 0 4px}.chapter-lesson{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.lesson-progress{display:inline-flex;gap:12px;font-size:13.5px;color:#6b6b6b}.lesson-progress .done{color:#2e7d32;font-weight:600}.lab-read-done{margin:14px 0 4px}.band{display:inline-block;font-size:10.5px;font-weight:700;line-height:1;padding:3px 6px;border-radius:999px;margin-right:6px;vertical-align:1px;letter-spacing:0}.band-必修{background:#e3f3e6;color:#2e7d3a}.band-選修{background:#fff3c4;color:#8a6400}.band-超綱{background:#fde2e1;color:#b3261e}.sb-child.band-必修{border-left:3px solid #5cb870}.sb-child.band-選修{background:#fff8dc;border-left:3px solid #e0b400}.sb-child.band-超綱{background:#fff0ef;border-left:3px solid #e5534b}.sec-src{margin-right:6px;color:var(--sub);font-size:11.5px}.band-toggle{display:flex;align-items:center;gap:6px;margin:6px 0 0;font-size:12.5px;color:var(--sub);cursor:pointer}.band-toggle .band{margin-right:2px}.lab-cap-detail td{background:#fbf8f1}.lab-node{display:inline-block;margin:2px 6px 2px 0;padding:2px 6px;border-radius:6px;background:#fff;border:1px solid #e8e2d9}.lab-node.wrong{border-color:#e5a9a3;color:#b0433a}.lab-interactive{position:relative}.lab-interactive svg{width:100%;height:auto;display:block}.reader{container-type:inline-size}.lab-interactive.wide{--w: min(100cqw - 48px, 1000px, (100vh - 150px) * var(--ar, 1.2));width:var(--w);margin-left:calc((100% - var(--w)) / 2)}@media(max-width:720px){.lab-interactive.wide{--w: 100%}}.lab-fs-btn{position:absolute;top:6px;right:6px;z-index:2;font-size:12px;padding:3px 9px;border-radius:6px;border:1px solid #d9cdb8;background:#fffdf8;color:#4c4437;cursor:pointer}.lab-fs-btn:hover{background:#f3ebdc}.lab-interactive:fullscreen,.lab-interactive.lab-fs-fallback{position:fixed;inset:0;z-index:1000;width:auto;height:auto;margin:0;padding:6px;box-sizing:border-box;background:#fffdf8;display:flex;flex-direction:column;overflow:hidden;touch-action:none}.lab-interactive:fullscreen>div:first-of-type,.lab-interactive.lab-fs-fallback>div:first-of-type{flex:1 1 auto;min-height:0;width:100%;display:flex;align-items:center;justify-content:center}.lab-interactive:fullscreen svg,.lab-interactive.lab-fs-fallback svg{width:100%!important;height:100%!important;max-width:none}.lab-interactive:fullscreen .lab-params,.lab-interactive.lab-fs-fallback .lab-params{flex:0 0 auto}.lab-interactive:fullscreen figcaption,.lab-interactive.lab-fs-fallback figcaption{display:none}.lab-params{display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:8px}.lab-param{display:flex;flex-direction:column;gap:4px;min-width:200px;font-size:13px}.lab-param input[type=range]{width:100%}.lab-badge{color:#c0392b;font-weight:600}.lab-class .lab-label{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.lab-table-wrap{overflow-x:auto}.sb-child.locked{opacity:.55;cursor:not-allowed}.lab-card.locked{opacity:.8;border-style:dashed}.lesson-tabs{display:flex;gap:6px;border-bottom:1px solid var(--line, #ddd);margin:8px 0 16px;position:sticky;top:0;background:var(--bg, #fff);z-index:2}.lesson-tabs button{background:none;border:none;border-bottom:2px solid transparent;padding:10px 14px;font-size:15px;cursor:pointer;color:inherit;border-radius:0}.lesson-tabs button.on{border-bottom-color:#c0392b;font-weight:600}.lesson-tabs button .sub{font-size:12px;opacity:.7}.lab-note-warn{background:#fff6e0;border:1px solid #f0d9a0;border-radius:8px;padding:8px 12px;font-size:14px}.lab-bottombar{display:none}@media(max-width:700px){.lab-bottombar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:940;background:#fff;border-top:1px solid #e5ddd0;padding:6px 6px calc(6px + env(safe-area-inset-bottom));gap:4px}.lab-bottombar button{flex:1;border:0;background:none;font-size:13px;padding:8px 2px;border-radius:8px;color:inherit}.lab-bottombar button:active{background:#f1ece3}.lab-shell .chat-layout{padding-bottom:72px}.lab-shell .chat-fab,.lab-shell .race-fab{bottom:76px}.lab-shell .mission-sidebar:not(.lab-sheet-list){display:none}.lesson-tabs{top:0}}.lab-sheet-backdrop{position:fixed;inset:0;background:#00000059;z-index:1200}.lab-sheet{position:fixed;left:0;right:0;bottom:0;top:12vh;background:#fbfaf7;border-radius:16px 16px 0 0;padding:10px 14px calc(30px + env(safe-area-inset-bottom));overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;box-sizing:border-box;box-shadow:0 -8px 30px #00000040;animation:race-slide-up .22s ease-out}.lab-sheet-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.lab-sheet-list{width:100%!important;max-height:none!important}@media(max-width:700px){.lesson-tabs button{white-space:nowrap;font-size:14px;padding:10px 8px}.lesson-tabs button .sub{display:block;font-size:11px}}.dev-switcher .dev-tag{border:0;cursor:pointer}.dev-switcher.collapsed{padding:4px 8px}.sb-tabs{display:flex;flex-direction:column;margin:2px 0 6px 18px;border-left:2px solid #e5ddd0}.sb-tab{text-align:left;background:none;border:0;padding:5px 10px;font-size:13px;cursor:pointer;color:inherit;border-radius:0 6px 6px 0}.sb-tab.on{background:#f3ece0;font-weight:600}.sb-tab .sub{margin-left:6px;font-size:11px;opacity:.7}.lesson-tabs{background:#faf6ef;border:1px solid #e5ddd0;border-radius:10px;padding:4px;margin:10px 0 16px}.lesson-tabs button{font-size:16px;padding:10px 18px;border-radius:8px;border-bottom:0}.lesson-tabs button.on{background:#fff;border-bottom:0;box-shadow:0 1px 2px #00000014;color:#b5651d}.topbar{display:flex;align-items:center;gap:12px}.topbar .topbar-brand{flex:none}.topbar .topbar-row{display:flex;gap:6px;overflow-x:auto;flex:1;min-width:0;align-items:center;scrollbar-width:none;-webkit-overflow-scrolling:touch}.topbar .topbar-row::-webkit-scrollbar{display:none}.topbar .topbar-row>button,.topbar .topbar-acct>button{white-space:nowrap;flex:none}.topbar .ghost.on{background:#f3ece0}.topbar-acct{position:relative;flex:none}.topbar-menu{min-width:200px;background:#fff;border:1px solid #e5ddd0;border-radius:10px;padding:6px;box-shadow:0 8px 28px #00000024;z-index:1300;display:flex;flex-direction:column;gap:2px}.topbar-menu>button{text-align:left}.topbar-menu-row{display:flex;align-items:center;gap:8px;padding:4px 8px}.topbar{padding:8px 12px}.topbar .topbar-brand{display:flex;align-items:baseline;gap:6px}@media(max-width:720px){.topbar{gap:6px}.topbar .topbar-brand strong{font-size:15px}.topbar .topbar-brand .sub{display:none}.topbar .topbar-row{mask-image:linear-gradient(90deg,#000 85%,transparent);-webkit-mask-image:linear-gradient(90deg,#000 85%,transparent)}.topbar-tabs>button{padding:6px 10px;font-size:13.5px}}.chat-layout.has-picker .mission-sidebar{display:none}@media(min-width:721px){.chat-layout.has-picker .mission-sidebar.sheet{display:flex;flex-direction:column;position:fixed;left:0;top:0;bottom:0;width:320px;max-height:none;z-index:1210;background:#fbfaf7;padding:12px 14px;box-shadow:8px 0 30px #0000002e;overflow-y:auto;animation:drawer-in .2s ease-out}.sheet-back{display:block;position:fixed;inset:0;z-index:1200;background:#0000004d}.sheet-head{display:flex;justify-content:space-between;align-items:center;padding:2px 0 8px}.chat-layout.three-col .chat-main{position:fixed;right:0;top:0;bottom:0;width:460px;max-width:92vw;z-index:1220;background:#fbfaf7;padding:12px;box-sizing:border-box;box-shadow:-8px 0 30px #0000002e;overflow-y:auto;animation:drawer-in .2s ease-out;flex:none}.chat-fab{display:none}}@keyframes drawer-in{0%{transform:translate(-24px);opacity:0}to{transform:none;opacity:1}}@media(min-width:701px){.lab-sheet{top:0;right:auto;width:340px;border-radius:0 16px 16px 0;box-shadow:8px 0 30px #0000002e;animation:drawer-in .2s ease-out}.lab-shell .lab-layout .reader-col{flex:1}}.lab-sheet .mission-sidebar.lab-sheet-list{display:flex;flex-direction:column!important;overflow-x:hidden!important;width:100%!important;align-items:stretch}.lab-sheet .sb-group{min-width:0;width:100%;text-align:left}.lab-sheet .sb-children{flex-direction:column!important;margin:2px 0 6px 10px!important;padding-left:8px!important;border-left:2px solid #efe9e0!important}.lab-sheet .sb-child{min-width:0!important;width:100%;white-space:normal}.lab-sheet .sidebar-title{display:none}.topbar-fb-back{position:fixed;inset:0;background:#00000059;z-index:1400;display:flex;align-items:center;justify-content:center;padding:12px}.topbar-fb{width:100%;max-width:520px;background:#fff;border-radius:14px;padding:14px 16px;box-sizing:border-box}.topbar-fb .fb-form{margin-top:8px}.race-col-wrap{position:relative;display:flex;flex-direction:column;min-width:0}.race-col-wrap .race-col-close{position:absolute;top:6px;right:8px;z-index:2}.race-col-wrap .race-col-head b{margin-right:90px}.coach-shell .coach-doc .alert,.coach-shell .coach-doc .panel,.coach-shell .coach-doc .card{margin:10px 0}.coach-shell .doc-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.coach-shell .doc-head h1{margin:0;flex:1}.coach-reg{margin-bottom:8px}.coach-reg select{padding:6px 8px;border:1px solid var(--line);border-radius:8px;background:var(--bg);font-size:14px}.lab-class th{max-width:110px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar-tabs{display:flex;gap:2px;width:100%;border-bottom:1px solid #e5ddd0;margin-top:4px;overflow-x:auto;scrollbar-width:none}.topbar-tabs::-webkit-scrollbar{display:none}.topbar-tabs>button{background:none;border:0;border-bottom:2px solid transparent;border-radius:0;padding:8px 12px;font-size:14px;color:#7a6f63;white-space:nowrap;cursor:pointer}.topbar-tabs>button.on{color:#2c2520;border-bottom-color:#c07a52;font-weight:600}.topbar-bell{display:inline-flex;align-items:center}.topbar{flex-wrap:wrap}.lm{display:flex;flex-direction:column;gap:6px}.lm-preview{min-height:44px;padding:8px 12px;border:1px dashed var(--line);border-radius:10px;background:var(--card);font-size:18px;display:flex;align-items:center;flex-wrap:wrap;gap:2px}.lm-preview.empty{font-size:13px}.lm-preview .lmo{margin:0 6px}.lm-preview .lmp{color:var(--sub)}.lm-preview .lm-val{margin-left:10px;color:var(--sub);font-size:14px}.lm-input{width:100%;box-sizing:border-box;padding:10px 12px;font-size:17px;border:1px solid var(--line);border-radius:10px;background:var(--bg);color:var(--fg);font-family:inherit}.lm-input:focus{outline:2px solid var(--accent);outline-offset:-1px}.lm-keys{display:flex;flex-wrap:wrap;gap:6px}.lm-keys>button{min-width:44px}.ch-board tr.ok td:first-child{border-left:3px solid #5cb870}.ch-board tr.bad td:first-child{border-left:3px solid #e5534b}.ch-board tr.old td:first-child{border-left:3px solid #c9c2b6}.ch-board .chip.ok{background:#e3f3e6;color:#2e7d3a}.ch-board .chip.bad{background:#fde2e1;color:#b3261e}.ch-board .chip.old{background:#f1efe8;color:#5f5e5a}.ch-one{max-width:320px;font-size:13px}.ch-detail td{background:#fbfaf7}.ch-draft{white-space:pre-wrap;font-size:12.5px;max-height:360px;overflow:auto;background:#fff;border:1px solid var(--line);border-radius:8px;padding:10px}.sb-join{display:flex;gap:6px;padding:6px 8px 4px}.sb-join input{flex:1;min-width:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:2px;text-transform:uppercase;padding:6px 8px;border:1px solid var(--line, #e6e2d9);border-radius:8px;font-size:14px}.sb-join-msg{padding:0 10px 6px}.class-card{cursor:default}.class-card .class-actions{display:flex;gap:6px;flex-wrap:wrap}.class-code-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.class-code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:1.5em;letter-spacing:4px;font-weight:700;color:#8a4b22}.class-qr{width:140px;height:140px;border-radius:8px;display:block}.class-new{display:grid;gap:6px;padding:10px 12px;margin-bottom:10px;border:1px dashed var(--line, #e6e2d9);border-radius:10px;background:#faf8f4}.class-new select,.class-new input{padding:7px 9px;border:1px solid var(--line, #e6e2d9);border-radius:8px;font-size:14px;background:#fff}.class-new .primary.small{width:auto;justify-self:start}@media(min-width:701px){.lab-shell .lab-layout{flex-wrap:nowrap}.lab-shell .lab-layout .reader-col{min-height:0;max-height:100%}}.lesson-nav{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin:22px 0 6px;padding-top:14px;border-top:1px dashed var(--line, #e6e2d9)}.lesson-nav-btns{display:flex;gap:8px;flex-wrap:wrap;margin-left:auto}.lesson-nav .primary.small,.lesson-nav .ghost.small{width:auto}.rv-tag{font-size:12px;color:#8a7f70;letter-spacing:.04em;margin-bottom:6px}.rv-opts{padding-left:20px}.rv-opts li{margin:6px 0}.rv-opts li.right{background:#eef7ee;border-radius:8px;padding:4px 8px;margin-left:-8px}.rv-crit{margin:10px 0}.rv-crit th{width:110px;text-align:left;white-space:nowrap}.rv-teach{margin:8px 0}.rv-teach summary{cursor:pointer}.rv-notes{margin-top:8px;border-top:1px dashed var(--line, #e6e2d9);padding-top:6px}.rv-note{font-size:13px;margin:4px 0}.rv-note .ghost.small{width:auto;margin-left:6px;padding:0 6px}.rv-note-form{display:grid;gap:6px}.rv-note-form textarea{width:100%;box-sizing:border-box;padding:6px 8px;border:1px solid var(--line, #e6e2d9);border-radius:8px;font:inherit}.rv-note-form span{display:flex;gap:6px}.rv-note-form .primary.small,.rv-note-form .ghost.small,.rv-btn{width:auto}.sb-class{margin:4px 0 8px}.sb-class.locked{opacity:.75}.sb-section{font-size:11.5px;color:#8a7f70;margin:6px 0 2px 8px;letter-spacing:.04em}.class-pick td input[type=text],.class-pick td input:not([type]){width:100%;box-sizing:border-box;padding:4px 6px;border:1px solid var(--line, #e6e2d9);border-radius:6px}.class-pick tr.on{background:#fbf7f0}.class-lessons{margin:6px 0}.class-lessons td{padding:3px 6px}.class-lessons tr.locked td{color:#8a7f70}.class-lessons .class-section td{font-size:11.5px;color:#8a7f70;letter-spacing:.04em;border-bottom:0;padding-top:8px}.class-lessons .primary.small,.class-lessons .ghost.small{width:auto}.back-bar{position:sticky;top:0;z-index:5;background:#fbfaf7;padding:6px 0;margin-bottom:4px;border-bottom:1px solid var(--line, #e6e2d9)}.back-bar .ghost.small{width:auto}.class-report .lab-table td,.class-report .lab-table th{white-space:nowrap}.class-report .class-section td{font-size:11.5px;color:#8a7f70;letter-spacing:.04em;border-bottom:0;padding-top:8px}.class-add select,.class-add input{padding:5px 8px;border:1px solid var(--line, #e6e2d9);border-radius:8px;font-size:13px;background:#fff;max-width:260px}.class-row{display:flex;flex-direction:column;gap:4px}.th-btn{background:none;border:0;padding:0;font:inherit;color:#2c2520;cursor:pointer;text-decoration:underline dotted #b5a894;text-underline-offset:3px}.ch-matrix th,.ch-matrix td{white-space:nowrap}.class-total td{border-top:2px solid #e6e2d9}.class-edit input{padding:4px 6px;border:1px solid var(--line, #e6e2d9);border-radius:6px;width:100%;box-sizing:border-box}.class-edit .ghost.small{width:auto;margin-right:4px}.tr-item{padding:6px 0;border-top:1px dashed var(--line, #e6e2d9)}.student-page tr.on td{background:#fbf7f0}.ch-board td select{padding:4px 6px;border:1px solid var(--line, #e6e2d9);border-radius:6px;font-size:13px}.lesson-filter{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:6px 0 8px}.lesson-filter .chip.on{background:#c07a52;color:#fff;border-color:#c07a52}.class-pick-head td{background:#f6efe3;font-weight:700;font-size:12.5px;color:#6b5a44}.ai-heard{background:#fbf7f0;border:1px solid #e6dcc8;border-radius:8px;padding:8px 10px;margin:0 0 6px;font-size:13px;line-height:1.5}.ai-heard ol{margin:6px 0 2px;padding-left:20px}.ai-followup textarea{width:100%;box-sizing:border-box}.pre-quiz .sec-opt.right{border-color:#2e7d3a;background:#eef7ef}.pre-quiz .sec-opt.wrong{border-color:#c0392b;background:#fbeeec}.pre-quiz .lab-place{margin-top:10px}.lesson-stations .st-n{display:inline-block;min-width:18px;height:18px;line-height:18px;border-radius:9px;background:#e8e2d9;color:#6b5a44;font-size:11px;text-align:center;margin-right:6px}.lesson-stations button.on .st-n{background:#c07a52;color:#fff}.trk{display:inline-flex;align-items:center;gap:3px;vertical-align:middle}.trk i{width:9px;height:9px;border-radius:50%;display:inline-block}.trk .trk-a{background:#4a7c59}.trk .trk-b{background:#2f8f8a}.trk em{font-style:normal;font-size:.72rem;color:var(--sub);margin-left:3px}.trk-row{margin:10px 0 -4px}.trk-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;background:var(--card);border:1px solid var(--line);border-radius:10px;padding:8px 12px;margin-bottom:10px;font-size:.85rem}.trk-sum{display:inline-flex;align-items:center;flex-wrap:wrap;gap:2px}.trk-toggle{display:inline-flex;align-items:center;gap:6px;cursor:pointer;margin-left:auto}.lesson-stations .trk{margin-left:5px}.cfg-list{list-style:none;padding:0;margin:6px 0}.cfg-list li{padding:4px 0;border-bottom:1px dashed var(--line);font-size:14px}.cfg-list li label{display:flex;gap:6px;align-items:baseline;cursor:pointer}.cfg-list li input{flex:none}.topbar-tab-node{display:inline-flex;align-items:center;padding:4px 6px}.topbar-tab-node.on .topbar-class{border-color:#c07a52}.topbar-class{font-size:14px;padding:5px 8px;border:1px solid #e5ddd0;border-radius:8px;background:#fff;max-width:220px}.class-code-row.big{flex-direction:column;align-items:center;gap:12px;padding:12px 0}.class-code-row.big .class-code{font-size:2.6em;letter-spacing:8px}.class-qr.big{width:min(480px,90vw);height:auto}.matrix th,.matrix td{vertical-align:top}.matrix th.off{opacity:.45}.matrix-pt{min-width:160px;max-width:260px;white-space:normal}.matrix-cell{min-width:150px;white-space:normal}.matrix-cell.empty{text-align:center;color:#b4b2a9}.matrix-item{padding:6px;margin:2px 0;border:1px solid #e6e2d9;border-radius:8px;background:#fff;font-size:13px}.matrix-item.draft{background:#faf3e0;border-style:dashed}.matrix-item.off{opacity:.45}.matrix-item label{display:flex;gap:6px;align-items:baseline;cursor:pointer}.matrix-q{color:#6f6b63;font-size:12px;margin:2px 0 4px;line-height:1.4}.matrix-tools{display:flex;gap:4px}.matrix-tools .ghost.small{padding:2px 6px;font-size:12px}.item-detail ol{margin:2px 0 6px 20px}.class-students td,.class-students th{white-space:nowrap}.reader-doc.editor-wide{max-width:1400px}.editor-wide .matrix-pt{min-width:220px;max-width:320px}.editor-wide .matrix-cell{min-width:230px}.editor-wide .matrix-item{font-size:14px}.editor-wide .matrix-q{font-size:13px}.editor-hint{display:none}@media(max-width:900px){.editor-hint{display:block}}.prep-table td{vertical-align:middle}.prep-actions{white-space:nowrap;text-align:right}.prep-actions button{margin-left:6px}.matrix.map .map-layer td{background:#f3efe6;font-weight:600;font-size:13px;padding:4px 8px}.map-composite{display:flex;flex-wrap:wrap;gap:6px}.map-composite .matrix-item{flex:1 1 220px}.lesson-outline{background:#faf8f4;border:1px solid #e6e2d9;border-radius:10px;padding:8px 12px;margin:6px 0 10px;font-size:14px}.lesson-outline ul{margin:4px 0 0 18px}.lesson-outline li{margin:2px 0}.tt-modal-back{position:fixed;inset:0;background:#28201873;z-index:60;display:flex;align-items:center;justify-content:center;padding:16px}.tt-modal{background:#fff;border-radius:14px;max-width:760px;width:100%;max-height:85vh;overflow:auto;box-shadow:0 12px 40px #00000040;padding:4px 8px 10px}.tt-modal .lab-block{margin:0;border:0}.try-bar{position:sticky;top:0;z-index:70;display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:8px 14px;background:#fff3d6;border-bottom:2px solid #e0b25c;font-size:14px;color:#5a4310}.try-bar-btns{display:flex;gap:6px}.lab-warm-again{margin:10px 0 4px;padding:12px;border:1px solid var(--line, #d9dee4);border-radius:10px;background:var(--card2, rgba(127,143,160,.07))}.lab-warm-again .sec-stem{margin:8px 0 6px}.lab-warm-again .wb-tools{margin-top:10px}.say-wrap{display:flex;flex-direction:column;overflow:hidden}.say-head{display:flex;align-items:center;gap:10px;padding:6px 10px;border-bottom:1px solid #e8e2d8;background:#fff;font-size:14px}.say-head a{margin-left:auto;text-decoration:none}.say-frame{flex:1;width:100%;min-height:60vh;border:0;background:#fff}.say-lead{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.plot-steps{margin:8px 0 10px;padding-left:20px}.plot-steps li{margin:4px 0;color:#6b7280}.plot-steps li.now{color:#1f2937;font-weight:600}.plot-steps li.set{color:#1f2937}.plot-steps li.bad b{color:#b91c1c}.plot-steps li b{font-weight:600;color:#2f6f3f}.plot-say{display:block;font-size:13px;color:#6b7280}.plot-box{position:relative;display:block;max-width:760px;border:1px solid var(--line, #d9dee4);border-radius:10px;overflow:hidden;-webkit-user-select:none;user-select:none}.plot-box img{display:block;width:100%;height:auto}.plot-box svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.plot-pt{fill:#c2410c;stroke:#fff;stroke-width:2}.plot-pt.ok{fill:#2f6f3f}.plot-pt.bad{fill:#b91c1c}.plot-num{font:700 10px system-ui,sans-serif;fill:#fff}.plot-arrow{stroke:#c2410c;stroke-width:2.5;stroke-dasharray:6 4}.exfig .exhint{color:#a89f93}.exsvg svg{width:100%;max-width:380px;height:auto;display:block}.exspace{position:relative}.exspace .exreset{position:absolute;top:8px;right:8px}.exlesson>.lab-interactive{margin:0}.exref{margin:8px 0}.exref-body{margin-top:6px;padding:8px 12px;background:#fffdf8;border-left:3px solid #c07a52;border-radius:6px;max-height:60vh;overflow:auto}
