@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;text-indent:0;text-rendering:auto}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.16.38"}.katex .katex-mathml{clip:rect(1px,1px,1px,1px);border:0;height:1px;overflow:hidden;padding:0;position:absolute;width:1px}.katex .katex-html>.newline{display:block}.katex .base{position:relative;white-space:nowrap;width:-webkit-min-content;width:-moz-min-content;width:min-content}.katex .base,.katex .strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;display:inline-table;table-layout:fixed}.katex .vlist-r{display:table-row}.katex .vlist{display:table-cell;position:relative;vertical-align:bottom}.katex .vlist>span{display:block;height:0;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{overflow:hidden;width:0}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{display:table-cell;font-size:1px;min-width:2px;vertical-align:bottom;width:2px}.katex .vbox{align-items:baseline;display:inline-flex;flex-direction:column}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{display:inline-flex;flex-direction:row}.katex .thinbox{max-width:0;width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .smash{display:inline;line-height:0}.katex .clap,.katex .llap,.katex .rlap{position:relative;width:0}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.katex .sqrt>.root{margin-left:.2777777778em;margin-right:-.5555555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.1666666667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.6666666667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.4566666667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.1466666667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.7142857143em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.8571428571em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.1428571429em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.2857142857em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.4285714286em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.7142857143em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.0571428571em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.4685714286em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.9628571429em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.5542857143em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.7777777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.8888888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.1111111111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.3044444444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.7644444444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.5833333333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.7283333333em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.0733333333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.4861111111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.4402777778em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.7277777778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.2893518519em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.4050925926em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.462962963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.5208333333em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.5787037037em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.2002314815em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.4398148148em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.2410800386em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.2892960463em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.337512054em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.3857280617em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.4339440694em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.4821600771em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.5785920926em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.6943105111em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.8331726133em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.1996142719em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.2009646302em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.2411575563em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.2813504823em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.3215434084em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.3617363344em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.4019292605em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.4823151125em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.578778135em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.6945337621em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.8336012862em}.katex .fontsize-ensurer.reset-size11.size11,.katex .sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{display:inline-block;width:.12em}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{display:inline-block;min-width:1px}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;display:block;height:inherit;position:absolute;width:100%}.katex svg path{stroke:none}.katex svg{fill-rule:nonzero;fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1}.katex img{border-style:none;max-height:none;max-width:none;min-height:0;min-width:0}.katex .stretchy{display:block;overflow:hidden;position:relative;width:100%}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{overflow:hidden;position:relative;width:100%}.katex .halfarrow-left{left:0;overflow:hidden;position:absolute;width:50.2%}.katex .halfarrow-right{overflow:hidden;position:absolute;right:0;width:50.2%}.katex .brace-left{left:0;overflow:hidden;position:absolute;width:25.1%}.katex .brace-center{left:25%;overflow:hidden;position:absolute;width:50%}.katex .brace-right{overflow:hidden;position:absolute;right:0;width:25.1%}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{border:.04em solid;box-sizing:border-box}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{border-right:.049em solid;border-top:.049em solid;box-sizing:border-box;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{display:inline-block;position:absolute;right:calc(50% + .3em);text-align:left}.katex .cd-label-right{display:inline-block;left:calc(50% + .3em);position:absolute;text-align:right}.katex-display{display:block;margin:1em 0;text-align:center}.katex-display>.katex{display:block;text-align:center;white-space:nowrap}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{padding-left:2em;text-align:left}body{counter-reset:katexEqnNo mmlEqnNo}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}:root{--paper: #ffffff;--surface: #f4f6fb;--line: #e3e7f0;--ink: #0a1033;--ink-2: #4a5170;--ink-3: #8a90a8;--navy: #0a1033;--accent: #2b6ff5;--accent-hover: #2563eb;--accent-deep: #1f57d6;--accent-tint: #eef3ff;--accent-line: #d4e0fd;--accent-soft: #8ec5ff;--color-bg: var(--paper);--color-text: var(--ink);--color-text-secondary: var(--ink-2);--color-text-tertiary: var(--ink-3);--color-border: var(--line);--color-accent: var(--accent);--color-accent-strong: var(--accent-deep);--font-display: "DM Sans", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, monospace;--font-display-app: "Cormorant Garamond", Georgia, "Times New Roman", serif;--font-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--container-max: 1200px;--content-gutter: 24px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--nav-height: 64px;--st-bg: #ffffff;--st-bg-chrome: #fbfbfa;--st-text: #37352f;--st-text-secondary: #787774;--st-text-tertiary: #9b9a97;--st-border: rgba(55, 53, 47, .09);--st-border-strong: rgba(55, 53, 47, .16);--st-hover: #f7f7f5;--st-accent: #2383e2;--st-accent-hover: #1a70c7;--st-accent-tint: rgba(35, 131, 226, .08);--st-accent-ring: rgba(35, 131, 226, .25);--st-success: #2d9d78;--st-warning: #cb912f;--st-danger: #d44c47;--st-danger-tint: rgba(212, 76, 71, .08);--st-shadow-overlay: 0 12px 40px rgba(0, 0, 0, .12);font-family:var(--font-body);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"cv02","cv03","cv04","cv11"}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);line-height:1.6;min-height:100vh}html,body{overflow-x:hidden}@supports (overflow: clip){html,body{overflow-x:clip}}#root{width:100%;position:relative}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}img{max-width:100%;display:block}.cl-avatarBox,.cl-userButtonAvatarBox{background:var(--accent)!important}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.mk-container{width:100%;max-width:var(--container-max);margin:0 auto;padding:0 var(--content-gutter)}.mk-h2{font-family:var(--font-display);font-size:clamp(2rem,3.4vw,2.75rem);line-height:1.12;font-weight:700;letter-spacing:-.025em;color:var(--ink);margin:0}.mk-h3{font-family:var(--font-display);font-size:1.625rem;line-height:1.2;font-weight:700;letter-spacing:-.025em;color:var(--ink);margin:0}.mk-sub{font-size:1rem;font-weight:600;color:var(--ink);margin:0}.mk-p{font-size:1rem;line-height:1.6;color:var(--ink-2);margin:0}.mk-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:46px;padding:0 22px;border-radius:14px;border:2px solid transparent;font-family:var(--font-display);font-size:.875rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;line-height:1;text-decoration:none;cursor:pointer;white-space:nowrap;transition:background-color .15s ease,color .15s ease,border-color .15s ease,transform .08s ease,box-shadow .08s ease}.mk-btn-lg{height:54px;padding:0 28px;font-size:.9375rem}.mk-btn-primary{background:var(--accent);color:#fff;border-color:var(--accent);box-shadow:0 4px 0 var(--accent-deep)}.mk-btn-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.mk-btn-primary:active,.mk-btn-secondary:active,.mk-btn-white:active{transform:translateY(3px);box-shadow:0 1px 0 var(--accent-deep)}.mk-btn-secondary{background:#fff;color:var(--accent);border-color:var(--line);box-shadow:0 4px 0 var(--line)}.mk-btn-secondary:hover{background:var(--surface)}.mk-btn-white{background:#fff;color:var(--accent);border-color:#fff;box-shadow:0 4px #0a103347}.mk-btn-white:hover{background:#f2f2f2}.mk-btn-ink{background:var(--navy);color:#fff;border-color:var(--ink)}.mk-btn-sm{height:38px;padding:0 16px;border-radius:12px;font-size:.8125rem}.mk-arrow-link{display:inline-flex;align-items:center;gap:6px;font-size:.9375rem;font-weight:600;color:var(--accent);text-decoration:none}.mk-arrow-link:hover{color:var(--accent-deep)}.mk-arrow-link svg{transition:transform .15s ease}.mk-arrow-link:hover svg{transform:translate(2px)}.mk-shot{display:block;width:100%;height:auto;border-radius:10px;border:1px solid var(--line);box-shadow:0 1px 2px #0000000a,0 12px 32px -16px #00000029;background:#fff}.navbar{position:fixed;top:0;left:0;right:0;z-index:100;background:#ffffffeb;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:inset 0 -1px 0 var(--line)}.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;height:var(--nav-height);max-width:var(--container-max);margin:0 auto;padding:0 var(--content-gutter)}.nav-logo{display:inline-flex;align-items:center;color:var(--ink)}.wordmark{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-display);font-size:1.375rem;font-weight:700;letter-spacing:-.025em;line-height:1;color:inherit}.wordmark-mark{width:32px;height:32px;border-radius:9px;flex:none}.nav-links{display:flex;align-items:center;gap:4px}.nav-links a{font-size:.8125rem;font-weight:500;color:var(--ink-2);padding:8px 9px;border-radius:6px}.nav-links a:hover{color:var(--ink);background:var(--surface)}.nav-actions{display:flex;align-items:center;gap:8px}.nav-user-area{display:flex;align-items:center;gap:12px}.nav-dev-badge{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:var(--ink);color:#fff;font-size:11px;font-weight:700;font-family:var(--font-mono)}.nav-hamburger{display:none;flex-direction:column;justify-content:center;gap:5px;width:40px;height:40px;padding:8px;background:none;border:none;cursor:pointer;-webkit-tap-highlight-color:transparent}.hamburger-line{display:block;width:100%;height:1.5px;background:var(--ink);border-radius:1px;transition:transform .25s ease,opacity .25s ease;transform-origin:center}.nav-hamburger.open .hamburger-line:nth-child(1){transform:translateY(6.5px) rotate(45deg)}.nav-hamburger.open .hamburger-line:nth-child(2){opacity:0}.nav-hamburger.open .hamburger-line:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}.mobile-menu{display:none}@media(max-width:1100px){.nav-links,.nav-cta-desktop{display:none}.nav-hamburger{display:flex}.mobile-menu{display:block;position:fixed;inset:0;z-index:99;background:#fff;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease}.mobile-menu-open{opacity:1;visibility:visible}.mobile-menu-content{display:flex;flex-direction:column;padding:calc(var(--nav-height) + var(--banner-height, 0px) + 16px) var(--content-gutter) 40px}.mobile-menu-link{display:block;font-size:1.125rem;font-weight:500;color:var(--ink);padding:16px 0;border-bottom:1px solid var(--line);text-decoration:none}.mobile-menu-divider{border:none;margin:12px 0}.mobile-menu-ctas{display:flex;flex-direction:column;gap:10px}.mobile-menu-ctas .mk-btn,.mobile-menu-content>.mk-btn{width:100%}}.footer{background:var(--accent);color:#fff;padding:64px 0 32px}.footer-inner{max-width:var(--container-max);margin:0 auto;padding:0 var(--content-gutter)}.footer-grid{display:grid;grid-template-columns:1.4fr repeat(4,1fr);gap:40px 32px;padding-bottom:40px}.footer-logo{display:inline-flex;color:#fff;margin-bottom:12px}.footer-blurb{font-size:.875rem;color:#fffc;margin:0 0 18px}.footer-col-title{font-family:var(--font-display);font-size:.9375rem;font-weight:700;color:#fff;margin:0 0 12px}.footer-col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.footer-col a{font-size:.875rem;color:#ffffffd1}.footer-col a:hover{color:#fff}.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;padding-top:20px;border-top:1px solid rgba(255,255,255,.22)}.footer-legal{display:flex;gap:18px}.footer-legal a,.footer-copy{font-size:.8125rem;color:#ffffffb8}.footer-legal a:hover{color:#fff}@media(max-width:900px){.footer-grid{grid-template-columns:repeat(2,1fr)}.footer-brand{grid-column:1 / -1}}.footer .wordmark-mark{box-shadow:0 0 0 2px #ffffffe6}html.has-banner{--banner-height: 48px}html.has-banner body{padding-top:var(--banner-height)}html.has-banner .navbar{top:var(--banner-height)}.announcement-banner{position:fixed;top:0;left:0;right:0;z-index:101;height:48px;display:flex;align-items:center;justify-content:center;padding:0 48px;color:#fff;background:linear-gradient(100deg,#7c5cff00 30%,#7c5cff61 45%,#2b6ff56b 55%,#22d3ee00 70%) 0 0 / 220% 100%,var(--navy);animation:banner-sheen 9s ease-in-out infinite alternate;overflow:hidden}@keyframes banner-sheen{0%{background-position:100% 0,0 0}to{background-position:0% 0,0 0}}.announcement-text{display:inline-flex;align-items:center;gap:12px;height:100%;background:none;border:0;padding:0;cursor:pointer;font-family:var(--font-display);font-size:.9375rem;color:#fff;white-space:nowrap}.announcement-thumb{position:relative;flex:none;width:56px;height:30px;border-radius:6px;overflow:hidden;box-shadow:0 0 0 1px #ffffff59;background:#04061a}.announcement-thumb video{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.announcement-text:hover .announcement-thumb video{transform:scale(1.08)}.announcement-new{display:inline-flex;align-items:center;height:22px;padding:0 9px;border-radius:999px;background:var(--accent);box-shadow:0 2px 0 var(--accent-deep);font-size:.6875rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.announcement-title{font-weight:700;letter-spacing:-.01em}.announcement-v2{color:var(--accent-soft)}.announcement-cta{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 14px;border-radius:999px;background:#fff;color:var(--navy);font-size:.8125rem;font-weight:700;transition:transform .15s ease,background-color .15s ease}.announcement-text:hover .announcement-cta{background:#e9efff}.announcement-text:hover .announcement-cta svg{transform:translate(2px)}.announcement-cta svg{transition:transform .15s ease}.announcement-close{position:absolute;right:16px;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;background:none;border:none;color:#fff9;font-size:1.25rem;line-height:1;border-radius:50%}.announcement-close:hover{color:#fff;background:#ffffff1f}@media(max-width:768px){html.has-banner{--banner-height: 52px}.announcement-banner{height:52px;padding:0 56px 0 14px;justify-content:flex-start}.announcement-text{gap:10px;font-size:.8125rem;min-width:0}.announcement-new,.announcement-thumb{display:none}.announcement-title{min-width:0;overflow:hidden;text-overflow:ellipsis}.announcement-cta{flex:none;height:30px;padding:0 12px;font-size:.75rem}.announcement-close{right:4px;width:44px;height:44px;font-size:1.5rem}}@media(prefers-reduced-motion:reduce){.announcement-banner{animation:none}}.mascot-art{width:100%;will-change:transform}.mascot-art video,.mascot-art img{display:block;width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;pointer-events:none}.hero{position:relative;background:#fff;padding:calc(var(--nav-height) + 48px) 0 56px;overflow:hidden}.hero-inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:center;min-height:min(720px,calc(100vh - var(--nav-height) - 40px))}.hero-art{width:100%;max-width:600px;justify-self:center}.hero-copy{display:flex;flex-direction:column;align-items:stretch;max-width:520px}.hero-title{font-family:var(--font-display);font-size:clamp(2.5rem,4.6vw,4rem);font-weight:800;line-height:1.02;letter-spacing:-.035em;color:var(--ink);margin:0 0 20px}.hero-tagline{font-size:clamp(1.0625rem,1.4vw,1.1875rem);line-height:1.55;color:var(--ink-2);margin:0 0 32px}.hero-actions{display:flex;flex-direction:column;gap:12px;max-width:360px}.hero-note{font-size:.8125rem;color:var(--ink-3);margin:18px 0 0}.hero-note-link{color:var(--accent);font-weight:600;margin-left:4px}.hero-note-link:hover{text-decoration:underline;text-underline-offset:3px}@media(max-width:900px){.hero{padding:calc(var(--nav-height) + 16px) 0 32px}.hero-inner{grid-template-columns:1fr;gap:8px;min-height:0}.hero-art{max-width:360px}.hero-copy,.hero-actions{max-width:none}}.cs{background:#fff;padding:96px 0 40px}.cs-inner{max-width:var(--container-max);margin:0 auto;padding:0 var(--content-gutter)}.cs-head{max-width:760px;margin-bottom:40px}.cs-eyebrow{display:inline-flex;align-items:center;padding:5px 12px;border-radius:999px;background:#eaf2fb;color:#2a5db0;font-size:.8125rem;font-weight:600;margin-bottom:18px}.cs-title{font-family:var(--font-display);font-size:clamp(2.25rem,5vw,4rem);font-weight:700;line-height:1.05;letter-spacing:-.025em;color:var(--ink);margin:0 0 16px}.cs-lead{font-size:1.125rem;line-height:1.55;color:var(--ink-2);margin:0;max-width:640px}.cs-frame{border-radius:14px;border:1px solid rgba(0,0,0,.1);background:#fff;overflow:hidden;box-shadow:0 1px 2px #0000000a,0 12px 40px #00000014,0 32px 80px #00000012}.cs-frame-bar{display:flex;align-items:center;gap:7px;height:38px;padding:0 14px;background:var(--surface);border-bottom:1px solid rgba(0,0,0,.08)}.cs-frame-bar>span{width:11px;height:11px;border-radius:50%;background:#0000001f}.cs-frame-title{flex:1;text-align:center;font-size:.75rem;color:var(--ink-3);margin-right:40px}.cs-frame img{display:block;width:100%;height:auto}.cs-caption{margin-top:14px;font-size:.875rem;line-height:1.55;color:var(--ink-2);max-width:720px}.cs-shot--student{margin-bottom:56px}.cs-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:48px;align-items:start}.cs-points{display:flex;flex-direction:column;gap:22px;padding-top:8px}.cs-point-title{font-family:var(--font-body);font-size:1.0625rem;font-weight:700;letter-spacing:-.015em;color:var(--ink);margin:0 0 6px}.cs-point-body{font-size:.9375rem;line-height:1.6;color:var(--ink-2);margin:0}.cs-link{display:inline-block;font-size:.9375rem;font-weight:600;color:var(--accent);text-decoration:none;border-bottom:1px solid var(--accent-line);padding-bottom:1px}.cs-link:hover{border-bottom-color:var(--accent)}@media(max-width:960px){.cs-grid{grid-template-columns:1fr;gap:32px}}@media(max-width:768px){.cs{padding:64px 0 16px}.cs-head{margin-bottom:28px}.cs-lead{font-size:1rem}.cs-frame{border-radius:10px}.cs-frame-bar{height:30px}.cs-frame-title{display:none}.cs-shot--student{margin-bottom:36px}.cs-caption{font-size:.8125rem}}.pillars{background:var(--surface);border-top:1px solid var(--line);padding:72px 0}.pillars-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:48px}.pillar{display:flex;flex-direction:column;align-items:flex-start;gap:12px}@media(max-width:900px){.pillars{padding:56px 0}.pillars-grid{grid-template-columns:1fr;gap:36px}}.story{background:#fff;padding:72px 0}.story-inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:72px;align-items:center;min-height:560px}.story-flip .story-copy{order:2}.story-flip .story-art{order:1}.story-copy{display:flex;flex-direction:column;align-items:flex-start;gap:14px;max-width:460px}.story-flip .story-copy{justify-self:end}.story-title{font-family:var(--font-display);font-size:clamp(2.5rem,4.6vw,3.75rem);font-weight:800;line-height:1.02;letter-spacing:-.035em;color:var(--accent);margin:0}.story-sub{font-size:1.0625rem;font-weight:600;color:var(--ink);margin:4px 0 0}.story-body{font-size:1.0625rem;line-height:1.6;color:var(--ink-2);margin:0 0 10px}.story-art{width:100%;max-width:520px;justify-self:center}@media(max-width:900px){.story{padding:40px 0}.story-inner,.story-flip .story-inner{grid-template-columns:1fr;gap:8px;min-height:0}.story-art,.story-flip .story-art{order:1;max-width:340px}.story-copy,.story-flip .story-copy{order:2;justify-self:start}}.tour{background:var(--accent-tint);padding:96px 0 104px}.tour-title{font-family:var(--font-display);font-size:clamp(2.25rem,4vw,3.25rem);font-weight:800;letter-spacing:-.035em;line-height:1.05;color:var(--ink);text-align:center;margin:0 0 28px}.tour-tabs{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin-bottom:36px}.tour-tab{height:40px;padding:0 18px;border-radius:999px;border:2px solid var(--accent-line);background:#fff;color:var(--ink-2);font-family:var(--font-display);font-size:.9375rem;font-weight:700;transition:color .15s ease,border-color .15s ease,background-color .15s ease}.tour-tab:hover{color:var(--ink);border-color:var(--accent-soft)}.tour-tab.is-active{background:var(--accent);border-color:var(--accent);color:#fff}.tour-frame{max-width:1080px;margin:0 auto;min-height:200px}@media(max-width:768px){.tour{padding:56px 0 64px}.tour-tabs{justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;margin:0 calc(-1 * var(--content-gutter)) 24px;padding:0 var(--content-gutter) 4px}.tour-tab{flex:none}}.fcta{position:relative;background:#fff;padding-top:40px}.fcta-art{position:relative;z-index:1;width:min(820px,92vw);margin:0 auto -150px}.fcta-art img{display:block;width:100%;height:auto}.fcta-wave{position:relative;background:var(--accent);padding:170px 0 40px}.fcta-curve{position:absolute;top:-119px;left:0;width:100%;height:120px;fill:var(--accent)}.fcta-inner{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:28px}.fcta-title{font-family:var(--font-display);font-size:clamp(2.25rem,5vw,4rem);font-weight:800;letter-spacing:-.035em;line-height:1.02;color:#fff;margin:0}.fcta-inner .mk-btn{min-width:280px}@media(max-width:768px){.fcta-art{margin-bottom:-56px}.fcta-wave{padding:80px 0 24px}.fcta-curve{top:-59px;height:60px}}.film{background:#fff;padding:16px 0 88px;scroll-margin-top:calc(var(--nav-height) + var(--banner-height, 0px))}.film-stage{position:relative;aspect-ratio:16 / 9;border-radius:24px;overflow:hidden;background:#01031d;box-shadow:0 2px 4px #0a10330f,0 40px 80px -32px #0a103373}.film-video{display:block;width:100%;height:100%;object-fit:cover}.film-label{position:absolute;top:20px;left:20px;display:inline-flex;align-items:center;gap:10px;height:36px;padding:0 14px 0 6px;border-radius:999px;background:#01031d8c;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#fff;font-family:var(--font-display);font-size:.875rem;font-weight:700}.film-new{display:inline-flex;align-items:center;height:24px;padding:0 9px;border-radius:999px;background:var(--accent);font-size:.6875rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.film-controls{position:absolute;right:20px;bottom:20px;display:flex;gap:8px}.film-btn{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 16px;border-radius:999px;border:1px solid rgba(255,255,255,.3);background:#01031d8c;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#fff;font-family:var(--font-display);font-size:.8125rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;transition:background-color .15s ease,border-color .15s ease}.film-btn:hover{background:#01031dcc;border-color:#ffffff8c}.film-btn-icon{width:40px;padding:0;justify-content:center}@media(max-width:768px){.film{padding:8px 0 48px}.film-stage{border-radius:14px}.film-label{top:10px;left:10px;height:30px;font-size:.75rem}.film-new{height:20px}.film-controls{right:10px;bottom:10px}.film-btn{height:34px;padding:0 12px;font-size:.6875rem}.film-btn-icon{width:34px;padding:0}}.dband{position:relative;overflow:hidden;background:var(--navy);color:#fff;padding:112px 0}.dband-mascot{position:absolute;right:0;bottom:-40px;height:120%;width:auto;max-width:none;pointer-events:none}.dband-inner{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:14px}.dband-title{font-family:var(--font-display);font-size:clamp(2.25rem,4.4vw,3.5rem);font-weight:700;letter-spacing:-.03em;line-height:1.05;margin:0;max-width:640px}.dband-sub{font-size:1.0625rem;font-weight:600;margin:0}.dband-body{font-size:1rem;line-height:1.6;color:#ffffffb8;max-width:520px;margin:0 0 14px}@media(max-width:900px){.dband-mascot{height:70%;opacity:1}}@media(max-width:768px){.dband{padding:64px 0 200px}.dband-mascot{height:220px;bottom:-30px}}.demo{background:var(--surface);border-top:1px solid var(--line);padding:88px 0;scroll-margin-top:calc(var(--nav-height) + var(--banner-height, 0px))}.demo-container{max-width:var(--container-max);margin:0 auto;padding:0 var(--content-gutter)}.demo-header{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-bottom:28px}.demo-label{font-size:.875rem;font-weight:500;color:var(--ink-3)}.demo-title{font-family:var(--font-display);font-size:clamp(2rem,3.4vw,2.75rem);line-height:1.12;font-weight:700;letter-spacing:-.025em;color:var(--ink);margin:0}.demo-tabs{display:flex;gap:6px;margin-bottom:20px;flex-wrap:wrap}.demo-tab{display:inline-flex;align-items:center;height:36px;padding:0 14px;border-radius:8px;border:1px solid var(--line);background:#fff;font-family:var(--font-body);font-size:.875rem;font-weight:500;color:var(--ink-2);cursor:pointer}.demo-tab:hover{color:var(--ink)}.demo-tab.active{background:var(--accent);border-color:var(--accent);color:#fff}.demo-tab-desc{display:none}.demo-player{background:var(--ink);border-radius:10px;border:1px solid var(--line);overflow:hidden}.demo-video{display:block;width:100%;aspect-ratio:16 / 9;background:var(--ink)}@media(max-width:768px){.demo{padding:64px 0}}.ucg{background:#fff;border-top:1px solid var(--line);padding:88px 0}.ucg-title{margin-bottom:48px}.ucg-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px 48px}.ucg-cell{display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding-top:20px;border-top:1px solid var(--line)}@media(max-width:900px){.ucg{padding:64px 0}.ucg-grid{grid-template-columns:1fr;gap:28px}}.steps{background:#fff;border-top:1px solid var(--line);padding:88px 0}.steps-inner{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:48px 64px;align-items:start}.steps-head{position:sticky;top:calc(var(--nav-height) + var(--banner-height, 0px) + 32px);display:flex;flex-direction:column;gap:12px}.steps-list{list-style:none;margin:0;padding:0}.steps-item{display:grid;grid-template-columns:56px 1fr;gap:16px;padding:24px 0;border-top:1px solid var(--line)}.steps-item:last-child{border-bottom:1px solid var(--line)}.steps-num{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:var(--accent-tint);color:var(--accent);font-family:var(--font-display);font-size:.875rem;font-weight:700}.steps-heading{font-family:var(--font-display);font-size:1.5rem;font-weight:700;line-height:1.2;color:var(--ink);margin:0 0 8px}@media(max-width:900px){.steps{padding:56px 0}.steps-inner{grid-template-columns:1fr;gap:24px}.steps-head{position:static}}.platform{background:var(--surface);border-top:1px solid var(--line);padding:88px 0}.platform-head{display:flex;flex-direction:column;gap:12px;max-width:640px;margin-bottom:40px}.platform-label{font-size:.875rem;font-weight:500;color:var(--ink-3)}.platform-sub{font-size:1.0625rem}.platform-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:32px 40px}.platform-item{padding-top:20px;border-top:1px solid var(--line)}.platform-title{font-family:var(--font-display);font-size:1.375rem;font-weight:700;line-height:1.25;color:var(--ink);margin:0 0 8px}.platform-cta{display:flex;gap:10px;flex-wrap:wrap;margin-top:48px}@media(max-width:900px){.platform{padding:56px 0}.platform-list{grid-template-columns:1fr;gap:24px}}.signin-page{min-height:100vh;padding-top:152px;padding-bottom:80px;display:flex;align-items:flex-start;justify-content:center;background:var(--paper)}.signin-wrapper{width:100%;max-width:440px;padding:0 var(--content-gutter)}.signin-footer{margin-top:20px;font-size:.82rem;color:var(--ink-3);text-align:center}.signin-footer a{color:var(--ink);font-weight:500;text-decoration:underline;text-underline-offset:2px}.signin-footer a:hover{color:var(--ink)}.signup-page{min-height:100vh;padding-top:152px;padding-bottom:80px;display:flex;align-items:flex-start;justify-content:center;background:var(--paper)}.signup-wrapper{width:100%;max-width:440px;padding:0 var(--content-gutter)}.signup-gate{text-align:center}.signup-gate-title{font-family:var(--font-display);font-size:1.75rem;font-weight:700;color:var(--ink);margin-bottom:8px}.signup-gate-subtitle{font-size:.9rem;color:var(--ink-3);line-height:1.55;margin-bottom:32px}.signup-gate-form{text-align:left}.signup-gate-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:14px}.signup-gate-field{display:flex;flex-direction:column}.signup-gate-label{display:block;font-size:.8rem;font-weight:500;color:var(--ink);margin-bottom:6px}.signup-gate-input{width:100%;padding:10px 14px;font-size:.9rem;font-family:var(--font-body);border:1px solid var(--line);border-radius:8px;outline:none;transition:border-color .15s;background:#fff;color:var(--ink)}.signup-gate-input:focus-visible{outline:2px solid #4f46e5;outline-offset:2px}.signup-gate-input:focus{border-color:var(--ink)}.signup-gate-input::placeholder{color:#c4c4c0}.signup-gate-error{margin-top:10px;font-size:.82rem;color:#c0392b;line-height:1.45}.signup-gate-button{width:100%;margin-top:16px;padding:11px 0;font-size:.9rem;font-weight:700;font-family:var(--font-display);color:#fff;background:var(--accent);box-shadow:0 3px 0 var(--accent-deep);border:none;border-radius:12px;cursor:pointer;transition:opacity .15s}.signup-gate-button:hover{opacity:.88}.signup-gate-button:disabled{opacity:.5;cursor:not-allowed}.signup-role-options{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:20px}.signup-role-card{display:flex;flex-direction:column;align-items:center;gap:8px;padding:24px 16px;background:#fff;border:1.5px solid var(--line);border-radius:12px;cursor:pointer;transition:border-color .15s,box-shadow .15s;font-family:var(--font-body)}.signup-role-card:hover{border-color:var(--ink-3)}.signup-role-card--active{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}.signup-role-icon{color:var(--ink-3);display:flex}.signup-role-card--active .signup-role-icon{color:var(--ink)}.signup-role-label{font-size:.95rem;font-weight:600;color:var(--ink)}.signup-role-desc{font-size:.78rem;color:var(--ink-3);line-height:1.4;text-align:center}.signup-back-link{display:block;margin:14px auto 0;background:none;border:none;font-family:var(--font-body);font-size:.82rem;color:var(--ink-3);cursor:pointer;padding:4px 0}.signup-back-link:hover{color:var(--ink)}.signup-gate-footer{margin-top:24px;font-size:.82rem;color:var(--ink-3);text-align:center}.signup-gate-footer a{color:var(--ink);font-weight:500;text-decoration:underline;text-underline-offset:2px}.signup-gate-footer a:hover{color:var(--ink)}.signup-code-input{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:1.25rem;letter-spacing:.35em;text-align:center}.signup-captcha-slot{margin:4px 0}.signup-captcha-slot:empty{display:none}.signup-resend-link{display:block;margin:14px auto 0;background:none;border:none;font-size:.875rem;color:#2383e2;cursor:pointer}.signup-resend-link:disabled{color:var(--ink-3);cursor:default}.page-clip{position:relative;overflow:hidden;border-radius:18px;background:#01031d;box-shadow:0 2px 4px #0a10330f,0 30px 60px -30px #0a103373}.page-clip video{display:block;width:100%;height:100%;object-fit:cover}.page-clip-wide{width:100%;aspect-ratio:21 / 9;margin:32px 0 40px}.page-clip-compact{width:100%;aspect-ratio:16 / 9;margin:0 0 24px;border-radius:14px}@media(max-width:768px){.page-clip-wide{aspect-ratio:16 / 9;margin:24px 0 28px;border-radius:14px}}.doce{display:flex;flex-direction:column;gap:0;border:1px solid rgba(55,53,47,.16);border-radius:8px;overflow:hidden;background:#f1f0ee}.doce-toolbar{display:flex;align-items:center;gap:2px;flex-wrap:wrap;padding:6px 10px;background:#fff;border-bottom:1px solid rgba(55,53,47,.12)}.doce-select{padding:4px 6px;border:1px solid rgba(55,53,47,.16);border-radius:5px;background:#fff;color:var(--st-text);font-size:.78rem;font-family:var(--font-body);cursor:pointer}.doce-select:focus-visible{outline:2px solid var(--st-accent);outline-offset:1px}.doce-btn{display:flex;align-items:center;justify-content:center;min-width:28px;height:28px;padding:0 6px;background:transparent;border:none;border-radius:5px;color:var(--st-text-secondary);font-size:.85rem;font-family:var(--font-body);cursor:pointer;transition:background-color .1s ease,color .1s ease}.doce-btn:hover{background:#37352f0f;color:var(--st-text)}.doce-btn--on{background:var(--st-accent-tint, rgba(107, 45, 62, .08));color:var(--st-accent, #6b2d3e)}.doce-btn--eq{font-size:.8rem;font-style:italic}.doce-divider{width:1px;height:18px;margin:0 6px;background:#37352f24}.doce-spacer{flex:1}.doce-count{font-size:.72rem;color:var(--st-text-tertiary, #9b9a97);padding-right:4px}.doce-paste-note{padding:8px 14px;background:#d44c4714;color:#b3352e;font-size:.8rem;border-bottom:1px solid rgba(212,76,71,.18)}.doce-page-area{padding:20px 16px;max-height:65vh;overflow-y:auto;display:flex;justify-content:center}.doce-page{width:min(100%,816px);min-height:420px;background:#fff;border:1px solid rgba(55,53,47,.1);border-radius:2px;box-shadow:0 1px 3px #00000014,0 4px 16px #0000000d;padding:clamp(24px,6vw,72px) clamp(18px,8vw,84px)}.doce-prose{outline:none;font-family:var(--font-body);font-size:.9375rem;line-height:1.7;color:var(--st-text);min-height:320px}.doce-prose p{margin:0 0 .6em}.doce-prose h1{font-size:1.35rem;font-weight:600;margin:.8em 0 .4em}.doce-prose h2{font-size:1.12rem;font-weight:600;margin:.7em 0 .35em}.doce-prose ul,.doce-prose ol{padding-left:1.4em;margin:0 0 .6em}.doce-prose li{margin:.15em 0}.doce-prose li p{margin:0}.doce-prose .Tiptap-mathematics-render{padding:0 2px;border-radius:3px}.doce-prose .Tiptap-mathematics-render--editable:hover{background:#6b2d3e0f;cursor:text}.doce-prose p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;height:0;color:var(--st-text-tertiary, #9b9a97);pointer-events:none}.doce-hint{padding:8px 14px;margin:0;background:#fff;border-top:1px solid rgba(55,53,47,.09);font-size:.75rem;color:var(--st-text-tertiary, #9b9a97)}.doce-prose--view{min-height:0;font-size:.9rem}.code-editor{--ce-font: ui-monospace, "SF Mono", SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;--ce-size: .875rem;--ce-line: 1.6em;--ce-pad: 14px;--ce-ink: #37352f;--ce-muted: #9b9a97;--ce-border: rgba(55, 53, 47, .14);--ce-border-strong: rgba(55, 53, 47, .24);--ce-surface: #ffffff;--ce-gutter: #fbfbfa;--ce-head: #fbfbfa;--ce-focus: #2383e2;--ce-active: rgba(35, 131, 226, .06);display:flex;flex-direction:column;width:100%;border:1px solid var(--ce-border);border-radius:10px;background:var(--ce-surface);box-shadow:0 1px 2px #0f0f0f0a,0 4px 16px #0f0f0f0a;font-family:var(--ce-font);font-size:var(--ce-size);line-height:var(--ce-line);overflow:hidden;tab-size:4;transition:border-color .15s ease,box-shadow .15s ease}.code-editor.is-focused{border-color:var(--ce-border-strong);box-shadow:0 1px 2px #0f0f0f0a,0 6px 24px #0f0f0f12,0 0 0 3px #2383e21f}.code-editor--view{box-shadow:none}.code-editor-head{display:flex;align-items:center;justify-content:space-between;gap:12px;height:40px;padding:0 12px 0 6px;background:var(--ce-head);border-bottom:1px solid var(--ce-border);font-family:var(--font-body, "Inter", system-ui, sans-serif);font-size:.75rem;color:var(--ce-muted);-webkit-user-select:none;user-select:none}.code-editor-tabs{display:flex;align-items:stretch;height:100%}.code-editor-tab{display:inline-flex;align-items:center;gap:8px;padding:0 14px;margin-top:6px;border-radius:8px 8px 0 0;background:var(--ce-surface);border:1px solid var(--ce-border);border-bottom-color:var(--ce-surface);margin-bottom:-1px;font-family:var(--ce-font);font-size:.75rem;font-weight:500;color:var(--ce-ink)}.code-editor-lang-dot{width:8px;height:8px;border-radius:50%;background:#9b9a97}.code-editor-lang-dot--python{background:#3572a5}.code-editor-lang-dot--javascript{background:#e2b63d}.code-editor-lang-dot--java{background:#b07219}.code-editor-lang-dot--cpp{background:#5e5dc2}.code-editor-meta{display:inline-flex;align-items:center;gap:14px;white-space:nowrap}.code-editor-pos{font-variant-numeric:tabular-nums}.code-editor-lang{padding:3px 8px;border-radius:999px;background:#37352f0f;color:var(--ce-ink);font-weight:500}.code-editor-surface{display:flex;min-height:0}.code-editor-gutter{flex-shrink:0;display:flex;flex-direction:column;padding:var(--ce-pad) 0;min-width:48px;text-align:right;color:#c4c3bf;background:var(--ce-gutter);border-right:1px solid rgba(55,53,47,.08);-webkit-user-select:none;user-select:none;overflow:hidden}.code-editor-gutter span{display:block;height:var(--ce-line);padding:0 12px 0 8px;white-space:pre;font-variant-numeric:tabular-nums;transition:color .1s ease}.code-editor-gutter span.is-current{color:var(--ce-ink)}.code-editor-body{position:relative;flex:1;min-width:0}.code-editor-active-line{position:absolute;left:0;right:0;height:var(--ce-line);background:var(--ce-active);pointer-events:none}.code-editor-highlight,.code-editor-input{margin:0;padding:var(--ce-pad) 16px;font:inherit;line-height:inherit;tab-size:inherit;white-space:pre;word-wrap:normal;overflow-wrap:normal;box-sizing:border-box;width:100%;min-height:100%}.code-editor-highlight{position:absolute;inset:0;overflow:hidden;color:var(--ce-ink);pointer-events:none}.code-editor-highlight--static{position:static;overflow:auto}.code-editor-input{position:relative;display:block;background:transparent;color:transparent;caret-color:var(--ce-ink);border:0;outline:0;resize:vertical;overflow:auto}.code-editor-input::placeholder{color:var(--ce-muted)}.code-editor-input::selection{background:#2383e238}.ce-tok-keyword{color:#6f42c1;font-weight:500}.ce-tok-string{color:#0b7a5e}.ce-tok-comment{color:#9b9a97;font-style:italic}.ce-tok-number{color:#b45309}.exam-code-answer{display:flex;flex-direction:column;gap:10px}.code-run{display:flex;flex-direction:column;gap:8px}.code-run-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px 14px}.code-run-btn{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 12px;border-radius:6px;border:1px solid rgba(55,53,47,.16);background:#fff;font-family:var(--font-body, "Inter", system-ui, sans-serif);font-size:.75rem;font-weight:600;color:#37352f;cursor:pointer;transition:background .12s ease,border-color .12s ease}.code-run-btn:hover{background:#f7f7f5;border-color:#37352f47}.code-run-btn:disabled{opacity:.6;cursor:default}.code-run-note{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-body, "Inter", system-ui, sans-serif);font-size:.75rem;color:#787774}.code-run-note .code-run-saved{display:inline-flex;align-items:center;gap:5px;color:#2d9d78;font-weight:500}.code-run-note .code-run-saved:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.code-run-result{border:1px solid rgba(55,53,47,.12);border-radius:8px;padding:10px 12px;font-family:var(--font-body, "Inter", system-ui, sans-serif);font-size:.8125rem;background:#fff}.code-run-result--pass{border-color:#2d9d7873;background:#2d9d780a}.code-run-result--fail{border-color:#d44c4773;background:#d44c470a}.code-run-result pre{margin:6px 0 0;font-family:var(--ce-font);font-size:.75rem;white-space:pre-wrap;color:#37352f}.code-run-result-status{font-weight:600}.code-run-result--pass .code-run-result-status{color:#2d9d78}.code-run-result--fail .code-run-result-status{color:#d44c47}@media(max-width:640px){.code-editor{--ce-size: .8125rem;--ce-pad: 12px;border-radius:8px}.code-editor-head{height:36px;padding-right:10px}.code-editor-tab{padding:0 10px}.code-editor-pos{display:none}.code-editor-gutter{min-width:40px}.code-editor-gutter span{padding:0 8px 0 6px}.code-editor-highlight,.code-editor-input{padding-left:12px;padding-right:12px}}.ti84-panel{position:fixed;z-index:200;display:flex;flex-direction:column;background:#fff;border-radius:8px;box-shadow:0 12px 40px #0000001f,0 0 0 1px #37352f17;overflow:hidden;font-family:var(--font-body, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif)}.ti84-header{display:flex;align-items:center;gap:8px;height:40px;padding:0 8px 0 10px;background:#fafaf8;border-bottom:1px solid rgba(55,53,47,.09);cursor:grab;-webkit-user-select:none;user-select:none;flex-shrink:0;touch-action:none}.ti84-header:active{cursor:grabbing}.ti84-grip{color:#c4c4c0;display:flex;align-items:center;flex-shrink:0}.ti84-title{flex:1;font-size:.78rem;font-weight:600;color:#37352f;letter-spacing:.01em}.ti84-actions{display:flex;align-items:center;gap:2px}.ti84-action-btn{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;background:transparent;border:none;border-radius:4px;color:#6f6e69;cursor:pointer;transition:background .12s ease,color .12s ease}.ti84-action-btn:hover{background:#37352f14;color:#37352f}.ti84-action-close:hover{background:#dc26261a;color:#b91c1c}.ti84-action-btn:focus-visible{outline:2px solid #2383e2;outline-offset:1px}.ti84-body{position:relative;flex:1 1 auto;min-height:0;background:#fff}.ti84-iframe-window{position:absolute;top:0;left:0;right:0;overflow:hidden;background:#fff}.ti84-iframe{position:absolute;display:block;border:0;background:#fff}.ti84-iframe-shield{position:absolute;inset:0;z-index:1;background:transparent;cursor:inherit}.ti84-resize{position:absolute;z-index:2;background:transparent;touch-action:none}.ti84-resize-l{left:0;top:40px;bottom:0;width:6px;cursor:ew-resize}.ti84-resize-r{right:0;top:40px;bottom:12px;width:6px;cursor:ew-resize}.ti84-resize-b{left:6px;right:12px;bottom:0;height:6px;cursor:ns-resize}.ti84-resize-br{right:0;bottom:0;width:14px;height:14px;cursor:nwse-resize}.ti84-resize-br:after{content:"";position:absolute;right:3px;bottom:3px;width:8px;height:8px;border-right:2px solid rgba(55,53,47,.3);border-bottom:2px solid rgba(55,53,47,.3);border-bottom-right-radius:2px}.ti84-panel[data-minimized] .ti84-resize{display:none}.ti84-panel[data-maximized] .ti84-header,.ti84-panel[data-maximized] .ti84-header:active{cursor:default}.desmos-graph{position:relative;width:100%;height:100%;min-height:320px}.desmos-graph-mount{position:absolute;inset:0}.resource-panel{position:fixed;z-index:200;display:flex;flex-direction:column;background:#fff;border-radius:10px;box-shadow:0 12px 40px #0000001f,0 0 0 1px #37352f17;overflow:hidden;font-family:var(--font-body, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif)}.resource-header{display:flex;align-items:center;gap:8px;height:40px;padding:0 8px 0 10px;background:#fafaf8;border-bottom:1px solid rgba(55,53,47,.09);cursor:grab;-webkit-user-select:none;user-select:none;flex-shrink:0;touch-action:none}.resource-header:active{cursor:grabbing}.resource-grip{color:#c4c4c0;display:flex;align-items:center;flex-shrink:0}.resource-title{flex:1;display:flex;flex-direction:column;min-width:0;line-height:1.2}.resource-label{font-size:.78rem;font-weight:600;color:#37352f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.resource-url{font-size:.66rem;color:#9b9a97;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.resource-close{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;background:transparent;border:none;border-radius:4px;color:#6f6e69;cursor:pointer;transition:background .12s ease,color .12s ease}.resource-close:hover{background:#dc26261a;color:#b91c1c}.resource-close:focus-visible{outline:2px solid #2383e2;outline-offset:1px}.resource-body{position:relative;flex:1 1 auto;min-height:0;background:#f5f5f3}.resource-iframe{display:block;width:100%;height:100%;border:0;background:#fff}.resource-iframe-shield{position:absolute;inset:0;z-index:1;background:transparent;cursor:inherit}.resource-resize{position:absolute;z-index:2;background:transparent;touch-action:none}.resource-resize-l{left:0;top:40px;bottom:0;width:6px;cursor:ew-resize}.resource-resize-r{right:0;top:40px;bottom:12px;width:6px;cursor:ew-resize}.resource-resize-b{left:6px;right:12px;bottom:0;height:6px;cursor:ns-resize}.resource-resize-br{right:0;bottom:0;width:14px;height:14px;cursor:nwse-resize}.resource-resize-br:after{content:"";position:absolute;right:3px;bottom:3px;width:8px;height:8px;border-right:2px solid rgba(55,53,47,.3);border-bottom:2px solid rgba(55,53,47,.3);border-bottom-right-radius:2px}.resource-load-failed{position:absolute;inset:0;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:24px;text-align:center;background:#fbfbfa;color:#37352fa6}.resource-load-failed-title{margin:6px 0 0;font-size:.95rem;font-weight:600;color:#37352f}.resource-load-failed-text{margin:0;font-size:.85rem;max-width:360px}.resource-load-failed-url{margin:2px 0 0;font-size:.78rem;font-family:ui-monospace,SF Mono,Menlo,monospace;color:#37352f80;word-break:break-all;max-width:100%;-webkit-user-select:all;user-select:all}.resource-load-failed-retry{margin-top:10px;padding:6px 14px;font-size:.85rem;font-weight:500;color:#37352f;background:#fff;border:1px solid rgba(55,53,47,.16);border-radius:6px;cursor:pointer}.resource-load-failed-retry:hover{background:#f5f5f3}.exam-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:80px 24px 48px;background:var(--st-bg);color:var(--st-text);font-family:var(--font-body)}.exam-container{max-width:440px;width:100%;display:flex;flex-direction:column;align-items:center;gap:28px}.exam-hero{text-align:center;display:flex;flex-direction:column;align-items:center;gap:10px}.exam-icon{width:72px;height:72px;border-radius:50%;background:#37352f0f;display:flex;align-items:center;justify-content:center;color:var(--st-text-secondary);margin-bottom:4px}.exam-icon-success{background:#2d9d7814;color:var(--st-success)}.exam-icon-blocked{background:#37352f0f;color:var(--st-text-secondary)}.exam-icon-ready{background:var(--st-accent-tint);color:var(--st-accent)}.exam-hero h1{font-family:var(--font-body);font-size:1.5rem;font-weight:600;letter-spacing:normal;line-height:1.3;color:var(--st-text)}.exam-subtitle{font-size:.9375rem;color:var(--st-text-secondary);line-height:1.6;max-width:400px}.exam-back-link{display:inline-block;margin-top:12px;font-size:.875rem;color:var(--st-text-tertiary);text-decoration:none}.exam-back-link:hover{color:var(--st-text)}.exam-warning{display:flex;align-items:center;gap:10px;padding:12px 16px;background:var(--st-bg-chrome);border:1px solid var(--st-border);border-radius:6px;color:var(--st-text-secondary);font-size:.85rem;width:100%}.exam-form{width:100%;display:flex;flex-direction:column;gap:12px}.exam-input{width:100%;padding:12px 16px;background:#fff;border:1px solid var(--st-border-strong);border-radius:6px;color:var(--st-text);font-size:.95rem;font-family:var(--font-body);outline:none;transition:border-color .15s,box-shadow .15s}.exam-input::placeholder{color:var(--st-text-tertiary)}.exam-input:focus,.exam-input:focus-visible{outline:none;border-color:var(--st-accent);box-shadow:0 0 0 2px var(--st-accent-ring)}.exam-start-btn{display:flex;align-items:center;justify-content:center;width:100%;padding:10px 16px;background:var(--st-accent);color:#fff;border:none;border-radius:6px;font-size:.9375rem;font-weight:500;font-family:var(--font-body);cursor:pointer;transition:background .15s;text-decoration:none}.exam-start-btn:hover{background:var(--st-accent-hover);color:#fff}.exam-btn-disabled{opacity:.4;pointer-events:none}.exam-prep{max-width:520px}.exam-prep-card{width:100%;padding:24px 28px;background:#fff;border:1px solid var(--st-border);border-radius:8px;display:flex;flex-direction:column;gap:14px}.exam-prep-heading{font-family:var(--font-body);font-size:1.05rem;font-weight:600;color:var(--st-text)}.exam-prep-body{font-size:.9rem;color:var(--st-text-secondary);line-height:1.6}.exam-prep-checklist{list-style:none;display:flex;flex-direction:column;gap:10px;padding:0}.exam-prep-checklist li{display:flex;align-items:center;gap:10px;font-size:.875rem;color:var(--st-text);line-height:1.5}.exam-prep-check{width:22px;height:22px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#2d9d781a;color:var(--st-success)}.exam-prep-encourage{font-family:var(--font-body);font-size:.9rem;font-style:normal;color:var(--st-text-secondary);margin-top:2px}.exam-done{max-width:520px}.exam-done-card{width:100%;padding:32px;background:#fff;border:1px solid var(--st-border);border-radius:8px;display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center}.exam-done-score-ring{display:flex;flex-direction:column;align-items:center;gap:4px}.exam-done-score-num{font-family:var(--font-body);font-size:3rem;font-weight:600;color:var(--st-text);letter-spacing:-.02em;line-height:1}.exam-done-score-label{font-size:.8rem;color:var(--st-text-tertiary);font-weight:500}.exam-done-message{font-size:.9375rem;color:var(--st-text);line-height:1.6;max-width:360px}.exam-done-note{font-size:.8125rem;color:var(--st-text-tertiary);text-align:center;line-height:1.6}.exam-done-pending{margin:8px 0 0;color:var(--st-text-secondary);font-size:.875rem;font-family:var(--font-body)}.exam-active{flex-direction:column;justify-content:flex-start;align-items:stretch;padding:0;background:var(--st-bg-chrome)}.exam-active-toolbar{position:sticky;top:0;z-index:100;display:flex;align-items:center;flex-wrap:wrap;gap:10px;min-height:48px;padding:8px 16px;background:#fff;border-bottom:1px solid var(--st-border)}.exam-active-status{display:flex;align-items:center;gap:8px;font-size:.8125rem;font-weight:600;color:var(--st-text);font-family:var(--font-body);min-width:0;overflow:hidden;white-space:nowrap}.exam-active-dot{width:7px;height:7px;border-radius:50%;background:var(--st-success);flex-shrink:0;animation:pulse-dot 2s infinite}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.3}}.exam-progress-text{font-size:.8125rem;color:var(--st-text-tertiary);margin-left:auto;white-space:nowrap}.exam-finish-btn{padding:6px 14px;background:var(--st-accent);color:#fff;border:none;border-radius:6px;font-size:.8125rem;font-weight:500;font-family:var(--font-body);cursor:pointer;transition:background .15s}.exam-finish-btn:hover{background:var(--st-accent-hover)}.exam-status-chips{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;font-size:.8125rem;font-weight:500;font-variant-numeric:tabular-nums;color:var(--st-text-secondary, #6b6a67);padding:4px 10px;background:#37352f0a;border-radius:999px}.exam-clock,.exam-battery{display:inline-flex;align-items:center;gap:4px}.exam-battery--low{color:var(--st-danger)}@media(max-width:960px){.exam-active-toolbar .exam-calc-btn{font-size:0;gap:0;padding:6px 9px}.exam-active-toolbar .exam-resources-count{font-size:.66rem;margin-left:4px}}.exam-timer{font-size:.875rem;font-weight:600;font-family:SFMono-Regular,Menlo,monospace;font-variant-numeric:tabular-nums;color:var(--st-text);padding:4px 12px;background:#37352f0f;border-radius:999px}.exam-timer--warning{color:var(--st-warning);background:#cb912f1a}.exam-timer--critical{color:var(--st-danger);background:var(--st-danger-tint);animation:timer-pulse 1s ease-in-out infinite}@keyframes timer-pulse{0%,to{opacity:1}50%{opacity:.5}}.exam-calc-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;background:#fff;color:var(--st-text-secondary);border:1px solid var(--st-border-strong);border-radius:6px;font-size:.8125rem;font-weight:500;font-family:var(--font-body);cursor:pointer;transition:background-color .1s ease,border-color .1s ease,color .1s ease}.exam-calc-btn:hover{background:var(--st-hover);color:var(--st-text)}.exam-calc-btn--active{background:var(--st-accent-tint);border-color:var(--st-accent);color:var(--st-accent)}.exam-resources-wrap{position:relative;display:inline-flex}.exam-resources-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;margin-left:2px;background:var(--st-accent);color:#fff;border-radius:9px;font-size:.66rem;font-weight:600}.exam-resources-popover{position:absolute;top:calc(100% + 6px);right:0;z-index:120;min-width:260px;max-width:360px;max-height:320px;overflow-y:auto;background:#fff;border:1px solid var(--st-border);border-radius:8px;box-shadow:var(--st-shadow-overlay);padding:4px}.exam-resources-item{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;padding:8px 10px;background:transparent;border:none;border-radius:6px;text-align:left;cursor:pointer;font-family:inherit;transition:background .1s ease}.exam-resources-item:hover{background:var(--st-hover)}.exam-resources-item:focus-visible{outline:2px solid var(--st-accent);outline-offset:-2px}.exam-resources-item-label{font-size:.84rem;font-weight:500;color:var(--st-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.exam-resources-item-url{font-size:.7rem;color:var(--st-text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.exam-take-full{width:100%;max-width:760px;margin:0 auto;padding:28px 24px 48px;display:flex;flex-direction:column;gap:20px;flex:1}.exam-question-nav{display:flex;flex-wrap:wrap;gap:4px}.exam-nav-dot{width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:6px;border:1px solid var(--st-border-strong);background:#fff;color:var(--st-text-tertiary);font-size:.7rem;font-weight:600;font-family:var(--font-body);cursor:pointer;transition:background-color .1s ease,border-color .1s ease,color .1s ease}.exam-nav-dot:hover{border-color:#37352f4d;color:var(--st-text)}.exam-nav-answered{background:#37352f0f;border-color:var(--st-border-strong);color:var(--st-text)}.exam-nav-active,.exam-nav-active.exam-nav-answered{border-color:var(--st-accent);background:var(--st-accent-tint);color:var(--st-accent)}.exam-question-card{background:#fff;border:1px solid var(--st-border);border-radius:8px;padding:32px 36px;display:flex;flex-direction:column;gap:22px;flex:1}.exam-question-num{font-size:.75rem;font-weight:600;color:var(--st-text-tertiary);text-transform:uppercase;letter-spacing:.05em}.exam-question-image{max-width:100%;max-height:300px;border-radius:6px;object-fit:contain;border:1px solid var(--st-border)}.exam-question-text{font-family:var(--font-body);font-size:17px;font-weight:400;font-style:normal;color:var(--st-text);line-height:1.6}.exam-frq-label{margin-left:10px;font-size:.6rem;font-family:var(--font-body);background:#37352f0f;color:var(--st-text-secondary);padding:2px 8px;border-radius:4px;vertical-align:middle;text-transform:uppercase;letter-spacing:.04em}.exam-answer-options{display:flex;flex-direction:column;gap:8px}.exam-answer-btn{display:flex;align-items:center;gap:14px;padding:12px 16px;background:#fff;border:1px solid var(--st-border-strong);border-radius:6px;cursor:pointer;transition:background-color .1s ease,border-color .1s ease;text-align:left}.exam-answer-btn:hover{background:var(--st-hover)}.exam-answer-selected,.exam-answer-selected:hover{background:var(--st-accent-tint);border-color:var(--st-accent)}.exam-answer-letter{width:26px;height:26px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#37352f0f;color:var(--st-text-secondary);font-size:.75rem;font-weight:600;font-family:var(--font-body);transition:background-color .1s ease,color .1s ease}.exam-answer-selected .exam-answer-letter{background:var(--st-accent);color:#fff}.exam-answer-text{font-size:.9375rem;color:var(--st-text);line-height:1.5;font-family:var(--font-body)}.exam-frq-textarea{display:block;width:100%;min-height:10rem;box-sizing:border-box;padding:14px;background:#fff;border:1px solid var(--st-border-strong);border-radius:6px;color:var(--st-text);font-size:.9375rem;font-family:var(--font-body);line-height:1.6;outline:none;resize:vertical;transition:border-color .15s,box-shadow .15s}.exam-frq-textarea::placeholder{color:var(--st-text-tertiary)}.exam-frq-textarea:focus,.exam-frq-textarea:focus-visible{outline:none;border-color:var(--st-accent);box-shadow:0 0 0 2px var(--st-accent-ring)}.exam-submit-error{display:flex;flex-direction:column;gap:6px;margin-top:20px;padding:14px 16px;background:var(--st-danger-tint);border:1px solid rgba(212,76,71,.3);border-radius:6px}.exam-submit-error-title{color:var(--st-danger);font-size:.9375rem;font-weight:600;font-family:var(--font-body)}.exam-submit-error-body{color:var(--st-text-secondary);font-size:.875rem;line-height:1.5;font-family:var(--font-body)}.exam-submit-retry{align-self:flex-start;margin-top:4px;padding:7px 16px;background:var(--st-danger);color:#fff;border:none;border-radius:6px;font-size:.875rem;font-weight:500;font-family:var(--font-body);cursor:pointer}.exam-submit-retry:hover{background:#c0413c}.exam-submit-retry:disabled{opacity:.6;cursor:default}.exam-question-footer{display:flex;justify-content:space-between;gap:12px;margin-top:8px}.exam-nav-btn{padding:10px 16px;background:#fff;color:var(--st-text);border:1px solid var(--st-border-strong);border-radius:6px;font-size:.875rem;font-weight:500;font-family:var(--font-body);cursor:pointer;transition:background-color .1s ease,border-color .1s ease}.exam-nav-btn:hover:not(:disabled){background:var(--st-hover)}.exam-nav-btn:disabled{opacity:.35;cursor:not-allowed}.exam-nav-submit{background:var(--st-accent);color:#fff;border-color:var(--st-accent)}.exam-nav-submit:hover:not(:disabled){background:var(--st-accent-hover);border-color:var(--st-accent-hover);color:#fff}.calc-window{position:fixed;z-index:150;width:460px;height:520px;display:flex;flex-direction:column;background:#fff;border-radius:8px;box-shadow:var(--st-shadow-overlay),0 0 0 1px var(--st-border);overflow:hidden;resize:both;min-width:340px;min-height:380px}.calc-titlebar{display:flex;align-items:center;gap:6px;padding:0 8px;height:36px;background:var(--st-bg-chrome);border-bottom:1px solid var(--st-border);cursor:grab;-webkit-user-select:none;user-select:none;flex-shrink:0}.calc-titlebar:active{cursor:grabbing}.calc-titlebar-drag{color:var(--st-text-tertiary);display:flex;align-items:center;flex-shrink:0}.calc-titlebar-label{font-size:.75rem;font-weight:600;color:var(--st-text-tertiary);margin-right:4px}.calc-tabs{display:flex;gap:2px;background:#37352f0f;border-radius:6px;padding:2px;margin-left:auto}.calc-tab{display:flex;align-items:center;gap:4px;padding:3px 10px;border:none;border-radius:4px;background:transparent;font-size:.7rem;font-weight:500;font-family:var(--font-body);color:var(--st-text-tertiary);cursor:pointer;transition:background-color .08s ease,color .08s ease}.calc-tab:hover{color:var(--st-text)}.calc-tab--on{background:#fff;color:var(--st-text);box-shadow:0 1px 2px #0000000d}.calc-close{width:26px;height:26px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:4px;color:var(--st-text-tertiary);cursor:pointer;transition:background-color .08s ease,color .08s ease;margin-left:4px;flex-shrink:0}.calc-close:hover{background:#37352f0f;color:var(--st-text)}.calc-body{flex:1;min-height:0;position:relative}.calc-desmos{width:100%;height:100%;position:absolute;inset:0}.exam-confirm-overlay{position:fixed;inset:0;background:#0f0f0f59;display:flex;align-items:center;justify-content:center;z-index:1000}.exam-confirm-card{background:#fff;border-radius:8px;padding:24px;width:min(440px,calc(100vw - 48px));box-shadow:var(--st-shadow-overlay)}.exam-confirm-card h2{font-size:1.05rem;font-weight:600;color:var(--st-text);margin:0 0 8px}.exam-confirm-card p{font-size:.9rem;color:var(--st-text-secondary);line-height:1.55;margin:0 0 20px}.exam-confirm-actions{display:flex;justify-content:flex-end;gap:10px}@media(max-width:768px){.exam-page{padding:64px 16px 40px}.exam-active{padding:0}.exam-active-toolbar{padding:8px 12px;gap:8px}.exam-take-full{padding:20px 12px 32px}.exam-question-card{padding:20px 16px}.calc-window{width:calc(100vw - 16px)!important;height:50vh!important;left:8px!important;bottom:8px!important;top:auto!important}}.exam-writing-editor .doce-page-area{max-height:none;min-height:55vh}.exam-writing-editor .doce-page{min-height:55vh}.exam-writing-editor .doce-prose{min-height:calc(55vh - 120px)}.exam-writing-count{margin:8px 4px 0;font-size:.78rem;font-family:var(--font-body);color:var(--st-text-secondary);text-align:right}.t84p-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:80px 24px 48px;background:var(--st-bg);color:var(--st-text);font-family:var(--font-body)}.t84p-container{max-width:440px;width:100%;display:flex;flex-direction:column;align-items:center;gap:28px}.t84p-hero{text-align:center;display:flex;flex-direction:column;align-items:center;gap:10px}.t84p-icon{width:72px;height:72px;border-radius:50%;background:#37352f0f;display:flex;align-items:center;justify-content:center;color:var(--st-text-secondary);margin-bottom:4px}.t84p-icon-blocked{background:#37352f0f;color:var(--st-text-secondary)}.t84p-icon-ready{background:var(--st-accent-tint);color:var(--st-accent)}.t84p-hero h1{font-family:var(--font-body);font-size:1.5rem;font-weight:600;letter-spacing:normal;line-height:1.3;color:var(--st-text)}.t84p-subtitle{font-size:.9375rem;color:var(--st-text-secondary);line-height:1.6;max-width:400px}.t84p-start-btn{display:flex;align-items:center;justify-content:center;width:100%;padding:10px 16px;background:var(--st-accent);color:#fff;border:none;border-radius:6px;font-size:.9375rem;font-weight:500;font-family:var(--font-body);cursor:pointer;text-decoration:none;transition:background-color .15s}.t84p-start-btn:hover{background:var(--st-accent-hover, var(--st-accent))}.t84p-session{min-height:100vh;display:flex;flex-direction:column;background:var(--st-bg);color:var(--st-text);font-family:var(--font-body)}.t84p-topbar{display:flex;align-items:center;gap:12px;padding:10px 20px;border-bottom:1px solid rgba(55,53,47,.09);background:#fff}.t84p-topbar-title{font-size:.9375rem;font-weight:600}.t84p-badge{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;background:#2d9d781a;color:var(--st-success, #2d9d78);font-size:.75rem;font-weight:600}.t84p-badge-dot{width:7px;height:7px;border-radius:50%;background:currentColor}.t84p-topbar-spacer{flex:1}.t84p-end-btn{padding:7px 14px;background:transparent;border:1px solid var(--st-border-strong, rgba(55, 53, 47, .25));border-radius:6px;color:var(--st-text-secondary);font-size:.8125rem;font-weight:500;font-family:var(--font-body);cursor:pointer;transition:background-color .15s,color .15s,border-color .15s}.t84p-end-btn:hover{background:#37352f0a;color:var(--st-text)}.t84p-end-btn--confirm{background:#b3352e;border-color:#b3352e;color:#fff}.t84p-end-btn--confirm:hover{background:#9c2d27;color:#fff}.t84p-calc-area{flex:1;display:flex;align-items:center;justify-content:center;padding:24px;overflow:auto}.t84p-calc-crop{position:relative;width:min(100%,760px);overflow:hidden;border-radius:10px;border:1px solid rgba(55,53,47,.12);box-shadow:0 4px 24px #00000014;background:#fff}.t84p-iframe{position:absolute;left:0;width:100%;border:none}.t84p-desmos{position:relative;width:min(100%,1100px);height:100%;min-height:480px;border-radius:10px;border:1px solid rgba(55,53,47,.12);box-shadow:0 4px 24px #00000014;overflow:hidden;background:#fff}.t84p-desmos-mount{position:absolute;inset:0}.sdash{min-height:100vh;background:var(--st-bg);color:var(--st-text);font-family:var(--font-body);padding:72px 0 0}.sdash-container{max-width:900px;margin:0 auto;padding:40px 96px 80px;display:flex;flex-direction:column;gap:32px}.sdash-header{display:flex;align-items:flex-end;justify-content:space-between}.sdash-greeting{font-family:var(--font-body);font-size:1.5rem;font-weight:600;color:var(--st-text);letter-spacing:normal;line-height:1.3}.sdash-sub{font-size:.875rem;color:var(--st-text-tertiary);margin-top:4px}.sdash-header-actions{display:flex;align-items:center;gap:12px}.sdash-avatar-menu{position:relative}.sdash-avatar-btn{width:32px;height:32px;border-radius:50%;border:none;padding:0;cursor:pointer;background:#37352f14;overflow:hidden;display:flex;align-items:center;justify-content:center;transition:box-shadow .15s}.sdash-avatar-btn:hover{box-shadow:0 0 0 2px #37352f26}.sdash-avatar-img{width:100%;height:100%;object-fit:cover}.sdash-avatar-fallback{font-size:.8rem;font-weight:600;color:var(--st-text);line-height:1}.sdash-dropdown{position:absolute;top:calc(100% + 6px);right:0;min-width:220px;background:#fff;border:1px solid var(--st-border);border-radius:8px;box-shadow:var(--st-shadow-overlay);z-index:100;padding:4px 0;animation:sdash-dropdown-in .12s ease-out}@keyframes sdash-dropdown-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.sdash-dropdown-header{padding:10px 14px 8px;display:flex;flex-direction:column;gap:1px}.sdash-dropdown-name{font-size:.8125rem;font-weight:600;color:var(--st-text)}.sdash-dropdown-email{font-size:.7rem;color:var(--st-text-tertiary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sdash-dropdown-divider{height:1px;background:var(--st-border);margin:4px 0}.sdash-dropdown-item{display:flex;align-items:center;gap:10px;width:100%;padding:7px 14px;border:none;background:none;font-size:.8125rem;font-family:var(--font-body);color:var(--st-text);cursor:pointer;transition:background .08s;text-align:left}.sdash-dropdown-item:hover{background:var(--st-hover)}.sdash-dropdown-item svg{flex-shrink:0;opacity:.55}.sdash-dropdown-item--danger{color:var(--st-danger)}.sdash-dropdown-item--danger svg{opacity:.7}.sdash-badge{display:flex;align-items:center;gap:6px;font-size:.75rem;font-weight:500;padding:4px 10px;border-radius:4px;white-space:nowrap}.sdash-badge-secure{background:#2d9d781a;color:var(--st-success)}.sdash-badge-warn{background:#cb912f1a;color:var(--st-warning)}.sdash-badge-dot{width:6px;height:6px;border-radius:50%}.sdash-badge-dot-green{background:var(--st-success)}.sdash-badge-dot-yellow{background:var(--st-warning)}.sdash-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px}.sdash-feature-card{padding:20px;background:#fff;border:1px solid var(--st-border);border-radius:8px;display:flex;flex-direction:column;gap:8px;transition:border-color .15s}.sdash-feature-card:hover{border-color:var(--st-border-strong)}.sdash-feature-top{display:flex;align-items:center;justify-content:space-between}.sdash-feature-label{font-size:.9375rem;font-weight:600;color:var(--st-text)}.sdash-feature-arrow{color:var(--st-text-tertiary)}.sdash-feature-desc{font-size:.8125rem;color:var(--st-text-secondary);line-height:1.5;margin-bottom:8px}.sdash-feature-stat{display:flex;align-items:baseline;gap:6px;margin-top:auto}.sdash-feature-stat-num{font-size:1.5rem;font-weight:600;color:var(--st-text);line-height:1}.sdash-feature-stat-label{font-size:.75rem;color:var(--st-text-tertiary)}.sdash-join-form{display:flex;gap:8px}.sdash-input{flex:1;min-width:0;padding:9px 12px;background:#fff;border:1px solid var(--st-border-strong);border-radius:6px;color:var(--st-text);font-size:.9375rem;font-family:SFMono-Regular,Menlo,monospace;letter-spacing:.08em;outline:none;transition:border-color .15s,box-shadow .15s}.sdash-input::placeholder{font-family:var(--font-body);letter-spacing:0;color:var(--st-text-tertiary)}.sdash-input:focus,.sdash-input:focus-visible{outline:none;border-color:var(--st-accent);box-shadow:0 0 0 2px var(--st-accent-ring)}.sdash-ti84-btn{display:flex;align-items:center;justify-content:center;text-decoration:none;margin-top:auto}.sdash-join-btn{padding:9px 18px;background:var(--st-accent);color:#fff;border:none;border-radius:6px;font-size:.8125rem;font-weight:500;font-family:var(--font-body);cursor:pointer;transition:background .15s;white-space:nowrap}.sdash-join-btn:hover:not(:disabled){background:var(--st-accent-hover)}.sdash-join-btn:disabled{opacity:.4;cursor:not-allowed}.sdash-sections{display:flex;flex-direction:column;gap:0}.sdash-card{padding:0;background:transparent;border:none;border-radius:0}.sdash-card h3{font-size:.75rem;font-weight:600;color:var(--st-text-tertiary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}.sdash-card-full{grid-column:unset}.sdash-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:48px 0;color:var(--st-text-tertiary)}.sdash-empty svg{opacity:.35}.sdash-empty p{font-size:.875rem;color:var(--st-text-tertiary)}.sdash-results-list{display:flex;flex-direction:column;border-top:1px solid var(--st-border)}.sdash-result-row{display:flex;align-items:center;justify-content:space-between;padding:10px 8px;border-bottom:1px solid var(--st-border);transition:background .08s}.sdash-result-row:hover{background:var(--st-hover)}.sdash-result-info h4{font-size:.875rem;font-weight:500;color:var(--st-text)}.sdash-result-info p{font-size:.75rem;color:var(--st-text-tertiary);margin-top:1px}.sdash-result-score{display:flex;align-items:center;gap:10px;flex-shrink:0}.sdash-score-num{font-size:.875rem;font-weight:600;font-variant-numeric:tabular-nums;color:var(--st-text)}.sdash-score-pct{font-size:.7rem;font-weight:500;color:var(--st-accent);background:var(--st-accent-tint);padding:1px 6px;border-radius:4px}.sdash-auth{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:16px;text-align:center}.sdash-auth-icon{width:72px;height:72px;border-radius:50%;background:#37352f0f;display:flex;align-items:center;justify-content:center;color:var(--st-text-secondary)}.sdash-auth-title{font-family:var(--font-body);font-size:1.25rem;font-weight:600;color:var(--st-text)}.sdash-auth-text{color:var(--st-text-secondary);font-size:.9375rem;max-width:360px;line-height:1.6}.sdash-auth-btn{margin-top:8px;padding:10px 24px;background:var(--st-accent);color:#fff;border-radius:6px;font-size:.875rem;font-weight:500;text-decoration:none;transition:background .15s}.sdash-auth-btn:hover{background:var(--st-accent-hover);color:#fff}.sdash-feedback-link{display:flex;align-items:center;gap:6px;font-size:.8125rem;color:var(--st-text-tertiary);text-decoration:none;margin-top:8px;transition:color .15s}.sdash-feedback-link:hover{color:var(--st-text)}@media(max-width:768px){.sdash-container{padding:24px 20px 60px}.sdash-header{flex-direction:column;gap:8px;align-items:flex-start}.sdash-greeting{font-size:1.35rem}.sdash-cards{grid-template-columns:1fr}.sdash-join-form{flex-direction:column}}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%);z-index:1200;display:flex;align-items:center;gap:10px;max-width:min(480px,calc(100vw - 32px));padding:10px 14px;background:#37352f;color:#fff;border-radius:8px;box-shadow:0 8px 24px #00000038;font-size:.82rem;line-height:1.4;animation:toast-in .16s ease-out}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%)}}.toast-msg{overflow-wrap:anywhere}.toast-close{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:none;border-radius:4px;background:transparent;color:#ffffffb3;cursor:pointer}.toast-close:hover{color:#fff;background:#ffffff1f}.tdash{min-height:100vh;background:#fff;color:#37352f;padding:72px 0 0}.tdash-container{max-width:900px;margin:0 auto;padding:40px 96px 80px}.tdash--with-sidebar{display:flex;padding-top:0}.tdash-sidebar{width:220px;flex-shrink:0;height:100vh;position:sticky;top:0;border-right:1px solid rgba(55,53,47,.09);display:flex;flex-direction:column;overflow-y:auto;background:#fff}.tdash-sidebar-brand{display:flex;align-items:center;gap:6px;padding:16px 16px 12px;cursor:pointer}.tdash-sidebar-brand-name{font-family:var(--font-display-app);font-size:1.35rem;font-weight:400;color:#37352f;letter-spacing:-.01em}.tdash-sidebar-brand-chevron{color:#9b9a97;flex-shrink:0;transition:transform .15s}.tdash-sidebar-brand:hover .tdash-sidebar-brand-chevron{color:#37352f}.tdash-sidebar-nav{flex:1;padding:0 8px;display:flex;flex-direction:column;gap:2px}.tdash-sidebar-group{margin-top:16px;display:flex;flex-direction:column;gap:2px}.tdash-sidebar-group-label{font-size:.65rem;font-weight:600;color:#9b9a97;text-transform:uppercase;letter-spacing:.06em;padding:4px 10px}.tdash-sidebar-item{display:flex;align-items:center;gap:8px;padding:6px 10px;border-radius:6px;background:transparent;border:none;color:#6b6b6b;font-size:.8125rem;font-weight:500;font-family:var(--font-body);cursor:pointer;transition:background .08s,color .08s;text-decoration:none;text-align:left;width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tdash-sidebar-item:hover{background:#37352f0a;color:#37352f}.tdash-sidebar-item--active{background:#37352f0f;color:#37352f}.tdash-sidebar-item svg{flex-shrink:0;opacity:.6}.tdash-sidebar-bottom{padding:8px;border-top:1px solid rgba(55,53,47,.09)}.tdash-sidebar-item--logout{width:100%;color:#d44c47}.tdash-sidebar-item--logout:hover{background:#d44c470f}.tdash-main{flex:1;min-width:0;display:flex;flex-direction:column}.tdash-topbar{height:44px;display:flex;align-items:center;padding:0 24px;border-bottom:1px solid rgba(55,53,47,.09);flex-shrink:0}.tdash-topbar-crumb{font-size:.8125rem;color:#9b9a97}.tdash-content{flex:1;overflow-y:auto;padding:32px 48px 80px;width:100%}.tdash--with-sidebar .tdash-header{align-items:flex-start;margin-bottom:28px}.tdash--with-sidebar .tdash-greeting{font-size:2rem}.tdash-header-title-row{display:flex;align-items:center;gap:10px}.tdash-badge{font-size:.7rem;font-weight:500;padding:2px 8px;border-radius:4px;background:#37352f0f;color:#9b9a97}.tdash-top-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px;margin-bottom:28px}.tdash-top-left{padding:24px;border:1px solid rgba(55,53,47,.09);border-radius:8px;display:flex;flex-direction:column;gap:12px}.tdash-top-left-header{display:flex;align-items:center;gap:8px}.tdash-top-left-header h3{font-size:.9375rem;font-weight:600;color:#37352f}.tdash-top-left-header svg{color:#9b9a97}.tdash-top-left-desc{font-size:.8125rem;color:#9b9a97;line-height:1.4}.tdash-top-left-courses{display:flex;flex-wrap:wrap;gap:6px}.tdash-top-course-chip{font-size:.75rem;padding:3px 10px;border-radius:4px;background:#37352f0a;color:#6b6b6b}.tdash-top-create-btn{align-self:flex-start;padding:8px 16px;background:#37352f;color:#fff;border:none;border-radius:6px;font-size:.8125rem;font-weight:500;font-family:var(--font-body);cursor:pointer;transition:background .1s}.tdash-top-create-btn:hover{background:#1c1b19}.tdash-top-right{padding:24px;border:1px solid rgba(55,53,47,.09);border-radius:8px;display:flex;flex-direction:column;gap:16px}.tdash-top-right-header h3{font-size:.9375rem;font-weight:600;color:#37352f}.tdash-top-right-stats{display:grid;grid-template-columns:1fr 1fr;gap:16px 24px;flex:1}.tdash-top-stat{display:flex;flex-direction:column;gap:2px}.tdash-top-stat-num{font-size:1.75rem;font-weight:500;color:#37352f;font-variant-numeric:tabular-nums;line-height:1.2}.tdash-top-stat-label{font-size:.65rem;color:#9b9a97;text-transform:uppercase;letter-spacing:.06em}.tdash-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:32px}.tdash-grid-card{display:flex;align-items:flex-start;gap:10px;padding:14px 16px;border:1px solid rgba(55,53,47,.09);border-radius:8px;background:transparent;cursor:pointer;font-family:var(--font-body);text-align:left;transition:background .08s;min-height:56px}button.tdash-grid-card{border:1px solid rgba(55,53,47,.09)}.tdash-grid-card:hover{background:#37352f08}.tdash-grid-card svg{flex-shrink:0;color:#9b9a97;margin-top:1px}.tdash-grid-card-text{display:flex;flex-direction:column;gap:2px;min-width:0}.tdash-grid-card-text strong{font-size:.8125rem;font-weight:600;color:#37352f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tdash-grid-card-text span{font-size:.7rem;color:#9b9a97;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tdash-content .tdash-section{margin-bottom:28px}@media(max-width:1100px){.tdash-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:900px){.tdash-sidebar{width:180px}.tdash-top-row{grid-template-columns:1fr}.tdash-content{padding:24px 28px 60px}}@media(max-width:700px){.tdash--with-sidebar{flex-direction:column}.tdash-sidebar{display:none}.tdash-content{padding:24px 20px 60px}.tdash-grid{grid-template-columns:1fr}}.tdash-header{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:32px}.tdash-greeting{font-family:var(--font-display-app);font-size:2.5rem;font-weight:500;color:#37352f;letter-spacing:-.02em;line-height:1.2}.tdash-sub{font-size:.875rem;color:#9b9a97;margin-top:4px}.tdash-create-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;background:transparent;color:#37352f;border:1px solid rgba(55,53,47,.16);border-radius:4px;font-size:.8125rem;font-weight:500;font-family:var(--font-body);cursor:pointer;transition:background .1s}.tdash-create-btn:hover{background:#37352f0a}.tdash-create-btn svg{opacity:.6}.tdash-stats{display:none}.tdash-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:36px}.tdash-card{display:flex;align-items:flex-start;gap:14px;padding:20px;border-radius:8px;border:none;text-align:left;cursor:default;font-family:var(--font-body);transition:box-shadow .15s,transform .15s;position:relative;overflow:hidden}.tdash-card:before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;transition:opacity .2s ease}.tdash-card>*{position:relative;z-index:1}button.tdash-card{cursor:pointer}button.tdash-card:hover{box-shadow:0 2px 8px #0000000f;transform:translateY(-1px)}.tdash-card-blue{background:#1c2541}.tdash-card-blue:before{background:linear-gradient(135deg,rgba(140,180,255,.2),rgba(255,255,255,.07) 42%,transparent 72%)}.tdash-card-blue .tdash-card-icon,.tdash-card-blue .tdash-card-label{color:#fff}.tdash-card-blue .tdash-card-desc{color:#ffffff8c}.tdash-card-blue .tdash-card-arrow{color:#ffffff59}button.tdash-card.tdash-card-blue:hover .tdash-card-arrow{color:#ffffffb3}.tdash-card-blue .tdash-card-icon{background:#ffffff1a}.tdash-card-peach{background:#f0e6d9}.tdash-card-peach:before{background:linear-gradient(135deg,rgba(200,130,100,.12),rgba(218,185,100,.08) 48%,transparent 100%)}.tdash-card-peach .tdash-card-icon{color:#6b2d3e}.tdash-card-green{background:#f7f2ec;grid-column:1 / -1}.tdash-card-green:before{background:linear-gradient(135deg,rgba(120,160,120,.14),rgba(180,200,170,.06) 50%,transparent 100%)}.tdash-card-green .tdash-card-icon{color:#6b2d3e}.tdash-card-icon{flex-shrink:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:6px;background:#fff9}.tdash-card-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.tdash-card-label{font-size:.875rem;font-weight:600;color:#37352f}.tdash-card-desc{font-size:.8rem;color:#37352f99;line-height:1.45}.tdash-card-arrow{position:absolute;top:20px;right:18px;color:#37352f4d;transition:color .1s,transform .1s}button.tdash-card:hover .tdash-card-arrow{color:#37352f99;transform:translate(2px)}.tdash-card-metric{flex-shrink:0;display:flex;flex-direction:column;align-items:center;gap:0;padding:4px 10px;background:#ffffff80;border-radius:6px}.tdash-card-metric-num{font-size:1.25rem;font-weight:700;color:#37352f;font-variant-numeric:tabular-nums;line-height:1.2}.tdash-card-metric-label{font-size:.65rem;color:#37352f80}.tdash-section h2{font-size:.75rem;font-weight:600;color:#9b9a97;text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px}.tdash-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.tdash-section-header h2{font-size:.75rem;font-weight:600;color:#9b9a97;text-transform:uppercase;letter-spacing:.06em}.tdash-section-add{display:flex;align-items:center;gap:4px;padding:4px 10px;background:transparent;color:#9b9a97;border:1px solid rgba(55,53,47,.16);border-radius:4px;font-size:.75rem;font-weight:500;font-family:var(--font-body);cursor:pointer;transition:background-color .08s ease,border-color .08s ease,color .08s ease,transform .08s ease,box-shadow .08s ease,opacity .08s ease}.tdash-section-add:hover{background:#37352f0a;color:#37352f}.tdash-hint{font-size:.8125rem;color:#c4c4c0;padding:4px 0}.tdash-courses{display:flex;flex-direction:column;gap:4px}.tdash-course{border:1px solid rgba(55,53,47,.09);border-radius:6px;overflow:hidden}.tdash-course[open]{border-color:#37352f1f}.tdash-course-header{display:flex;align-items:center;gap:8px;padding:10px 12px;background:#fafaf8;cursor:pointer;list-style:none;-webkit-user-select:none;user-select:none;transition:background .08s;position:relative;overflow:hidden}.tdash-course-header:before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,rgba(100,140,200,.09),rgba(218,185,100,.05) 50%,transparent 100%)}.tdash-course-header>*{position:relative;z-index:1}.tdash-course-header:hover{background:#37352f0a}.tdash-course-header::-webkit-details-marker{display:none}.tdash-course-chevron{color:#c4c4c0;flex-shrink:0;transition:transform .15s}.tdash-course[open] .tdash-course-chevron{transform:rotate(90deg)}.tdash-course-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.tdash-course-name{font-size:.875rem;font-weight:600;color:#37352f}.tdash-course-desc{font-size:.75rem;color:#9b9a97}.tdash-course-count{font-size:.7rem;color:#9b9a97;flex-shrink:0}.tdash-course-delete{width:22px;height:22px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:4px;color:#c4c4c0;cursor:pointer;flex-shrink:0;opacity:0;transition:background-color .08s ease,border-color .08s ease,color .08s ease,transform .08s ease,box-shadow .08s ease,opacity .08s ease}.tdash-course-header:hover .tdash-course-delete{opacity:1}.tdash-course-delete:hover{color:#6b2d3e;background:#6b2d3e0f}.tdash-course-body{border-top:1px solid rgba(55,53,47,.06)}.tdash-course-body .tdash-exam-list{border-top:none}.tdash-course-body .tdash-exam-row{padding-left:28px}.tdash-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:60px 0;color:#c4c4c0;text-align:center}.tdash-empty svg{opacity:.3}.tdash-empty p{font-size:.875rem;color:#9b9a97}.tdash-exam-list{display:flex;flex-direction:column;border-top:1px solid rgba(55,53,47,.09)}.tdash-exam-row{display:flex;align-items:center;gap:16px;padding:10px 8px;border-bottom:1px solid rgba(55,53,47,.09);transition:background .08s;position:relative;overflow:hidden}.tdash-exam-row:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(135deg,rgba(160,180,210,.07),transparent 55%);opacity:0;transition:opacity .15s ease}.tdash-exam-row:hover{background:#37352f06}.tdash-exam-row:hover:before{opacity:1}.tdash-exam-row>*{position:relative;z-index:1}.tdash-exam-info{flex:1;min-width:0}.tdash-exam-info h3{font-size:.875rem;font-weight:500;color:#37352f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tdash-exam-info p{font-size:.75rem;color:#9b9a97;margin-top:1px}.tdash-exam-code{display:flex;align-items:center;gap:6px}.tdash-code-label{font-size:.65rem;color:#c4c4c0;text-transform:uppercase;letter-spacing:.04em;display:none}.tdash-code-value{font-size:.8rem;font-weight:500;font-family:SFMono-Regular,Menlo,monospace;color:#9b9a97;background:#37352f0a;padding:2px 6px;border-radius:3px;letter-spacing:.04em}.tdash-status{font-size:.7rem;font-weight:500;padding:2px 8px;border-radius:3px}.tdash-status-draft{background:#37352f0f;color:#9b9a97}.tdash-status-active{background:#6b2d3e14;color:#6b2d3e}.tdash-status-closed{background:#d44c4714;color:#d44c47}.tdash-exam-actions{display:flex;gap:4px;flex-shrink:0;opacity:0;transition:opacity .1s}.tdash-exam-row:hover .tdash-exam-actions{opacity:1}.tdash-action-btn{padding:4px 10px;background:transparent;color:#37352f;border:1px solid rgba(55,53,47,.16);border-radius:4px;font-size:.75rem;font-weight:500;font-family:var(--font-body);cursor:pointer;transition:background .08s}.tdash-action-btn:hover{background:#37352f0a}.tdash-modal-overlay{position:fixed;inset:0;z-index:200;background:#0f0f0f99;display:flex;align-items:center;justify-content:center}.tdash-modal{background:#fff;border-radius:8px;padding:24px;width:100%;max-width:420px;box-shadow:0 2px 10px #0f0f0f1a,0 0 0 1px #0f0f0f0d;overscroll-behavior:contain}.tdash-modal h2{font-size:1.125rem;font-weight:600;color:#37352f;margin-bottom:16px;font-family:var(--font-body)}.tdash-field-label{display:block;font-size:.75rem;font-weight:500;color:#9b9a97;margin-bottom:4px}.tdash-field-label:first-of-type{margin-top:0}.tdash-field-input{width:100%;padding:8px 10px;background:#fff;border:1px solid rgba(55,53,47,.16);border-radius:4px;color:#37352f;font-size:.875rem;font-family:var(--font-body);outline:none;transition:box-shadow .15s}.tdash-field-input:focus-visible{outline:2px solid #4f46e5;outline-offset:2px}.tdash-field-input::placeholder{color:#c4c4c0}.tdash-field-input:focus{box-shadow:0 0 0 2px #6b2d3e33;border-color:#6b2d3e}.tdash-modal-actions{display:flex;gap:8px;margin-top:20px;justify-content:flex-end}.tdash-modal-cancel,.tdash-modal-submit{padding:6px 14px;border:none;border-radius:4px;font-size:.8125rem;font-weight:500;font-family:var(--font-body);cursor:pointer;transition:background .1s}.tdash-modal-cancel{background:transparent;color:#37352f;border:1px solid rgba(55,53,47,.16)}.tdash-modal-cancel:hover{background:#37352f0a}.tdash-modal-submit{background:#6b2d3e;color:#fff}.tdash-modal-submit:hover:not(:disabled){background:#552232}.tdash-modal-submit:disabled{opacity:.35;cursor:not-allowed}.tdash-modal-submit--danger{background:#c4302b}.tdash-modal-submit--danger:hover:not(:disabled){background:#a82723}.tdash-confirm-text{font-size:.875rem;color:#6b6b6b;line-height:1.6;margin-bottom:4px}.tdash-confirm-text strong{color:#37352f}.tdash-action-btn--danger{color:#6b2d3e}.tdash-action-btn--danger:hover{background:#6b2d3e0f}.ee{position:fixed;inset:0;display:flex;flex-direction:column;background:#fff;z-index:100}.ee-topbar{display:flex;align-items:center;gap:10px;height:52px;padding:0 16px;border-bottom:1px solid rgba(55,53,47,.09);flex-shrink:0}.ee-topbar-back{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:6px;color:#9b9a97;cursor:pointer;transition:background-color .08s ease,border-color .08s ease,color .08s ease,transform .08s ease,box-shadow .08s ease,opacity .08s ease;flex-shrink:0}.ee-topbar-back:hover{background:#37352f0a;color:#37352f}.ee-topbar-title{flex:1;min-width:0;background:transparent;border:none;outline:none;font-family:var(--font-body);font-size:.9375rem;font-weight:500;color:#37352f}.ee-topbar-title:focus-visible{outline:2px solid #4f46e5;outline-offset:2px}.ee-topbar-title::placeholder{color:#c4c4c0}.ee-topbar-code{font-size:.75rem;font-family:SFMono-Regular,Menlo,monospace;color:#9b9a97;background:#37352f0a;padding:3px 8px;border-radius:4px;letter-spacing:.04em}.ee-topbar-spacer{flex:1}.ee-topbar-save{padding:6px 16px;background:#6b2d3e;color:#fff;border:none;border-radius:6px;font-size:.8125rem;font-weight:500;font-family:var(--font-body);cursor:pointer;transition:background .1s}.ee-topbar-save:hover{background:#552232}.ee-topbar-save:disabled{opacity:.4;cursor:not-allowed}.ee-body{flex:1;display:flex;overflow:hidden}.ee-sidebar{width:230px;flex-shrink:0;border-right:1px solid rgba(55,53,47,.09);display:flex;flex-direction:column;background:#fafaf9}.ee-sidebar-list{flex:1;overflow-y:auto;padding:8px;display:flex;flex-direction:column;gap:2px}.ee-sidebar-item{display:flex;align-items:flex-start;gap:8px;padding:8px 10px;background:transparent;border:2px solid transparent;border-radius:6px;cursor:grab;text-align:left;font-family:var(--font-body);transition:background-color .08s ease,border-color .08s ease,color .08s ease,opacity .08s ease;width:100%;position:relative;overflow:hidden;user-select:none;-webkit-user-select:none;touch-action:none}.ee-sidebar-item:active{cursor:grabbing}.ee-sidebar-item:before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .12s ease}.ee-sidebar-item:hover{background:#37352f0a}.ee-sidebar-item:hover:before{opacity:1;background:linear-gradient(135deg,rgba(120,160,210,.1),transparent 58%)}.ee-sidebar-item--active{background:#fff;border-color:#6b2d3e;box-shadow:0 1px 3px #0000000f}.ee-sidebar-item--active:before{opacity:1;background:linear-gradient(135deg,rgba(107,45,62,.07),rgba(218,185,100,.05) 48%,transparent 100%)}.ee-sidebar-item>*{position:relative;z-index:1}.ee-sidebar-num{font-size:.7rem;font-weight:700;color:#9b9a97;min-width:16px;text-align:center;line-height:1.5}.ee-sidebar-item--active .ee-sidebar-num{color:#6b2d3e}.ee-sidebar-preview{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.ee-sidebar-type{font-size:.6rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#9b9a97}.ee-sidebar-type--mcq{color:#6b2d3e}.ee-sidebar-type--frq{color:#8b6d5c}.ee-sidebar-type--writing{color:#1c2541}.ee-sidebar-type--code{color:#2f5d50}.ee-sidebar-text{font-size:.75rem;color:#6b6b6b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ee-sidebar-del{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:20px;height:20px;margin-top:1px;padding:0;background:transparent;border:none;border-radius:4px;color:#9b9a97;cursor:pointer;opacity:0;transition:opacity .1s ease,background-color .1s ease,color .1s ease}.ee-sidebar-item:hover .ee-sidebar-del,.ee-sidebar-item:focus-within .ee-sidebar-del,.ee-sidebar-del:focus-visible{opacity:1}.ee-sidebar-del:hover{background:#d44c471a;color:#d44c47}.ee-sidebar-del:focus-visible{outline:2px solid #4f46e5;outline-offset:1px}.ee-sidebar-add{padding:8px;border-top:1px solid rgba(55,53,47,.09);display:flex;flex-direction:column;gap:4px}.ee-sidebar-add-btn{display:flex;align-items:center;justify-content:center;gap:6px;padding:8px;background:transparent;border:1px dashed rgba(55,53,47,.16);border-radius:6px;color:#9b9a97;font-size:.75rem;font-weight:500;font-family:var(--font-body);cursor:pointer;transition:background-color .08s ease,border-color .08s ease,color .08s ease,transform .08s ease,box-shadow .08s ease,opacity .08s ease}.ee-sidebar-add-btn:hover{background:#37352f0a;color:#37352f;border-color:#37352f4d}.ee-sidebar-add-btn:disabled{opacity:.5;cursor:not-allowed}.ee-sidebar-add-btn--pdf{border-style:solid;border-color:#6b2d3e33;color:#6b2d3e}.ee-sidebar-add-btn--pdf:hover:not(:disabled){background:#6b2d3e0a;border-color:#6b2d3e59;color:#6b2d3e}.ee-sidebar-divider{height:1px;background:#37352f17;margin:2px 0}.ee-sidebar-error{font-size:.7rem;color:#6b2d3e;padding:0 4px;line-height:1.3}.ee-pdf-overlay{position:fixed;inset:0;z-index:200;background:#0f0f0f80;display:flex;align-items:center;justify-content:center}.ee-pdf-drop{width:420px;background:#fff;border:2px dashed rgba(55,53,47,.2);border-radius:12px;padding:48px 32px;display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;transition:border-color .15s,background .15s;color:#9b9a97}.ee-pdf-drop--over{border-color:#6b2d3e;background:#6b2d3e08}.ee-pdf-drop h3{font-family:var(--font-body);font-size:1rem;font-weight:600;color:#37352f;margin:0}.ee-pdf-drop p{font-size:.8125rem;color:#9b9a97;line-height:1.4;margin:0}.ee-pdf-browse{margin-top:8px;padding:8px 20px;background:#1c2541;color:#fff;border:none;border-radius:4px;font-size:.8125rem;font-weight:500;font-family:var(--font-body);cursor:pointer;transition:background .1s}.ee-pdf-browse:hover{background:#151d33}.ee-pdf-note{margin-top:4px;padding-top:14px;border-top:1px solid rgba(55,53,47,.09);font-size:.75rem;color:#9b9a97;line-height:1.5;align-self:stretch}.ee-pdf-overlay--processing{background:#ffffffd9}.ee-pdf-processing{display:flex;flex-direction:column;align-items:center;gap:16px}.ee-pdf-processing p{font-size:.875rem;color:#6b6b6b}.ee-pdf-spinner{width:32px;height:32px;border:2.5px solid rgba(55,53,47,.1);border-top-color:#6b2d3e;border-radius:50%;animation:ee-spin .7s linear infinite}@keyframes ee-spin{to{transform:rotate(360deg)}}.ee-center{flex:1;overflow-y:auto;display:flex;flex-direction:column;align-items:center;padding:32px 24px;background:#f7f6f3}.ee-center-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:#c4c4c0}.ee-center-empty svg{opacity:.3}.ee-center-empty p{font-size:.875rem;color:#9b9a97}.ee-question{width:100%;display:flex;flex-direction:column;gap:20px}.ee-qtype-row{display:inline-flex;align-self:flex-start;gap:2px;background:#37352f0f;border-radius:6px;padding:2px}.ee-qtype-chip{padding:4px 14px;border:none;border-radius:4px;background:transparent;font-size:.72rem;font-weight:600;font-family:var(--font-body);letter-spacing:.02em;color:#9b9a97;cursor:pointer;transition:background-color .1s ease,color .1s ease,box-shadow .1s ease}.ee-qtype-chip--on{background:#fff;color:#37352f;box-shadow:0 1px 2px #0000000f}.ee-question-text{width:100%;padding:16px 20px;background:#fff;border:1px solid rgba(55,53,47,.09);border-radius:8px;color:#37352f;font-size:1.125rem;font-family:var(--font-body);font-weight:500;line-height:1.5;outline:none;resize:none;text-align:center;transition:border-color .15s,box-shadow .15s}.ee-question-text:focus-visible{outline:2px solid #4f46e5;outline-offset:2px}.ee-question-text::placeholder{color:#c4c4c0}.ee-question-text:focus{border-color:#6b2d3e;box-shadow:0 0 0 3px #6b2d3e14}.ee-question-wrap{position:relative}.ee-latex-preview{background:#fff;border:1px solid rgba(55,53,47,.09);border-radius:8px;padding:14px 20px;font-size:1.125rem;color:#37352f;line-height:1.6;text-align:center;cursor:text}.ee-question-wrap:has(.ee-latex-preview) .ee-question-text{display:none}.ee-question-wrap:focus-within .ee-question-text{display:block}.ee-question-wrap:focus-within .ee-latex-preview{display:none}.ee-media{width:100%;background:#fff;border:1px solid rgba(55,53,47,.09);border-radius:8px;cursor:pointer;overflow:hidden;transition:border-color .1s}.ee-media:hover{border-color:#37352f33}.ee-media-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:40px 20px;color:#c4c4c0}.ee-media-label{font-size:.875rem;font-weight:500;color:#9b9a97}.ee-media-hint{font-size:.75rem;color:#c4c4c0}.ee-media-filled{position:relative;display:flex;align-items:center;justify-content:center;padding:16px}.ee-media-img{max-height:240px;max-width:100%;border-radius:6px;object-fit:contain}.ee-media-remove{position:absolute;top:8px;right:8px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:#ffffffe6;border:1px solid rgba(55,53,47,.12);border-radius:6px;color:#9b9a97;cursor:pointer;transition:background-color .08s ease,border-color .08s ease,color .08s ease,transform .08s ease,box-shadow .08s ease,opacity .08s ease}.ee-media-remove:hover{background:#fff;color:#d44c47;border-color:#d44c474d}.ee-answers-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.ee-answer-cell{display:flex;align-items:center;gap:10px;padding:14px 16px;background:#fff;border:2px solid rgba(55,53,47,.09);border-radius:8px;cursor:pointer;transition:background-color .1s ease,border-color .1s ease,color .1s ease,transform .1s ease,box-shadow .1s ease,opacity .1s ease;position:relative}.ee-answer-cell:hover{border-color:#37352f33}.ee-answer-cell--correct{border-color:#6b2d3e;background:#6b2d3e08}.ee-answer-marker{width:28px;height:28px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:.75rem;font-weight:700;font-family:var(--font-body);transition:background-color .1s ease,border-color .1s ease,color .1s ease,transform .1s ease,box-shadow .1s ease,opacity .1s ease}.ee-answer-cell--0 .ee-answer-marker{background:#6b2d3e14;color:#6b2d3e}.ee-answer-cell--1 .ee-answer-marker{background:#8b6d5c1a;color:#8b6d5c}.ee-answer-cell--2 .ee-answer-marker{background:#377d3714;color:#377d37}.ee-answer-cell--3 .ee-answer-marker{background:#37352f0f;color:#6b6b6b}.ee-answer-cell--correct .ee-answer-marker{background:#6b2d3e;color:#fff}.ee-answer-content{flex:1;min-width:0;position:relative}.ee-answer-rendered{font-size:.9375rem;color:#37352f;line-height:1.5}.ee-answer-ph{color:#c4c4c0}.ee-answer-input{position:absolute;inset:0;width:100%;height:100%;background:#fff;border:none;outline:none;font-size:.9375rem;font-family:var(--font-body);color:#37352f;padding:0;opacity:0}.ee-answer-input:focus-visible{outline:2px solid #4f46e5;outline-offset:2px}.ee-answer-input:focus{opacity:1}.ee-answer-input::placeholder{color:#c4c4c0}.ee-answer-check{flex-shrink:0;color:#6b2d3e}.ee-frq-area{background:#fff;border:1px solid rgba(55,53,47,.09);border-radius:8px;padding:20px;display:flex;flex-direction:column;gap:8px}.ee-frq-label{font-size:.75rem;font-weight:500;color:#9b9a97;text-transform:uppercase;letter-spacing:.04em}.ee-frq-input{display:block;width:100%;min-height:8rem;box-sizing:border-box;padding:12px;background:#37352f05;border:1px solid rgba(55,53,47,.09);border-left:3px solid #8b6d5c;border-radius:4px;color:#37352f;font-size:.9375rem;font-family:var(--font-body);line-height:1.6;outline:none;resize:vertical;transition:border-color .15s}.ee-frq-input:focus-visible{outline:2px solid #4f46e5;outline-offset:2px}.ee-frq-input:focus{border-color:#8b6d5c}.ee-frq-input::placeholder{color:#c4c4c0}.ee-frq-hint{font-size:.72rem;color:#9b9a97;line-height:1.4}.ee-props{width:250px;flex-shrink:0;border-left:1px solid rgba(55,53,47,.09);background:#fafaf9;padding:20px 16px;overflow-y:auto;display:flex;flex-direction:column;gap:12px}.ee-props-heading{font-size:.75rem;font-weight:600;color:#9b9a97;text-transform:uppercase;letter-spacing:.06em;margin:0}.ee-props-label{font-size:.75rem;font-weight:500;color:#6b6b6b;margin-top:4px}.ee-props-toggle{display:flex;gap:2px;background:#37352f0f;border-radius:6px;padding:2px}.ee-props-toggle-btn{flex:1;padding:5px 0;border:none;border-radius:4px;background:transparent;font-size:.75rem;font-weight:500;font-family:var(--font-body);color:#9b9a97;cursor:pointer;transition:background-color .1s ease,border-color .1s ease,color .1s ease,transform .1s ease,box-shadow .1s ease,opacity .1s ease}.ee-props-toggle-btn--on{background:#fff;color:#37352f;box-shadow:0 1px 2px #0000000f}.ee-props-answers{display:grid;grid-template-columns:1fr 1fr;gap:4px}.ee-props-answer-btn{padding:6px 0;border:1.5px solid rgba(55,53,47,.12);border-radius:6px;background:#fff;font-size:.75rem;font-weight:600;font-family:var(--font-body);color:#9b9a97;cursor:pointer;transition:background-color .08s ease,border-color .08s ease,color .08s ease,transform .08s ease,box-shadow .08s ease,opacity .08s ease}.ee-props-answer-btn:hover{border-color:#37352f40;color:#37352f}.ee-props-answer-btn--on{border-color:#6b2d3e;background:#6b2d3e;color:#fff}.ee-props-divider{height:1px;background:#37352f17;margin:4px 0}.ee-props-action{display:flex;align-items:center;gap:8px;width:100%;padding:7px 10px;background:transparent;border:none;border-radius:6px;font-size:.8125rem;font-weight:500;font-family:var(--font-body);color:#6b6b6b;cursor:pointer;transition:background-color .08s ease,border-color .08s ease,color .08s ease,transform .08s ease,box-shadow .08s ease,opacity .08s ease}.ee-props-action:hover{background:#37352f0a;color:#37352f}.ee-props-action--danger:hover{background:#d44c470f;color:#d44c47}.ee-props-calc-toggle{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;border:1.5px solid rgba(55,53,47,.12);border-radius:6px;background:#fff;font-size:.8125rem;font-weight:500;font-family:var(--font-body);color:#9b9a97;cursor:pointer;transition:background-color .1s ease,border-color .1s ease,color .1s ease,transform .1s ease,box-shadow .1s ease,opacity .1s ease}.ee-props-calc-toggle:hover{border-color:#37352f40;color:#6b6b6b}.ee-props-timer-row{display:flex;align-items:center;gap:6px}.ee-props-timer-input{width:60px;padding:5px 8px;border:1px solid rgba(55,53,47,.16);border-radius:4px;font-size:.8125rem;font-family:var(--font-body);color:#37352f;text-align:center;outline:none}.ee-props-timer-input:focus-visible{outline:2px solid #4f46e5;outline-offset:2px}.ee-props-timer-input:focus{border-color:#6b2d3e}.ee-props-timer-input::placeholder{color:#c4c4c0}.ee-props-timer-unit{font-size:.75rem;color:#9b9a97}.ee-props-timer-clear{width:20px;height:20px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:4px;color:#c4c4c0;cursor:pointer}.ee-props-timer-clear:hover{color:#6b2d3e}.ee-props-calc-toggle--on{border-color:#6b2d3e;background:#6b2d3e0a;color:#6b2d3e}.ee-props-resources{display:flex;flex-direction:column;gap:6px}.ee-props-resources-empty{margin:0;font-size:.72rem;color:#9b9a97;line-height:1.4}.ee-props-resource-row{display:flex;align-items:center;gap:8px;padding:6px 8px;background:#fafaf8;border:1px solid rgba(55,53,47,.08);border-radius:6px}.ee-props-resource-meta{flex:1;display:flex;flex-direction:column;min-width:0}.ee-props-resource-label{font-size:.78rem;font-weight:500;color:#37352f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ee-props-resource-url{font-size:.66rem;color:#9b9a97;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ee-props-resource-warning{display:block;margin-top:3px;font-size:.68rem;line-height:1.4;color:#b54708}.ee-props-resource-remove{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;background:transparent;border:none;border-radius:4px;color:#9b9a97;cursor:pointer;flex-shrink:0}.ee-props-resource-remove:hover{background:#dc262614;color:#b91c1c}.ee-props-resource-form{display:flex;flex-direction:column;gap:4px;margin-top:4px}.ee-props-resource-input{width:100%;padding:6px 8px;font-family:inherit;font-size:.78rem;color:#37352f;background:#fff;border:1px solid rgba(55,53,47,.16);border-radius:4px;outline:none;transition:border-color .12s ease}.ee-props-resource-input:focus-visible{outline:2px solid #4f46e5;outline-offset:2px}.ee-props-resource-input:focus{border-color:#6b2d3e}.ee-props-resource-add{padding:6px 10px;background:#fff;border:1px dashed rgba(55,53,47,.25);border-radius:4px;color:#6b2d3e;font-size:.78rem;font-weight:500;cursor:pointer;transition:background .12s ease,border-color .12s ease}.ee-props-resource-add:hover{background:#6b2d3e0a;border-color:#6b2d3e}.ee-props-resource-error{margin:0;font-size:.72rem;color:#b91c1c}@media(max-width:900px){.ee-sidebar{width:160px}.ee-props{width:180px}}@media(max-width:700px){.ee-body{flex-direction:column}.ee-sidebar{width:100%;flex-direction:row;border-right:none;border-bottom:1px solid rgba(55,53,47,.09);max-height:none}.ee-sidebar-list{flex-direction:row;overflow-x:auto;overflow-y:hidden;padding:6px;gap:4px}.ee-sidebar-item{min-width:100px}.ee-sidebar-add{flex-direction:row;border-top:none;border-left:1px solid rgba(55,53,47,.09);padding:6px}.ee-props{display:none}}.tdash-editor-header{display:flex;align-items:center;gap:12px;margin-bottom:28px}.tdash-back-btn{display:flex;align-items:center;gap:4px;padding:4px 10px;background:transparent;color:#9b9a97;border:none;border-radius:4px;font-size:.8125rem;font-weight:500;font-family:var(--font-body);cursor:pointer;transition:background .08s,color .08s;flex-shrink:0}.tdash-back-btn:hover{background:#37352f0a;color:#37352f}.tdash-editor-title-area{flex:1;min-width:0}.tdash-editor-title{display:block;width:100%;background:transparent;border:none;outline:none;font-family:var(--font-display-app);font-size:2rem;font-weight:500;color:#37352f;letter-spacing:-.02em}.tdash-editor-title:focus-visible{outline:2px solid #4f46e5;outline-offset:2px}.tdash-editor-code{font-size:.75rem;font-family:SFMono-Regular,Menlo,monospace;color:#9b9a97}.tdash-save-btn{padding:6px 14px;background:#6b2d3e;color:#fff;border:none;border-radius:4px;font-size:.8125rem;font-weight:500;font-family:var(--font-body);cursor:pointer;transition:background .1s;flex-shrink:0}.tdash-save-btn:hover{background:#552232}.tdash-question-card{position:relative;overflow:hidden;padding:16px 14px;border:1px solid rgba(55,53,47,.09);border-radius:8px;background:#fafafa;display:flex;flex-direction:column;gap:10px}.tdash-question-card:before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,rgba(107,45,62,.06),rgba(200,180,160,.04) 45%,transparent 100%)}.tdash-question-card>*{position:relative;z-index:1}.tdash-question-header{display:flex;align-items:center;gap:8px}.tdash-question-num{font-size:.75rem;font-weight:600;color:#9b9a97}.tdash-qtype-badge{font-size:.65rem;font-weight:500;padding:1px 6px;border-radius:3px}.tdash-qtype-mcq{background:#6b2d3e0f;color:#6b2d3e}.tdash-qtype-frq{background:#6b2d3e0f;color:#8b6d5c}.tdash-qtype-writing{background:#1c25410f;color:#1c2541}.tdash-qtype-code{background:#2f5d5014;color:#2f5d50}.tdash-questions{display:flex;flex-direction:column;gap:10px}.tdash-option-input{flex:1;padding:5px 8px;background:transparent;border:1px solid transparent;border-radius:4px;color:#37352f;font-size:.875rem;font-family:var(--font-body);outline:none;transition:border-color .15s,background .15s}.tdash-option-input:focus-visible{outline:2px solid #4f46e5;outline-offset:2px}.tdash-option-input::placeholder{color:#c4c4c0}.tdash-option-input:hover{background:#37352f06}.tdash-option-input:focus{background:#fff;border-color:#37352f29}.tdash-grade-qtext{font-size:.9375rem;color:#37352f;line-height:1.5}.tdash-grade-answer{display:flex;align-items:center;gap:16px;font-size:.875rem;color:#6b6b6b}.tdash-grade-correct{color:#377d37;font-weight:600}.tdash-grade-wrong{color:#d44c47;font-weight:600}.tdash-grade-frq{display:flex;flex-direction:column;gap:10px}.tdash-grade-student-answer,.tdash-grade-model{padding:12px;border-radius:4px;font-size:.875rem}.tdash-grade-student-answer{background:#37352f06}.tdash-grade-model{background:#6b2d3e08;border-left:3px solid #6b2d3e}.tdash-grade-student-answer strong,.tdash-grade-model strong{display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;color:#9b9a97;margin-bottom:4px}.tdash-grade-student-answer p,.tdash-grade-model p{color:#37352f;line-height:1.5;white-space:pre-wrap;overflow-wrap:break-word}.tdash-grade-qimage{display:block;max-width:100%;max-height:300px;border-radius:6px;object-fit:contain;border:1px solid rgba(55,53,47,.09)}.tdash-grade-input{display:flex;align-items:center;gap:8px}.tdash-grade-input label{font-size:.8125rem;color:#6b6b6b;white-space:nowrap}.tdash-grade-input input[type=number]{width:50px;padding:4px 8px;background:#fff;border:1px solid rgba(55,53,47,.16);border-radius:4px;color:#37352f;font-size:.875rem;text-align:center;outline:none}.tdash-grade-input input[type=number]:focus-visible{outline:2px solid #4f46e5;outline-offset:2px}.tdash-grade-input input[type=number]:focus{box-shadow:0 0 0 2px #6b2d3e33;border-color:#6b2d3e}@media(max-width:768px){.tdash-container{padding:24px 20px 60px}.tdash-header{flex-direction:column;gap:12px;align-items:flex-start}.tdash-greeting{font-size:1.75rem}.tdash-stats{flex-direction:column}.tdash-exam-row{flex-wrap:wrap;gap:8px}.tdash-cards{grid-template-columns:1fr}.tdash-card-green{grid-column:unset}.tdash-exam-actions{opacity:1;width:100%}.tdash-action-btn{flex:1;text-align:center}}.an-stats{display:flex;gap:10px;margin-bottom:28px;flex-wrap:wrap}.an-stat{flex:1;min-width:100px;padding:16px;background:#fafaf8;border:1px solid rgba(55,53,47,.09);border-radius:8px;display:flex;flex-direction:column;align-items:center;gap:2px;position:relative;overflow:hidden}.an-stat:before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,rgba(100,140,180,.08),rgba(180,200,220,.04) 50%,transparent 100%)}.an-stat:nth-child(2):before{background:linear-gradient(135deg,rgba(160,140,200,.09),rgba(200,180,220,.04) 50%,transparent 100%)}.an-stat:nth-child(3):before{background:linear-gradient(135deg,rgba(130,170,150,.1),rgba(190,210,195,.05) 50%,transparent 100%)}.an-stat:nth-child(n+4):before{background:linear-gradient(135deg,rgba(200,160,120,.08),rgba(230,200,170,.04) 50%,transparent 100%)}.an-stat>*{position:relative;z-index:1}.an-stat--alert{border-color:#6b2d3e26;background:#6b2d3e08}.an-stat--alert:before{background:linear-gradient(135deg,rgba(107,45,62,.1),rgba(200,140,150,.06) 45%,transparent 100%)}.an-stat-value{font-family:var(--font-display-app);font-size:1.6rem;font-weight:400;color:#37352f}.an-stat--alert .an-stat-value{color:#6b2d3e}.an-stat-label{font-size:.7rem;font-weight:500;color:#9b9a97;text-transform:uppercase;letter-spacing:.04em}.an-section{margin-bottom:28px}.an-section-title{font-size:.75rem;font-weight:600;color:#9b9a97;text-transform:uppercase;letter-spacing:.06em;margin-bottom:12px}.an-chart{display:flex;align-items:flex-end;gap:8px;height:140px;padding:0 4px}.an-bar-col{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;height:100%}.an-bar-count{font-size:.7rem;font-weight:600;color:#6b6b6b;font-variant-numeric:tabular-nums}.an-bar-track{flex:1;width:100%;display:flex;align-items:flex-end;border-radius:4px;background:#37352f0a;overflow:hidden}.an-bar-fill{width:100%;background:#1c2541;border-radius:4px;min-height:2px;transition:height .3s ease}.an-bar-label{font-size:.6rem;color:#9b9a97;white-space:nowrap}.an-questions{display:flex;flex-direction:column;gap:6px}.an-q-row{display:flex;align-items:center;gap:10px}.an-q-label{font-size:.75rem;font-weight:600;color:#9b9a97;min-width:32px}.an-q-track{flex:1;height:8px;background:#37352f0a;border-radius:4px;overflow:hidden}.an-q-fill{height:100%;border-radius:4px;transition:width .3s ease}.an-q-fill--good{background:#1c2541}.an-q-fill--mid{background:#8b6d5c}.an-q-fill--low{background:#6b2d3e}.an-q-pct{font-size:.75rem;font-weight:600;color:#6b6b6b;min-width:36px;text-align:right;font-variant-numeric:tabular-nums}.an-row-bar{width:60px;height:6px;background:#37352f0f;border-radius:3px;overflow:hidden;flex-shrink:0}.an-row-bar-fill{height:100%;background:#1c2541;border-radius:3px;transition:width .3s ease}.tdash-course-analytics{width:26px;height:26px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid rgba(55,53,47,.12);border-radius:4px;color:#9b9a97;cursor:pointer;flex-shrink:0;transition:background-color .08s ease,border-color .08s ease,color .08s ease,transform .08s ease,box-shadow .08s ease,opacity .08s ease}.tdash-course-analytics:hover{background:#1c25410f;color:#1c2541;border-color:#1c254133}.ca-trend-chart{width:100%;max-width:660px;height:auto;display:block}.ca-student-table{width:100%;overflow-x:auto;border:1px solid rgba(55,53,47,.09);border-radius:6px}.ca-table-header,.ca-table-row{display:flex;align-items:center;min-width:max-content}.ca-table-header{background:#fafaf8;border-bottom:1px solid rgba(55,53,47,.09);font-size:.65rem;font-weight:600;color:#9b9a97;text-transform:uppercase;letter-spacing:.04em}.ca-table-row{border-bottom:1px solid rgba(55,53,47,.05);font-size:.8rem;transition:background .06s}.ca-table-row:last-child{border-bottom:none}.ca-table-row:hover{background:#37352f05}.ca-col-name{min-width:140px;max-width:140px;padding:8px 12px;font-weight:500;color:#37352f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-transform:capitalize}.ca-table-header .ca-col-name{color:#9b9a97;font-weight:600;text-transform:uppercase}.ca-col-exam{min-width:70px;max-width:70px;padding:8px 6px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ca-col-avg{min-width:56px;padding:8px 6px;text-align:center;font-weight:600}.ca-col-trend{min-width:50px;padding:8px 6px;text-align:center;font-size:.75rem;font-weight:600}.ca-score{font-variant-numeric:tabular-nums}.ca-score--good{color:#1c2541}.ca-score--mid{color:#8b6d5c}.ca-score--low{color:#6b2d3e}.ca-score--na{color:#c4c4c0}.ca-score--avg{color:#37352f}.ca-trend--up{color:#1c2541}.ca-trend--up:before{content:"↑ "}.ca-trend--down{color:#6b2d3e}.ca-trend--down:before{content:"↓ "}@media(max-width:768px){.an-stats{gap:6px}.an-stat{min-width:80px;padding:12px 8px}.an-stat-value{font-size:1.25rem}.an-chart{height:100px}.ca-col-name{min-width:100px;max-width:100px}.ca-col-exam{min-width:55px;max-width:55px}}.proctor-live-dot{display:flex;align-items:center;gap:6px;font-size:.7rem;font-weight:700;color:#d44c47;text-transform:uppercase;letter-spacing:.06em;flex-shrink:0}.proctor-pulse{width:8px;height:8px;border-radius:50%;background:#d44c47;animation:proctor-pulse-anim 1.5s ease-in-out infinite}@keyframes proctor-pulse-anim{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.3)}}.proctor-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px}.proctor-card{padding:14px;background:#fafaf8;border:1px solid rgba(55,53,47,.09);border-radius:8px;display:flex;flex-direction:column;gap:10px;position:relative;overflow:hidden;transition:border-color .15s,box-shadow .15s}.proctor-card:before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,rgba(100,160,120,.08),transparent 60%)}.proctor-card>*{position:relative;z-index:1}.proctor-card--flagged{border-color:#d44c4733;background:#d44c4705}.proctor-card--flagged:before{background:linear-gradient(135deg,rgba(212,76,71,.08),transparent 60%)}.proctor-card--stale{opacity:.55}.proctor-card--stale:before{background:linear-gradient(135deg,rgba(155,154,151,.08),transparent 60%)}.proctor-card-header{display:flex;align-items:center;gap:8px}.proctor-card-status{width:7px;height:7px;border-radius:50%;background:#377d37;flex-shrink:0}.proctor-card-status--stale{background:#c4c4c0}.proctor-card-name{font-size:.8125rem;font-weight:600;color:#37352f;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.proctor-card-flag{color:#d44c47;flex-shrink:0;display:flex;align-items:center}.proctor-card-violation{display:flex;align-items:center;gap:6px;padding:5px 8px;background:#d44c4714;border:1px solid rgba(212,76,71,.2);border-radius:6px;color:#d44c47;font-size:.7rem;font-weight:600}.proctor-card-violation svg{flex-shrink:0}.proctor-card-violation-text{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.proctor-card-violation-time{flex-shrink:0;font-weight:500;color:#d44c47bf;font-variant-numeric:tabular-nums}.proctor-card-body{display:flex;align-items:center;gap:10px}.proctor-card-question{font-size:1.1rem;font-weight:700;color:#1c2541;font-variant-numeric:tabular-nums;flex-shrink:0}.proctor-card-of{font-size:.75rem;font-weight:500;color:#9b9a97}.proctor-card-progress{flex:1;display:flex;flex-direction:column;gap:3px;min-width:0}.proctor-card-bar{height:5px;background:#37352f0f;border-radius:3px;overflow:hidden}.proctor-card-bar-fill{height:100%;background:#1c2541;border-radius:3px;transition:width .4s ease}.proctor-card--flagged .proctor-card-bar-fill{background:#d44c47}.proctor-card-pct{font-size:.65rem;color:#9b9a97;font-variant-numeric:tabular-nums}.proctor-card-footer{display:flex;align-items:center;justify-content:space-between;gap:8px}.proctor-card-time{font-size:.7rem;color:#9b9a97}.proctor-card-flags{display:flex;gap:6px;font-size:.65rem;font-weight:600;color:#d44c47}.proctor-inline-flag{display:inline-flex;align-items:center;margin-left:6px;color:#d44c47;vertical-align:middle}.tdash-action-btn--proctor{color:#1c2541;border-color:#1c254133}.tdash-action-btn--proctor:hover{background:#1c25410f}@media(max-width:768px){.proctor-grid{grid-template-columns:1fr}}.tdash-field-hint{font-size:.75rem;color:#5a5955;line-height:1.45;margin:6px 0 0}.ee-props-hint{font-size:.7rem;color:#5a5955;line-height:1.45;margin:6px 0 0}.tdash-faq-intro{font-size:.8125rem;color:#5a5955;line-height:1.5;margin:-2px 0 10px}.tdash-faq-list{display:flex;flex-direction:column;gap:4px}.tdash-faq-q{align-items:flex-start}.tdash-faq-item .tdash-faq-q:before{display:none}.tdash-faq-q .tdash-course-chevron{margin-top:3px}.tdash-faq-q .tdash-course-name{flex:1;font-weight:500;line-height:1.45;white-space:normal}.tdash-faq-a{padding:10px 16px 14px 28px;font-size:.8125rem;line-height:1.65;color:#4b4a45}.tdash-faq-a strong{color:#37352f;font-weight:600}.tdash-faq-a em{font-style:italic;color:#37352f}@media(prefers-reduced-motion:reduce){.tdash-course-chevron,.tdash-course-header{transition:none}}.ee-topbar-status{font-size:.72rem;color:#9b9a97;white-space:nowrap;margin-right:10px}.ee-topbar-status--error{color:#d44c47}.ee-topbar-status--invalid{color:#8a6d00;font-weight:600}.ee-media-error{font-size:.78rem;color:#d44c47;line-height:1.4;margin-top:-8px}.ee-answers-hint{grid-column:1 / -1;font-size:.76rem;color:#37352f8c;margin:2px 0 0}.ee-submissions-warning{font-size:.82rem;color:#8a6d00;background:#fdf6e3;border-bottom:1px solid rgba(138,109,0,.18);padding:8px 16px;line-height:1.45;flex-shrink:0}.ee-props-acc{display:flex;flex-direction:column;gap:6px}.ee-acc-row{display:flex;align-items:center;gap:6px;padding:5px 8px;background:#fff;border:1px solid rgba(55,53,47,.12);border-radius:6px}.ee-acc-email{flex:1;min-width:0;font-size:.75rem;color:#37352f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ee-acc-select{flex-shrink:0;padding:3px 4px;border:1px solid rgba(55,53,47,.16);border-radius:4px;background:#fff;font-size:.75rem;font-family:var(--font-body);color:#37352f;cursor:pointer}.ee-acc-form{display:flex;flex-direction:column;gap:6px;margin-top:2px}.ee-acc-form-row{display:flex;align-items:center;gap:6px}.ee-acc-form-row .ee-props-resource-add{flex:1}.tdash-grade-error{margin:12px 0 0;padding:10px 14px;background:#d44c470f;border:1px solid rgba(212,76,71,.25);border-radius:6px;color:#b3382f;font-size:.82rem;line-height:1.5}.an-load-note{margin:10px 0 0;padding:8px 12px;background:#dab9641a;border:1px solid rgba(218,185,100,.4);border-radius:6px;color:#6b5a1e;font-size:.78rem;line-height:1.45}.tdash-exam-row[draggable=true]{cursor:grab}.tdash-exam-row[draggable=true]:active{cursor:grabbing}.tdash-exam-row--dragging{opacity:.45}.tdash-drop-target{outline:2px dashed #1c2541;outline-offset:-2px;background:#1c25410d!important;border-radius:8px}.tdash-term-group{border:none;margin-bottom:4px}.tdash-term-header{display:flex;align-items:center;gap:8px;padding:7px 10px;border-radius:6px;cursor:pointer;list-style:none;-webkit-user-select:none;user-select:none}.tdash-term-header::-webkit-details-marker{display:none}.tdash-term-header:hover{background:#37352f0a}.tdash-term-group[open]>.tdash-term-header .tdash-course-chevron{transform:rotate(90deg)}.tdash-term-name{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#6b6b6b}.tdash-term-count{font-size:.72rem;color:#9b9a97}.tdash-term-body{display:flex;flex-direction:column;gap:8px;padding:4px 0 8px 14px;border-left:1px solid rgba(55,53,47,.09);margin-left:14px}.tdash-grade-wordcount{margin-left:10px;font-size:.72rem;color:#9b9a97;font-weight:400}.tdash-grade-slash{font-size:1rem;color:#9b9a97;align-self:center}.tdash-app-notice{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:#fff}.tdash-app-notice-card{max-width:440px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:14px}.tdash-app-notice-icon{color:#9b9a97}.tdash-app-notice-card h1{font-size:1.4rem;font-weight:700;color:#37352f;margin:0}.tdash-app-notice-card p{font-size:.92rem;line-height:1.55;color:#6b6b6b;margin:0}.tdash-app-notice-btn{margin-top:6px;padding:8px 18px;border:1px solid rgba(55,53,47,.16);border-radius:6px;background:#fff;font-size:.85rem;font-weight:600;color:#37352f;cursor:pointer}.tdash-app-notice-btn:hover{background:#37352f0a}.ee-props-points-input,.ee-props-section-input{width:100%;padding:6px 8px;font-family:inherit;font-size:.78rem;color:#37352f;background:#fff;border:1px solid rgba(55,53,47,.16);border-radius:4px}.ee-props-points-input{width:90px}.ee-props-points-input:focus-visible,.ee-props-section-input:focus-visible{outline:2px solid #4f46e5;outline-offset:2px}.ee-props-weights{display:flex;flex-direction:column;gap:6px}.ee-props-weight-row{display:flex;align-items:center;gap:6px}.ee-props-weight-label{flex:1 1 auto;min-width:0;font-size:.78rem;color:#37352f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ee-props-weight-row input{width:64px;padding:5px 7px;font-family:inherit;font-size:.78rem;color:#37352f;background:#fff;border:1px solid rgba(55,53,47,.16);border-radius:4px}.ee-props-weight-pct{font-size:.75rem;color:#9b9a97}.tdash-grade-fixed-max{font-size:.85rem;font-weight:600;color:#6b6a67;padding:4px 6px}.ee-code-area{display:flex;flex-direction:column;gap:10px;margin-top:8px}.ee-code-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ee-code-field{display:flex;flex-direction:column;gap:6px}.ee-code-select{height:36px;padding:0 10px;border:1px solid rgba(55,53,47,.16);border-radius:4px;background:#fff;font-family:var(--font-body);font-size:.875rem;color:#37352f}.ee-code-toggles{border:0;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px 18px}.ee-code-toggles legend{padding:0;margin-bottom:6px}.ee-code-toggle{display:inline-flex;align-items:center;gap:8px;font-size:.875rem;color:#37352f}.ee-code-cases{display:flex;flex-direction:column;gap:8px}.ee-code-case{display:grid;grid-template-columns:24px 1fr 1fr 28px;gap:8px;align-items:start}.ee-code-case-num{font-size:.75rem;color:#9b9a97;padding-top:8px;text-align:right}.ee-code-case-input{width:100%;box-sizing:border-box;padding:8px 10px;border:1px solid rgba(55,53,47,.16);border-radius:4px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8125rem;color:#37352f;resize:vertical}.ee-code-case-del,.ee-code-add-case{border:1px solid rgba(55,53,47,.16);background:#fff;border-radius:4px;color:#37352f;font-family:var(--font-body);cursor:pointer}.ee-code-case-del{height:32px;width:28px;font-size:1rem;line-height:1}.ee-code-add-case{align-self:flex-start;height:32px;padding:0 12px;font-size:.8125rem;font-weight:500}.ee-code-add-case:disabled{opacity:.5;cursor:default}.tdash-grade-code{margin-top:8px}.tdash-grade-cases{margin:8px 0 0;padding-left:18px;font-size:.875rem;color:#37352f}.tdash-grade-cases code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8125rem;background:#37352f0f;padding:1px 5px;border-radius:3px;white-space:pre-wrap}.adash{min-height:100vh;background:#fbfbfa;padding:88px 24px 64px;font-family:var(--font-body);color:#37352f}.adash-container{max-width:1080px;margin:0 auto}.adash-header{display:flex;align-items:baseline;gap:12px;margin-bottom:6px}.adash-header h1{font-size:1.5rem;font-weight:700;margin:0}.adash-school{font-size:.9rem;color:#9b9a97}.adash-sub{margin:0 0 24px;font-size:.85rem;color:#9b9a97}.adash-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:28px}.adash-stat{background:#fff;border:1px solid rgba(55,53,47,.09);border-radius:8px;padding:14px 16px}.adash-stat-value{font-size:1.45rem;font-weight:700;font-variant-numeric:tabular-nums}.adash-stat-label{font-size:.75rem;color:#9b9a97;margin-top:2px}.adash-warning{background:#fffaeb;border:1px solid #f5d789;border-radius:8px;padding:10px 14px;font-size:.82rem;color:#7a5b13;margin-bottom:24px}.adash-tabs{display:flex;gap:6px;margin-bottom:16px}.adash-tab{padding:6px 14px;font-size:.85rem;font-weight:500;font-family:inherit;color:#6b6a67;background:transparent;border:1px solid rgba(55,53,47,.12);border-radius:6px;cursor:pointer}.adash-tab--on{background:#37352f;border-color:#37352f;color:#fff}.adash-table-wrap{background:#fff;border:1px solid rgba(55,53,47,.09);border-radius:8px;overflow-x:auto}.adash-table{width:100%;border-collapse:collapse;font-size:.84rem}.adash-table th{text-align:left;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#9b9a97;padding:10px 14px;border-bottom:1px solid rgba(55,53,47,.09);white-space:nowrap}.adash-table td{padding:9px 14px;border-bottom:1px solid rgba(55,53,47,.05);font-variant-numeric:tabular-nums}.adash-table tr:last-child td{border-bottom:none}.adash-table tr.adash-row-click{cursor:pointer}.adash-table tr.adash-row-click:hover{background:#f7f6f4}.adash-name-cell{font-weight:500}.adash-muted{color:#9b9a97}.adash-pct-good{color:#1f7a3f;font-weight:600}.adash-pct-mid{color:#b7791f;font-weight:600}.adash-pct-low{color:#c0392b;font-weight:600}.adash-empty{padding:36px;text-align:center;color:#9b9a97;font-size:.85rem}.adash-back{display:inline-flex;align-items:center;gap:6px;margin-bottom:14px;padding:6px 12px;font-size:.83rem;font-family:inherit;color:#6b6a67;background:#fff;border:1px solid rgba(55,53,47,.12);border-radius:6px;cursor:pointer}.adash-back:hover{background:#f7f6f4}.adash-detail-h{font-size:1.1rem;font-weight:600;margin:0 0 2px}.adash-detail-sub{font-size:.8rem;color:#9b9a97;margin:0 0 16px}.adash-section-h{font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#9b9a97;margin:22px 0 8px}.adash-loading,.adash-error{padding:80px 20px;text-align:center;color:#9b9a97}.adash-error{color:#c0392b}.adash-pill{display:inline-block;padding:2px 8px;border-radius:999px;font-size:.72rem;font-weight:600}.adash-pill--active{background:#e7f5ec;color:#1f7a3f}.adash-pill--draft{background:#37352f0f;color:#6b6a67}.adash-pill--closed{background:#fdeeee;color:#c0392b}.adash-pill--pending{background:#fffaeb;color:#b7791f}.dl-page{min-height:100vh;display:flex;justify-content:center;padding:calc(var(--nav-height) + 72px) var(--content-gutter) 96px;background:var(--paper);color:var(--ink)}.dl-container{max-width:640px;width:100%;display:flex;flex-direction:column;align-items:center;gap:48px}.dl-hero{text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px}.dl-icon{width:104px;height:104px;border-radius:24px;object-fit:cover;border:1px solid var(--line);box-shadow:0 1px 2px #33312c0d,0 24px 48px -24px #33312c66;margin-bottom:12px}.dl-hero h1{font-family:var(--font-display);font-size:clamp(2rem,4vw,2.75rem);font-weight:700;color:var(--ink);letter-spacing:-.025em;line-height:1.08}.dl-subtitle{font-size:1.0625rem;color:var(--ink-2);line-height:1.55;max-width:460px;text-align:center;margin-bottom:6px}.dl-btn{display:inline-flex;align-items:center;gap:16px;min-width:min(420px,100%);padding:14px 22px 14px 20px;margin:8px 0 4px;background:var(--accent);color:#fff;border:0;border-radius:18px;box-shadow:0 5px 0 var(--accent-deep),0 18px 36px -16px #2b6ff599;font-family:var(--font-display);text-align:left;text-decoration:none;cursor:pointer;transition:background-color .15s ease,transform .08s ease,box-shadow .08s ease}.dl-btn:hover{background:var(--accent-hover)}.dl-btn:active{transform:translateY(4px);box-shadow:0 1px 0 var(--accent-deep),0 10px 24px -14px #2b6ff599}.dl-btn-apple{flex:none;width:30px;height:30px}.dl-btn-text{display:flex;flex-direction:column;gap:3px;flex:1}.dl-btn-label{font-size:1.25rem;font-weight:800;letter-spacing:-.02em;line-height:1.1}.dl-btn-sub{font-family:var(--font-body);font-size:.8125rem;font-weight:500;color:#ffffffd1}.dl-btn-arrow{flex:none;padding:8px;width:36px;height:36px;border-radius:50%;background:#ffffff2e}.dl-meta{font-size:.8125rem;color:var(--ink-3)}.dl-students-note{margin-top:14px!important;font-size:.9375rem;color:var(--ink-2);line-height:1.55;max-width:460px;text-align:center;margin-bottom:10px;padding:12px 16px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.dl-students-note strong{color:var(--accent)}.dl-spec{width:100%}.dl-spec-label{display:block;font-size:.875rem;font-weight:500;color:var(--ink-3);margin-bottom:14px}.dl-features{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden}.dl-feature{padding:20px 22px;background:#fff}.dl-feature h3{font-size:1rem;font-weight:600;letter-spacing:-.01em;color:var(--ink);margin-bottom:6px}.dl-feature p{font-size:.9375rem;color:var(--ink-2);line-height:1.5}.dl-steps{display:flex;flex-direction:column;gap:0;padding:0;margin:0;background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;counter-reset:dl-step}.dl-steps li{list-style:none;counter-increment:dl-step;position:relative;font-size:.9375rem;color:var(--ink-2);line-height:1.55;padding:16px 20px 16px 56px;border-top:1px solid var(--surface)}.dl-steps li:first-child{border-top:none}.dl-steps li:before{content:counter(dl-step);position:absolute;left:18px;top:16px;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:var(--accent-tint);border:1px solid var(--accent-line);font-size:.6875rem;font-weight:700;color:var(--accent)}.dl-steps li strong{color:var(--ink)}@media(max-width:600px){.dl-page{padding-top:calc(var(--nav-height) + 40px)}.dl-features{grid-template-columns:1fr}}.hc{--hc-rule: #e4e7ef;background:#fff;min-height:100vh;padding-bottom:120px}.hc-wrap{max-width:1120px;margin:0 auto;padding:0 var(--content-gutter)}.hc-top{background:var(--accent-tint);border-bottom:1px solid var(--accent-line);padding:calc(var(--nav-height) + 40px) 0 48px}.hc-crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:.875rem;color:var(--ink-2);margin-bottom:20px}.hc-crumbs a{color:var(--accent);font-weight:500}.hc-crumbs a:hover{text-decoration:underline;text-underline-offset:3px}.hc-title{font-family:var(--font-display);font-size:clamp(2.25rem,4.5vw,3.25rem);font-weight:800;letter-spacing:-.035em;line-height:1.05;color:var(--ink);margin:0 0 12px}.hc-lead{max-width:620px;font-size:1.0625rem;line-height:1.55;color:var(--ink-2);margin:0 0 28px}.hc-search{display:flex;align-items:center;gap:12px;max-width:620px;height:56px;padding:0 20px;border:2px solid var(--accent-line);border-radius:14px;background:#fff;color:var(--ink-3);transition:border-color .15s ease,box-shadow .15s ease}.hc-search:focus-within{border-color:var(--accent);box-shadow:0 0 0 4px #2b6ff51f}.hc-search input{flex:1;min-width:0;border:0;outline:0;background:transparent;font-family:var(--font-body);font-size:1.0625rem;color:var(--ink)}.hc-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:56px;padding-top:48px}.hc-side{min-width:0;position:sticky;top:calc(var(--nav-height) + var(--banner-height, 0px) + 32px);align-self:start}.hc-side-title{font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin:0 0 12px}.hc-side ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.hc-side-link{display:flex;align-items:center;justify-content:space-between;width:100%;padding:9px 12px;border:0;border-left:3px solid transparent;border-radius:0 8px 8px 0;background:transparent;color:var(--ink-2);font-family:var(--font-body);font-size:.9375rem;text-align:left;transition:background-color .15s ease,color .15s ease}.hc-side-link span{font-size:.8125rem;color:var(--ink-3)}.hc-side-link:hover{background:var(--surface);color:var(--ink)}.hc-side-link.is-active{border-left-color:var(--accent);background:var(--accent-tint);color:var(--accent);font-weight:600}.hc-main{min-width:0;max-width:720px}.hc-section-title{font-family:var(--font-display);font-size:1.5rem;font-weight:700;letter-spacing:-.02em;color:var(--ink);margin:0 0 8px;padding-bottom:16px;border-bottom:1px solid var(--hc-rule)}.hc-entry{padding:36px 0 40px;border-bottom:1px solid var(--hc-rule)}.hc-entry-title{font-family:var(--font-display);font-size:clamp(1.375rem,2.2vw,1.75rem);font-weight:700;letter-spacing:-.025em;line-height:1.2;color:var(--ink);margin:0 0 8px}.hc-entry-title a{color:inherit}.hc-entry-title a:hover{color:var(--accent)}.hc-meta{display:flex;flex-wrap:wrap;gap:8px;font-size:.875rem;color:var(--ink-3);margin:0 0 14px}.hc-text{font-size:1.0625rem;line-height:1.7;color:var(--ink-2);margin:0 0 20px}.hc-media{overflow:hidden;border:1px solid var(--hc-rule);border-radius:14px;background:#01031d;margin-bottom:18px}.hc-clip{display:block;width:100%;aspect-ratio:16 / 9;object-fit:cover}.hc-more{font-size:.9375rem;font-weight:600;color:var(--accent)}.hc-more span{display:inline-block;transition:transform .15s ease}.hc-more:hover span{transform:translate(3px)}.hc-empty{padding:48px 0;color:var(--ink-3)}.hc-show-more{display:block;margin:32px auto 0;height:44px;padding:0 28px;border:2px solid var(--line);border-radius:12px;background:#fff;color:var(--accent);font-family:var(--font-display);font-size:.875rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;box-shadow:0 4px 0 var(--line)}.hc-show-more:active{transform:translateY(3px);box-shadow:0 1px 0 var(--line)}.hc-article-title{font-family:var(--font-display);font-size:clamp(2rem,4vw,2.875rem);font-weight:800;letter-spacing:-.035em;line-height:1.08;color:var(--ink);margin:0 0 12px}.hc-article-lead{font-size:1.1875rem;line-height:1.6;color:var(--ink-2);margin:0 0 28px}.hc-article-body p{font-size:1.0625rem;line-height:1.75;color:var(--ink);margin:0 0 20px}.hc-helpful{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:40px;padding:22px 24px;border:1px solid var(--hc-rule);border-radius:14px;background:var(--surface);font-weight:600;color:var(--ink)}.hc-helpful button{height:36px;padding:0 18px;border:2px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);font-family:var(--font-body);font-size:.875rem;font-weight:600}.hc-helpful button:hover{border-color:var(--accent);color:var(--accent)}.hc-helpful-thanks{font-weight:500;color:var(--ink-2)}.hc-related{margin-top:40px}.hc-related h2{font-family:var(--font-display);font-size:1.25rem;font-weight:700;color:var(--ink);margin:0 0 12px}.hc-related ul{list-style:none;margin:0;padding:0}.hc-related li{border-top:1px solid var(--hc-rule)}.hc-related a{display:block;padding:14px 0;color:var(--accent);font-weight:500}.hc-related a:hover{text-decoration:underline;text-underline-offset:3px}@media(max-width:900px){.hc-top{padding:calc(var(--nav-height) + 24px) 0 32px}.hc-layout{grid-template-columns:1fr;gap:24px;padding-top:24px}.hc-side{position:static}.hc-side ul{flex-direction:row;overflow-x:auto;gap:6px;scrollbar-width:none}.hc-side ul::-webkit-scrollbar{display:none}.hc-side-title{display:none}.hc-side-link{flex:none;width:auto;gap:8px;border-left:0;border-radius:999px;border:1px solid var(--line);white-space:nowrap}.hc-side-link.is-active{border-color:var(--accent)}.hc-entry{padding:28px 0 32px}}.demo-page{background:#fff;min-height:100vh;padding:calc(var(--nav-height) + 56px) 0 96px}.demo-inner{max-width:1280px;margin:0 auto;padding:0 var(--content-gutter)}.demo-head{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:56px;align-items:center;margin-bottom:36px}.demo-head-copy{display:flex;flex-direction:column;align-items:flex-start}.demo-head .demo-clip{margin:0;max-width:460px;justify-self:end}.demo-eyebrow{display:block;font-family:var(--font-display);font-size:.8125rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent);margin-bottom:12px}.demo-title{font-family:var(--font-display);font-size:clamp(2.25rem,4.2vw,3.5rem);font-weight:800;line-height:1.02;letter-spacing:-.035em;color:var(--ink);margin:0 0 16px}.demo-lead{font-size:1.0625rem;line-height:1.6;color:var(--ink-2);max-width:560px;margin:0 0 24px}.demo-toggle{display:inline-flex;padding:4px;border-radius:14px;background:var(--surface);border:1px solid var(--line);flex:none}.demo-toggle-btn{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 18px;border:0;border-radius:9px;background:transparent;font-family:var(--font-body);font-size:.9375rem;font-weight:600;color:var(--ink-2);cursor:pointer;transition:background .15s ease,color .15s ease,box-shadow .15s ease}.demo-toggle-btn svg{width:18px;height:18px}.demo-toggle-btn.is-active{background:#fff;color:var(--accent);box-shadow:0 1px 2px #00000014,0 0 0 1px #0000000d}.demo-notice{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:10px;background:#f7f6f3;border:1px solid rgba(0,0,0,.06);font-size:.875rem;line-height:1.5;color:#4b4a46;margin-bottom:14px}.demo-notice a{color:#191919;text-decoration:underline;text-underline-offset:3px}.demo-notice-dot{width:8px;height:8px;border-radius:50%;background:#2d9d78;flex:none}.demo-notice-btn{margin-left:auto;flex:none;height:30px;padding:0 12px;border:1px solid rgba(0,0,0,.14);border-radius:7px;background:#fff;font-family:var(--font-body);font-size:.8125rem;font-weight:600;color:#191919;cursor:pointer}.demo-notice-btn:hover{background:#f7f7f5}.demo-frame{border:1px solid rgba(0,0,0,.1);border-radius:14px;overflow:hidden;background:#fff;box-shadow:0 1px 2px #0000000a,0 12px 40px #00000014;min-height:640px}.demo-frame .exam-page{min-height:640px;padding:48px 24px}.demo-frame .exam-page.exam-active{padding:0}.demo-frame .exam-active-toolbar{position:static}.demo-frame .exam-confirm-overlay{position:absolute}.demo-frame .exam-question-card{position:relative}.dt{display:grid;grid-template-columns:220px minmax(0,1fr);min-height:640px;font-family:var(--font-body);color:#37352f}.dt-side{border-right:1px solid rgba(0,0,0,.08);background:#fbfbfa;padding:18px 12px;display:flex;flex-direction:column;gap:18px}.dt-side-brand{font-family:var(--font-display);font-size:1.125rem;font-weight:700;color:#37352f;padding:0 8px}.dt-side-brand span{font-family:var(--font-body);font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#9b9a97;margin-left:8px}.dt-side-nav{display:flex;flex-direction:column;gap:2px}.dt-side-link{text-align:left;border:0;background:transparent;padding:7px 8px;border-radius:6px;font-family:var(--font-body);font-size:.875rem;color:#37352f;cursor:pointer}.dt-side-link:hover{background:#0000000a}.dt-side-link.is-active{background:#0000000f;font-weight:600}.dt-side-label,.dt-label{display:block;font-size:.6875rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#9b9a97;margin-bottom:6px}.dt-side-courses{display:flex;flex-direction:column;gap:2px;padding:0 8px}.dt-side-course{font-size:.8125rem;color:#6b6a66;padding:4px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dt-side-course.is-active{color:#191919;font-weight:600}.dt-main{min-width:0}.dt-tabs{display:none;gap:4px;padding:10px 12px 0;border-bottom:1px solid rgba(0,0,0,.08);overflow-x:auto;scrollbar-width:none}.dt-tab{flex:none;border:0;background:transparent;padding:8px 10px 10px;font-family:var(--font-body);font-size:.875rem;font-weight:500;color:#6b6a66;border-bottom:2px solid transparent;margin-bottom:-1px;cursor:pointer}.dt-tab.is-active{color:#191919;border-bottom-color:#191919;font-weight:600}.dt-view{padding:28px 32px 40px}.dt-head{margin-bottom:20px}.dt-head--row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.dt-title{font-family:var(--font-body);font-size:1.375rem;font-weight:600;letter-spacing:-.02em;color:#191919;margin:0;display:flex;align-items:center;gap:10px}.dt-sub{font-size:.875rem;color:#787774;margin:4px 0 0}.dt-pill{font-size:.6875rem;font-weight:600;background:#0000000f;border-radius:999px;padding:2px 8px;color:#6b6a66;letter-spacing:.02em}.dt-muted{color:#787774}.dt-small{font-size:.8125rem}.dt-mono{font-family:ui-monospace,SF Mono,SFMono-Regular,Menlo,monospace}.dt-code{font-family:ui-monospace,SF Mono,SFMono-Regular,Menlo,monospace;font-size:.75rem;background:#0000000d;border-radius:5px;padding:3px 8px;color:#6b6a66}.dt-tag{font-size:.625rem;font-weight:600;letter-spacing:.04em;background:#0000000f;border-radius:4px;padding:2px 6px;margin-left:6px;color:#6b6a66}.dt-hint{display:block;font-size:.8125rem;color:#9b9a97;margin-top:6px;line-height:1.5}.dt-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:28px}.dt-stats--3{grid-template-columns:repeat(3,minmax(0,1fr))}.dt-stat{border:1px solid rgba(0,0,0,.08);border-radius:10px;padding:16px 18px;display:flex;flex-direction:column;gap:2px;background:#fff}.dt-stat-n{font-size:1.75rem;font-weight:600;letter-spacing:-.03em;color:#191919;line-height:1.1}.dt-stat-l{font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:#9b9a97}.dt-section-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:8px 0 10px}.dt-section-head h3{font-family:var(--font-body);font-size:.9375rem;font-weight:600;color:#191919;margin:0}.dt-btn{height:32px;padding:0 12px;border:1px solid rgba(0,0,0,.14);border-radius:7px;background:#fff;font-family:var(--font-body);font-size:.8125rem;font-weight:600;color:#191919;cursor:pointer}.dt-btn:hover{background:#f7f7f5}.dt-btn:disabled{opacity:.55;cursor:not-allowed}.dt-btn--primary{background:#191919;border-color:#191919;color:#fff}.dt-btn--primary:hover{background:#333}.dt-btn--live{border-color:#d44c4766;color:#b3261e}.dt-btn--sm{height:28px;font-size:.75rem;align-self:flex-start}.dt-exam-list,.dt-course-list{border:1px solid rgba(0,0,0,.08);border-radius:10px;overflow:hidden;margin-bottom:28px}.dt-exam-row,.dt-course-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:16px;align-items:center;padding:12px 16px;border-top:1px solid rgba(0,0,0,.06);font-size:.875rem}.dt-course-row{grid-template-columns:minmax(0,1fr) auto}.dt-exam-row:first-child,.dt-course-row:first-child{border-top:0}.dt-exam-title{font-weight:600;color:#191919}.dt-exam-actions{display:flex;gap:6px}.dt-editor{display:flex;flex-direction:column;min-height:640px}.dt-editor-top{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid rgba(0,0,0,.08)}.dt-editor-title{font-weight:600;color:#191919;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dt-editor-body{display:grid;grid-template-columns:200px minmax(0,1fr) 240px;flex:1;min-height:0}.dt-qlist{border-right:1px solid rgba(0,0,0,.08);padding:12px 8px;display:flex;flex-direction:column;gap:4px;background:#fbfbfa}.dt-qitem{display:grid;grid-template-columns:18px minmax(0,1fr);gap:2px 8px;text-align:left;border:1px solid transparent;border-radius:8px;padding:8px 10px;background:transparent;cursor:pointer;font-family:var(--font-body)}.dt-qitem:hover{background:#00000008}.dt-qitem.is-active{background:#fff;border-color:#0000001f}.dt-qitem-n{font-size:.6875rem;color:#9b9a97;grid-row:1 / 3;padding-top:2px}.dt-qitem-type{font-size:.625rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#6f2438}.dt-qitem-text{font-size:.8125rem;color:#37352f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dt-qadd{margin-top:auto;padding-top:12px;display:flex;flex-direction:column;gap:6px}.dt-qadd-btn{border:1px dashed rgba(0,0,0,.16);border-radius:7px;background:transparent;padding:7px;font-family:var(--font-body);font-size:.75rem;color:#9b9a97}.dt-qmain{padding:20px 24px 28px;display:flex;flex-direction:column;gap:18px;min-width:0;background:#fbfbfa}.dt-seg{display:inline-flex;background:#0000000d;border-radius:8px;padding:3px;align-self:flex-start}.dt-seg-btn{border:0;background:transparent;padding:5px 12px;border-radius:6px;font-family:var(--font-body);font-size:.8125rem;font-weight:500;color:#6b6a66;cursor:pointer}.dt-seg-btn.is-active{background:#fff;color:#191919;font-weight:600;box-shadow:0 1px 2px #00000014}.dt-field{display:flex;flex-direction:column;gap:6px}.dt-textarea,.dt-input{width:100%;border:1px solid rgba(0,0,0,.12);border-radius:8px;background:#fff;padding:10px 12px;font-family:var(--font-body);font-size:.9375rem;color:#37352f;outline:none}.dt-textarea{resize:vertical;line-height:1.5}.dt-input{height:38px;padding:0 12px}.dt-input--num{width:64px;height:30px;text-align:center}.dt-textarea:focus,.dt-input:focus{border-color:#2383e2;box-shadow:0 0 0 3px #2383e21f}.dt-mono{font-family:ui-monospace,SF Mono,SFMono-Regular,Menlo,monospace;font-size:.8125rem}.dt-options{display:flex;flex-direction:column;gap:8px}.dt-option{display:grid;grid-template-columns:34px minmax(0,1fr) 24px;gap:10px;align-items:center;padding:6px;border:1px solid rgba(0,0,0,.08);border-radius:10px;background:#fff}.dt-option.is-correct{border-color:#6f243880;background:#6f243808}.dt-option-letter{width:32px;height:32px;border-radius:50%;border:0;background:#0000000f;font-family:var(--font-body);font-size:.8125rem;font-weight:700;color:#37352f;cursor:pointer}.dt-option.is-correct .dt-option-letter{background:#6f2438;color:#fff}.dt-option .dt-input{border-color:transparent;background:transparent}.dt-option-check{color:#6f2438;font-weight:700;text-align:center}.dt-codecfg{display:flex;flex-direction:column;gap:16px}.dt-row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.dt-toggles{border:0;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px 20px}.dt-toggles legend{padding:0;margin-bottom:6px;width:100%}.dt-toggle{display:inline-flex;align-items:center;gap:8px;font-size:.875rem;cursor:pointer}.dt-toggle input{width:16px;height:16px;accent-color:#191919}.dt-cases{display:flex;flex-direction:column;gap:8px}.dt-case{display:grid;grid-template-columns:22px 1fr 1fr 28px;gap:8px;align-items:center}.dt-case-n{font-size:.75rem;color:#9b9a97;text-align:center}.dt-case-del{height:30px;border:1px solid rgba(0,0,0,.12);border-radius:6px;background:#fff;cursor:pointer;color:#6b6a66}.dt-settings{border-left:1px solid rgba(0,0,0,.08);padding:20px 16px;display:flex;flex-direction:column;gap:14px;background:#fff}.dt-settings-title{margin-bottom:4px}.dt-setting{display:flex;flex-direction:column;gap:6px;font-size:.8125rem;color:#37352f}.dt-switch{height:36px;border:1px solid rgba(0,0,0,.12);border-radius:8px;background:#fff;text-align:left;padding:0 12px;font-family:var(--font-body);font-size:.875rem;color:#6b6a66;cursor:pointer}.dt-switch.is-on{border-color:#6f243880;background:#6f24380a;color:#6f2438;font-weight:600}.dt-live{display:inline-flex;align-items:center;gap:6px;font-size:.75rem;font-weight:700;letter-spacing:.08em;color:#d44c47}.dt-live-dot{width:9px;height:9px;border-radius:50%;background:#d44c47;animation:dt-pulse 1.4s ease-in-out infinite}@keyframes dt-pulse{0%,to{opacity:1}50%{opacity:.35}}.dt-roster{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.dt-student{border:1px solid rgba(0,0,0,.08);border-radius:10px;padding:14px 16px;display:flex;flex-direction:column;gap:10px;background:#fff;transition:border-color .2s ease}.dt-student.has-flag{border-color:#cb912f80}.dt-student.is-done{opacity:.6}.dt-student-head{display:flex;align-items:center;gap:8px;font-weight:600;font-size:.9375rem;color:#191919}.dt-student-dot{width:8px;height:8px;border-radius:50%;background:#2d9d78}.dt-student-dot.is-done{background:#9b9a97}.dt-flag{margin-left:auto;font-size:.6875rem;font-weight:600;color:#b3560a;background:#fff3e6;border-radius:999px;padding:2px 8px}.dt-student-progress{display:flex;align-items:center;gap:12px}.dt-student-q{font-size:1.125rem;font-weight:700;color:#1f2a44;letter-spacing:-.02em}.dt-student-q small{font-size:.75rem;font-weight:500;color:#9b9a97}.dt-bar{flex:1;height:6px;border-radius:3px;background:#00000012;overflow:hidden;display:block}.dt-bar-fill{display:block;height:100%;background:#1f2a44;border-radius:3px;transition:width .4s ease}.dt-grade{display:grid;grid-template-columns:220px minmax(0,1fr);min-height:640px}.dt-sublist{border-right:1px solid rgba(0,0,0,.08);background:#fbfbfa;padding:16px 10px;display:flex;flex-direction:column;gap:4px}.dt-sublist .dt-label{padding:0 8px}.dt-subitem{display:flex;flex-direction:column;gap:2px;text-align:left;border:1px solid transparent;border-radius:8px;padding:8px 10px;background:transparent;font-family:var(--font-body);font-size:.875rem;color:#37352f;cursor:pointer}.dt-subitem.is-active{background:#fff;border-color:#0000001f;font-weight:600}.dt-subscore{font-size:.75rem;color:#6b6a66;font-weight:500}.dt-subscore.is-pending{color:#b3560a}.dt-gradebody{padding:24px 28px 32px;display:flex;flex-direction:column;gap:18px;min-width:0}.dt-total{text-align:right}.dt-total-n{display:block;font-size:1.75rem;font-weight:600;letter-spacing:-.03em;color:#191919;line-height:1.1}.dt-gq{border:1px solid rgba(0,0,0,.08);border-radius:10px;padding:14px 16px 16px;display:flex;flex-direction:column;gap:12px}.dt-gq-head{display:flex;align-items:center;gap:10px;font-size:.875rem;font-weight:600;color:#191919}.dt-gq-score{margin-left:auto;font-size:.8125rem;font-weight:500;color:#6b6a66}.dt-gq-input{display:inline-flex;align-items:center;gap:6px}.dt-gq-mcq{display:flex;gap:6px;flex-wrap:wrap}.dt-mcq-chip{font-size:.75rem;font-weight:600;border-radius:999px;padding:3px 9px;background:#0000000d;color:#6b6a66}.dt-mcq-chip.is-right{background:#e6f4ec;color:#1c7c54}.dt-mcq-chip.is-wrong{background:#fde8ec;color:#b00021}.dt-gq-cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}.dt-gq-cols>div{min-width:0}.dt-gq-cols .code-editor-highlight--static{max-height:460px}.dt-answer{font-size:.9375rem;line-height:1.6;margin:0;padding:10px 12px;border-radius:8px;background:#fbfbfa;border:1px solid rgba(0,0,0,.06)}.dt-answer--model{background:#6f243808;border-color:#6f243826}.dt-rubric{display:flex;flex-direction:column;gap:8px;padding-top:4px}.dt-rubric .dt-toggle{justify-content:flex-start}.dt-rubric-pts{margin-left:auto;font-size:.75rem;color:#9b9a97}.dt-cases-result{display:flex;gap:6px;flex-wrap:wrap;margin-top:4px}.dt-chart{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;height:180px;align-items:end;margin-bottom:32px;padding:0 4px}.dt-chart-col{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;gap:6px}.dt-chart-n{font-size:.75rem;font-weight:600;color:#6b6a66}.dt-chart-bar{width:100%;max-width:64px;background:#1f2a44;border-radius:6px 6px 2px 2px;min-height:4px}.dt-chart-l{font-size:.75rem;color:#9b9a97}.dt-hbars{display:flex;flex-direction:column;gap:10px}.dt-hbar{display:grid;grid-template-columns:36px minmax(0,1fr) 44px;gap:12px;align-items:center;font-size:.8125rem}.dt-hbar-l{font-weight:600;color:#37352f}.dt-hbar-n{text-align:right;color:#6b6a66;font-variant-numeric:tabular-nums}.demo-foot{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:32px}.demo-foot-card{border:1px solid rgba(0,0,0,.09);border-radius:14px;padding:24px}.demo-foot-card--cta{background:#f7f6f3;border-color:transparent}.demo-foot-card h2{font-family:var(--font-body);font-size:1.125rem;font-weight:600;letter-spacing:-.02em;color:#191919;margin:0 0 8px}.demo-foot-card p{font-size:.9375rem;line-height:1.6;color:#5f5e5a;margin:0 0 16px}.demo-foot-card ul{margin:0;padding-left:18px;font-size:.9375rem;line-height:1.8;color:#5f5e5a}.demo-foot-actions{display:flex;gap:10px;flex-wrap:wrap}@media(max-width:1100px){.dt-editor-body{grid-template-columns:180px minmax(0,1fr)}.dt-settings{grid-column:1 / -1;border-left:0;border-top:1px solid rgba(0,0,0,.08)}}@media(max-width:900px){.demo-head{grid-template-columns:1fr;gap:20px;margin-bottom:24px}.demo-head .demo-clip{order:-1;justify-self:stretch;max-width:none}.dt{grid-template-columns:1fr}.dt-side{display:none}.dt-tabs{display:flex}.dt-view{padding:20px 16px 28px}.dt-stats,.dt-stats--3{grid-template-columns:repeat(2,minmax(0,1fr))}.dt-roster{grid-template-columns:1fr 1fr}.dt-grade{grid-template-columns:1fr}.dt-sublist{flex-direction:row;overflow-x:auto;border-right:0;border-bottom:1px solid rgba(0,0,0,.08);scrollbar-width:none}.dt-sublist .dt-label{display:none}.dt-subitem{flex:none}.dt-gq-cols,.dt-editor-body{grid-template-columns:1fr}.dt-qlist{flex-direction:row;overflow-x:auto;border-right:0;border-bottom:1px solid rgba(0,0,0,.08);scrollbar-width:none}.dt-qitem{flex:none;width:150px}.dt-qadd{display:none}.demo-foot{grid-template-columns:1fr}}@media(max-width:640px){.demo-page{padding:calc(var(--nav-height) + 24px) 0 64px}.demo-title{font-size:2.125rem}.demo-lead{font-size:1rem;margin-bottom:18px}.demo-toggle{width:100%}.demo-toggle-btn{flex:1;justify-content:center}.demo-notice{align-items:flex-start;flex-wrap:wrap;font-size:.8125rem}.demo-notice-btn{margin-left:0}.demo-frame{border-radius:10px;min-height:0}.demo-frame .exam-page{padding:24px 12px;min-height:0}.dt-stats,.dt-stats--3,.dt-roster{grid-template-columns:1fr}.dt-exam-row{grid-template-columns:1fr;gap:8px}.dt-row2{grid-template-columns:1fr}.dt-case{grid-template-columns:22px 1fr 28px}.dt-case .dt-input:nth-child(3){grid-column:2}.dt-chart{grid-template-columns:repeat(6,minmax(0,1fr));gap:4px}.dt-gradebody{padding:16px 14px 24px}.demo-foot-actions .mk-btn{width:100%;justify-content:center}}.tut{background:#fff;min-height:100vh;padding:148px 0 96px}.tut-inner{max-width:1080px;margin:0 auto;padding:0 var(--content-gutter)}.tut-head{max-width:720px;margin-bottom:36px}.tut-eyebrow{display:block;font-size:.875rem;color:var(--ink-2);margin-bottom:10px}.tut-title{font-family:var(--font-display);font-size:clamp(2.25rem,5vw,3.75rem);font-weight:700;line-height:1.05;letter-spacing:-.025em;color:var(--ink);margin:0 0 14px}.tut-lead{font-size:1.0625rem;line-height:1.6;color:var(--ink-2);margin:0}.tut-player{border-radius:14px;overflow:hidden;border:1px solid rgba(0,0,0,.1);background:#000;box-shadow:0 12px 40px #00000014,0 32px 80px #0000000f;margin-bottom:20px}.tut-video{display:block;width:100%;height:auto;aspect-ratio:16 / 9}.tut-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:80px}.tut-item{display:flex;gap:14px;align-items:flex-start;text-align:left;padding:18px 18px 16px;border:1px solid rgba(0,0,0,.09);border-radius:14px;background:#fff;font-family:var(--font-body);color:var(--ink);cursor:pointer;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.tut-item:hover{border-color:#0003}.tut-item.is-active{background:var(--surface);border-color:#00000029;box-shadow:inset 0 0 0 1px #0000000a}.tut-item-index{font-size:.75rem;font-weight:600;letter-spacing:.06em;color:var(--ink-3);padding-top:3px;font-variant-numeric:tabular-nums}.tut-item-body{display:flex;flex-direction:column;gap:4px;min-width:0}.tut-item-title{font-size:1rem;font-weight:700;letter-spacing:-.015em;line-height:1.3}.tut-item-meta{font-size:.75rem;color:var(--ink-3)}.tut-item-desc{font-size:.875rem;line-height:1.55;color:var(--ink-2);margin-top:4px}.tut-item-link{margin-top:8px;font-size:.8125rem;font-weight:600;color:var(--ink);text-decoration:none}.tut-item-link:hover{text-decoration:underline;text-underline-offset:3px}.tut-guides-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:16px}.tut-guides-title{font-family:var(--font-display);font-size:1.625rem;font-weight:700;letter-spacing:-.025em;color:var(--ink);margin:0}.tut-guides-all{font-size:.9375rem;font-weight:600;color:var(--ink);text-decoration:none;white-space:nowrap}.tut-guides-all:hover{text-decoration:underline;text-underline-offset:3px}.tut-guides-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.tut-guide{display:flex;flex-direction:column;gap:4px;padding:18px;border-radius:14px;background:var(--surface);color:var(--ink);text-decoration:none;transition:background .15s ease}.tut-guide:hover{background:var(--surface)}.tut-guide-title{font-size:.9375rem;font-weight:700;letter-spacing:-.01em}.tut-guide-body{font-size:.875rem;line-height:1.5;color:var(--ink-2)}@media(max-width:900px){.tut-list,.tut-guides-grid{grid-template-columns:1fr}}@media(max-width:768px){.tut{padding:112px 0 64px}.tut-lead{font-size:1rem}.tut-player{border-radius:10px}.tut-list{margin-bottom:56px}.tut-guides-head{flex-direction:column;gap:6px}}.work-page{background:#fff;min-height:100vh;font-size:.8125rem}.work-container{max-width:880px;margin:0 auto;padding:0 var(--content-gutter);text-align:left}.work-header{padding:104px 0 28px;border-bottom:1px solid rgba(0,0,0,.1);margin-bottom:28px}.work-label{display:block;font-size:.625rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-2);margin-bottom:10px}.work-title{font-family:var(--font-display);font-size:clamp(1.75rem,3vw,2.25rem);font-weight:700;letter-spacing:-.025em;color:var(--ink);margin:0 0 8px}.work-lead{font-size:.8125rem;color:var(--ink-2);margin:0}.work-listings{display:flex;flex-direction:column;gap:20px;margin-bottom:32px}.work-listing{border:1px solid rgba(0,0,0,.1);border-radius:8px;padding:22px 24px}.work-listing-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:12px}.work-listing-head h2{font-family:var(--font-body);font-size:1.0625rem;font-weight:600;color:var(--ink);letter-spacing:-.01em;margin:0 0 4px}.work-listing-meta{display:block;font-size:.6875rem;color:var(--ink-3)}.work-apply-btn{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600;color:#fff;background:var(--accent);box-shadow:0 2px 0 var(--accent-deep);border-radius:10px;padding:7px 16px;transition:background-color .15s ease,transform .15s ease}.work-apply-btn:hover{background:var(--accent-hover);transform:translateY(-1px)}.work-listing-about{font-size:.8125rem;line-height:1.55;color:var(--ink-2);margin:0 0 16px;max-width:640px}.work-listing-cols{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:16px}.work-col-label{display:block;font-size:.625rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);margin-bottom:8px}.work-listing-cols ul{margin:0;padding:0;list-style:none}.work-listing-cols li{position:relative;font-size:.75rem;line-height:1.5;color:var(--ink-2);padding-left:12px;margin-bottom:6px}.work-listing-cols li:before{content:"";position:absolute;left:0;top:.55em;width:4px;height:4px;border-radius:50%;background:#c4c4c4}.work-listing-comp{padding-top:14px;border-top:1px solid rgba(0,0,0,.06)}.work-listing-comp p{font-size:.75rem;color:var(--ink-2);margin:0}.work-footnote{font-size:.75rem;color:var(--ink-2);padding-bottom:64px}.work-footnote a{color:var(--ink);text-decoration:underline;text-underline-offset:2px}@media(max-width:640px){.work-header{padding:96px 0 20px}.work-listing-cols{grid-template-columns:1fr;gap:14px}.work-listing-head{flex-direction:column}}.pricing-page{background:var(--paper);padding:calc(var(--nav-height) + 72px) 0 112px;min-height:100vh}.pricing-container{max-width:880px;margin:0 auto;padding:0 var(--content-gutter)}.pricing-label{display:inline-block;font-size:.875rem;font-weight:500;color:var(--ink-3);margin-bottom:14px}.pricing-title{font-family:var(--font-display);font-size:clamp(2.25rem,4.4vw,3.5rem);font-weight:700;line-height:1.08;letter-spacing:-.025em;color:var(--ink);margin:0 0 16px}.pricing-intro{font-size:1.125rem;line-height:1.6;color:var(--ink-2);max-width:640px;margin:0 0 40px}.pricing-intro strong{color:var(--accent);font-weight:600}.pricing-free-card{display:flex;align-items:center;justify-content:space-between;gap:32px;flex-wrap:wrap;color:#fff;background:var(--accent);border-radius:16px;padding:32px 36px;margin-bottom:64px}.pricing-free-card h2{font-family:var(--font-display);font-size:1.375rem;font-weight:700;letter-spacing:-.025em;color:#fff;margin:0 0 8px}.pricing-free-card p{font-size:1rem;line-height:1.55;color:#ffffffd6;margin:0;max-width:520px}.pricing-free-cta{flex-shrink:0;display:inline-flex;align-items:center;height:44px;padding:0 22px;background:#fff;color:var(--ink);font-size:.9375rem;font-weight:500;border-radius:var(--radius-sm);text-decoration:none;transition:background .15s ease}.pricing-free-cta:hover{background:#fff}.pricing-section-heading{font-family:var(--font-display);font-size:1.75rem;font-weight:700;letter-spacing:-.025em;color:var(--ink);margin:0 0 8px}.pricing-section-sub{font-size:1rem;line-height:1.6;color:var(--ink-2);max-width:620px;margin:0 0 28px}.pricing-tiers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--line);border-radius:var(--radius-lg);background:#fff;overflow:hidden;margin-bottom:64px}.pricing-tier{padding:28px 24px;border-right:1px solid var(--line)}.pricing-tier:last-child{border-right:0}.pricing-tier h3{font-family:var(--font-display);font-size:1.125rem;font-weight:700;letter-spacing:-.025em;color:var(--ink);margin:0 0 4px}.pricing-tier-range{font-size:.875rem;font-weight:600;color:var(--accent);margin:0 0 14px}.pricing-tier-blurb{font-size:.9375rem;line-height:1.55;color:var(--ink-2);margin:0 0 20px}.pricing-tier-price{font-size:.9375rem;font-weight:600;color:var(--ink);margin:0;padding-top:16px;border-top:1px solid var(--surface)}.pricing-contact{padding:36px;border:1px solid var(--accent-line);border-radius:var(--radius-lg);background:var(--accent-tint)}.pricing-contact h2{font-family:var(--font-display);font-size:1.5rem;font-weight:700;letter-spacing:-.025em;color:var(--ink);margin:0 0 8px}.pricing-contact p{font-size:1rem;line-height:1.6;color:var(--ink-2);margin:0 0 20px;max-width:520px}.pricing-contact-cta{display:inline-flex;align-items:center;height:44px;padding:0 20px;border-radius:var(--radius-sm);background:var(--accent);color:#fff;font-size:.9375rem;font-weight:500;text-decoration:none;transition:background .15s ease}.pricing-contact-cta:hover{background:var(--accent-deep)}@media(max-width:768px){.pricing-page{padding:calc(var(--nav-height) + 40px) 0 80px}.pricing-tiers{grid-template-columns:1fr}.pricing-tier{border-right:0;border-bottom:1px solid var(--line)}.pricing-tier:last-child{border-bottom:0}.pricing-free-card,.pricing-contact{padding:24px}}.guide-page{--g-ink: var(--ink);--g-body: var(--ink);--g-muted: var(--ink-2);--g-faint: var(--ink-3);--g-line: rgba(0, 0, 0, .09);--g-line-strong: rgba(0, 0, 0, .16);--g-surface: var(--surface);--g-accent: var(--ink);background:#fff;color:var(--g-body);min-height:100vh;padding:112px 0 96px}.guide-shell{max-width:1180px;margin:0 auto;padding:0 var(--content-gutter);display:grid;grid-template-columns:240px minmax(0,1fr);gap:72px;align-items:start}.guide-toc{position:sticky;top:calc(var(--banner-height, 0px) + 96px);padding-top:8px}.guide-toc-label{display:block;font-size:.75rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--g-faint);margin-bottom:12px}.guide-toc nav{display:flex;flex-direction:column;border-left:1px solid var(--g-line)}.guide-toc nav a{display:block;padding:6px 0 6px 14px;margin-left:-1px;border-left:1px solid transparent;font-size:.875rem;line-height:1.4;color:var(--g-muted);text-decoration:none;transition:color .12s ease,border-color .12s ease}.guide-toc nav a:hover{color:var(--g-ink)}.guide-toc nav a.is-active{color:var(--g-ink);font-weight:600;border-left-color:var(--g-ink)}.guide-toc-cta{margin-top:20px;padding-top:16px;border-top:1px solid var(--g-line)}.guide-toc-cta a{display:inline-flex;align-items:center;height:36px;padding:0 14px;border-radius:10px;background:var(--accent);box-shadow:0 3px 0 var(--accent-deep);color:#fff;font-size:.8125rem;font-weight:600;text-decoration:none}.guide-toc-cta a:hover{background:var(--accent-hover)}.guide-toc-select{display:none}.guide-content{max-width:720px}.guide-header{padding-bottom:32px;border-bottom:1px solid var(--g-line);margin-bottom:8px}.guide-eyebrow{display:block;font-size:.875rem;color:var(--g-muted);margin-bottom:14px}.guide-title{font-family:var(--font-display);font-size:clamp(2.25rem,4.5vw,3.25rem);font-weight:700;line-height:1.05;letter-spacing:-.025em;color:var(--g-ink);margin:0 0 16px}.guide-lede{font-size:1.125rem;line-height:1.6;color:var(--g-muted);margin:0}.guide-section{padding:40px 0;border-bottom:1px solid var(--g-line)}.guide-section:last-of-type{border-bottom:0}.guide-section h2{font-family:var(--font-body);font-size:1.5rem;font-weight:600;letter-spacing:-.025em;line-height:1.2;color:var(--g-ink);margin:0 0 14px;scroll-margin-top:104px}.guide-section h3{font-family:var(--font-body);font-size:1.0625rem;font-weight:600;letter-spacing:-.01em;color:var(--g-ink);margin:24px 0 8px}.guide-section p{font-size:1rem;line-height:1.7;margin:0 0 14px}.guide-section p:last-child{margin-bottom:0}.guide-section a{color:var(--g-ink);text-decoration:underline;text-decoration-color:#0000004d;text-underline-offset:3px}.guide-section a:hover{text-decoration-color:var(--g-ink)}.guide-section strong{font-weight:600;color:var(--g-ink)}.guide-section code{font-family:ui-monospace,SF Mono,SFMono-Regular,Menlo,monospace;font-size:.875em;background:var(--g-surface);border:1px solid var(--g-line);border-radius:5px;padding:1px 6px}.guide-steps{list-style:none;counter-reset:step;margin:8px 0 16px;padding:0;display:flex;flex-direction:column;gap:10px}.guide-steps li{counter-increment:step;position:relative;padding-left:40px;font-size:1rem;line-height:1.6}.guide-steps li:before{content:counter(step);position:absolute;left:0;top:1px;width:26px;height:26px;border-radius:50%;border:1px solid var(--g-line-strong);display:grid;place-items:center;font-size:.75rem;font-weight:600;color:var(--g-ink);background:#fff}.guide-list{margin:8px 0 16px;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}.guide-list li{position:relative;padding-left:22px;font-size:1rem;line-height:1.6}.guide-list li:before{content:"";position:absolute;left:6px;top:11px;width:6px;height:6px;border-radius:50%;background:var(--g-faint)}.guide-callout,.guide-tip{margin:18px 0 4px;padding:14px 18px;border-radius:10px;background:var(--g-surface);border:1px solid var(--g-line);font-size:.9375rem;line-height:1.6}.guide-callout{border-left:3px solid var(--g-ink)}.guide-tip{border-left:3px solid #2d9d78}.guide-tip:before,.guide-callout:before{display:block;font-size:.75rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--g-muted);margin-bottom:4px}.guide-callout:before{content:"Note"}.guide-tip:before{content:"Tip"}.guide-table{margin:16px 0 4px;border:1px solid var(--g-line);border-radius:10px;overflow:hidden}.guide-row,.guide-row-head{display:grid;grid-template-columns:200px minmax(0,1fr);gap:16px;padding:12px 16px;border-top:1px solid var(--g-line);font-size:.9375rem;line-height:1.55}.guide-row-head{border-top:0;background:var(--g-surface);font-size:.75rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--g-muted)}.guide-row>span:first-child{font-weight:600;color:var(--g-ink)}.guide-figure{margin:20px 0 8px}.guide-figure-frame{border-radius:12px;border:1px solid var(--g-line);overflow:hidden;box-shadow:0 8px 28px #0000000f;background:#fff}.guide-figure-frame img{display:block;width:100%;height:auto}.guide-figure figcaption{margin-top:10px;font-size:.8125rem;line-height:1.5;color:var(--g-muted)}.guide-footer{margin-top:40px;padding:28px;border-radius:14px;background:var(--g-surface)}.guide-footer h2{font-family:var(--font-body);font-size:1.25rem;font-weight:600;letter-spacing:-.02em;color:var(--g-ink);margin:0 0 8px}.guide-footer p{margin:0;font-size:.9375rem;line-height:1.6}.guide-footer a{color:var(--g-ink);text-decoration:underline;text-underline-offset:3px}@media(max-width:960px){.guide-shell{grid-template-columns:1fr;gap:0}.navbar-hidden~.guide-page .guide-toc{top:var(--banner-height, 0px)}.guide-toc{position:sticky;top:calc(var(--banner-height, 0px) + 72px);transition:top .3s ease;z-index:5;background:#fffffff5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);margin:0 calc(-1 * var(--content-gutter)) 24px;padding:12px var(--content-gutter);border-bottom:1px solid var(--g-line)}.guide-toc-label,.guide-toc nav,.guide-toc-cta{display:none}.guide-toc-select{display:block;width:100%;height:42px;padding:0 40px 0 12px;border:1px solid var(--g-line-strong);border-radius:10px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23191919' stroke-width='1.8' fill='none'/%3E%3C/svg%3E") no-repeat right 14px center;appearance:none;font-family:var(--font-body);font-size:.9375rem;font-weight:600;color:var(--g-ink)}}@media(max-width:768px){.guide-page{padding:96px 0 64px}.guide-section{padding:28px 0}.guide-section h2{font-size:1.3125rem;scroll-margin-top:140px}.guide-row,.guide-row-head{grid-template-columns:1fr;gap:4px}.guide-row-head span:last-child{display:none}.guide-footer{padding:20px}}.fb{min-height:100vh;background:#fff;color:#37352f;padding:72px 0 0}.fb-container{max-width:640px;margin:0 auto;padding:40px 96px 80px;display:flex;flex-direction:column;gap:32px}.fb-back{display:inline-flex;align-items:center;gap:6px;font-size:.8rem;color:#9b9a97;text-decoration:none;transition:color .15s}.fb-back:hover{color:#37352f}.fb-title{font-family:var(--font-display-app);font-size:2rem;font-weight:500;color:#37352f;letter-spacing:-.02em;line-height:1.2}.fb-subtitle{font-size:.875rem;color:#9b9a97;margin-top:4px;line-height:1.5}.fb-form{display:flex;flex-direction:column;gap:20px}.fb-field{display:flex;flex-direction:column;gap:6px}.fb-label{font-size:.75rem;font-weight:600;color:#9b9a97;text-transform:uppercase;letter-spacing:.06em}.fb-categories{display:flex;gap:8px}.fb-cat{flex:1;padding:10px 0;border:1px solid rgba(55,53,47,.12);border-radius:6px;background:transparent;font-family:var(--font-body);font-size:.8rem;font-weight:500;color:#9b9a97;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease,transform .15s ease,box-shadow .15s ease,opacity .15s ease;text-align:center}.fb-cat:hover{border-color:#37352f40;color:#37352f}.fb-cat-active{border-color:#1c2541;background:#1c2541;color:#fff}.fb-cat-active:hover{border-color:#151d33;background:#151d33;color:#fff}.fb-textarea{width:100%;min-height:140px;padding:12px 14px;border:1px solid rgba(55,53,47,.12);border-radius:6px;background:#fff;font-family:var(--font-body);font-size:.875rem;color:#37352f;line-height:1.6;resize:vertical;outline:none;transition:border-color .15s,box-shadow .15s}.fb-textarea:focus-visible{outline:2px solid #4f46e5;outline-offset:2px}.fb-textarea::placeholder{color:#c4c4c0}.fb-textarea:focus{border-color:#1c2541;box-shadow:0 0 0 3px #1c254114}.fb-submit{align-self:flex-start;padding:10px 28px;border:none;border-radius:6px;background:#1c2541;color:#fff;font-family:var(--font-body);font-size:.85rem;font-weight:600;cursor:pointer;transition:background .15s}.fb-submit:hover{background:#151d33}.fb-submit:disabled{opacity:.4;cursor:not-allowed}.fb-toast{padding:12px 16px;border-radius:6px;background:#1c25410d;border:1px solid rgba(28,37,65,.1);font-size:.85rem;color:#1c2541;display:flex;align-items:center;gap:8px}.fb-history-title{font-size:.75rem;font-weight:600;color:#9b9a97;text-transform:uppercase;letter-spacing:.06em}.fb-list{display:flex;flex-direction:column;border-top:1px solid rgba(55,53,47,.09)}.fb-item{padding:14px 8px;border-bottom:1px solid rgba(55,53,47,.09);display:flex;flex-direction:column;gap:4px}.fb-item-top{display:flex;align-items:center;gap:8px}.fb-item-badge{font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:2px 6px;border-radius:3px}.fb-badge-feedback{background:#1c25410f;color:#1c2541}.fb-badge-feature{background:#6b2d3e0f;color:#6b2d3e}.fb-badge-bug{background:#b4503214;color:#9a4a2a}.fb-item-date{font-size:.7rem;color:#c4c4c0}.fb-item-msg{font-size:.85rem;color:#37352f;line-height:1.55;white-space:pre-wrap}.fb-empty{padding:32px 0;text-align:center;font-size:.85rem;color:#c4c4c0}@media(max-width:768px){.fb-container{padding:24px 20px 60px}.fb-categories{flex-direction:column}}.legal-page{background:#fff;padding:140px 0 120px;min-height:100vh}.legal-container{max-width:720px;margin:0 auto;padding:0 var(--content-gutter)}.legal-label{display:inline-block;font-size:.6875rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-2);margin-bottom:20px}.legal-title{font-family:var(--font-display);font-size:clamp(2.25rem,4vw,3rem);font-weight:700;line-height:1.2;letter-spacing:-.025em;color:var(--ink);margin:0 0 12px}.legal-updated{font-size:.8125rem;color:var(--ink-3);margin:0 0 56px}.legal-section{margin-bottom:40px}.legal-section h2{font-family:var(--font-body);font-size:1.0625rem;font-weight:600;color:var(--ink);margin:0 0 12px;letter-spacing:-.01em}.legal-section p{font-size:.9375rem;line-height:1.75;color:var(--ink-2);margin:0 0 12px}.legal-section p:last-child{margin-bottom:0}.legal-section ul{list-style:none;padding:0;margin:8px 0 0}.legal-section ul li{position:relative;padding-left:20px;font-size:.9375rem;line-height:1.75;color:var(--ink-2);margin-bottom:6px}.legal-section ul li:before{content:"";position:absolute;left:0;top:11px;width:5px;height:5px;border-radius:50%;background:var(--line)}.legal-section a{color:var(--ink);text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--line);transition:text-decoration-color .15s ease}.legal-section a:hover{text-decoration-color:var(--ink)}@media(max-width:768px){.legal-page{padding:110px 0 80px}}.not-found{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--paper);padding:72px var(--content-gutter)}.not-found-inner{text-align:center;max-width:420px}.not-found-code{display:block;font-family:var(--font-display);font-size:clamp(5rem,12vw,8rem);font-weight:700;line-height:1;letter-spacing:-.025em;color:var(--line);margin-bottom:16px}.not-found-title{font-family:var(--font-display);font-size:clamp(1.75rem,3vw,2.25rem);font-weight:700;color:var(--ink);margin:0 0 12px;letter-spacing:-.025em}.not-found-text{font-size:.9375rem;line-height:1.6;color:var(--ink-2);margin:0 0 36px}.not-found-btn{display:inline-flex;align-items:center;padding:12px 24px;background:var(--accent);box-shadow:0 3px 0 var(--accent-deep);color:#fff;border-radius:12px;font-size:.875rem;font-weight:600;text-decoration:none;transition:background .2s ease}.not-found-btn:hover{background:var(--accent-hover)}.not-found-mascot{width:96px;height:96px;border-radius:24px;margin:0 auto 20px}.devp-fab-group{position:fixed;bottom:16px;left:16px;z-index:99998;display:flex;align-items:center;gap:8px}.devp-fab-mini{width:36px;height:36px;border-radius:50%;border:1px solid #2a2a2a;background:#111;color:#f5f5f5;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;font-weight:700;cursor:pointer;box-shadow:0 6px 18px #00000040;transition:transform .12s ease,background .12s ease}.devp-fab-mini:hover{transform:translateY(-1px)}.devp-fab-mini.role-teacher{background:#4f46e5;border-color:#6366f1}.devp-fab-mini.role-student{background:#16a34a;border-color:#22c55e}.devp-fab{position:relative;z-index:99998;width:44px;height:44px;border-radius:50%;border:1px solid #2a2a2a;background:#111;color:#f5f5f5;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;font-weight:700;letter-spacing:.05em;cursor:pointer;box-shadow:0 8px 24px #00000040;display:flex;align-items:center;justify-content:center;transition:transform .15s ease,background .15s ease}.devp-fab:hover{background:#1d1d1d;transform:translateY(-1px)}.devp-fab.active{background:#4f46e5;border-color:#6366f1}.devp-overlay{position:fixed;inset:0;z-index:99997;background:#00000040;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.devp-panel{position:fixed;bottom:72px;left:16px;z-index:99999;width:420px;max-width:calc(100vw - 32px);max-height:calc(100vh - 96px);display:flex;flex-direction:column;background:#0e0e10;color:#ededed;border:1px solid #2a2a2a;border-radius:12px;box-shadow:0 24px 64px #00000073;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;overflow:hidden;animation:devp-pop .12s ease-out}@keyframes devp-pop{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.devp-header{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid #2a2a2a;background:linear-gradient(180deg,#161618,#0e0e10)}.devp-title{display:flex;align-items:center;gap:8px;font-weight:700}.devp-title-dot{width:8px;height:8px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 3px #22c55e2e}.devp-close{background:transparent;border:0;color:#9a9a9a;cursor:pointer;font-size:16px;line-height:1;padding:4px 6px}.devp-close:hover{color:#fff}.devp-tabs{display:flex;gap:2px;padding:8px 8px 0;border-bottom:1px solid #1f1f22;overflow-x:auto}.devp-tabs button{background:transparent;border:0;color:#9a9a9a;padding:6px 10px;cursor:pointer;border-radius:6px 6px 0 0;font:inherit;white-space:nowrap}.devp-tabs button:hover{color:#ededed;background:#18181b}.devp-tabs button.active{color:#fff;background:#1f1f22}.devp-body{padding:12px;overflow-y:auto;flex:1;scrollbar-width:thin;scrollbar-color:#333 transparent}.devp-body::-webkit-scrollbar{width:8px}.devp-body::-webkit-scrollbar-thumb{background:#2a2a2a;border-radius:4px}.devp-section{margin-bottom:14px}.devp-section-title{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#6b6b70;margin-bottom:6px}.devp-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 8px;border-radius:6px}.devp-row+.devp-row{margin-top:2px}.devp-row:hover{background:#18181b}.devp-row .label{color:#9a9a9a}.devp-row .value{color:#ededed;font-feature-settings:"tnum" 1}.devp-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}.devp-card{background:#18181b;border:1px solid #26262a;border-radius:8px;padding:8px 10px}.devp-card .k{color:#6b6b70;font-size:10px;text-transform:uppercase;letter-spacing:.06em}.devp-card .v{color:#f5f5f5;font-size:16px;font-weight:600;margin-top:2px}.devp-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:6px 10px;background:#1f1f22;color:#ededed;border:1px solid #2a2a2a;border-radius:6px;font:inherit;cursor:pointer;transition:background .1s ease,border-color .1s ease}.devp-btn:hover:not(:disabled){background:#27272b;border-color:#333}.devp-btn:disabled{opacity:.5;cursor:not-allowed}.devp-btn.primary{background:#4f46e5;border-color:#6366f1;color:#fff}.devp-btn.primary:hover:not(:disabled){background:#5b53ea}.devp-btn.danger{background:#3a1212;border-color:#5a1a1a;color:#fda4a4}.devp-btn.danger:hover:not(:disabled){background:#4a1818;color:#fecaca}.devp-btn.full{width:100%}.devp-btn-row{display:flex;gap:6px;flex-wrap:wrap}.devp-segmented{display:grid;grid-template-columns:1fr 1fr;gap:0;background:#18181b;border:1px solid #2a2a2a;border-radius:8px;padding:3px}.devp-seg{background:transparent;color:#9a9a9a;border:0;border-radius:6px;padding:6px 10px;font:inherit;font-weight:600;cursor:pointer;transition:background .1s ease,color .1s ease}.devp-seg:hover{color:#ededed}.devp-seg.active{background:#4f46e5;color:#fff}.devp-seg.active+.devp-seg.active{background:#16a34a}.devp-segmented .devp-seg:nth-child(2).active{background:#16a34a}.devp-routes{display:grid;grid-template-columns:1fr 1fr;gap:4px}.devp-route-link{display:block;padding:6px 8px;background:#18181b;border:1px solid #232327;border-radius:6px;color:#ededed;text-decoration:none;text-align:left;cursor:pointer;font:inherit}.devp-route-link:hover{background:#1f1f22;border-color:#333}.devp-route-link.current{border-color:#4f46e5;color:#c7d2fe}.devp-route-path{font-size:10px;color:#6b6b70}.devp-input,.devp-select,.devp-textarea{width:100%;background:#0e0e10;color:#ededed;border:1px solid #2a2a2a;border-radius:6px;padding:6px 8px;font:inherit}.devp-textarea{min-height:80px;resize:vertical}.devp-input:focus,.devp-select:focus,.devp-textarea:focus{outline:none;border-color:#4f46e5}.devp-textarea:focus-visible{outline:2px solid #4f46e5;outline-offset:2px}.devp-pre{background:#050507;border:1px solid #1f1f22;border-radius:6px;padding:8px 10px;margin:0;white-space:pre-wrap;word-break:break-all;color:#c7c7c7;font-size:11px;max-height:220px;overflow:auto}.devp-toast{position:fixed;bottom:80px;right:16px;z-index:100000;background:#18181b;color:#ededed;border:1px solid #2a2a2a;border-left:3px solid #4f46e5;border-radius:6px;padding:8px 12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;box-shadow:0 12px 32px #00000059;max-width:380px;animation:devp-pop .15s ease-out}.devp-toast.error{border-left-color:#ef4444}.devp-toast.success{border-left-color:#22c55e}.devp-hint{color:#6b6b70;font-size:11px;margin-top:6px}.devp-kbd{display:inline-block;padding:1px 5px;border-radius:4px;background:#1f1f22;border:1px solid #2a2a2a;color:#c7c7c7;font-size:10px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
