@font-face{font-display:block;font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2) format("woff2"),url(/assets/KaTeX_AMS-Regular-DMm9YOAa.woff) format("woff"),url(/assets/KaTeX_AMS-Regular-DRggAlZN.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff) format("woff"),url(/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff) format("woff"),url(/assets/KaTeX_Fraktur-Regular-CB_wures.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Main-Bold-Cx986IdX.woff2) format("woff2"),url(/assets/KaTeX_Main-Bold-Jm3AIy58.woff) format("woff"),url(/assets/KaTeX_Main-Bold-waoOVXN0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2) format("woff2"),url(/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff) format("woff"),url(/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2) format("woff2"),url(/assets/KaTeX_Main-Italic-BMLOBm91.woff) format("woff"),url(/assets/KaTeX_Main-Italic-3WenGoN9.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Main-Regular-B22Nviop.woff2) format("woff2"),url(/assets/KaTeX_Main-Regular-Dr94JaBh.woff) format("woff"),url(/assets/KaTeX_Main-Regular-ypZvNtVU.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2) format("woff2"),url(/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff) format("woff"),url(/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Math-Italic-t53AETM-.woff2) format("woff2"),url(/assets/KaTeX_Math-Italic-DA0__PXp.woff) format("woff"),url(/assets/KaTeX_Math-Italic-flOr_0UB.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:700;src:url(/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff) format("woff"),url(/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:italic;font-weight:400;src:url(/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff) format("woff"),url(/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:400;src:url(/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff) format("woff"),url(/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Script-Regular-D3wIWfF6.woff2) format("woff2"),url(/assets/KaTeX_Script-Regular-D5yQViql.woff) format("woff"),url(/assets/KaTeX_Script-Regular-C5JkGWo-.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2) format("woff2"),url(/assets/KaTeX_Size1-Regular-C195tn64.woff) format("woff"),url(/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2) format("woff2"),url(/assets/KaTeX_Size2-Regular-oD1tc_U0.woff) format("woff"),url(/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAA4oAA4AAAAAHbQAAA3TAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAABmAAgRQIDgmcDBEICo1oijYBNgIkA14LMgAEIAWJAAeBHAyBHBvbGiMRdnO0IkRRkiYDgr9KsJ1NUAf2kILNxgUmgqIgq1P89vcbIcmsQbRps3vCcXdYOKSWEPEKgZgQkprQQsxIXUgq0DqpGKmIvrgkeVGtEQD9DzAO29fM9jYhxZEsL2FeURH2JN4MIcTdO049NCVdxQ/w9NrSYFEBKTDKpLKfNkCGDc1RwjZLQcm3vqJ2UW9Xfa3tgAHz6ivp6vgC2yD4/6352ndnN0X0TL7seypkjZlMsjmZnf0Mm5Q+JykRWQBKCVCVPbARPXWyQtb5VgLB6Biq7/Uixcj2WGqdI8tGSgkuRG+t910GKP2D7AQH0DB9FMDW/obJZ8giFI3Wg8Cvevz0M+5m0rTh7XDBlvo9Y4vm13EXmfttwI4mBo1EG15fxJhUiCLbiiyCf/ZA6MFAhg3pGIZGdGIVjtPn6UcMk9A/UUr9PhoNsCENw1APAq0gpH73e+M+0ueyHbabc3vkbcdtzcf/fiy+NxQEjf9ud/ELBHAXJ0nk4z+MXH2Ev/kWyV4k7SkvpPc9Qr38F6RPWnM9cN6DJ0AdD1BhtgABtmoRoFCvPsBAumNm6soZG2Gk5GyVTo2sJncSyp0jQTYoR6WDvTwaaEcHsxHfvuWhHA3a6bN7twRKtcGok6NsCi7jYRrM2jExsUFMxMQYuJbMhuWNOumEJy9hi29Dmg5zMp/A5+hhPG19j1vBrq8JTLr8ki5VLPmG/PynJHVul440bxg5xuymHUFPBshC+nA9I1FmwbRBTNHAcik3Oae0cxKoI3MOriM42UrPe51nsaGxJ+WfXubAsP84aabUlQSJ1IiE0iPETLUU4CATgfXSCSpuRFRmCGbO+wSpAnzaeaCYW1VNEysRtuXCEL1kUFUbbtMv3Tilt/1c11jt3Q5bbMa84cpWipp8Elw3MZhOHsOlwwVUQM3lAR35JiFQbaYCRnMF2lxAWoOg2gyoIV4PouX8HytNIfLhqpJtXB4vjiViUI8IJ7bkC4ikkQvKksnOTKICwnqWSZ9YS5f0WCxmpgjbIq7EJcM4aI2nmhLNY2JIUgOjXZFWBHb+x5oh6cwb0Tv1ackHdKi0I9OO2wE9aogIOn540CCCziyhN+IaejtgAONKznHlHyutPrHGwCx9S6B8kfS4Mfi4Eyv7OU730bT1SCBjt834cXsf43zVjPUqqJjgrjeGnBxSG4aYAKFuVbeCfkDIjAqMb6yLNIbCuvXhMH2/+k2vkNpkORhR59N1CkzoOENvneIosjYmuTxlhUzaGEJQ/iWqx4dmwpmKjrwTiTGTCVozNAYqk/zXOndWxuWSmJkQpJw3pK5KX6QrLt5LATMqpmPAQhkhK6PUjzHUn7E0gHE0kPE0iKkolgkUx9SZmVAdDgpffdyJKg3k7VmzYGCwVXGz/tXmkOIp+vcWs+EMuhhvN0h9uhfzWJziBQmCREGSIFmQIkgVpAnSBRmC//6hkLZwaVhwxlrJSOdqlFtOYxlau9F2QN5Y98xmIAsiM1HVp2VFX+DHHGg6Ecjh3vmqtidX3qHI2qycTk/iwxSt5UzTmEP92ZBnEWTk4Mx8Mpl78ZDokxg/KWb+Q0QkvdKVmq3TMW+RXEgrsziSAfNXFMhDc60N5N9jQzjfO0kBKpUZl0ZmwJ41j/B9Hz6wmRaJB84niNmQrzp9eSlQCDDzazGDdVi3P36VZQ+Jy4f9UBNp+3zTjqI4abaFAm+GShVaXlsGdF3FYzZcDI6cori4kMxUECl9IjJZpzkvitAoxKue+90pDMvcKRxLl53TmOKCmV/xRolNKSqqUxc6LStOETmFOiLZZptlZepcKiAzteG8PEdpnQpbOMNcMsR4RR2Bs0cKFEvSmIjAFcnarqwUL4lDhHmnVkwu1IwshbiCcgvOheZuYyOteufZZwlcTlLgnZ3o/WcYdzZHW/WGaqaVfmTZ1aWCceJjkbZqsfbkOtcFlUZM/jy+hXHDbaUobWqqXaeWobbLO99yG5N3U4wxco0rQGGcOLASFMXeJoham8M+/x6O2WywK2l4HGbq1CoUyC/IZikQhdq3SiuNrvAEj0AVu9x2x3lp/xWzahaxidezFVtdcb5uEnzyl0ZmYiuKI0exvCd4Xc9CV1KB0db00z92wDPde0kukbvZIWN6jUWFTmPIC/Y4UPCm8UfDTFZpZNon1qLFTkBhxzB+FjQRA2Q/YRJT8pQigslMaUpFyAG8TMlXigiqmAZX4xgijKjRlGpLE0GdplRfCaJo0JQaSxNBk6ZmMzcya0FmrcisDdn0Q3HI2sWSppYigmlM1XT/kLQZSNpMJG0WkjYbSZuDpM1F0uYhFc1HxU4m1QJjDK6iL0S5uSj5rgXc3RejEigtcRBtqYPQsiTskmO5vosV+q4VGIKbOkDg0jtRrq+Em1YloaTFar3EGr1EUC8R0kus1Uus00usL97ABr2BjXoDm/QGNhuWtMVBKOwg/i78lT7hBsAvDmwHc/ao3vmUbBmhjeYySZNWvGkfZAgISDSaDo1SVpzGDsAEkF8B+gEapViUoZgUWXcRIGFZNm6gWbAKk0bp0k1MHG9fLYtV4iS2SmLEQFARzRcnf9PUS0LVn05/J9MiRRBU3v2IrvW974v4N00L7ZMk0wXP1409CHo/an8zTRHD3eSJ6m8D4YMkZNl3M79sqeuAsr/m3f+8/yl7A50aiAEJgeBeMWzu7ui9UfUBCe2TIqZIoOd/3/udRBOQidQZUERzb2/VwZN1H/Sju82ew2H2Wfr6qvfVf3hqwDvAIpkQVFy4B9Pe9e4/XvPeceu7h3dvO56iJPf0+A6cqA2ip18ER+iFgggiuOkvj24bby0N9j2UHIkgqIt+sVgfodC4YghLSMjSZbH0VR/6dMDrYJeKHilKTemt6v6kvzvn3/RrdWtr0GoN/xL+Sex/cPYLUpepx9cz/D46UPU5KXgAQa+NDps1v6J3xP1i2HtaDB0M9aX2deA7SYff//+gUCovMmIK/qfsFcOk+4Y5ZN97XlG6zebqtMbKgeRFi51vnxTQYBUik2rS/Cn6PC8ADR8FGxsRPB82dzfND90gIcshOcYUkfjherBz53odpm6TP8txlwOZ71xmfHHOvq053qFF/MRlS3jP0ELudrf2OeN8DHvp6ZceLe8qKYvWz/7yp0u4dKPfli3CYq0O13Ih71mylJ80tOi10On8wi+F4+LWgDPeJ30msSQt9/vkmHq9/Lvo2b461mP801v3W4xTcs6CbvF9UDdrSt+A8OUbpSh55qAUFXWznBBfdeJ8a4d7ugT5tvxUza3h9m4H7ptTqiG4z0g5dc0X29OcGlhpGFMpQo9ytTS+NViZpNdvU4kWx+LKxNY10kQ1yqGXrhe4/1nvP7E+nd5A92TtaRplbHSqoIdOqtRWti+fkB5/n1+/VvCmz12pG1kpQWsfi1ftlBobm0bpngs16CHkbIwdLnParxtTV3QYRlfJ0KFskH7pdN/YDn+yRuSd7sNH3aO0DYPggk6uWuXrfOc+fa3VTxFVvKaNxHsiHmsXyCLIE5yuOeN3/Jdf8HBL/5M6shjyhxHx9BjB1O0+4NLOnjLLSxwO7ukN4jMbOIcD879KLSi6Pk61Oqm2377n8079PXEEQ7cy7OKEC9nbpet118fxweTafpt69x/Bt8UqGzNQt7aelpc44dn5cqhwf71+qKp/Zf/+a0zcizOUWpl/iBcSXip0pplkatCchoH5c5aUM8I7/dWxAej8WicPL1URFZ9BDJelUwEwTkGqUhgSlydVes95YdXvhh9Gfz/aeFWvgVb4tuLbcv4+wLdutVZv/cUonwBD/6eDlE0aSiKK/uoH3+J1wDE/jMVqY2ysGufN84oIXB0sPzy8ollX/LegY74DgJXJR57sn+VGza0x3DnuIgABFM15LmajjjsNlYj+JEZGbuRYcAMOWxFkPN2w6Wd46xo4gVWQR/X4lyI/R6K/YK0110GzudPRW7Y+UOBGTfNNzHeYT0fiH0taunBpq9HEW8OKSaBGj21L0MqenEmNRWBAWDWAk4CpNoEZJ2tTaPFgbQYj8HxtFilErs3BTRwT8uO1NXQaWfIotchmPkAF5mMBAliEmZiOGVgCG9LgRzpscMAOOwowlT3JhusdazXGSC/hxR3UlmWVwWHpOIKheqONvjyhSiTHIkVUco5bnji8m//zL7PKaT1Vl5I6UE609f+gkr6MZKVyKc7zJRmCahLsdlyA5fdQkRSan9LgnnLEyGSkaKJCJog0wAgvepWBt80+1yKln1bMVtCljfNWDueKLsWwaEbBSfSPTEmVRsUcYYMnEjcjeyCZzBXK9E9BYBXLKjOSpUDR+nEV3TFSUdQaz+ot98QxgXwx0GQ+EEUAKB2qZPkQQ0GqFD8UPFMqyaCHM24BZmSGic9EYMagKizOw9Hz50DMrDLrqqLkTAhplMictiCAx5S3BIUQdeJeLnBy2CNtMfz6cV4u8XKoFZQesbf9YZiIERiHjaNodDW6LgcirX/mPnJIkBGDUpTBhSa0EIr38D5hCIszhCM8URGBqImoWjpvpt1ebu/v3Gl3qJfMnNM+9V+kiRFyROTPHQWOcs1dNW94/ukKMPZBvDi55i5CttdeJz84DLngLqjcdwEZ87bFFR8CIG35OAkDVN6VRDZ7aq67NteYqZ2lpT8oYB2CytoBd6VuAx4WgiAsnuj3WohG+LugzXiQRDeM3XYXlULv4dp5VFYC) format("woff2"),url(/assets/KaTeX_Size3-Regular-CTq5MqoE.woff) format("woff"),url(/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2) format("woff2"),url(/assets/KaTeX_Size4-Regular-BF-4gkZK.woff) format("woff"),url(/assets/KaTeX_Size4-Regular-DWFBv043.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2) format("woff2"),url(/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff) format("woff"),url(/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf) format("truetype")}.katex{font: 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;position:relative;text-indent:0;text-rendering:auto}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.18.4"}.katex .katex-mathml{border:0;-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;overflow:hidden;padding:0;position:absolute;width:1px}.katex .katex-html>.katex-newline{display:block}.katex .katex-base{position:relative;white-space:nowrap;width:-webkit-min-content;width:-moz-min-content;width:min-content}.katex .katex-base,.katex .katex-strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;display:inline-table;table-layout:fixed}.katex .vlist-r{display:table-row}.katex .vlist{display:table-cell;position:relative;vertical-align:bottom}.katex .vlist>span{display:block;height:0;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{overflow:hidden;width:0}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{display:table-cell;font-size:1px;min-width:2px;vertical-align:bottom;width:2px}.katex .katex-vbox{align-items:baseline;display:inline-flex;flex-direction:column}.katex .katex-thinbox{display:inline-flex;flex-direction:row;max-width:0;width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .katex-hdashline,.katex .katex-hline,.katex .katex-overline .overline-line,.katex .katex-rule,.katex .katex-underline .underline-line,.katex .mfrac .frac-line{min-height:1px}.katex .mspace{display:inline-block}.katex .katex-smash{display:inline;line-height:0}.katex .clap,.katex .llap,.katex .rlap{position:relative;width:0}.katex .clap>.katex-inner,.katex .llap>.katex-inner,.katex .rlap>.katex-inner{position:absolute}.katex .clap>.katex-fix,.katex .llap>.katex-fix,.katex .rlap>.katex-fix{display:inline-block}.katex .llap>.katex-inner{right:0}.katex .clap>.katex-inner,.katex .rlap>.katex-inner{left:0}.katex .clap>.katex-inner>span{margin-left:-50%;margin-right:50%}.katex .katex-rule{border:0 solid;display:inline-block;position:relative}.katex .katex-hline,.katex .katex-overline .overline-line,.katex .katex-underline .underline-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .katex-hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.katex .sqrt>.katex-root{margin-left:.2777777778em;margin-right:-.5555555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .katex-sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .katex-sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .katex-sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .katex-sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .katex-sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .katex-sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .katex-sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .katex-sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .katex-sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .katex-sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .katex-sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .katex-sizing.reset-size2.size1{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .katex-sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .katex-sizing.reset-size2.size3{font-size:1.1666666667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .katex-sizing.reset-size2.size4{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .katex-sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .katex-sizing.reset-size2.size6{font-size:1.6666666667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .katex-sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .katex-sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .katex-sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .katex-sizing.reset-size2.size10{font-size:3.4566666667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .katex-sizing.reset-size2.size11{font-size:4.1466666667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .katex-sizing.reset-size3.size1{font-size:.7142857143em}.katex .fontsize-ensurer.reset-size3.size2,.katex .katex-sizing.reset-size3.size2{font-size:.8571428571em}.katex .fontsize-ensurer.reset-size3.size3,.katex .katex-sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .katex-sizing.reset-size3.size4{font-size:1.1428571429em}.katex .fontsize-ensurer.reset-size3.size5,.katex .katex-sizing.reset-size3.size5{font-size:1.2857142857em}.katex .fontsize-ensurer.reset-size3.size6,.katex .katex-sizing.reset-size3.size6{font-size:1.4285714286em}.katex .fontsize-ensurer.reset-size3.size7,.katex .katex-sizing.reset-size3.size7{font-size:1.7142857143em}.katex .fontsize-ensurer.reset-size3.size8,.katex .katex-sizing.reset-size3.size8{font-size:2.0571428571em}.katex .fontsize-ensurer.reset-size3.size9,.katex .katex-sizing.reset-size3.size9{font-size:2.4685714286em}.katex .fontsize-ensurer.reset-size3.size10,.katex .katex-sizing.reset-size3.size10{font-size:2.9628571429em}.katex .fontsize-ensurer.reset-size3.size11,.katex .katex-sizing.reset-size3.size11{font-size:3.5542857143em}.katex .fontsize-ensurer.reset-size4.size1,.katex .katex-sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .katex-sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .katex-sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .katex-sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .katex-sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .katex-sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .katex-sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .katex-sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .katex-sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .katex-sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .katex-sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .katex-sizing.reset-size5.size1{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .katex-sizing.reset-size5.size2{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .katex-sizing.reset-size5.size3{font-size:.7777777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .katex-sizing.reset-size5.size4{font-size:.8888888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .katex-sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .katex-sizing.reset-size5.size6{font-size:1.1111111111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .katex-sizing.reset-size5.size7{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .katex-sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .katex-sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .katex-sizing.reset-size5.size10{font-size:2.3044444444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .katex-sizing.reset-size5.size11{font-size:2.7644444444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .katex-sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .katex-sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .katex-sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .katex-sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .katex-sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .katex-sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .katex-sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .katex-sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .katex-sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .katex-sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .katex-sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .katex-sizing.reset-size7.size1{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .katex-sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .katex-sizing.reset-size7.size3{font-size:.5833333333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .katex-sizing.reset-size7.size4{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .katex-sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .katex-sizing.reset-size7.size6{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .katex-sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .katex-sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .katex-sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .katex-sizing.reset-size7.size10{font-size:1.7283333333em}.katex .fontsize-ensurer.reset-size7.size11,.katex .katex-sizing.reset-size7.size11{font-size:2.0733333333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .katex-sizing.reset-size8.size1{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .katex-sizing.reset-size8.size2{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .katex-sizing.reset-size8.size3{font-size:.4861111111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .katex-sizing.reset-size8.size4{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .katex-sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .katex-sizing.reset-size8.size6{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .katex-sizing.reset-size8.size7{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .katex-sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .katex-sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .katex-sizing.reset-size8.size10{font-size:1.4402777778em}.katex .fontsize-ensurer.reset-size8.size11,.katex .katex-sizing.reset-size8.size11{font-size:1.7277777778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .katex-sizing.reset-size9.size1{font-size:.2893518519em}.katex .fontsize-ensurer.reset-size9.size2,.katex .katex-sizing.reset-size9.size2{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .katex-sizing.reset-size9.size3{font-size:.4050925926em}.katex .fontsize-ensurer.reset-size9.size4,.katex .katex-sizing.reset-size9.size4{font-size:.462962963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .katex-sizing.reset-size9.size5{font-size:.5208333333em}.katex .fontsize-ensurer.reset-size9.size6,.katex .katex-sizing.reset-size9.size6{font-size:.5787037037em}.katex .fontsize-ensurer.reset-size9.size7,.katex .katex-sizing.reset-size9.size7{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .katex-sizing.reset-size9.size8{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .katex-sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .katex-sizing.reset-size9.size10{font-size:1.2002314815em}.katex .fontsize-ensurer.reset-size9.size11,.katex .katex-sizing.reset-size9.size11{font-size:1.4398148148em}.katex .fontsize-ensurer.reset-size10.size1,.katex .katex-sizing.reset-size10.size1{font-size:.2410800386em}.katex .fontsize-ensurer.reset-size10.size2,.katex .katex-sizing.reset-size10.size2{font-size:.2892960463em}.katex .fontsize-ensurer.reset-size10.size3,.katex .katex-sizing.reset-size10.size3{font-size:.337512054em}.katex .fontsize-ensurer.reset-size10.size4,.katex .katex-sizing.reset-size10.size4{font-size:.3857280617em}.katex .fontsize-ensurer.reset-size10.size5,.katex .katex-sizing.reset-size10.size5{font-size:.4339440694em}.katex .fontsize-ensurer.reset-size10.size6,.katex .katex-sizing.reset-size10.size6{font-size:.4821600771em}.katex .fontsize-ensurer.reset-size10.size7,.katex .katex-sizing.reset-size10.size7{font-size:.5785920926em}.katex .fontsize-ensurer.reset-size10.size8,.katex .katex-sizing.reset-size10.size8{font-size:.6943105111em}.katex .fontsize-ensurer.reset-size10.size9,.katex .katex-sizing.reset-size10.size9{font-size:.8331726133em}.katex .fontsize-ensurer.reset-size10.size10,.katex .katex-sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .katex-sizing.reset-size10.size11{font-size:1.1996142719em}.katex .fontsize-ensurer.reset-size11.size1,.katex .katex-sizing.reset-size11.size1{font-size:.2009646302em}.katex .fontsize-ensurer.reset-size11.size2,.katex .katex-sizing.reset-size11.size2{font-size:.2411575563em}.katex .fontsize-ensurer.reset-size11.size3,.katex .katex-sizing.reset-size11.size3{font-size:.2813504823em}.katex .fontsize-ensurer.reset-size11.size4,.katex .katex-sizing.reset-size11.size4{font-size:.3215434084em}.katex .fontsize-ensurer.reset-size11.size5,.katex .katex-sizing.reset-size11.size5{font-size:.3617363344em}.katex .fontsize-ensurer.reset-size11.size6,.katex .katex-sizing.reset-size11.size6{font-size:.4019292605em}.katex .fontsize-ensurer.reset-size11.size7,.katex .katex-sizing.reset-size11.size7{font-size:.4823151125em}.katex .fontsize-ensurer.reset-size11.size8,.katex .katex-sizing.reset-size11.size8{font-size:.578778135em}.katex .fontsize-ensurer.reset-size11.size9,.katex .katex-sizing.reset-size11.size9{font-size:.6945337621em}.katex .fontsize-ensurer.reset-size11.size10,.katex .katex-sizing.reset-size11.size10{font-size:.8336012862em}.katex .fontsize-ensurer.reset-size11.size11,.katex .katex-sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{display:inline-block;width:.12em}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .katex-accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .katex-accent .accent-body{position:relative}.katex .katex-accent .accent-body:not(.accent-full){width:0}.katex .katex-overlay{display:block}.katex .mtable .vertical-separator{display:inline-block;min-width:1px}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;display:block;height:inherit;position:absolute;width:100%}.katex svg path{stroke:none}.katex svg{fill-rule:nonzero;fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1}.katex img{border-style:none;max-height:none;max-width:none;min-height:0;min-width:0}.katex .katex-stretchy{display:block;overflow:hidden;position:relative;width:100%}.katex .katex-stretchy:after,.katex .katex-stretchy:before{content:""}.katex .hide-tail{overflow:hidden;position:relative;width:100%}.katex .halfarrow-left{left:0;overflow:hidden;position:absolute;width:50.2%}.katex .halfarrow-right{overflow:hidden;position:absolute;right:0;width:50.2%}.katex .brace-left{left:0;overflow:hidden;position:absolute;width:25.1%}.katex .brace-center{left:25%;overflow:hidden;position:absolute;width:50%}.katex .brace-right{overflow:hidden;position:absolute;right:0;width:25.1%}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{border:.04em solid;box-sizing:border-box}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .katex-sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{border-right:.049em solid;border-top:.049em solid;box-sizing:border-box;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{display:inline-block;position:absolute;right:calc(50% + .3em);text-align:left}.katex .cd-label-right{display:inline-block;left:calc(50% + .3em);position:absolute;text-align:right}.katex-display{display:block;margin:1em 0;text-align:center}.katex-display>.katex{display:block;text-align:center;white-space:nowrap}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.katex-tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.katex-tag{left:0;right:auto}.katex-display.fleqn>.katex{padding-left:2em;text-align:left}body{counter-reset:katexEqnNo mmlEqnNo}:root{--surface-base: #eae2d0;--surface-1: #f5efe3;--surface-2: #dfd5c4;--surface-glass: rgba(234, 226, 208, .94);--border-subtle: rgba(74, 60, 42, .14);--text-strong: #1f1810;--text-1: #2a2318;--text-2: #3d3429;--text-3: #524840;--text-label: #2e261c;--accent: #4a4034;--accent-bright: #5c5248;--accent-hover: #3d3429;--accent-contrast: #f5efe3;--accent-deep: #2a2318;--accent-subtle: rgba(74, 60, 42, .09);--accent-border: rgba(74, 60, 42, .24);--accent-glow: rgba(74, 60, 42, .11);--chrome-gradient: linear-gradient( 90deg, rgba(74, 60, 42, .12), rgba(74, 60, 42, .05), rgba(74, 60, 42, .02) );--nav-active-bg: rgba(74, 60, 42, .08);--nav-hover-bg: rgba(74, 60, 42, .05);--btn-fill: #4a4034;--btn-fill-hover: #3d3429;--btn-text: #f5efe3;--btn-border: rgba(42, 35, 24, .18);--stone: #9a8f7e;--stone-bg: #ebe3d6;--stone-ink: #3d3429;--shade-slate: #968c7e;--shade-slate-bg: #ebe4d6;--shade-sage: #8f9588;--shade-sage-bg: #e9e6dc;--shade-clay: #9a9084;--shade-clay-bg: #ece6da;--shade-dusk: #928d8a;--shade-dusk-bg: #eae6de;--shade-mist: #8f9588;--shade-mist-bg: #e9e6dc;--shade-sea: #968c7e;--shade-sea-bg: #ebe4d6;--shade-blush: #9a9084;--shade-blush-bg: #ece6da;--shade-honey: #928d8a;--shade-honey-bg: #eae6de;--shade-rose: #968c7e;--shade-rose-bg: #ebe4d6;--shade-stone: #8d9299;--shade-stone-bg: #e8e7e5;--shade-slate-ink: #3d3429;--shade-sage-ink: #3a3f36;--shade-clay-ink: #403830;--shade-dusk-ink: #3d3832;--shade-mist-ink: #3a3f36;--shade-sea-ink: #3d3429;--shade-blush-ink: #403830;--shade-honey-ink: #3d3832;--shade-rose-ink: #3d3429;--shade-stone-ink: #363b40;--blend-a: #ebe4d6;--blend-b: #e2d9c8;--blend-c: #f2ecdf;--feature-history-bg: var(--blend-a);--feature-history-accent: var(--shade-slate);--feature-history-ink: var(--shade-slate-ink);--feature-packets-bg: var(--blend-b);--feature-packets-accent: var(--shade-dusk);--feature-packets-ink: var(--shade-dusk-ink);--feature-plans-bg: var(--blend-c);--feature-plans-accent: var(--shade-clay);--feature-plans-ink: var(--shade-clay-ink);--course-bio-glow: rgba(143, 149, 136, .14);--course-calc-glow: rgba(146, 141, 138, .14);--course-chem-glow: rgba(154, 144, 132, .14);--course-physics_1-glow: rgba(150, 140, 126, .14);--course-physics_2-glow: rgba(154, 149, 136, .14);--course-em-glow: rgba(168, 132, 122, .14);--course-mechanics-glow: rgba(184, 171, 150, .14);--course-stats-glow: rgba(141, 146, 153, .14);--scene-ink: #2a2318;--scene-ink-soft: rgba(42, 35, 24, .52);--scene-ink-faint: rgba(42, 35, 24, .3);--scene-fill: #d4c8b4;--scene-fill-mid: rgba(196, 184, 164, .58);--scene-fill-light: rgba(235, 227, 214, .88);--scene-accent: #b8ab96;--scene-accent-deep: #9a8f7e;--scene-highlight: #ebe3d6;--scene-ray-a: #a8847a;--scene-ray-b: #9a9588;--scene-ray-c: #8a8478;--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--dur-fast: .15s;--dur-mid: .25s;--dur-ambient: 32s;--glow-sm: 0 1px 3px rgba(42, 35, 24, .07);--glow-md: 0 6px 20px rgba(42, 35, 24, .09);--border-neon: none;--mesh-gradient: none;--font-body: "Nunito Sans", "Segoe UI", sans-serif;--font-brand: "Rubik", "Nunito Sans", sans-serif;--font-display: "Baloo 2", "Rubik", sans-serif;--paper-bg: #f5efe3;--paper-card: #f2ecdf;--paper-navy: #3d3429;--paper-navy-hover: #2a2318;--paper-navy-mid: #4a4034;--paper-ink: #2a2318;--paper-muted: #524840;--paper-border: #d4c8b4;--paper-wrap: #1f1810;--paper-chrome-fg: #f5efe3;--paper-hover: #ebe3d6;--paper-hover-strong: #e2d9c8;--paper-menubar: #ebe3d6;--paper-shadow: rgba(42, 35, 24, .1);--paper-modal-scrim: rgba(31, 24, 16, .55);--paper-split-active: #ddd6c4;--paper-split-border: #b8ab96;--surface: rgba(245, 239, 227, .88);--surface-solid: #f5efe3;--surface-alt: #ebe3d6;--border: #d4c8b4;--text: #1f1810;--text-muted: #524840;--bg: var(--surface-base);--success-bg: #dcefdc;--success-text: #166534;--success-border: #86efac;--score-mid-bg: #fef3c7;--score-mid-text: #92400e;--score-mid-border: #fcd34d;--danger-bg: #fee2e2;--danger-text: #991b1b;--danger-border: #fca5a5;--history-cta: #2d4a3e;--history-cta-hover: #243d33;--history-cta-text: #f5f9f7;--neutral-bg: #e8e0d2;--neutral-text: #4a4238;--neutral-border: #cfc3ae;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-pill: 999px;--shadow-sm: 0 1px 2px rgba(42, 35, 24, .07);--shadow-md: 0 8px 28px rgba(42, 35, 24, .1);--text-xs: 11px;--text-sm: 12px;--text-base: 14px;--text-md: 15px;--text-lg: 18px;--text-xl: 24px;--text-2xl: 32px;--text-3xl: 44px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 28px;--space-8: 40px;--space-10: 56px;--z-base: 1;--z-chrome: 10;--z-hud: 40;--z-overlay: 100;--focus-ring: 0 0 0 3px rgba(74, 60, 42, .22);--focus-ring-paper: 0 0 0 3px rgba(74, 60, 42, .28);font-family:var(--font-body);--exam-prose-font: KaTeX_Main, "Times New Roman", Times, serif}:where(button,a,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--accent);outline-offset:2px;box-shadow:var(--focus-ring)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}*{box-sizing:border-box}html{overflow-x:auto;overflow-y:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}html,body,#root{margin:0;width:100%;min-height:100%;color:var(--text-1);background:var(--surface-base)}textarea,button,input{font-family:inherit}.app-shell{position:relative;display:flex;flex-direction:column;min-height:100vh;min-height:100dvh;width:100%;overflow:visible}.app-shell-sidebar{flex-direction:row}.app-main{position:relative;z-index:1;flex:1;min-width:0;min-height:0;display:flex;flex-direction:column}.app-body{position:relative;z-index:1;flex:1;min-height:0;display:flex;flex-direction:row}.app-chrome{position:relative;z-index:var(--z-chrome);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,auto) minmax(0,1fr);align-items:center;gap:12px;padding:10px 20px 12px;border-bottom:1px solid var(--border-subtle);background:var(--surface-1);backdrop-filter:none;-webkit-backdrop-filter:none;flex-shrink:0;color:var(--text-1);box-shadow:var(--glow-sm);overflow:visible}.app-chrome-course{grid-template-columns:minmax(0,auto) minmax(0,1fr) minmax(0,auto)}.app-chrome:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--chrome-gradient);opacity:.85;pointer-events:none}.app-chrome-left,.app-chrome-center,.app-chrome-right{display:flex;align-items:center;min-width:0}.app-chrome-left{justify-self:start;gap:10px;min-width:0;max-width:100%;overflow:visible}.app-chrome-left .app-chrome-brand{flex-shrink:0}.app-chrome-divider{flex-shrink:0;width:1px;height:22px;margin:0 2px;background:color-mix(in srgb,var(--text-3) 28%,transparent)}.app-chrome-left .app-course-switcher{min-width:0;flex:1 1 auto;max-width:min(280px,100%)}.app-chrome-course-title-transition{min-width:0;flex:1 1 auto;max-width:min(280px,100%);overflow:visible}.app-chrome-center{justify-self:center;flex-direction:column;align-items:center;gap:8px;text-align:center;min-width:0;max-width:100%;overflow:hidden}.app-chrome-center-course{justify-content:center;justify-self:stretch;width:100%}.app-chrome-right{justify-self:end;justify-content:flex-end;gap:10px;flex-shrink:0;min-width:0}.app-chrome-right:empty{visibility:hidden;pointer-events:none}.app-chrome-context{min-width:0}.app-chrome-context-kicker{display:block;font-size:10.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--accent-bright);margin-bottom:2px}.app-chrome-context-title{margin:0;font-family:var(--font-brand);font-size:clamp(18px,2.2vw,24px);font-weight:700;letter-spacing:-.03em;line-height:1.15;color:var(--text-1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-chrome-context-course .app-chrome-context-title:not(.app-course-switcher-heading){color:color-mix(in srgb,var(--card-accent, var(--accent-bright)) 88%,white)}.app-course-switcher{position:relative;min-width:0;max-width:100%}.app-course-switcher.is-open{z-index:calc(var(--z-hud) + 2)}.app-course-switcher .app-chrome-context-title,.app-course-switcher-heading{margin:0;min-width:0;max-width:100%;font-size:clamp(14px,1.7vw,16px);font-weight:600;color:var(--text-1)}.app-course-switcher-trigger{display:inline-flex;align-items:center;gap:6px;max-width:100%;min-width:0;margin:0;padding:6px 8px 6px 12px;border:1px solid color-mix(in srgb,var(--text-3) 22%,var(--border-subtle));border-radius:var(--radius-pill);background:color-mix(in srgb,var(--surface-2) 88%,var(--surface-1));font:inherit;font-weight:600;color:var(--text-1);cursor:pointer;text-align:left;box-shadow:0 1px color-mix(in srgb,var(--text-1) 4%,transparent);transition:background var(--dur-fast),border-color var(--dur-fast),box-shadow var(--dur-fast)}.app-course-switcher-trigger:hover,.app-course-switcher-trigger:focus-visible{background:var(--nav-hover-bg);border-color:color-mix(in srgb,var(--text-3) 34%,var(--border-subtle));box-shadow:0 1px color-mix(in srgb,var(--text-1) 6%,transparent)}.app-course-switcher-trigger:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 55%,transparent);outline-offset:2px}.app-course-switcher.is-open .app-course-switcher-trigger{background:var(--nav-active-bg);border-color:var(--accent-border);box-shadow:none}.app-course-switcher-title{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:-.02em}.app-course-switcher-title-short{display:none}.app-course-switcher-caret-wrap{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;margin-left:2px;border-radius:6px;background:color-mix(in srgb,var(--text-1) 6%,var(--surface-1));color:var(--text-1);transition:background var(--dur-fast),color var(--dur-fast),transform var(--dur-fast)}.app-course-switcher-caret{width:12px;height:12px}.app-course-switcher-trigger:hover .app-course-switcher-caret-wrap,.app-course-switcher-trigger:focus-visible .app-course-switcher-caret-wrap,.app-course-switcher.is-open .app-course-switcher-caret-wrap{background:color-mix(in srgb,var(--text-1) 10%,var(--surface-1));color:var(--text-1)}.app-course-switcher.is-open .app-course-switcher-caret{transform:rotate(180deg)}.app-course-switcher-menu-wrap{position:absolute;top:calc(100% + 8px);left:0;z-index:calc(var(--z-hud) + 3);width:min(340px,calc(100vw - 32px));padding:8px;border:1px solid var(--border-subtle);border-radius:14px;background:var(--surface-1);box-shadow:var(--shadow-md)}.app-course-switcher-menu{margin:0;padding:0;list-style:none;max-height:min(380px,52vh);overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;gap:4px;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--text-3) 45%,transparent) transparent}.app-course-switcher-menu::-webkit-scrollbar{width:8px}.app-course-switcher-menu::-webkit-scrollbar-thumb{border-radius:999px;background:color-mix(in srgb,var(--text-3) 40%,transparent)}.app-course-switcher-menu-label{margin:0;padding:4px 10px 8px;font-size:10.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--text-3)}.app-course-switcher-option{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:0;border-radius:10px;background:transparent;font:inherit;text-align:left;color:var(--text-1);cursor:pointer;transition:background var(--dur-fast),box-shadow var(--dur-fast)}.app-course-switcher-option:hover,.app-course-switcher-option:focus-visible{background:var(--nav-hover-bg)}.app-course-switcher-option:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 45%,transparent);outline-offset:-1px}.app-course-switcher-option.is-active{background:color-mix(in srgb,var(--card-accent, var(--accent)) 12%,var(--blend-c));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--card-accent, var(--accent)) 22%,transparent)}.app-course-switcher-option.is-active:hover,.app-course-switcher-option.is-active:focus-visible{background:color-mix(in srgb,var(--card-accent, var(--accent)) 16%,var(--blend-c))}.app-course-switcher-option-dot{flex-shrink:0;width:8px;height:8px;border-radius:50%;background:color-mix(in srgb,var(--card-accent, var(--stone)) 65%,var(--surface-2))}.app-course-switcher-option-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.app-course-switcher-option-title{font-size:13.5px;font-weight:650;line-height:1.3;color:var(--text-1)}.app-course-switcher-option-sub{font-size:11px;font-weight:600;color:var(--text-3)}.app-course-switcher-option-check,.app-course-switcher-option-check-slot{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px}.app-course-switcher-option-check svg{width:14px;height:14px;color:var(--card-accent, var(--accent))}.app-course-switcher-option-busy{flex-shrink:0;display:inline-flex;align-items:center;width:18px;justify-content:center}.app-course-switcher-option-busy .spinner{width:14px;height:14px}.app-chrome-util{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.app-chrome-util-btn{display:inline-flex;align-items:center;padding:7px 12px;font:inherit;font-size:12px;font-weight:700;color:var(--text-2);background:var(--surface-2);border:1px solid var(--border-subtle);border-radius:var(--radius-pill);cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s,color .15s,box-shadow .15s}.app-chrome-util-btn:hover{color:var(--text-1);background:var(--nav-hover-bg);border-color:var(--border-subtle)}.app-chrome-util-btn.active{color:var(--btn-text);background:var(--btn-fill);border-color:var(--btn-border);box-shadow:var(--glow-sm)}.app-chrome-menu{position:relative}.app-chrome-avatar{width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-pill);border:1px solid var(--border-subtle);background:var(--surface-2);color:var(--text-1);font-size:12px;font-weight:800;letter-spacing:.03em;cursor:pointer;box-shadow:var(--glow-sm);transition:transform var(--dur-fast),box-shadow var(--dur-fast),border-color var(--dur-fast)}.app-chrome-avatar:hover,.app-chrome-menu.is-open .app-chrome-avatar{transform:translateY(-1px);border-color:var(--border-subtle);box-shadow:var(--glow-md);color:var(--text-strong)}.app-chrome-menu-panel{position:absolute;top:calc(100% + 8px);right:0;z-index:var(--z-overlay);min-width:220px;padding:8px;border-radius:14px;border:1px solid var(--border-subtle);background:var(--surface-1);box-shadow:var(--glow-md);backdrop-filter:none;-webkit-backdrop-filter:none}.app-chrome-menu-user{display:flex;flex-direction:column;gap:2px;padding:8px 10px 10px;border-bottom:1px solid var(--border-subtle);margin-bottom:4px}.app-chrome-menu-user strong{font-size:13px;color:var(--text-1)}.app-chrome-menu-user span{font-size:11px;color:var(--text-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-chrome-menu-item{display:block;width:100%;padding:9px 10px;text-align:left;font:inherit;font-size:13px;font-weight:650;color:var(--text-2);background:transparent;border:none;border-radius:10px;cursor:pointer;transition:background .12s,color .12s}.app-chrome-menu-item:hover:not(:disabled){color:var(--text-1);background:var(--nav-hover-bg)}.app-chrome-menu-item-danger:hover:not(:disabled){color:#fecaca;background:#ef44441f}.app-chrome-menu-item:disabled{opacity:.55;cursor:default}.app-chrome-context-transition{display:flex;justify-content:center;min-width:0}.app-chrome-course-nav{display:flex;justify-content:center;flex:1 1 auto;min-width:0;max-width:100%;overflow-x:auto;scrollbar-width:thin;-webkit-overflow-scrolling:touch;-webkit-mask-image:linear-gradient(to right,transparent,#000 12px,#000 calc(100% - 12px),transparent);mask-image:linear-gradient(to right,transparent,#000 12px,#000 calc(100% - 12px),transparent)}.app-chrome-course-tabs{display:flex;flex-wrap:nowrap;justify-content:center;gap:4px;min-width:0;padding:0 8px 2px}.app-chrome-course-tab{display:inline-flex;align-items:center;padding:8px 14px;font:inherit;font-size:13px;font-weight:700;color:var(--text-3);background:transparent;border:1px solid transparent;border-radius:var(--radius-pill);cursor:pointer;white-space:nowrap;transition:background .15s,color .15s,border-color .15s,box-shadow .15s}.app-chrome-course-tab:hover{color:var(--text-1);background:var(--nav-hover-bg);border-color:var(--border-subtle)}.app-chrome-course-tab.active{color:var(--text-1);background:var(--nav-active-bg);border-color:var(--accent-border);box-shadow:none}.app-chrome-brand{display:flex;align-items:center;gap:10px;padding:6px 10px;margin:0;border:none;background:transparent;cursor:pointer;border-radius:var(--radius-md);color:inherit}.app-chrome-brand:hover{background:var(--nav-hover-bg)}.app-chrome-brand.is-home{box-shadow:inset 0 0 0 1px var(--accent-border)}.app-chrome .brand-wordmark{color:var(--text-1)}.app-chrome-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;min-width:0}.app-chrome-pill{display:inline-flex;align-items:center;gap:7px;padding:8px 14px;font:inherit;font-size:13.5px;font-weight:650;color:var(--text-3);background:transparent;border:1px solid transparent;border-radius:var(--radius-pill);cursor:pointer;white-space:nowrap;transition:background .15s,color .15s,border-color .15s,box-shadow .15s}.app-chrome-pill:hover{color:var(--text-1);background:var(--nav-hover-bg)}.app-chrome-pill.active{color:var(--text-1);background:var(--nav-active-bg);border-color:var(--accent-border);box-shadow:none}.app-chrome-pill .spinner{width:12px;height:12px;border-color:#0f766e40;border-top-color:var(--accent)}.app-chrome-sets{flex-shrink:0;padding:6px 10px;border:1px solid var(--accent-border);border-radius:var(--radius-pill);background:var(--accent-subtle);color:var(--accent-deep);font:inherit;font-size:12px;font-weight:700;cursor:pointer;white-space:nowrap}.app-chrome-sets:hover{background:var(--accent-glow);color:var(--accent-hover)}.app-chrome-account{position:fixed;left:28px;bottom:28px;z-index:var(--z-hud);display:flex;align-items:center;gap:12px;min-width:0;max-width:min(420px,calc(100vw - 56px));margin:0;padding:12px 14px 12px 12px;border-radius:16px;background:var(--surface-1);border:1px solid var(--border-subtle);box-shadow:var(--glow-md);backdrop-filter:none;-webkit-backdrop-filter:none}.app-chrome-account-meta{display:flex;flex-direction:column;min-width:0;gap:1px}.app-chrome-account-name{font-size:13px;font-weight:700;color:var(--text-1);max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-chrome-account-email{font-size:11px;font-weight:500;color:var(--text-3);max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-chrome-signout{padding:7px 12px;font:inherit;font-size:12.5px;font-weight:650;color:var(--text-2);background:transparent;border:1px solid rgba(255,255,255,.14);border-radius:var(--radius-md);cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s,color .15s}.app-chrome-signout:hover:not(:disabled){color:var(--danger-text);border-color:var(--danger-border);background:var(--danger-bg)}.app-chrome-signout:disabled{opacity:.6;cursor:default}.course-home-pane{flex:1;min-height:0;overflow:auto}.course-home-pane[hidden],.exam-viewport[hidden]{display:none!important}.course-home{--course-gap: 20px;max-width:1440px;margin:0 auto;padding:38px 28px 110px;display:flex;flex-direction:column;align-items:stretch;gap:32px;color:var(--text-1)}.course-home .brand-wordmark{color:var(--text-1)}.course-home-hero{display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px}.course-home-hero .brand-lockup-lg .brand-wordmark{font-size:clamp(42px,5.6vw,58px)}.course-home-hero .brand-lockup-lg .brand-mark{width:56px;height:56px}.course-home-lead{margin:0;max-width:620px;font-size:18px;line-height:1.55;color:var(--text-2)}.course-home-quick{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.course-home-quick-btn{display:flex;flex-direction:column;align-items:flex-start;gap:5px;padding:20px 22px;text-align:left;font:inherit;color:var(--text-1);background:var(--surface-1);border:1px solid var(--border-subtle);border-radius:18px;cursor:pointer;transition:transform var(--dur-fast),border-color var(--dur-fast),box-shadow var(--dur-fast),background var(--dur-fast)}.course-home-quick-btn:hover{transform:translateY(-1px);border-color:var(--accent-border);background:var(--surface-2);box-shadow:var(--glow-md)}.course-home-quick-icon{font-size:22px;line-height:1;color:var(--accent-bright)}.course-home-quick-label{font-size:17px;font-weight:750;letter-spacing:-.02em}.course-home-quick-hint{font-size:13.5px;line-height:1.35;color:var(--text-3)}.course-home-boards{display:flex;flex-direction:column;gap:16px}.course-home-section-title{margin:0;font-size:13.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--text-label)}.course-home-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:var(--course-gap);align-items:stretch}.course-card{--card-accent: var(--accent);position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:9px;width:100%;height:100%;min-height:286px;padding:22px;text-align:left;font:inherit;color:var(--text-1);background:var(--surface-1);border:1px solid var(--border-subtle);border-radius:22px;box-shadow:var(--glow-sm);backdrop-filter:none;-webkit-backdrop-filter:none;cursor:pointer;overflow:hidden;transition:transform var(--dur-fast),border-color var(--dur-fast),box-shadow var(--dur-fast)}.course-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--card-accent) 32%,var(--border-subtle));box-shadow:var(--glow-md),0 0 0 1px color-mix(in srgb,var(--card-accent) 12%,transparent)}.course-card:hover .course-card-glow{opacity:.9}.course-card-bio{--card-accent: var(--shade-sage);--card-tint: var(--shade-sage-bg)}.course-card-calc{--card-accent: var(--shade-dusk);--card-tint: var(--shade-dusk-bg)}.course-card-chem{--card-accent: var(--shade-clay);--card-tint: var(--shade-clay-bg)}.course-card-physics_1{--card-accent: var(--shade-sea);--card-tint: var(--shade-sea-bg)}.course-card-physics_2{--card-accent: var(--shade-mist);--card-tint: var(--shade-mist-bg)}.course-card-em{--card-accent: var(--shade-blush);--card-tint: var(--shade-blush-bg)}.course-card-mechanics{--card-accent: var(--shade-honey);--card-tint: var(--shade-honey-bg)}.course-card-stats{--card-accent: var(--shade-stone);--card-tint: var(--shade-stone-bg)}.course-card-amc8{--card-accent: var(--shade-sea);--card-tint: var(--shade-sea-bg)}.course-card-amc10{--card-accent: var(--shade-rose);--card-tint: var(--shade-rose-bg)}.course-card-amc12{--card-accent: var(--shade-slate);--card-tint: var(--shade-slate-bg)}.course-card-aime{--card-accent: var(--shade-dusk);--card-tint: var(--shade-dusk-bg)}.course-card-history{--card-accent: var(--shade-slate);--card-tint: var(--shade-slate-bg)}.course-card-packets{--card-accent: var(--shade-dusk);--card-tint: var(--shade-dusk-bg)}.course-card-stage{display:flex;align-items:center;justify-content:center;width:100%;height:132px;margin:0 0 8px;border-radius:15px;background:linear-gradient(180deg,var(--blend-c) 0%,var(--blend-a) 100%);border:1px solid var(--paper-border);overflow:hidden}.course-amp{font-family:var(--font-display);font-style:normal;font-weight:700;letter-spacing:0;font-size:.92em}.course-card-kicker{display:block;min-height:1.2em;font-family:var(--font-display);font-size:14.5px;font-weight:700;letter-spacing:.03em;text-transform:none;color:var(--card-accent)}.course-card-title{display:block;min-height:2.5em;font-family:var(--font-brand);font-size:25px;font-weight:700;letter-spacing:-.03em;line-height:1.2}.course-card-tagline{display:block;min-height:1.2em;font-size:14px;line-height:1.35;color:var(--text-3)}.course-card-action{display:inline-flex;align-items:center;gap:9px;margin-top:auto;padding-top:4px;font-size:15.5px;font-weight:750;color:var(--card-accent)}.course-card-action .spinner{width:12px;height:12px;border-color:#0f766e40;border-top-color:var(--accent)}.course-home-links{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 22px;margin-top:8px}.course-home-history{align-self:center;padding:0;border:none;background:none;font:inherit;font-size:14px;font-weight:650;color:var(--accent-bright);cursor:pointer;text-decoration:none}.course-home-history:hover{text-decoration:underline}.course-scene{width:92%;height:100%;overflow:visible}.dna-strand{stroke-width:3;stroke-linecap:round;fill:none;stroke-dasharray:14 8;animation:dna-flow 1.8s linear infinite}.dna-strand-a,.dna-strand-b{stroke:var(--scene-ink)}.dna-rungs line{stroke:var(--scene-ink-soft);stroke-width:2;stroke-linecap:round;animation:dna-rung 1.8s ease-in-out infinite}.dna-rungs line:nth-child(2){animation-delay:.15s}.dna-rungs line:nth-child(3){animation-delay:.3s}.dna-rungs line:nth-child(4){animation-delay:.45s}.dna-rungs line:nth-child(5){animation-delay:.6s}.scene-dna{transform-origin:80px 44px;transform-box:fill-box;animation:dna-sway 3.4s ease-in-out infinite}.calc-axis{stroke:var(--scene-ink-faint);stroke-width:1.5}.calc-curve{stroke:var(--scene-ink);stroke-width:2.5;stroke-linecap:round;fill:none}.calc-limit-fill,.calc-riemann-bar{fill:color-mix(in srgb,var(--scene-ink) 70%,var(--scene-accent-deep) 30%)}.calc-riemann-bar{stroke:none;shape-rendering:geometricPrecision}.stats-axis{stroke:var(--scene-ink-faint);stroke-width:1.5}.stats-bars rect{fill:var(--scene-fill-mid);stroke:var(--scene-ink);stroke-width:1.2;transform-origin:center bottom;transform-box:fill-box;animation:stats-bar 2.8s ease-in-out infinite}.stats-bars rect:nth-child(1){animation-delay:0s}.stats-bars rect:nth-child(2){animation-delay:.12s}.stats-bars rect:nth-child(3){animation-delay:.24s}.stats-bars rect:nth-child(4){animation-delay:.36s}.stats-bars rect:nth-child(5){animation-delay:.48s}.stats-bars rect:nth-child(6){animation-delay:.6s}.stats-curve{stroke:var(--scene-ink);stroke-width:2.2;stroke-linecap:round;fill:none;stroke-dasharray:220;stroke-dashoffset:220;animation:stats-curve 3.4s ease-in-out infinite}.stats-mean{animation:stats-mean 3.4s ease-in-out infinite}.stats-mean line{stroke:var(--scene-accent);stroke-width:1.8;stroke-dasharray:3 3}.flask-outline{stroke:var(--scene-ink);stroke-width:2.4;stroke-linejoin:round;stroke-linecap:round}.flask-shine{stroke:var(--scene-ink-faint);stroke-width:1.6;stroke-linecap:round}.flask-liquid{fill:var(--scene-fill-mid);transform-origin:80px 68px;animation:flask-slosh 2.4s ease-in-out infinite}.flask-bubble{fill:var(--scene-fill-light);stroke:var(--scene-ink-faint);stroke-width:.6;animation:flask-bubble 2.1s ease-in infinite}.flask-bubble-b{animation-delay:.5s}.flask-bubble-c{animation-delay:1.1s}.flask-vapor{stroke:var(--scene-ink-soft);stroke-width:1.6;stroke-linecap:round;animation:flask-steam 2s ease-in-out infinite}.flask-vapor-b{animation-delay:.7s}.p1-arc{stroke:var(--scene-ink-faint);stroke-width:2;stroke-dasharray:5 5;animation:p1-dash 1.2s linear infinite}.p1-ground{stroke:var(--scene-ink-soft);stroke-width:2}.p1-ball{fill:var(--scene-accent-deep);stroke:var(--scene-ink);stroke-width:1.2;offset-path:path("M16 70 Q80 6 144 70");offset-rotate:0deg;animation:p1-fly 2.1s cubic-bezier(.45,.05,.55,.95) infinite}.p2-beam{stroke:var(--scene-highlight);stroke-width:2.5;stroke-linecap:round}.p2-prism{fill:var(--scene-fill-mid);stroke:var(--scene-ink);stroke-width:2}.p2-ray{stroke-width:2.2;stroke-linecap:round;animation:p2-shimmer 1.6s ease-in-out infinite}.p2-ray-r{stroke:var(--scene-ray-a)}.p2-ray-g{stroke:var(--scene-ray-b);animation-delay:.15s}.p2-ray-b{stroke:var(--scene-ray-c);animation-delay:.3s}.em-field{fill:none;stroke:var(--scene-ink-faint);stroke-width:1.5;animation:em-pulse 2.4s ease-in-out infinite}.em-field-b{stroke:var(--scene-ink-soft);animation-delay:.4s}.em-spokes{stroke:var(--scene-ink-soft);stroke-width:1.3;stroke-linecap:round;transform-origin:80px 44px;transform-box:view-box;animation:em-spin 8s linear infinite}.em-proton-body{fill:var(--scene-accent);stroke:var(--scene-ink);stroke-width:1.2}.em-plus{fill:none;stroke:var(--scene-highlight);stroke-width:1.8;stroke-linecap:round}.em-electron-pack{offset-path:path("M118 44a38 20 0 1 1-76 0 38 20 0 1 1 76 0");offset-rotate:0deg;animation:em-orbit-run 3.1s linear infinite}.em-electron{fill:var(--scene-fill);stroke:var(--scene-ink);stroke-width:1.2}.em-electron-minus{fill:none;stroke:var(--scene-ink);stroke-width:1.8}.mech-ceiling{stroke:var(--scene-ink);stroke-width:3;stroke-linecap:round}.mech-pendulum{transform-origin:80px 14px;transform-box:view-box;animation:mech-swing 1.7s ease-in-out infinite}.mech-rod{stroke:var(--scene-ink-soft);stroke-width:2.4}.mech-bob{fill:var(--scene-accent-deep);stroke:var(--scene-ink);stroke-width:1.2}.mech-arc{stroke:var(--scene-ink-faint);stroke-width:1.5;stroke-dasharray:3 4}@keyframes dna-sway{0%,to{transform:rotate(-7deg)}50%{transform:rotate(7deg)}}@keyframes dna-flow{to{stroke-dashoffset:-44}}@keyframes dna-rung{0%,to{opacity:.25}50%{opacity:1}}@keyframes stats-bar{0%,to{transform:scaleY(.88);opacity:.65}50%{transform:scaleY(1);opacity:1}}@keyframes stats-curve{0%{stroke-dashoffset:220;opacity:.35}45%{stroke-dashoffset:0;opacity:1}to{stroke-dashoffset:0;opacity:.75}}@keyframes stats-mean{0%,to{opacity:.35}50%{opacity:1}}@keyframes flask-slosh{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes flask-bubble{0%{transform:translateY(0);opacity:0}18%{opacity:1}to{transform:translateY(-28px);opacity:0}}@keyframes flask-steam{0%,to{opacity:.2;transform:translateY(0)}50%{opacity:.9;transform:translateY(-4px)}}@keyframes p1-dash{to{stroke-dashoffset:-20}}@keyframes p1-fly{0%{offset-distance:0%}to{offset-distance:100%}}@keyframes p2-shimmer{0%,to{opacity:.45}50%{opacity:1}}@keyframes em-pulse{0%,to{opacity:.4}50%{opacity:1}}@keyframes em-spin{to{transform:rotate(360deg)}}@keyframes em-orbit-run{to{offset-distance:100%}}@keyframes mech-swing{0%,to{transform:rotate(-32deg)}50%{transform:rotate(32deg)}}@media(prefers-reduced-motion:reduce){.scene-dna,.dna-strand,.dna-rungs line,.calc-riemann,.calc-limit-fill,.stats-bars rect,.stats-curve,.stats-mean,.flask-liquid,.flask-bubble,.flask-vapor,.p1-arc,.p1-ball,.p2-ray,.em-field,.em-spokes,.em-electron-pack,.mech-pendulum{animation:none}}@media(max-width:1100px){.app-chrome-course-tab{padding:7px 10px;font-size:12px}.app-course-switcher-title-full{display:none}.app-course-switcher-title-short{display:inline}.app-chrome-left .app-course-switcher,.app-chrome-course-title-transition{max-width:min(200px,100%)}}@media(max-width:960px){.app-chrome-brand .brand-wordmark{display:none}.app-chrome-brand{padding:6px 8px}.app-chrome-util-btn{padding:6px 9px;font-size:11px}}@media(max-width:820px){.app-chrome-course{grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:10px 14px}.app-chrome-course .app-chrome-center{grid-column:1 / -1;order:3;justify-self:stretch}.app-chrome-course .app-chrome-left{grid-column:1}.app-chrome-course .app-chrome-right{grid-column:2;display:none}.app-chrome-left .app-course-switcher,.app-chrome-course-title-transition{max-width:min(240px,100%)}.app-chrome-course-nav{-webkit-mask-image:none;mask-image:none;justify-content:flex-start}.app-chrome-course-tabs{justify-content:flex-start;padding:0 0 2px}}@media(max-width:720px){.app-chrome{grid-template-columns:1fr auto;gap:10px;padding:10px 14px}.app-chrome-course .app-chrome-center{grid-column:1 / -1;order:3;justify-self:stretch}.app-chrome:not(.app-chrome-course) .app-chrome-center{grid-column:1 / -1;order:3}.app-chrome-util{display:none}.course-home{padding:24px 16px 48px}.course-home-quick{grid-template-columns:1fr}.course-home-grid{grid-template-columns:1fr 1fr}.course-card{min-height:240px}}@media(max-width:520px){.course-home-grid{grid-template-columns:1fr}}.app-sidebar{position:relative;z-index:2;width:248px;flex-shrink:0;display:flex;flex-direction:column;gap:8px;padding:14px 12px;border-right:1px solid var(--border-subtle);background:var(--surface-2);backdrop-filter:none;-webkit-backdrop-filter:none;overflow-y:auto;overflow-x:hidden;color:var(--text-1);transition:width .2s ease,padding .2s ease;align-self:stretch;min-height:0}.app-sidebar-top{display:flex;align-items:center;justify-content:flex-end;margin-bottom:2px}.app-sidebar-toggle{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--surface-1);color:var(--text-2);font:inherit;font-size:12.5px;font-weight:700;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.app-sidebar-toggle:hover{background:var(--nav-hover-bg);border-color:var(--accent-border);color:var(--accent)}.app-sidebar-toggle-icon{font-size:16px;line-height:1}.app-sidebar-item-icon{width:20px;height:20px;flex-shrink:0;color:var(--text-3)}.app-sidebar-item.active .app-sidebar-item-icon{color:var(--accent-bright)}.app-shell.sidebar-collapsed .app-sidebar{width:76px;padding:12px 8px 14px}.app-shell.sidebar-collapsed .app-sidebar-top{justify-content:center}.app-shell.sidebar-collapsed .app-sidebar-toggle{width:100%;justify-content:center;padding:8px 6px}.app-shell.sidebar-collapsed .app-sidebar-toggle-text,.app-shell.sidebar-collapsed .app-sidebar-section-label,.app-shell.sidebar-collapsed .app-sidebar-item-blurb,.app-shell.sidebar-collapsed .app-sidebar-account-meta,.app-shell.sidebar-collapsed .app-sidebar-sets{display:none}.app-shell.sidebar-collapsed .app-sidebar-footer{display:flex;justify-content:center;padding-top:10px}.app-shell.sidebar-collapsed .app-sidebar-menu{display:flex;justify-content:center}.app-shell.sidebar-collapsed .app-sidebar-item{flex-direction:column;align-items:center;justify-content:center;gap:0;padding:10px 4px}.app-shell.sidebar-collapsed .app-sidebar-item-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.app-shell.sidebar-collapsed .app-sidebar-account-card{justify-content:center;padding:8px 4px}.app-shell.sidebar-collapsed .app-sidebar-signout{padding:8px 6px;font-size:11px}.app-sidebar-nav,.app-sidebar-footer{display:flex;flex-direction:column;gap:4px}.app-sidebar-nav{flex:1 1 auto;min-height:0}.app-sidebar-footer{margin-top:auto;padding-top:12px;border-top:1px solid var(--border-subtle)}.app-sidebar-menu{position:relative;width:100%}.app-sidebar-menu-trigger{cursor:pointer;border:1px solid var(--border-subtle);box-shadow:none;transition:background var(--dur-fast),border-color var(--dur-fast),transform var(--dur-fast)}.app-sidebar-menu-trigger:hover,.app-sidebar-menu.is-open .app-sidebar-menu-trigger{transform:none;border-color:var(--accent-border);background:var(--nav-hover-bg)}.app-sidebar-menu .app-chrome-menu-panel{top:auto;right:auto;bottom:calc(100% + 8px);left:0;min-width:min(240px,calc(100vw - 24px))}.app-shell.sidebar-collapsed .app-sidebar-menu .app-chrome-menu-panel{left:calc(100% + 8px);bottom:0}.app-sidebar-util-icon{grid-row:1 / span 2;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;background:var(--surface-1);color:var(--text-2);font-size:13px;font-weight:800;border:1px solid var(--border-subtle)}.app-sidebar-item.active .app-sidebar-util-icon{color:var(--accent);background:var(--accent-subtle);border-color:var(--accent-border)}.app-sidebar-section-label{margin:0 0 4px;padding:0 10px;font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-3)}.app-sidebar-item{display:grid;grid-template-columns:auto 1fr;column-gap:10px;row-gap:2px;align-items:center;width:100%;padding:10px;text-align:left;border:1px solid transparent;border-radius:var(--radius-md);background:transparent;cursor:pointer;transition:background .15s,border-color .15s;font:inherit;color:inherit}.app-sidebar-item-icon{grid-row:1 / span 2}.app-sidebar-item-label,.app-sidebar-item-blurb{grid-column:2}.app-sidebar-item:hover{background:var(--nav-hover-bg);border-color:var(--border-subtle)}.app-sidebar-item.active{background:var(--nav-active-bg);border-color:var(--accent-border);box-shadow:inset 2px 0 0 var(--accent)}.app-sidebar-home-icon{grid-row:1 / span 2;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;background:var(--accent-subtle);color:var(--accent);font-size:14px;font-weight:800}.app-sidebar-item-label{font-size:14px;font-weight:700;color:var(--text-1);letter-spacing:-.01em}.app-sidebar-item.active .app-sidebar-item-label{color:var(--text-1)}.app-sidebar-account-card{display:flex;align-items:center;gap:10px;min-width:0;padding:4px 8px 8px}.app-sidebar-avatar{flex-shrink:0;width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-pill);background:var(--accent-subtle);color:var(--accent);font-size:12px;font-weight:750;letter-spacing:.02em}.app-sidebar-account-name{font-size:13px;font-weight:700;color:var(--text-1);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-sidebar-account-email{font-size:11px;font-weight:500;color:var(--text-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-sidebar-sets{width:100%;padding:8px 10px;border:1px solid rgba(94,234,212,.28);border-radius:var(--radius-md);background:#0f766e38;color:var(--text-strong);font:inherit;font-size:12px;font-weight:700;cursor:pointer;text-align:left}.app-sidebar-sets:hover{background:#0f766e61;color:var(--text-1)}.app-sidebar-signout{width:100%;padding:8px 10px;font:inherit;font-size:12.5px;font-weight:650;color:var(--text-2);background:transparent;border:1px solid rgba(255,255,255,.14);border-radius:var(--radius-md);cursor:pointer;transition:background .15s,border-color .15s,color .15s}.app-sidebar-signout:hover:not(:disabled){color:var(--danger-text);border-color:var(--danger-border);background:#fee2e214}.app-shell.sidebar-collapsed .app-sidebar{width:76px;padding:12px 8px 14px;align-items:stretch}.app-sidebar-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:4px}.app-shell.sidebar-collapsed .app-sidebar-top{flex-direction:column;align-items:stretch;justify-content:center;gap:8px;margin-bottom:8px}.app-sidebar-brand{padding:2px 4px 12px;border-bottom:1px solid rgba(20,40,60,.08);margin-bottom:6px;flex:1;min-width:0}.app-sidebar-brand-mark{display:flex;justify-content:center;color:var(--accent)}.app-sidebar-brand-mark .brand-mark{width:34px;height:34px}.app-sidebar-toggle{display:inline-flex;align-items:center;gap:6px;flex-shrink:0;margin-left:auto;padding:7px 10px;border:1px solid rgba(20,40,60,.12);border-radius:var(--radius-md);background:#ffffffd9;color:var(--text);font:inherit;font-size:12.5px;font-weight:700;cursor:pointer;transition:background .15s,border-color .15s}.app-sidebar-toggle:hover{background:#fff;border-color:#0f766e59;color:var(--accent)}.app-shell.sidebar-collapsed .app-sidebar-toggle{margin-left:0;width:100%;justify-content:center;padding:8px 6px;font-size:16px}.app-sidebar-toggle-text{letter-spacing:.01em}.app-sidebar-kicker{margin:0 0 4px;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}.app-sidebar-title{margin:0;font-size:20px;font-weight:750;letter-spacing:-.03em;line-height:1.2;color:var(--text-1)}.app-sidebar-nav,.app-sidebar-footer{display:flex;flex-direction:column;gap:6px}.app-sidebar-footer{margin-top:auto;padding-top:10px;border-top:1px solid var(--border-subtle)}.app-sidebar-section-label{margin:0 0 2px;padding:0 10px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3)}.app-sidebar-item{display:flex;flex-direction:column;align-items:flex-start;gap:3px;width:100%;padding:12px;text-align:left;border:1px solid transparent;border-radius:var(--radius-md);background:transparent;cursor:pointer;transition:background .15s,border-color .15s,box-shadow .15s}.app-shell.sidebar-collapsed .app-sidebar-item{align-items:center;padding:10px 4px;text-align:center}.app-sidebar-item:hover{background:#ffffff0f;border-color:#ffffff14}.app-sidebar-item.active{background:#4a3c2a14;border-color:#4a3c2a38;box-shadow:none}.app-sidebar-item-label{font-size:14.5px;font-weight:700;color:var(--text-1);letter-spacing:-.01em}.app-shell.sidebar-collapsed .app-sidebar-item-label{font-size:11px;line-height:1.2;word-break:break-word}.app-sidebar-item.active .app-sidebar-item-label{color:var(--accent-bright)}.app-sidebar-item-blurb{font-size:11.5px;line-height:1.35;color:var(--text-3)}.app-sidebar-generating{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:650;letter-spacing:.02em;color:var(--accent)}.app-sidebar-generating .spinner{width:12px;height:12px;border-width:2px}.app-shell.sidebar-collapsed .app-sidebar-generating{margin-top:2px}.app-sidebar-expand-chip{flex-shrink:0;align-self:flex-start;margin-top:4px;padding:8px 12px;border:1px solid rgba(20,40,60,.12);border-radius:var(--radius-md);background:#ffffffe6;color:var(--accent);font:inherit;font-size:12.5px;font-weight:700;cursor:pointer}.app-sidebar-expand-chip:hover{border-color:#0f766e59;background:#fff}.app-sidebar-account{display:flex;flex-direction:column;gap:8px;padding-top:10px;border-top:1px solid rgba(20,40,60,.08)}.app-shell.sidebar-collapsed .app-sidebar-account{align-items:stretch}.app-sidebar-account-card{display:flex;align-items:center;gap:10px;min-width:0;padding:4px 8px}.app-shell.sidebar-collapsed .app-sidebar-account-card{justify-content:center;padding:4px 0}.app-sidebar-avatar{flex-shrink:0;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-pill);background:#0f766e24;color:var(--accent);font-size:12px;font-weight:750;letter-spacing:.02em}.app-sidebar-account-meta{display:flex;flex-direction:column;min-width:0;gap:1px}.app-sidebar-account-name{font-size:13px;font-weight:700;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-sidebar-account-email{font-size:11px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-sidebar-signout{width:100%;padding:8px 10px;font:inherit;font-size:12.5px;font-weight:650;color:var(--text-muted);background:transparent;border:1px solid rgba(20,40,60,.12);border-radius:var(--radius-md);cursor:pointer;transition:background .15s,border-color .15s,color .15s}.app-sidebar-signout:hover:not(:disabled){color:var(--danger-text);border-color:var(--danger-border);background:var(--danger-bg)}.app-sidebar-signout:disabled{opacity:.6;cursor:default}.topbar-compact{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:14px 28px 12px}.topbar-compact .topbar-title{font-size:22px}.topbar-compact .topbar-subtitle{font-size:13.5px;max-width:720px}@media(max-width:900px){.app-body{flex-direction:column}.app-sidebar{width:100%;max-height:none;border-right:none;border-bottom:1px solid rgba(255,255,255,.08);padding-bottom:12px}.app-sidebar-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.app-sidebar-section-label{grid-column:1 / -1}}.app-bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background:var(--surface-base)}.brand-lockup{display:flex;align-items:center;min-width:0}.brand-mark{flex-shrink:0;color:var(--accent)}.brand-lockup-text{min-width:0}.brand-lockup-name{margin:0;line-height:1}.brand-wordmark{font-family:var(--font-brand);font-optical-sizing:auto;font-weight:800;letter-spacing:-.045em;color:var(--text)}.brand-ap{color:var(--accent)}.brand-tagline{margin:8px 0 0;font-family:var(--font-body);font-style:normal;font-weight:600;font-size:16px;letter-spacing:-.02em;color:var(--text-muted)}.brand-courses{margin:6px 0 0;font-size:11.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}.brand-lockup-sm{gap:8px}.brand-lockup-sm .brand-mark{width:22px;height:22px}.brand-lockup-sm .brand-wordmark{font-size:18px}.brand-lockup-md{gap:10px}.brand-lockup-md .brand-mark{width:28px;height:28px}.brand-lockup-md .brand-wordmark{font-size:22px}.brand-lockup-lg{flex-direction:column;align-items:center;text-align:center;gap:16px}.brand-lockup-lg .brand-mark{width:58px;height:58px;filter:drop-shadow(0 8px 18px rgba(15,118,110,.28));animation:brand-breathe 5.5s ease-in-out infinite}.brand-lockup-lg .brand-wordmark{font-size:clamp(36px,11vw,56px);font-weight:700;letter-spacing:-.055em}.brand-lockup-lg .brand-tagline{font-size:18px}@keyframes brand-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.07)}}.auth-shell{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;min-height:100vh;min-height:100dvh;width:100%;overflow:auto;padding:24px}.auth-shell .brand-wordmark,.course-home .brand-wordmark,.app-chrome .brand-wordmark{color:var(--text-1)}.auth-shell .brand-tagline,.course-home .brand-tagline{color:var(--text-2)}.auth-shell .brand-ap,.course-home .brand-ap,.app-chrome .brand-ap,.auth-shell .brand-mark,.course-home .brand-mark,.app-chrome .brand-mark{color:var(--accent)}.auth-hero{position:relative;z-index:1}.auth-back{position:absolute;top:18px;left:18px;z-index:2;display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border:1px solid var(--accent-border);border-radius:10px;background:var(--surface-1);color:var(--text-1);font:inherit;font-size:14px;font-weight:700;cursor:pointer}.auth-back:hover{background:var(--accent-subtle)}.auth-card{position:relative;z-index:1;width:min(420px,100%);padding:24px 26px 22px}.auth-kicker{margin:0 0 4px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}.auth-title{margin:0;font-family:var(--font-brand);font-size:24px;font-weight:800;letter-spacing:-.03em}.auth-subtitle{margin:0 0 16px;font-size:13.5px;line-height:1.45;color:var(--text-muted)}.auth-mode-toggle{display:flex;gap:4px;padding:3px;margin-bottom:18px;background:#e8eef6d9;border-radius:var(--radius-md)}.auth-mode-btn{flex:1;padding:8px 12px;font:inherit;font-size:13px;font-weight:650;color:var(--text-muted);background:transparent;border:none;border-radius:calc(var(--radius-md) - 3px);cursor:pointer}.auth-mode-btn:hover{color:var(--text)}.auth-mode-btn.active{background:var(--surface);color:var(--accent);box-shadow:var(--shadow-sm)}.auth-form{display:flex;flex-direction:column;gap:12px}.auth-form .btn-generate{margin-top:6px}.auth-google-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;padding:11px 14px;font:inherit;font-size:14.5px;font-weight:650;color:var(--text);background:#fff;border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;box-shadow:var(--shadow-sm);transition:border-color .15s,background .15s,box-shadow .15s}.auth-google-btn:hover:not(:disabled){border-color:#c5d0de;background:#fbfcfe;box-shadow:0 2px 8px #15203314}.auth-google-btn:disabled{opacity:.65;cursor:default}.auth-google-icon{width:18px;height:18px;flex-shrink:0}.auth-google-spinner{border-color:#0f766e38;border-top-color:var(--accent)}.auth-divider{display:flex;align-items:center;gap:12px;margin:16px 0;color:var(--text-muted);font-size:11.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--border)}.auth-field{display:flex;flex-direction:column;gap:6px}.auth-field .panel-label{margin:0}.auth-input{width:100%;padding:11px 12px;font-size:14.5px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-alt);color:var(--text);transition:border-color .15s,box-shadow .15s}.auth-input:focus-visible{border-color:var(--accent)}.auth-error{margin:0;padding:10px 12px;font-size:13px;line-height:1.4;color:var(--danger-text);background:var(--danger-bg);border:1px solid var(--danger-border);border-radius:var(--radius-md)}.auth-boot{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;gap:10px;margin:18px 0 0;font-size:14px;font-weight:650;color:var(--text-muted)}.auth-boot .spinner{border-color:#0f766e40;border-top-color:var(--accent)}@media(max-width:560px){.brand-lockup-lg .brand-wordmark{font-size:40px}.brand-lockup-lg .brand-mark{width:46px;height:46px}.brand-lockup-lg .brand-tagline{font-size:16px}.brand-courses{letter-spacing:.04em}}.topbar{position:relative;z-index:2;display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:16px 22px;border-bottom:1px solid rgba(255,255,255,.45);background:#ffffff8c;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);flex-shrink:0}.topbar-brand{min-width:0}.topbar-kicker{margin:0 0 2px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}.topbar-title{margin:0;font-size:18px;font-weight:750;letter-spacing:-.02em}.topbar-subtitle{margin:4px 0 0;font-size:12.5px;color:var(--text-muted)}.topbar-spacer{flex:1}.app-body{flex:1;display:flex;min-height:0}.panel{background:var(--surface);border:1px solid rgba(255,255,255,.65);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:18px 18px 16px;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.panel-label{font-size:12.5px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-label);margin:0 0 10px}.prompt-textarea{width:100%;min-height:84px;resize:vertical;padding:10px 12px;font-size:13.5px;line-height:1.45;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-alt);color:var(--text);transition:border-color .15s,box-shadow .15s}.prompt-textarea:focus-visible{border-color:var(--accent)}.chip-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.chip{font-size:11.5px;padding:5px 10px;border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--surface-alt);color:var(--text-muted);cursor:pointer;transition:background .15s,color .15s,border-color .15s;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chip:hover{background:#ece9ff;color:var(--accent);border-color:#c7c2f2}.spinner{width:15px;height:15px;border-radius:50%;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;animation:spin .7s linear infinite;flex-shrink:0}.spinner-lg{width:30px;height:30px;border:3px solid rgba(67,56,202,.15);border-top-color:var(--accent);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error-card{background:var(--danger-bg);border:1px solid var(--danger-border);border-radius:var(--radius-md);padding:12px 14px;color:var(--danger-text)}.error-card-title{font-size:13px;font-weight:700;margin:0 0 4px;display:flex;align-items:center;justify-content:space-between;gap:8px}.error-card-dismiss{background:none;border:none;color:var(--danger-text);cursor:pointer;font-size:15px;line-height:1;opacity:.6;padding:0 2px}.error-card-dismiss:hover{opacity:1}.error-card-message{font-size:12.5px;line-height:1.5;margin:0}.error-card details{margin-top:8px}.error-card summary{font-size:11.5px;cursor:pointer;color:var(--danger-text);opacity:.75}.error-card pre{margin:6px 0 0;font-size:10.5px;white-space:pre-wrap;word-break:break-word;max-height:160px;overflow-y:auto}.notice-card{border-color:var(--neutral-border);background:var(--surface-alt)}.sidebar::-webkit-scrollbar{width:8px}.sidebar::-webkit-scrollbar-thumb{background:#ddd6c4;border-radius:var(--radius-pill)}.sidebar::-webkit-scrollbar-track{background:transparent}.exam-viewport{position:relative;z-index:1;flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;background:transparent}.exam-viewport-inner{flex:1;min-height:0;overflow:auto}.exam-viewport-pane:not([hidden]){flex:1;min-height:0;overflow:auto}.exam-viewport-pane[hidden]{display:none!important}.exam-page{max-width:1560px;margin:0 auto;padding:28px 36px 72px;display:flex;flex-direction:column;gap:22px}.exam-form.panel{display:flex;flex-direction:column;padding:var(--space-6) 30px 0;background:var(--surface-1);border:1px solid var(--border-subtle);color:var(--text-1);color-scheme:light;box-shadow:var(--glow-sm);overflow:hidden}.exam-form-body{display:flex;flex-direction:column;gap:0;padding-bottom:24px}.exam-form-config{margin-top:24px;padding:20px 0 0;border-radius:0;border:none;border-top:1px solid var(--border-subtle);background:transparent}.exam-form-content{margin-top:24px;display:flex;flex-direction:column;gap:0}@media(max-width:720px){.exam-page{padding:var(--space-4) var(--space-4) var(--space-10);gap:var(--space-4)}.exam-form.panel{padding:var(--space-4)}.exam-count-row,.exam-materials-header,.exam-focus-header{flex-direction:column;align-items:stretch}}.exam-form>.panel-label{font-size:15px;font-weight:800;letter-spacing:.04em;margin-bottom:28px;color:var(--text-1)}.exam-form-header{margin-bottom:4px;text-align:center}.exam-form-title{margin:0;font-family:var(--font-brand);font-size:24px;font-weight:800;letter-spacing:-.02em;color:var(--text-1)}.exam-form-subtitle{margin:0;font-size:14px;font-weight:600;color:var(--text-3)}.exam-form-optional{margin-top:20px}.exam-form-optional .panel-label{font-size:13px;font-weight:650;text-transform:none;letter-spacing:0;color:var(--text-2)}.exam-prompt-panel{margin-top:24px;padding:18px 0 0;border-top:1px solid var(--border-subtle);display:flex;flex-direction:column;gap:12px}.exam-prompt-panel-head{display:flex;align-items:baseline;gap:10px}.exam-prompt-panel-label{margin:0;font-size:17px;font-weight:750;color:var(--text-1)}.exam-prompt-panel-lead{margin:0;font-size:14.5px;line-height:1.45;color:var(--text-3)}.exam-prompt-presets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.exam-prompt-preset{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:12px 14px;text-align:left;border:1px solid var(--border-subtle);border-radius:12px;background:var(--surface-1);color:var(--text-2);font:inherit;cursor:pointer;transition:background .15s,border-color .15s}.exam-prompt-preset strong{font-size:15px;font-weight:750;color:var(--text-1)}.exam-prompt-preset span{font-size:13.5px;line-height:1.35;color:var(--text-3)}.exam-prompt-preset:hover:not(:disabled){background:var(--blend-c);border-color:var(--border-subtle)}.exam-prompt-preset:disabled{opacity:.45;cursor:not-allowed}.exam-prompt-input-lg{min-height:130px;font-size:16px;line-height:1.5}.exam-prompt-drawer{margin-top:24px;border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:var(--surface-2);overflow:hidden}.exam-prompt-drawer-toggle{display:flex;align-items:center;gap:8px;width:100%;padding:14px 16px;border:0;background:transparent;color:var(--text-1);font:inherit;font-size:14px;font-weight:700;text-align:left;cursor:pointer}.exam-prompt-drawer-toggle:hover:not(:disabled){background:var(--nav-hover-bg)}.exam-prompt-drawer-optional{font-weight:500;color:var(--text-3)}.exam-prompt-drawer-panel{display:flex;flex-direction:column;gap:12px;padding:0 16px 16px}.exam-prompt-tags{display:flex;flex-wrap:wrap;gap:8px}.exam-prompt-tag{padding:7px 14px;border-radius:var(--radius-pill);border:1px solid var(--border-subtle);background:var(--surface-1);color:var(--text-2);font:inherit;font-size:13.5px;font-weight:650;cursor:pointer;transition:background .15s,border-color .15s}.exam-prompt-tag:hover:not(:disabled){background:var(--nav-hover-bg);border-color:var(--accent-border)}.exam-prompt-drawer .exam-prompt-input{min-height:96px;padding:14px 16px}.exam-advanced{margin-top:20px}.exam-advanced-toggle{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--border-subtle);border-radius:var(--radius-pill);background:var(--surface-1);color:var(--text-2);font:inherit;font-size:13px;font-weight:650;cursor:pointer}.exam-advanced-toggle:hover:not(:disabled){color:var(--text-1);border-color:var(--accent-border);background:var(--nav-hover-bg)}.exam-advanced-toggle-icon{font-size:14px;line-height:1}.exam-advanced-panel{display:flex;flex-direction:column;gap:16px;margin-top:12px;padding:16px;border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:var(--surface-2)}.exam-advanced-label,.exam-render-mode-label{margin:0 0 8px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3)}.exam-render-mode-switch{display:inline-flex;padding:3px;border-radius:var(--radius-pill);background:var(--surface-2);border:1px solid var(--border-subtle)}.exam-render-mode-option{padding:8px 16px;border:0;border-radius:var(--radius-pill);background:transparent;color:var(--text-2);font:inherit;font-size:13px;font-weight:700;cursor:pointer}.exam-render-mode-option.is-on{background:var(--btn-fill);color:var(--btn-text);box-shadow:var(--glow-sm)}.exam-render-mode-hint{margin:8px 0 0;font-size:12px;color:var(--text-3);line-height:1.45}.exam-advanced-action-row{display:flex;flex-direction:column;gap:8px}.exam-advanced-action{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:var(--surface-1);color:var(--text-2);font:inherit;text-align:left;cursor:pointer}.exam-advanced-action strong{color:var(--text-1);font-size:13px}.exam-advanced-action span{font-size:12px;line-height:1.4}.exam-advanced-action.is-on{border-color:var(--btn-border);background:var(--blend-c)}.exam-generator-footer{position:sticky;bottom:0;z-index:3;margin:0 -30px;padding:18px 30px;border-top:1px solid var(--border-subtle);background:var(--surface-1);backdrop-filter:none;-webkit-backdrop-filter:none}.exam-generator-cta{width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-height:64px;border:1px solid var(--btn-border);border-radius:13px;padding:16px 22px;font:inherit;cursor:pointer;background:var(--btn-fill);color:var(--btn-text);box-shadow:var(--glow-sm);transition:transform var(--dur-fast),box-shadow var(--dur-fast),background var(--dur-fast),border-color var(--dur-fast),opacity var(--dur-fast)}.exam-generator-cta-main{font-size:18px;font-weight:750;letter-spacing:-.01em;line-height:1.25}.exam-generator-cta-detail{font-size:14.5px;font-weight:600;line-height:1.3;color:#ffffffe0}.exam-generator-cta:hover:not(:disabled){transform:translateY(-1px);background:var(--btn-fill-hover);border-color:#2a231847;box-shadow:var(--glow-md)}.exam-generator-cta:disabled{opacity:.45;cursor:default;transform:none;box-shadow:none}.gen-confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:12000;display:flex;align-items:center;justify-content:center;padding:16px;background:#120e0a8c}.gen-confirm{display:flex;flex-direction:column;gap:16px;width:min(820px,100%);max-height:calc(100vh - 32px);overflow-y:auto;padding:22px 24px 18px;border-radius:var(--radius-lg);border:1px solid var(--border-subtle);background:var(--surface-1);color:var(--text-1);box-shadow:0 24px 80px #0000004d}.gen-confirm-title{margin:0;font-family:var(--font-display);font-size:22px;font-weight:700;line-height:1.25;color:var(--text-strong)}.gen-confirm-section{display:flex;flex-direction:column;gap:6px;padding-top:14px;border-top:1px solid var(--border-subtle)}.gen-confirm-section h3{margin:0;font-size:12.5px;font-weight:750;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3)}.gen-confirm-strong{margin:0;font-size:16px;font-weight:700}.gen-confirm-list{margin:0;padding-left:20px;font-size:14.5px;line-height:1.45;color:var(--text-2)}.gen-confirm-note{margin:0;font-size:14px;line-height:1.45;color:var(--text-2)}.gen-confirm-quote{font-style:italic;overflow-wrap:anywhere}.gen-confirm-field{display:flex;flex-direction:column;gap:8px}.gen-confirm-label{font-size:14.5px;font-weight:650}.gen-confirm-segments{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.gen-confirm-segment{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 12px;border:1px solid var(--accent-border);border-radius:var(--radius-md);background:transparent;color:var(--text-1);font:inherit;text-align:left;cursor:pointer;transition:background var(--dur-fast),border-color var(--dur-fast)}.gen-confirm-segment:hover{background:var(--nav-hover-bg)}.gen-confirm-segment.is-selected{border-color:var(--accent);background:var(--accent-subtle);box-shadow:inset 0 0 0 1px var(--accent)}.gen-confirm-segment-label{font-size:14.5px;font-weight:700}.gen-confirm-segment-hint{font-size:12.5px;line-height:1.3;color:var(--text-3)}.gen-confirm-segment-cost{margin-top:4px;font-size:13px;font-weight:700;color:var(--text-2)}.gen-confirm-check{display:flex;align-items:flex-start;gap:10px;margin-top:6px;font-size:14.5px;font-weight:650;cursor:pointer}.gen-confirm-check input{margin-top:3px;accent-color:var(--accent)}.gen-confirm-hint{font-weight:400;color:var(--text-3)}.gen-confirm-breakdown{display:flex;flex-direction:column;gap:4px;margin:0}.gen-confirm-breakdown>div{display:flex;justify-content:space-between;gap:12px;font-size:14.5px}.gen-confirm-breakdown dt{color:var(--text-2)}.gen-confirm-breakdown dd{margin:0;font-variant-numeric:tabular-nums;white-space:nowrap}.gen-confirm-total{margin-top:4px;padding-top:6px;border-top:1px dashed var(--accent-border);font-weight:750}.gen-confirm-total dt{color:var(--text-1)}.gen-confirm-balance{margin:4px 0 0;font-size:14px;line-height:1.45;color:var(--text-2)}.gen-confirm-balance.is-short{color:var(--danger-text);font-weight:650}.gen-confirm-actions{display:flex;justify-content:flex-end;gap:10px;padding-top:4px}.gen-confirm-cancel,.gen-confirm-go{min-height:42px;padding:10px 18px;border-radius:var(--radius-md);font:inherit;font-size:15px;font-weight:700;cursor:pointer;transition:background var(--dur-fast),border-color var(--dur-fast)}.gen-confirm-cancel{border:1px solid var(--accent-border);background:transparent;color:var(--text-1)}.gen-confirm-cancel:hover{background:var(--nav-hover-bg)}.gen-confirm-go{border:1px solid var(--btn-border);background:var(--btn-fill);color:var(--btn-text);box-shadow:var(--glow-sm)}.gen-confirm-go:hover{background:var(--btn-fill-hover)}.gen-confirm :where(button,input):focus-visible{outline:2px solid var(--accent);outline-offset:2px}.gen-confirm-ideas{margin-top:10px}.gen-confirm-ideas-list{display:flex;flex-direction:column;gap:6px;margin:2px 0 0;padding:0;list-style:none}.gen-confirm-idea{display:flex;align-items:flex-start;gap:10px;padding:9px 12px;border:1px solid var(--accent-border);border-radius:var(--radius-md);cursor:pointer;transition:background var(--dur-fast),border-color var(--dur-fast)}.gen-confirm-idea:hover{background:var(--nav-hover-bg)}.gen-confirm-idea.is-selected{border-color:var(--accent);background:var(--accent-subtle)}.gen-confirm-idea input{margin-top:3px;accent-color:var(--accent)}.gen-confirm-idea-title{display:block;font-size:14.5px;font-weight:700;color:var(--text-1)}.gen-confirm-idea-detail{display:block;font-size:13px;line-height:1.4;color:var(--text-3)}.gen-confirm-other{display:flex;align-items:center;gap:10px;margin-top:4px}.gen-confirm-other-label{font-size:14px;font-weight:650;color:var(--text-2)}.gen-confirm-other input{flex:1;min-width:0;padding:8px 10px;border:1px solid var(--accent-border);border-radius:var(--radius-sm);background:var(--surface-base);color:var(--text-1);font:inherit;font-size:14px}.gen-confirm-retry{padding:0;border:none;background:none;color:var(--accent);font:inherit;font-weight:700;text-decoration:underline;cursor:pointer}@media(max-width:520px){.gen-confirm{padding:18px 16px 14px}.gen-confirm-segments{grid-template-columns:1fr}.gen-confirm-actions{flex-direction:column-reverse}.gen-confirm-cancel,.gen-confirm-go{width:100%}}.exam-mastery-pill{display:inline-flex;flex-direction:column;align-items:flex-end;gap:4px;flex-shrink:0;margin-left:auto;min-width:7.5rem}.exam-mastery-pill-track{display:block;width:100%;height:5px;border-radius:var(--radius-pill);background:#ffffff1a;overflow:hidden}.exam-mastery-pill-fill{display:block;height:100%;border-radius:inherit;transition:width .2s ease}.exam-mastery-pill.is-danger .exam-mastery-pill-fill,.exam-mastery-pill.is-weak .exam-mastery-pill-fill{background:linear-gradient(90deg,#f87171,#ef4444)}.exam-mastery-pill.is-warning .exam-mastery-pill-fill,.exam-mastery-pill.is-ok .exam-mastery-pill-fill{background:linear-gradient(90deg,#fbbf24,#f59e0b)}.exam-mastery-pill.is-neutral .exam-mastery-pill-fill{background:linear-gradient(90deg,#94a3b8,#64748b)}.exam-mastery-pill.is-success .exam-mastery-pill-fill,.exam-mastery-pill.is-strong .exam-mastery-pill-fill{background:linear-gradient(90deg,#6b5f52,#4a4034)}.exam-mastery-pill.is-empty .exam-mastery-pill-fill{background:#fff3;width:0!important}.exam-mastery-pill-text{font-size:11.5px;font-weight:750;font-variant-numeric:tabular-nums;letter-spacing:.01em;white-space:nowrap}.exam-mastery-pill.is-danger .exam-mastery-pill-text,.exam-mastery-pill.is-weak .exam-mastery-pill-text{color:var(--danger-text)}.exam-mastery-pill.is-warning .exam-mastery-pill-text,.exam-mastery-pill.is-ok .exam-mastery-pill-text{color:#6b4f0a}.exam-mastery-pill.is-neutral .exam-mastery-pill-text{color:var(--text-3)}.exam-mastery-pill.is-success .exam-mastery-pill-text,.exam-mastery-pill.is-strong .exam-mastery-pill-text{color:#2d4a38}.exam-mastery-pill.is-empty .exam-mastery-pill-text{color:var(--text-3)}.exam-mastery-pill.is-compact{display:inline-flex;flex-direction:row;align-items:center;min-width:0;margin-left:0;padding:2px 8px;border-radius:999px;background:#ffffff0f}.exam-mastery-pill.is-compact .exam-mastery-pill-track{display:none}.exam-mastery-pill.is-compact .exam-mastery-pill-text{font-size:12px;font-weight:750}.exam-mastery-pill.is-compact.is-danger{background:#ef44441f}.exam-mastery-pill.is-compact.is-warning{background:#f59e0b1f}.exam-mastery-pill.is-compact.is-neutral{background:#94a3b81f}.exam-mastery-pill.is-compact.is-success{background:#4a3c2a1f}.exam-mastery-pill.is-compact.is-empty{background:#ffffff0a}@media(min-width:900px){.exam-mastery-pill:not(.is-compact){min-width:9rem}}.exam-prompt-field{display:flex;flex-direction:column;gap:10px;margin-top:28px}.exam-prompt-field>.panel-label{font-size:13px;font-weight:800;color:var(--text-1)}.exam-prompt-shell{position:relative}.exam-prompt-input{width:100%;resize:vertical;min-height:128px;padding:16px 18px 44px;font-size:16px;line-height:1.55;color:var(--text-1);background:var(--surface-2);border:1px solid var(--border-subtle);border-radius:var(--radius-md);transition:border-color .15s,box-shadow .15s}.exam-prompt-picker{position:absolute;left:10px;bottom:8px;z-index:2}.exam-prompt-caret{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:0;border-radius:6px;background:transparent;color:var(--text-3);cursor:pointer}.exam-prompt-caret svg{width:12px;height:12px;transition:transform .12s}.exam-prompt-caret:hover:not(:disabled),.exam-prompt-shell.is-open .exam-prompt-caret{color:var(--accent-bright);background:#4a3c2a1f}.exam-prompt-shell.is-open .exam-prompt-caret svg{transform:rotate(180deg)}.exam-prompt-caret:disabled{opacity:.45;cursor:not-allowed}.exam-prompt-menu{position:absolute;left:0;bottom:calc(100% + 6px);z-index:var(--z-hud);width:min(420px,calc(100vw - 48px));padding:6px;border:1px solid var(--border-subtle);border-radius:12px;background:var(--surface-1);box-shadow:0 16px 40px #0006;display:flex;flex-direction:column;gap:2px}.exam-prompt-menu-item{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;text-align:left;border:0;border-radius:8px;background:transparent;color:var(--text-2);font:inherit;padding:10px 12px;cursor:pointer;display:flex;flex-direction:column;gap:3px}.exam-prompt-menu-item strong{color:var(--text-1);font-size:14px;font-weight:700}.exam-prompt-menu-item span{font-size:12.5px;line-height:1.4;color:var(--text-3)}.exam-prompt-menu-item:hover,.exam-prompt-menu-item:focus-visible{background:#4a3c2a1a}.exam-prompt-menu-item.is-selected{background:#4a3c2a24}.exam-prompt-menu-item.is-selected strong{color:var(--accent-bright)}.exam-prompt-input::placeholder{color:var(--text-3)}.exam-prompt-input:focus-visible{border-color:var(--accent)}.exam-prompt-input:disabled{opacity:.65;cursor:not-allowed}.exam-materials{display:flex;flex-direction:column;gap:10px;margin-top:28px}.exam-materials-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.exam-materials-header>.panel-label{font-size:13px;font-weight:800;color:var(--text-1);margin:0}.exam-materials-hint{margin:0;font-size:13px;line-height:1.45;color:var(--text-3)}.exam-materials-drop{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:132px;padding:28px 20px;text-align:center;cursor:pointer;color:var(--text-1);background:var(--surface-2);border:1px dashed rgba(255,255,255,.16);border-radius:var(--radius-md);transition:border-color .15s,box-shadow .15s,background .15s}.exam-materials-drop:hover,.exam-materials-drop.is-over{border-color:#4a3c2a73;box-shadow:0 0 0 2px #4a3c2a1f;background:#182238}.exam-materials-drop.is-disabled{opacity:.65;cursor:not-allowed}.exam-materials-input{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}.exam-materials-drop-title{font-size:15px;font-weight:700}.exam-materials-drop-sub{font-size:13px;line-height:1.45;color:var(--text-3)}.exam-materials-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.exam-materials-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:8px 10px;background:var(--surface-2);border:1px solid var(--border-subtle);border-radius:var(--radius-md)}.exam-materials-kind{font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;padding:3px 7px;border-radius:var(--radius-pill);background:var(--accent-subtle);color:var(--accent)}.exam-materials-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600}.exam-materials-size{font-size:12px;color:#e8eef880}.exam-materials-remove{border:0;background:transparent;color:var(--text-2);font-size:20px;line-height:1;cursor:pointer;padding:0 4px}.exam-materials-remove:hover{color:var(--danger-text)}.exam-course-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0 0 14px}.exam-course-option{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-alt);cursor:pointer;transition:border-color .15s,box-shadow .15s,background .15s}.exam-course-option input{position:absolute;opacity:0;pointer-events:none}.exam-course-option.is-selected{border-color:var(--accent);background:var(--surface);box-shadow:0 0 0 3px #4338ca1f}.exam-course-name{font-size:13.5px;font-weight:700;color:var(--text)}.exam-course-math{font-size:11.5px;color:var(--text-3);font-weight:600}.exam-count-row{display:flex;flex-wrap:wrap;gap:20px;margin-bottom:8px}.exam-count-field{flex:1 1 240px;display:flex;flex-direction:column;gap:10px}.exam-count-label{display:inline-flex;align-items:center;gap:9px;margin:0;font-size:14px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--text-1)}.exam-count-icon{display:inline-flex;align-items:center;justify-content:center;width:25px;height:25px;border-radius:7px;color:var(--text-1);background:var(--blend-b);flex-shrink:0}.exam-count-icon svg{width:16px;height:16px}.exam-count-stepper{display:flex;align-items:stretch;gap:9px}.exam-count-step{width:50px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;font:inherit;font-size:25px;font-weight:600;line-height:1;color:var(--text-1);background:var(--surface-2);border:1px solid var(--border-subtle);border-radius:var(--radius-md);cursor:pointer;transition:background .15s,border-color .15s,color .15s}.exam-count-step:hover:not(:disabled){background:var(--blend-c);border-color:var(--border-subtle)}.exam-count-step:disabled{opacity:.4;cursor:not-allowed}.exam-count-field input[type=number]{width:100%;min-width:0;padding:16px 18px;font-size:20px;font-weight:700;text-align:center;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--surface-2);color:var(--text-strong);transition:border-color .15s,box-shadow .15s;-webkit-appearance:textfield;appearance:textfield;-moz-appearance:textfield}.exam-count-field input[type=number]::-webkit-outer-spin-button,.exam-count-field input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.exam-count-field input[type=number]:focus-visible{border-color:var(--accent)}.exam-count-warning{font-size:14px;color:var(--danger-text);margin:0 0 10px}.exam-honesty{margin:8px 0 12px;font-size:13px;line-height:1.45;color:var(--text-3)}.exam-form .link-btn{margin-top:0;font-size:inherit;color:var(--accent-bright)}.exam-form .link-btn:hover{color:var(--accent-hover)}.exam-focus-section{margin-top:28px;padding:20px 0 0;border-radius:0;background:transparent;border:none;border-top:1px solid var(--border-subtle);box-shadow:none}.exam-focus-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 16px;margin-top:0;margin-bottom:14px;padding:0;background:transparent;border:none}.exam-focus-header-main{display:flex;align-items:center;gap:10px;flex-wrap:wrap;min-width:0}.exam-focus-selection-badge{font-size:13.5px;font-weight:650;color:var(--text-1);padding:5px 12px;border-radius:var(--radius-pill);background:var(--blend-b);border:1px solid var(--border-subtle)}.exam-focus-header .panel-label{margin:0;font-size:12.5px;font-weight:650;letter-spacing:.07em;text-transform:uppercase;color:var(--text-label)}.exam-focus-actions{display:flex;flex-wrap:wrap;gap:9px;align-items:center}.exam-focus-action-btn{display:inline-flex;align-items:center;justify-content:center;padding:8px 14px;border:1px solid var(--border-subtle);border-radius:var(--radius-pill);background:var(--surface-1);color:var(--text-1);font:inherit;font-size:14px;font-weight:650;cursor:pointer;white-space:nowrap;transition:background var(--dur-fast),border-color var(--dur-fast),color var(--dur-fast),box-shadow var(--dur-fast)}.exam-focus-action-btn:hover:not(:disabled){color:var(--text-1);background:var(--surface-2);border-color:var(--accent-border)}.exam-focus-action-btn:disabled{opacity:.45;cursor:not-allowed}.exam-focus-action-btn-muted:hover:not(:disabled){color:var(--danger-text);background:var(--danger-bg);border-color:var(--danger-border)}.exam-focus-link{border:0;background:none;padding:0;font:inherit;font-size:14px;font-weight:650;color:var(--accent);cursor:pointer}.exam-focus-link:disabled{opacity:.4;cursor:not-allowed}.exam-focus-pill{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;font:inherit;font-size:13px;font-weight:650;color:var(--text-1);background:#ffffff0d;border:1px solid rgba(255,255,255,.14);border-radius:var(--radius-pill);cursor:pointer;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:background .15s,border-color .15s,color .15s,box-shadow .15s,transform .12s}.exam-focus-pill svg{width:14px;height:14px;flex-shrink:0}.exam-focus-pill:hover:not(:disabled){background:#ffffff17;border-color:#ffffff38;box-shadow:0 4px 14px #00000038;transform:translateY(-1px)}.exam-focus-pill-clear{color:var(--text-2);background:#ffffff0f;border-color:#ffffff1f}.exam-focus-pill-clear:hover:not(:disabled){color:#fecaca;background:#b91c1c47;border-color:#fca5a566}.exam-focus-pill-weak{color:#fecaca;background:#7f1d1d47;border-color:#fca5a552}.exam-focus-pill-weak:hover:not(:disabled){color:#fee2e2;background:#7f1d1d6b;border-color:#fca5a57a}.exam-focus-pill:disabled{opacity:.4;cursor:not-allowed}.exam-unit-tree{display:flex;flex-direction:column;gap:6px;padding:0;margin-bottom:0;border:none;border-radius:0;background:transparent}.exam-unit{position:relative;border:1px solid var(--border-subtle);border-radius:10px;background:var(--surface-2);transition:border-color .15s,background .15s}.exam-unit.is-selected{border-color:#4a3c2a73;background:#4a3c2a14}.exam-unit.is-selected:after{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--accent-bright);border-radius:10px 0 0 10px;pointer-events:none}.exam-unit.is-partial{border-color:#4a3c2a47;background:#4a3c2a0d}.exam-unit.is-weak-score:not(.is-selected):not(.is-partial){border-color:#f8717159}.exam-unit-summary{list-style:none;cursor:pointer;padding:10px 12px;display:grid;grid-template-columns:auto 1fr auto auto auto;align-items:center;gap:9px 11px}.exam-unit-summary .exam-check{display:contents}.exam-unit-summary .exam-check input[type=checkbox]{grid-column:1}.exam-unit-summary .exam-unit-title{grid-column:2;min-width:0}.exam-unit-summary .exam-mastery-pill{grid-column:3}.exam-unit-summary .exam-unit-count{grid-column:4}.exam-unit-summary .exam-unit-chevron{grid-column:5}.exam-unit-summary::-webkit-details-marker{display:none}.exam-unit-summary::marker{content:""}.exam-unit-chevron{width:32px;height:32px;flex-shrink:0;margin-left:4px;border:0;border-radius:7px;background:transparent;cursor:pointer;position:relative}.exam-unit-chevron:hover,.exam-unit-chevron:focus-visible{background:#e8eef81a}.exam-unit-chevron:after{content:"";position:absolute;top:11px;left:12px;width:9px;height:9px;border-right:2px solid var(--text-3);border-bottom:2px solid var(--text-3);transform:rotate(45deg);transition:transform .15s}.exam-unit[open] .exam-unit-chevron:after{transform:rotate(225deg) translate(-2px,-2px)}.exam-check{display:flex;align-items:center;gap:11px;cursor:pointer;flex:1;min-width:0;font-size:17.5px;line-height:1.4;color:var(--text-2)}.exam-check input[type=checkbox]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:20px;height:20px;flex-shrink:0;margin:0;border-radius:5px;border:1.5px solid rgba(232,238,248,.28);background:var(--surface-base);cursor:pointer;display:grid;place-content:center;transition:background .15s,border-color .15s}.exam-check input[type=checkbox]:after{content:"";width:9px;height:5px;border:2px solid transparent;border-top:0;border-right:0;transform:rotate(-45deg) translateY(-1px);opacity:0}.exam-check input[type=checkbox]:checked{background:#047857;border-color:var(--accent)}.exam-check input[type=checkbox]:checked:after{border-color:#ecfdf8;opacity:1}.exam-check input[type=checkbox]:indeterminate{background:#134e4a;border-color:var(--accent)}.exam-check input[type=checkbox]:indeterminate:after{width:8px;height:0;border:0;border-bottom:2px solid #ecfdf8;transform:none;opacity:1}.exam-unit-title{display:flex;align-items:baseline;gap:11px;flex:1;min-width:0;font-size:17.5px;font-weight:700;line-height:1.35;color:var(--text-1)}.exam-unit-num{color:var(--text-2);font-size:15.5px;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}.exam-unit-score{flex-shrink:0;margin-left:auto;min-width:2.8em;text-align:right;font-size:14.5px;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:.02em;color:#dbe4f073}.exam-unit-score.is-weak{color:var(--danger-text)}.exam-unit-score.is-ok{color:#fbbf24}.exam-unit-score.is-strong{color:#6b5f52}.exam-unit-count{font-size:13.5px;font-weight:650;font-variant-numeric:tabular-nums;color:var(--text-2);white-space:nowrap}.exam-unit.is-selected .exam-unit-count,.exam-unit.is-partial .exam-unit-count{color:var(--text-1)}.exam-subunit-list{list-style:none;margin:0;padding:0 12px 12px 18px;display:flex;flex-direction:column;gap:8px}.exam-check-sub{font-weight:500;font-size:15.5px;padding:9px 12px;border-radius:9px;border:1px solid var(--border-subtle);background:var(--surface-1);color:var(--text-1);transition:border-color .15s,background .15s}.exam-check-sub:hover{background:var(--blend-c)}.exam-check-sub:has(input:checked){border-color:#4a3c2a59;background:#4a3c2a14}.exam-subunit-id{font-variant-numeric:tabular-nums;color:var(--text-2);min-width:2.6em;font-size:15px;font-weight:700}.exam-subunit-text{display:flex;flex-direction:column;gap:2px;min-width:0}.signal-list{display:flex;flex-direction:column;gap:3px}.signal-item{display:block;padding-left:12px;text-indent:-12px}.signal-item:before{content:"•";display:inline-block;width:12px;text-indent:0;color:#0f766e}.signal-see{font-weight:600}.signal-arrow{color:#0f766e;font-weight:700}.exam-subunit-cue-label{display:block;margin-bottom:2px;font-size:11.5px;font-weight:800;letter-spacing:.03em;text-transform:uppercase}.exam-subunit-cue{font-size:13.5px;font-weight:450;line-height:1.35;color:var(--text-2)}.exam-check-sub:has(.exam-subunit-cue){align-items:flex-start}.exam-check-sub:has(.exam-subunit-cue) .exam-subunit-id,.exam-check-sub:has(.exam-subunit-cue) input[type=checkbox]{margin-top:1px}.exam-unit-tree::-webkit-scrollbar{width:8px}.exam-unit-tree::-webkit-scrollbar-thumb{background:#e8eef82e;border-radius:var(--radius-pill)}.exam-unit-tree::-webkit-scrollbar-track{background:transparent}.exam-result.panel{background:var(--surface-1);border:1px solid var(--border-subtle);color:var(--text-1);color-scheme:dark;box-shadow:0 16px 40px #00000059}.exam-result .result-title{color:var(--text-1)}.exam-result .result-concept,.exam-pdf-pending{color:var(--text-3)}.exam-result-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:4px}.exam-download-group{display:flex;flex-wrap:wrap;gap:10px;flex-shrink:0}.exam-download{width:auto;margin-top:0;padding:10px 18px;white-space:nowrap;text-decoration:none;flex-shrink:0;border:0;cursor:pointer}.exam-diagram-missing{margin:10px 0;padding:10px 12px;border-radius:8px;border:1px dashed rgba(255,180,100,.35);background:#ffa05014;color:var(--text-3);font-size:13px}.exam-timing{display:flex;flex-direction:column;gap:6px}.exam-timing-label{margin:0;font-size:13px;font-weight:700;color:var(--text-2)}.exam-form .exam-timing-label{color:var(--text-2)}.exam-timing-row{display:flex;flex-wrap:wrap;gap:8px}.exam-timing-choice{display:flex;flex-direction:column;align-items:flex-start;gap:3px;margin:0;border:1px solid var(--border-subtle);background:var(--surface-1);color:var(--text-1);border-radius:10px;padding:10px 14px;cursor:pointer;font:inherit;text-align:left;transition:border-color var(--dur-fast),background var(--dur-fast),box-shadow var(--dur-fast),transform var(--dur-fast)}.exam-timing-choice:hover:not(.is-on){border-color:var(--border-subtle);background:var(--blend-c);box-shadow:var(--glow-sm);transform:translateY(-1px)}.exam-timing-choice-title{font-size:14px;font-weight:750}.exam-timing-choice-hint{font-size:12.5px;font-weight:500;color:var(--text-2);line-height:1.4}.exam-timing-choice.is-on{border-color:var(--btn-border);background:var(--btn-fill);color:var(--btn-text);box-shadow:var(--glow-sm);transform:none}.exam-timing:not(.exam-timing-start) .exam-timing-choice.is-on .exam-timing-choice-hint{color:#f5efe3e6}.exam-timing-start{margin:4px 0 14px}.exam-timing-start .exam-timing-choice{flex:1;min-width:160px;border-color:var(--paper-border);background:#fff;color:var(--paper-ink);padding:12px 14px}.exam-timing-start .exam-timing-choice-hint{color:var(--text-2)}.exam-timing-start .exam-timing-choice.is-on{border-color:var(--paper-navy);background:var(--paper-hover);color:var(--paper-navy);box-shadow:0 0 0 1px #4a3c2a40}.exam-timing-start .exam-timing-choice.is-on .exam-timing-choice-title{color:var(--paper-navy)}.exam-timing-start .exam-timing-choice.is-on .exam-timing-choice-hint{color:var(--paper-navy-mid)}.exam-difficulty{margin:4px 0 18px}.exam-difficulty .exam-timing-choice{flex:1;min-width:0;padding:8px 12px}.exam-difficulty .exam-timing-choice-hint{display:none}@media(max-width:719px){.exam-difficulty .exam-timing-choice-hint{display:block;font-size:11.5px}.exam-prompt-presets{grid-template-columns:1fr}}.bb-untimed-pill{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:6px 10px;border-radius:var(--radius-pill);background:#ffffff24;color:var(--paper-chrome-fg);white-space:nowrap}.exam-pdf-pending{align-self:center;font-size:13px;color:var(--text-muted)}.exam-mcq-list,.exam-frq-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:16px;font-family:var(--exam-prose-font)}.exam-mcq-list>li,.exam-frq-list>li{padding:14px 16px;background:var(--surface-2);border:1px solid var(--border-subtle);border-radius:var(--radius-md)}.exam-question-stem{margin:0 0 10px;font-size:14.5px;line-height:1.55;color:var(--text-1)}.exam-question-stem .katex{font-size:1.03em}.exam-diagram{display:flex;justify-content:center;margin:8px auto 16px;padding:16px 18px;max-width:960px;background:#fff;border:1px solid var(--border);border-radius:var(--radius-md);overflow:auto;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.exam-diagram img{max-width:min(920px,100%);width:auto;height:auto;margin:0 auto;object-fit:contain}.exam-choice-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px}.exam-choice-list li{display:flex;align-items:baseline;gap:8px;font-size:13.5px;line-height:1.5;color:var(--text-muted)}.exam-choice-list .katex,.exam-part-list .katex{font-size:1em}.exam-choice-letter{flex-shrink:0;width:18px;height:18px;border-radius:50%;background:var(--surface);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:10.5px;font-weight:700;color:var(--text)}.exam-frq-meta{margin:0 0 6px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--accent)}.exam-part-list{margin:10px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px;font-family:var(--exam-prose-font)}.exam-part-list li{font-size:12.5px;line-height:1.45;color:var(--text-muted)}.exam-part-label{font-weight:700;color:var(--text)}.exam-notice{margin-top:4px}.exam-viewport::-webkit-scrollbar{width:8px}.exam-viewport::-webkit-scrollbar-thumb{background:#ddd6c4;border-radius:var(--radius-pill)}.exam-viewport::-webkit-scrollbar-track{background:transparent}.bio-topic-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:6px;padding:10px;margin-bottom:6px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-alt)}.bio-topic-check{padding:4px 6px;font-size:12.5px}.bio-frq-title{margin:0 0 8px}.bio-diagram-caption{margin:6px 0 0;font-size:11px;font-style:italic;color:var(--text-muted);text-align:center}.bio-command-word{font-weight:700;color:var(--accent)}.bio-part-points{color:var(--text-muted);font-size:11.5px}.bio-frq-scoring{margin-top:12px;padding-top:10px;border-top:1px dashed var(--border)}.bio-frq-scoring summary{cursor:pointer;font-size:11.5px;font-weight:700;color:var(--accent);text-transform:uppercase;letter-spacing:.04em}.bio-frq-scoring .exam-part-list{margin-top:8px}.bio-scoring-label{font-weight:700;color:var(--text-muted);font-size:11.5px}.bio-mcq-question-list{margin-top:10px}.bio-mcq-stem{margin-bottom:6px}.bio-mcq-choice-correct{color:var(--text);font-weight:600}.bio-mcq-choice-correct .exam-choice-letter{background:var(--accent);border-color:var(--accent);color:#fff}.bio-mcq-answer-entry{margin-bottom:10px}.bio-mcq-rationale-list{margin:6px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px}.bio-mcq-rationale-list li{display:flex;align-items:baseline;gap:8px;font-size:12.5px;line-height:1.4;color:var(--text-muted)}.bb-overlay{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;height:100vh;height:100dvh;z-index:var(--z-overlay);background:var(--paper-wrap);display:flex;flex-direction:column;margin:0;padding:0;overflow:hidden}.bb-overlay :where(button,a,input,select,textarea,[tabindex]):focus-visible{outline-color:var(--paper-navy);box-shadow:var(--focus-ring-paper)}.bb-overlay:fullscreen{background:var(--paper-wrap);width:100%;height:100%}.bb-shell{display:flex;flex-direction:column;flex:1;width:100%;height:100%;min-height:0;background:var(--paper-bg);color:var(--paper-ink);font-family:Segoe UI,Helvetica Neue,Arial,sans-serif}.bb-topbar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;padding:0 16px;min-height:56px;height:auto;background:var(--paper-navy);color:var(--paper-chrome-fg);flex-shrink:0;position:relative;z-index:40;overflow:visible}.bb-topbar-left,.bb-topbar-right{display:flex;align-items:center;gap:10px;min-width:0;flex-wrap:wrap;padding:8px 0;overflow:visible}.bb-topbar-right{justify-content:flex-end}.bb-more{position:relative;z-index:50}.bb-more-menu{position:absolute;right:0;top:calc(100% - 1px);z-index:60;display:none;flex-direction:column;min-width:188px;padding:6px;background:var(--paper-navy-hover);border:1px solid rgba(255,255,255,.18);border-radius:8px;box-shadow:0 10px 28px #00000059}.bb-more:hover .bb-more-menu,.bb-more.is-open .bb-more-menu{display:flex}.bb-fs-btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;border:1px solid rgba(255,255,255,.35);border-radius:4px;background:var(--border-subtle);color:var(--paper-chrome-fg);cursor:pointer}.bb-fs-btn svg{width:16px;height:16px}.bb-fs-btn:hover{background:#ffffff2e}.bb-more-trigger{border:1px solid rgba(255,255,255,.45);border-radius:4px;padding:6px 12px;background:#f5efe31f;color:var(--paper-chrome-fg);font:inherit;font-size:13px;font-weight:750;cursor:pointer}.bb-more-trigger:after{content:" ▾";font-weight:600;opacity:.8}.bb-more-menu button{display:block;width:100%;text-align:left;border:0;background:transparent;color:var(--paper-chrome-fg);font:inherit;font-size:13.5px;font-weight:650;padding:9px 12px;border-radius:6px;cursor:pointer}.bb-more-menu button:hover:not(:disabled),.bb-more-menu button:focus-visible{background:#f5efe31f}.bb-more-menu button:disabled{opacity:.4;cursor:not-allowed}.bb-more-menu button.is-exit{color:#fecaca}.bb-more-menu button.is-exit:hover:not(:disabled){background:#b4231859}.bb-top-action{border:1px solid rgba(255,255,255,.35);border-radius:4px;padding:6px 10px}.bb-exit{border:1px solid rgba(255,255,255,.55);border-radius:4px;padding:6px 12px;background:#ffffff1f;font-weight:750}.bb-menubar{display:flex;align-items:center;justify-content:flex-start;gap:8px;flex-wrap:wrap;padding:10px 16px;background:var(--paper-menubar);border-bottom:1px solid var(--paper-border);flex-shrink:0;z-index:1}.bb-menubar-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;width:100%}.bb-menu-chip{border:1.5px solid var(--paper-navy);background:#fff;color:var(--paper-navy);font:inherit;font-size:13.5px;font-weight:750;padding:9px 14px;border-radius:6px;cursor:pointer;white-space:nowrap}.bb-menu-chip:hover:not(:disabled){background:var(--paper-hover)}.bb-menu-chip:disabled{opacity:.4;cursor:not-allowed}.bb-menu-chip-primary{background:var(--paper-navy);color:var(--paper-chrome-fg)}.bb-menu-chip-primary:hover:not(:disabled){background:var(--paper-navy-hover)}.bb-menu-chip-danger{border-color:#b42318;color:#b42318}.bb-menu-chip-danger:hover:not(:disabled){background:#fff5f4}.bb-topbar-center{display:flex;align-items:center;justify-content:center;gap:10px;min-width:0}.bb-top-link,.bb-timer-toggle{border:0;background:transparent;color:var(--paper-chrome-fg);font:inherit;font-size:13px;font-weight:600;cursor:pointer;padding:6px 8px;border-radius:4px}.bb-top-link:hover,.bb-timer-toggle:hover{background:#f5efe31f}.bb-top-divider{width:1px;height:18px;background:#ffffff59}.bb-top-label{font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bb-subject-pill{font-size:11px;font-weight:700;letter-spacing:.02em;padding:4px 8px;border-radius:var(--radius-pill);background:#ffffff24;white-space:nowrap}.bb-timer{display:inline-flex;align-items:baseline;gap:10px;border:0;background:#f5efe31f;color:var(--paper-chrome-fg);border-radius:6px;padding:6px 14px;cursor:pointer;font:inherit}.bb-timer-clock{font-variant-numeric:tabular-nums;font-size:18px;font-weight:700;letter-spacing:.02em}.bb-timer-hide{font-size:11px;font-weight:600;opacity:.85;text-transform:uppercase;letter-spacing:.04em}.bb-timer-urgent{background:#b42318}.bb-main{flex:1;min-height:0;overflow:auto;overflow-anchor:none;padding:24px 16px 28px}.bb-panel{max-width:1080px;margin:0 auto;background:#fff;border:1px solid var(--paper-border);border-radius:4px;padding:28px 36px 40px;box-shadow:0 1px 2px #1018280a;font-family:var(--exam-prose-font)}.bb-title{margin:0 0 6px;font-size:26px;font-weight:700;color:var(--paper-navy)}.bb-subtitle{margin:0 0 20px;font-size:14px;color:var(--paper-muted)}.bb-card{border:1px solid var(--paper-border);border-radius:4px;padding:16px 18px;margin-bottom:14px;background:var(--paper-card)}.bb-card h2{margin:0 0 8px;font-size:15px;color:var(--paper-navy)}.bb-card p,.bb-card li{margin:0 0 8px;font-size:14px;line-height:1.5;color:var(--paper-ink)}.bb-card ul{margin:0;padding-left:18px}.bb-primary{display:inline-flex;align-items:center;justify-content:center;margin-top:8px;border:0;border-radius:4px;background:var(--paper-navy);color:var(--paper-chrome-fg);font-family:Segoe UI,Helvetica Neue,Arial,sans-serif;font-size:14px;font-weight:700;padding:11px 20px;cursor:pointer}.bb-primary:hover{background:var(--paper-navy-hover)}.bb-primary:disabled{opacity:.65;cursor:not-allowed;background:var(--paper-navy)}.bb-secondary{display:inline-flex;align-items:center;justify-content:center;margin-top:8px;border:1px solid var(--paper-navy);border-radius:4px;background:#fff;color:var(--paper-navy);font-family:Segoe UI,Helvetica Neue,Arial,sans-serif;font-size:14px;font-weight:700;padding:10px 20px;cursor:pointer}.bb-secondary:hover{background:var(--paper-hover)}.bb-summary-legend{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:10px 0 14px}.bb-summary-grid{margin-top:4px}.bb-summary-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.bb-results .bb-summary-actions{margin-top:18px}.bb-results{padding-bottom:32px}.bb-results-header{margin-bottom:22px;padding-bottom:14px;border-bottom:1px solid var(--paper-border)}.bb-results-header .bb-title{margin-bottom:4px}.bb-results-header .bb-review-timestamp{margin:0}.bb-results-section{margin:0 0 18px;padding:18px 20px 20px;border:1px solid var(--paper-border);border-radius:10px;background:linear-gradient(180deg,#fff 0%,var(--paper-card) 100%)}.bb-results-section .bb-summary-actions{margin-top:10px}.bb-results-section .bb-primary,.bb-results-section .bb-secondary{margin-top:0}.bb-review-title-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-bottom:4px}.bb-review-title-row .bb-title{margin:0}.bb-review-title-row .bb-secondary{margin-top:0}.bb-results-section-title{margin:0 0 12px;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--paper-muted)}.bb-results-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 16px;margin-top:2px}.bb-results-toolbar .bb-jump-row{flex:1 1 auto;margin:0}.bb-results-toolbar .bb-summary-actions{flex:0 0 auto;margin:0}.bb-results-actions{display:flex;justify-content:flex-end;margin-top:12px}.bb-results-actions .bb-primary{margin-top:0}.bb-results-footer{display:flex;justify-content:flex-start;margin-top:20px;padding-top:16px;border-top:1px solid var(--paper-border)}.bb-results-footer .bb-secondary{margin-top:0}.bb-results .bb-primary:disabled{background:var(--paper-muted);opacity:.55}.bb-frq-upload-meta{margin:-6px 0 12px;font-size:12px;line-height:1.35;color:var(--paper-muted)}.bb-frq-grade-cta{margin:8px 0 10px;padding:16px 18px;border:1px solid var(--paper-border);border-radius:8px;background:linear-gradient(180deg,var(--blend-c) 0%,var(--paper-hover) 100%)}.bb-frq-grade-cta-title{margin:0 0 4px;font-size:16px;font-weight:800;color:var(--paper-navy)}.bb-frq-upload{margin:14px 0 0;padding:16px 18px;border:1.5px dashed var(--paper-split-border);border-radius:8px;background:#fff}.bb-frq-grade-handoff{margin:14px 0 0;padding:16px 18px;border:1px solid var(--paper-split-border);border-radius:8px;background:#fff}.bb-frq-grade-handoff .bb-results-actions{margin-top:12px}.bb-frq-upload.is-drag{border-color:var(--paper-navy);background:var(--blend-c)}.bb-frq-upload-input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.bb-frq-upload-title{margin:0 0 4px;font-size:15.5px;font-weight:800;color:var(--paper-navy)}.bb-frq-upload-hint{margin:0 0 12px;font-size:14px;line-height:1.4;color:var(--paper-muted)}.bb-frq-upload-list{margin:12px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px}.bb-frq-upload-list li{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--paper-border);border-radius:6px;background:var(--paper-card)}.bb-frq-upload-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:700;color:var(--paper-navy)}.bb-frq-upload-size{font-size:12px;font-weight:650;color:var(--paper-muted);font-variant-numeric:tabular-nums}.bb-frq-upload-remove{border:0;background:transparent;color:#b42318;font:inherit;font-size:12px;font-weight:750;cursor:pointer;padding:0}.bb-frq-upload-remove:disabled{opacity:.5;cursor:not-allowed}.bb-frq-grade-busy{display:flex;align-items:center;gap:10px;margin:10px 0 0;font-size:13px;font-weight:700;color:var(--paper-navy)}.bb-frq-grade-error{margin:8px 0 0;font-size:13px;font-weight:650;color:#b42318}.bb-score-note{margin:0 0 14px;padding:3px 8px;width:fit-content;font-size:11.5px;font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:var(--paper-muted);background:var(--paper-menubar);border:1px solid var(--paper-border);border-radius:var(--radius-pill)}.bb-jump-row{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 4px}.bb-jump-pill{width:40px;height:40px;border-radius:8px;border:1.5px solid var(--paper-border);background:#fff;color:var(--paper-navy);font:inherit;font-size:14px;font-weight:750;cursor:pointer;transition:transform .1s,border-color .12s,box-shadow .12s}.bb-results-section .bb-score-card{margin-top:0}.bb-jump-pill:hover{transform:translateY(-1px);box-shadow:0 2px 8px var(--paper-shadow)}.bb-jump-pill.is-correct{background:#1f7a45;border-color:#1f7a45;color:#fff}.bb-jump-pill.is-wrong{background:#b42318;border-color:#b42318;color:#fff}.bb-jump-pill.is-blank{background:var(--paper-card);border-color:var(--paper-border);color:var(--paper-muted)}.bb-jump-pill.is-partial{background:#c98916;border-color:#c98916;color:#fff}.bb-score-card{display:grid;grid-template-columns:minmax(160px,220px) 1fr;gap:18px;align-items:stretch;margin:8px 0 10px;padding:18px 20px;border:1px solid var(--paper-border);border-radius:8px;background:linear-gradient(180deg,var(--blend-c) 0%,var(--paper-hover) 100%)}.bb-score-main{display:flex;flex-direction:column;justify-content:center;gap:4px;padding-right:12px;border-right:1px solid var(--paper-border)}.bb-score-label{margin:0;font-size:12px;font-weight:750;letter-spacing:.06em;text-transform:uppercase;color:var(--paper-muted)}.bb-score-percent{margin:0;font-size:48px;font-weight:800;line-height:1;letter-spacing:-.03em;color:var(--paper-navy);font-variant-numeric:tabular-nums}.bb-score-fraction{margin:4px 0 0;font-size:18px;font-weight:750;color:var(--paper-ink);font-variant-numeric:tabular-nums}.bb-score-breakdown{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;align-content:center}.bb-score-breakdown.is-four{grid-template-columns:repeat(4,minmax(0,1fr))}.bb-score-stat{display:flex;flex-direction:column;gap:2px;padding:12px;border-radius:6px;background:#fff;border:1px solid var(--paper-border);text-align:center}.bb-score-stat-value{font-size:28px;font-weight:800;line-height:1.1;font-variant-numeric:tabular-nums;color:var(--paper-navy)}.bb-score-stat-label{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--paper-muted)}.bb-score-stat.is-correct{border-color:#86efac;background:#f0fdf4}.bb-score-stat.is-correct .bb-score-stat-value{color:#166534}.bb-score-stat.is-wrong{border-color:#fca5a5;background:#fff5f4}.bb-score-stat.is-wrong .bb-score-stat-value{color:#b42318}.bb-score-stat.is-blank{border-color:var(--paper-border);background:var(--paper-card)}.bb-score-stat.is-blank .bb-score-stat-value{color:var(--paper-muted)}.bb-score-stat.is-partial{border-color:#f0c36a;background:#fffbeb}.bb-score-stat.is-partial .bb-score-stat-value{color:#92400e}@media(max-width:720px){.bb-score-card{grid-template-columns:1fr}.bb-score-main{border-right:0;border-bottom:1px solid var(--paper-border);padding-right:0;padding-bottom:14px;text-align:center;align-items:center}.bb-score-breakdown.is-four{grid-template-columns:repeat(2,minmax(0,1fr))}}.bb-question-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--paper-border)}.bb-qnum{font-size:15px;font-weight:700;color:var(--paper-navy)}.bb-hints{margin-top:18px;display:flex;flex-direction:column;align-items:flex-start;gap:10px}.bb-hint-list{align-self:stretch;margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px}.bb-hint{padding:9px 12px;border:1px solid #f3d9a4;border-left:3px solid #d97706;border-radius:4px;background:#fffbeb;font-size:14.5px;line-height:1.5;color:#1a2330}.bb-hint-label{display:block;margin-bottom:2px;font-size:11.5px;font-weight:800;letter-spacing:.03em;text-transform:uppercase;color:#b45309}.bb-hint-button{padding:7px 14px;border:1px solid #d97706;border-radius:999px;background:#fff;color:#b45309;font-size:13.5px;font-weight:700;cursor:pointer}.bb-hint-button:hover:not(:disabled){background:#fffbeb}.bb-hint-button:disabled{border-color:#e2e8f0;color:var(--paper-muted);cursor:default}.bb-mark-review{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--paper-ink);cursor:pointer;-webkit-user-select:none;user-select:none}.bb-mark-review input{width:15px;height:15px;accent-color:var(--paper-navy)}.bb-stimulus,.bb-set-ref,.bb-stem,.bb-review-stem,.bb-choice-letter,.bb-choice-text,.bb-frq-part-prompt,.bb-review-rationale-body,.bb-frq-part-key{font-family:"Noto Serif",Georgia,Times New Roman,serif}.bb-stimulus{margin:0 0 14px;padding:12px 14px;background:var(--paper-card);border-left:3px solid var(--paper-navy);font-size:14.5px;line-height:1.55;color:var(--paper-ink)}.math-system{display:block}.katex-display{max-width:100%;overflow-x:auto;overflow-y:hidden;padding:2px 0}.math-system .katex-display{margin:.6em 0}.bb-stem{margin:0 0 18px;font-size:15.5px;line-height:1.6;color:var(--paper-ink);font-weight:400}.bb-diagram{display:flex;flex-direction:column;align-items:center;margin:0 auto 28px;padding:28px 32px;max-width:960px;width:100%;background:#fff;border-radius:4px;overflow:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-family:Inter,system-ui,Segoe UI,Arial,sans-serif}.bb-diagram-canvas,.bb-diagram-fallback,.bb-diagram img{display:block;max-width:min(920px,100%);width:auto;height:auto;margin:0 auto;object-fit:contain}.bb-diagram-caption{margin:12px 0 0;max-width:920px;font-family:Inter,system-ui,Segoe UI,Arial,sans-serif;font-size:14px;font-weight:500;font-style:italic;color:var(--paper-muted);text-align:center;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.bb-diagram--zoomable{position:relative}.bb-diagram-zoom-trigger{display:block;width:100%;margin:0;padding:0;border:none;background:transparent;cursor:zoom-in;font:inherit;color:inherit;text-align:inherit}.bb-diagram-zoom-trigger:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:4px}.bb-diagram-zoom-figure{display:block;width:100%}.bb-diagram-zoom-hint{position:absolute;top:14px;right:14px;display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;font-size:.72rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--text-1);background:#ffffffeb;border:1px solid var(--border-subtle);box-shadow:var(--shadow-sm);opacity:0;transform:translateY(-2px);transition:opacity var(--dur-fast),transform var(--dur-fast);pointer-events:none}.bb-diagram--zoomable:hover .bb-diagram-zoom-hint,.bb-diagram-zoom-trigger:focus-visible .bb-diagram-zoom-hint{opacity:.92;transform:translateY(0)}@media(hover:none){.bb-diagram--zoomable .bb-diagram-zoom-hint{opacity:.92;transform:translateY(0)}}.bb-set-ref{margin:0 0 12px;font-style:italic;font-size:14.5px;color:var(--paper-muted)}.diagram-zoom-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:12000;display:flex;align-items:center;justify-content:center;padding:24px;background:#120e0ac7;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.diagram-zoom-dialog{position:relative;display:flex;flex-direction:column;gap:12px;width:min(98vw,1320px);max-height:94vh;padding:18px 18px 16px;border-radius:16px;background:#fff;border:1px solid var(--border-subtle);box-shadow:0 24px 80px #00000059}.diagram-zoom-close{position:absolute;top:10px;right:10px;width:36px;height:36px;border:none;border-radius:999px;background:#0000000f;color:var(--text-1);font-size:1.4rem;line-height:1;cursor:pointer}.diagram-zoom-close:hover{background:#0000001a}.diagram-zoom-title{margin:0;padding-right:42px;font-size:.92rem;font-weight:700;color:var(--text-2)}.diagram-zoom-stage{display:flex;align-items:center;justify-content:center;min-height:0;overflow:auto;padding:8px;border-radius:12px;background:#faf8f4;border:1px solid var(--border-subtle)}.diagram-zoom-image{display:block;max-width:min(96vw,1400px);max-height:calc(92vh - 140px);width:auto;height:auto;object-fit:contain}.diagram-zoom-caption{margin:0;font-size:.82rem;font-style:italic;color:var(--text-3);text-align:center}.bb-panel.bb-question--split{max-width:min(96vw,1680px);padding:22px 28px 36px}.bb-review-card.bb-review-card--split{max-width:none}.bb-question-split{display:grid;gap:0;align-items:stretch;min-height:min(72vh,720px)}.bb-stimulus-pane,.bb-answer-pane{min-width:0;min-height:0;max-height:calc(100vh - 180px);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:4px 2px 8px}.bb-stimulus-pane{padding-right:10px}.bb-answer-pane{padding-left:10px}.bb-split-resizer{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;margin:0;padding:0;border:0;border-left:1px solid var(--paper-border);border-right:1px solid var(--paper-border);background:linear-gradient(180deg,var(--paper-card) 0%,var(--paper-hover) 50%,var(--paper-card) 100%);cursor:col-resize;touch-action:none;-webkit-user-select:none;user-select:none;z-index:2}.bb-split-resizer:hover,.bb-split-resizer:focus-visible,.bb-question-split.is-resizing .bb-split-resizer{background:linear-gradient(180deg,var(--paper-hover) 0%,var(--paper-split-active) 50%,var(--paper-hover) 100%);border-left-color:var(--paper-split-border);border-right-color:var(--paper-split-border);outline:none}.bb-split-resizer-grip{display:block;width:4px;height:44px;border-radius:999px;background:repeating-linear-gradient(180deg,#94a3b8 0,#94a3b8 4px,transparent 4px,transparent 8px)}.bb-split-resizer-hint{font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#64748b;writing-mode:vertical-rl;transform:rotate(180deg)}.bb-split-resizer:focus-visible .bb-split-resizer-hint,.bb-split-resizer:hover .bb-split-resizer-hint,.bb-question-split.is-resizing .bb-split-resizer-hint{color:#047857}body.bb-split-dragging{cursor:col-resize!important;-webkit-user-select:none;user-select:none}body.bb-split-dragging *{cursor:col-resize!important}.bb-stimulus-pane-text{margin-bottom:14px}.bb-stimulus-pane .bb-diagram{max-width:none;width:100%;margin:0 0 18px;padding:12px 14px;align-items:stretch}.bb-stimulus-pane .bb-diagram--split{overflow:visible}.bb-stimulus-pane .bb-diagram-canvas,.bb-stimulus-pane .bb-diagram-fallback,.bb-stimulus-pane .bb-diagram img{max-width:100%;width:100%;height:auto;margin:0 auto}.bb-stimulus-pane .bb-diagram-caption{max-width:none;text-align:center;font-size:13px;line-height:1.45}.bb-answer-pane .bb-stem,.bb-answer-pane .bb-review-stem{margin-top:0}@media(max-width:960px){.bb-question-split{display:flex;flex-direction:column;gap:16px;min-height:0}.bb-split-resizer{display:none}.bb-stimulus-pane,.bb-answer-pane{max-height:none;overflow:visible;padding:0}}.bb-choices{display:flex;flex-direction:column;gap:10px}.bb-choice-row{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:stretch}.bb-choice{display:flex;align-items:flex-start;gap:12px;width:100%;text-align:left;border:1.5px solid var(--paper-border);border-radius:4px;background:#fff;padding:12px 14px;cursor:pointer;font:inherit;color:var(--paper-ink);transition:border-color .12s,background .12s,box-shadow .12s}.bb-choice:hover{border-color:var(--paper-navy);background:var(--paper-hover)}.bb-choice:focus-visible{border-color:var(--paper-navy)}.bb-choice-row.is-selected .bb-choice{border-color:var(--paper-navy);background:var(--paper-hover-strong);box-shadow:inset 0 0 0 1px var(--paper-navy)}.bb-choice-letter{flex-shrink:0;width:28px;height:28px;border-radius:50%;border:1.5px solid var(--paper-navy);display:inline-flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;color:var(--paper-navy);background:#fff}.bb-choice-row.is-selected .bb-choice-letter{background:var(--paper-navy);color:var(--paper-chrome-fg)}.bb-choice-text{flex:1;min-width:0;font-size:14.5px;line-height:1.45;padding-top:3px}.bb-eliminate{border:1px solid var(--paper-border);border-radius:4px;background:#fff;color:var(--paper-muted);min-width:40px;cursor:pointer;font:inherit;font-size:13px;font-weight:700}.bb-eliminate:hover{border-color:#b42318;color:#b42318}.bb-choice-row.is-eliminated .bb-choice{opacity:.55}.bb-choice-row.is-eliminated .bb-choice-text{text-decoration:line-through}.bb-frq-meta{font-size:12px;font-weight:700;color:var(--paper-muted);text-transform:uppercase;letter-spacing:.03em}.bb-frq-title{margin:0 0 12px;font-size:18px;color:var(--paper-navy)}.bb-frq-parts{margin:0 0 16px;padding:0;list-style:none;display:flex;flex-direction:column;gap:12px}.bb-frq-part-prompt{margin:0;font-size:14.5px;line-height:1.5}.bb-frq-points{color:var(--paper-muted);font-size:13px}.bb-frq-response-label{display:block;margin-bottom:6px;font-size:12.5px;font-weight:700;color:var(--paper-muted)}.bb-frq-response{width:100%;box-sizing:border-box;border:1.5px solid var(--paper-border);border-radius:4px;padding:12px 14px;font:inherit;font-size:14px;line-height:1.5;resize:vertical;min-height:180px;background:#fff}.bb-frq-response:focus-visible{border-color:var(--paper-navy);box-shadow:var(--focus-ring-paper)}.bb-frq-grade-card.is-full{border-color:#86efac}.bb-frq-grade-card.is-partial{border-color:#f0c36a}.bb-frq-grade-card.is-none{border-color:#fca5a5}.bb-frq-grade-overall{margin:8px 0 12px;font-size:14px;line-height:1.45;color:var(--paper-ink)}.bb-frq-grade-parts{margin:0 0 14px;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}.bb-frq-part-grade{border:1.5px solid var(--paper-border);border-radius:8px;padding:12px 14px;background:#fff}.bb-frq-part-grade.is-full{border-color:#86efac;background:#f0fdf4}.bb-frq-part-grade.is-partial{border-color:#f0c36a;background:#fffbeb}.bb-frq-part-grade.is-none{border-color:#fca5a5;background:#fff5f4}.bb-frq-part-grade.is-blank{background:var(--paper-card)}.bb-frq-part-grade-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:6px}.bb-frq-part-grade-pts{font-variant-numeric:tabular-nums;font-weight:800;color:var(--paper-navy)}.bb-frq-verdict{margin-left:auto;font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;padding:2px 8px;border-radius:var(--radius-pill);background:var(--paper-menubar);color:var(--paper-muted)}.bb-frq-verdict.is-full{background:#dcfce7;color:#166534}.bb-frq-verdict.is-partial{background:#fef3c7;color:#92400e}.bb-frq-verdict.is-none{background:#fee2e2;color:#b42318}.bb-frq-part-comment{margin:8px 0 0;font-size:13.5px;line-height:1.45;color:var(--paper-ink)}.bb-frq-part-key{margin:8px 0 0;padding-top:8px;border-top:1px dashed var(--paper-border);font-size:13px;line-height:1.45;color:var(--paper-muted)}.bb-frq-part-key.is-solution{color:var(--paper-ink)}.bb-frq-part-key-label{display:block;margin-bottom:2px;font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--paper-muted)}.bb-frq-your-answer{margin:0 0 12px;padding:12px 14px;border:1px solid var(--paper-border);border-radius:8px;background:var(--paper-card)}.bb-frq-your-answer-label{margin:0 0 6px;font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--paper-muted)}.bb-frq-your-answer-body{margin:0;font-size:13.5px;line-height:1.45;white-space:pre-wrap;color:var(--paper-ink)}.bb-frq-your-answer-body.is-blank{color:var(--paper-muted);font-style:italic}.bb-frq-next-step{margin:0;font-size:13.5px;line-height:1.45;color:var(--paper-navy)}.bb-bottombar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;padding:12px 20px;background:#fff;border-top:2px solid var(--paper-navy);box-shadow:0 -4px 18px var(--paper-shadow);flex-shrink:0;z-index:2}.bb-bottom-left{display:flex;justify-content:flex-start}.bb-bottom-center{display:flex;justify-content:center}.bb-bottom-right{display:flex;justify-content:flex-end}.bb-nav-btn{border:2px solid var(--paper-navy);background:#fff;color:var(--paper-navy);border-radius:6px;font:inherit;font-size:15px;font-weight:750;padding:12px 22px;cursor:pointer;min-width:110px}.bb-nav-btn:disabled{opacity:.4;cursor:not-allowed}.bb-nav-next{background:var(--paper-navy);color:var(--paper-chrome-fg)}.bb-nav-next:hover:not(:disabled){background:var(--paper-navy-hover)}.bb-question-menu-btn{border:1.5px solid var(--paper-border);background:var(--paper-card);color:var(--paper-navy);border-radius:6px;font:inherit;font-size:14px;font-weight:750;padding:12px 16px;cursor:pointer;display:inline-flex;align-items:center;gap:6px}.bb-question-menu-wrap{position:relative;z-index:var(--z-hud)}.bb-question-menu-pop{position:absolute;left:50%;bottom:calc(100% + 8px);transform:translate(-50%);width:min(440px,78vw);padding:14px 16px;background:#fff;border:1px solid var(--paper-border);border-radius:8px;box-shadow:0 12px 32px #1f18102e;visibility:hidden;opacity:0;pointer-events:none}.bb-question-menu-wrap:hover .bb-question-menu-pop,.bb-question-menu-wrap.is-open .bb-question-menu-pop{visibility:visible;opacity:1;pointer-events:auto}.bb-caret{font-size:11px;opacity:.8}.bb-modal{position:absolute;top:0;right:0;bottom:0;left:0;background:#1f18108c;display:flex;align-items:center;justify-content:center;padding:24px;z-index:2}.bb-modal-card{width:min(520px,100%);background:#fff;border-radius:6px;padding:22px 24px;box-shadow:0 12px 40px #00000040}.bb-modal-card h2{margin:0 0 10px;font-size:18px;color:var(--paper-navy)}.bb-modal-card p{margin:0 0 14px;font-size:14px;line-height:1.5;color:var(--paper-ink)}.bb-question-menu{width:min(640px,100%)}.bb-menu-legend{display:flex;flex-wrap:wrap;gap:14px;align-items:center;font-size:12.5px;color:var(--paper-muted)}.bb-dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:6px;border:1.5px solid var(--paper-border);background:#fff;vertical-align:middle}.bb-dot.is-answered{background:var(--paper-navy);border-color:var(--paper-navy)}.bb-dot.is-flagged{background:#f5c518;border-color:#c9a000}.bb-menu-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(44px,1fr));gap:8px;margin:8px 0 16px}.bb-menu-item{height:40px;border:1.5px solid var(--paper-border);border-radius:4px;background:#fff;color:var(--paper-navy);font:inherit;font-size:14px;font-weight:700;cursor:pointer}.bb-menu-item.is-answered{background:var(--paper-navy);border-color:var(--paper-navy);color:var(--paper-chrome-fg)}.bb-menu-item.is-flagged{box-shadow:inset 0 -3px #f5c518}.bb-menu-item.is-current{outline:2px solid var(--paper-navy-hover);outline-offset:1px}.bb-dot.is-review-correct,.bb-menu-item.is-review-correct{background:#1f7a45;border-color:#1f7a45;color:#fff}.bb-dot.is-review-wrong,.bb-menu-item.is-review-wrong{background:#b42318;border-color:#b42318;color:#fff}.bb-dot.is-partial,.bb-menu-item.is-partial{background:#c98916;border-color:#c98916;color:#fff}.bb-review-card{border:1px solid var(--paper-border);border-radius:4px;padding:12px 14px;background:#fff;margin-bottom:14px}.bb-review-card.is-correct .bb-review-head strong{color:#1f7a45}.bb-review-card.is-wrong .bb-review-head strong{color:#b42318}.bb-review-list{margin:0 0 18px;padding:0;list-style:none;display:flex;flex-direction:column;gap:12px}.bb-review-list>li{border:1px solid var(--paper-border);border-radius:4px;padding:12px 14px;background:#fff}.bb-review-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;margin-bottom:8px;font-size:13px}.bb-review-stem,.bb-review-explain{margin:0 0 8px;font-size:13.5px;line-height:1.45}.bb-review-hint{margin:-4px 0 14px;font-size:13px;color:var(--paper-muted);line-height:1.4}.bb-review-choices{display:flex;flex-direction:column;gap:10px;margin-top:10px}.bb-review-choice-block{display:flex;flex-direction:column;gap:6px}.bb-review-choice{display:grid;grid-template-columns:32px 1fr auto;align-items:start;gap:10px;width:100%;text-align:left;border:1.5px solid #c8d0da;border-radius:4px;background:#fff;padding:10px 12px;cursor:pointer;font:inherit;color:inherit;transition:border-color .12s ease,background .12s ease}.bb-review-choice:hover{border-color:#8a97a8}.bb-review-choice.is-correct-choice{border-color:#1f7a45;background:#fff}.bb-review-choice.is-correct-choice .bb-choice-letter{background:#1f7a45;color:#fff;border-color:#1f7a45}.bb-review-choice.is-open-wrong{border-color:#b42318;background:#fff}.bb-review-choice.is-open-wrong .bb-choice-letter{background:#b42318;color:#fff;border-color:#b42318}.bb-review-choice.is-open-correct{border-color:#1f7a45;background:#fff}.bb-review-choice.was-picked:not(.is-correct-choice){border-style:dashed;border-color:#b42318}.bb-review-choice-tag{align-self:center;font-size:11px;font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:#1f7a45;white-space:nowrap}.bb-review-choice-tag.is-yours{color:#b42318}.bb-review-rationale-panel{margin:0;padding:10px 12px 12px;border:1px solid #e2e8f0;border-radius:4px;background:var(--paper-card);border-left:3px solid #94a3b8}.bb-review-rationale-panel.is-correct{border-left-color:#1f7a45}.bb-review-rationale-panel.is-wrong{border-left-color:#b42318}.bb-review-rationale-label{margin:0 0 4px;font-size:12px;font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:var(--paper-muted)}.bb-review-rationale-panel.is-correct .bb-review-rationale-label{color:#1f7a45}.bb-review-rationale-panel.is-wrong .bb-review-rationale-label{color:#b42318}.bb-review-rationale-body{margin:0;font-size:13.5px;line-height:1.45;color:#1a2330}.bb-sol{display:flex;flex-direction:column;gap:12px}.bb-sol-p{margin:0;line-height:1.55}.bb-sol-section>*+*,.bb-sol-step-body>*+*{margin-top:6px}.bb-sol-section-label{margin:0;font-family:system-ui,-apple-system,Segoe UI,sans-serif;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--paper-muted)}.bb-sol-section.is-key-idea,.bb-sol-section.is-trap{padding:8px 12px;border-left:3px solid #1d4ed8;border-radius:0 4px 4px 0;background:#1d4ed80f}.bb-sol-section.is-key-idea .bb-sol-section-label{color:#1d4ed8}.bb-sol-section.is-what-to-notice{padding:8px 12px;border-left:3px solid #0f766e;border-radius:0 4px 4px 0;background:#0f766e12}.bb-sol-section.is-what-to-notice .bb-sol-section-label{color:#0f766e}.bb-sol-section.is-notation{padding:8px 12px;border:1px dashed var(--paper-border);border-radius:4px;background:#7c3aed0d}.bb-sol-section.is-notation .bb-sol-section-label{color:#7c3aed}.bb-sol-section.is-solution .bb-sol-section-label{color:#1f7a45}.bb-sol-section.is-trap{border-left-color:#b45309;background:#b4530912}.bb-sol-section.is-trap .bb-sol-section-label,.bb-sol-section.is-common-wrong-answers .bb-sol-section-label{color:#b42318}.bb-sol-eq{overflow-x:auto;overflow-y:hidden;padding:2px 0;text-align:center}.bb-sol-eq .katex-display{margin:0}.bb-sol-list{margin:0;padding-left:20px}.bb-sol-list li+li{margin-top:4px}.bb-sol-step{position:relative;padding-left:34px}.bb-sol-step+.bb-sol-step{margin-top:14px}.bb-sol-step:has(+.bb-sol-step):before{content:"";position:absolute;top:28px;bottom:-12px;left:11.5px;width:1px;background:var(--paper-border)}.bb-sol-step-head{display:flex;align-items:center;min-height:24px;margin:0}.bb-sol-step-num{position:absolute;top:0;left:0;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:var(--paper-navy);color:#fff;font-family:system-ui,-apple-system,Segoe UI,sans-serif;font-size:12px;font-weight:700}.bb-sol-step-title{font-weight:700;line-height:1.35}.bb-sol-step-body{margin-top:4px}.bb-integer-answer{display:flex;flex-direction:column;gap:6px;max-width:340px;margin:14px 0 4px}.bb-integer-label{font-size:13px;font-weight:700;color:var(--paper-muted)}.bb-integer-input{width:7.5ch;padding:8px 10px;border:2px solid #94a3b8;border-radius:6px;background:var(--paper-card);color:#1a2330;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:26px;font-weight:600;letter-spacing:.3em}.bb-integer-input:focus{outline:none;border-color:#1d4ed8;box-shadow:0 0 0 3px #1d4ed82e}.bb-integer-hint{margin:0;font-size:12px;color:var(--paper-muted)}.bb-review-integer{display:flex;flex-direction:column;gap:10px;margin-top:10px}.bb-review-integer-row{display:flex;flex-wrap:wrap;gap:8px 22px;margin:0;padding:10px 12px;border:1px solid #e2e8f0;border-left:3px solid #94a3b8;border-radius:4px;background:var(--paper-card);font-size:14px;color:#1a2330}.bb-review-integer-row.is-correct{border-left-color:#1f7a45}.bb-review-integer-row.is-wrong{border-left-color:#b42318}.bb-review-integer-row strong{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.08em}.bb-review-skills{margin-top:14px;padding:12px;border:1px solid #e2e8f0;border-radius:4px;background:var(--paper-card)}.bb-review-skills-title{margin:0 0 8px;font-size:12px;font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:var(--paper-muted)}.bb-skill-list{display:flex;flex-direction:column;gap:10px;margin:0;padding:0;list-style:none}.bb-skill-item{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:10px;row-gap:2px;align-items:baseline;font-size:13.5px;line-height:1.4;color:#1a2330}.bb-skill-item>:not(.bb-skill-kind){grid-column:2}.bb-skill-kind{grid-column:1;grid-row:1;padding:2px 7px;border:1px solid currentColor;border-radius:999px;font-size:10.5px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.bb-skill-kind.is-concept{color:#1d4ed8}.bb-skill-kind.is-skill{color:#7c3aed}.bb-skill-name{font-weight:700}.bb-skill-meta{font-size:12px;color:var(--paper-muted)}.bb-review-approach{margin-top:14px;padding:12px 14px;border:1px solid #e2e8f0;border-left:3px solid #0f766e;border-radius:4px;background:#0f766e0d}.bb-approach-list{display:flex;flex-direction:column;gap:14px;margin:0;padding:0;list-style:none}.bb-approach-item{padding:10px 12px;border-left:3px solid #0f766e;border-radius:4px;background:#0f766e0d}.bb-approach-name{margin:0 0 4px;font-size:14.5px;font-weight:700;color:#1a2330}.bb-approach-cue{margin:0 0 6px;font-size:13.5px;line-height:1.45;color:#1a2330}.bb-approach-label{margin:8px 0 3px;font-size:11.5px;font-weight:800;letter-spacing:.03em;text-transform:uppercase;color:#0f766e}.bb-approach-this{margin:6px 0 2px;padding:7px 10px;border-radius:4px;background:#0f766e1a}.bb-approach-this .bb-approach-label{margin-top:0}.bb-review-approach .signal-list,.bb-approach-item .signal-list{font-size:13.5px;line-height:1.45;color:#1a2330}.bb-approach-cue strong{color:#0f766e}.bb-approach-steps{margin:0;padding-left:22px;display:flex;flex-direction:column;gap:3px;font-size:13.5px;line-height:1.45;color:#1a2330}.bb-review-rationales{margin:0;padding-left:0;list-style:none;display:flex;flex-direction:column;gap:6px;font-size:13px;line-height:1.4;color:var(--paper-muted)}.bb-review-rationales li.is-correct{color:#1f7a45;font-weight:600}.bb-review-timestamp{margin:-8px 0 16px;font-size:13px;color:var(--paper-muted)}.bb-tutor{margin:4px 0 0;border:1px solid var(--paper-border);border-radius:10px;background:var(--paper-hover);overflow:visible}.bb-tutor-head{padding:14px 16px 10px;border-bottom:1px solid var(--paper-border);background:#fff}.bb-tutor-title{margin:0;font-size:16px;font-weight:700;color:var(--paper-navy)}.bb-tutor-hint{margin:4px 0 0;font-size:13px;color:var(--paper-muted)}.bb-tutor-thread{min-height:88px;max-height:280px;overflow:auto;padding:14px 16px;display:flex;flex-direction:column;gap:10px}.bb-tutor-empty{padding:12px 14px;border:1px dashed var(--paper-split-border);border-radius:8px;background:var(--paper-menubar);color:var(--paper-muted);font-size:13.5px}.bb-tutor-empty p{margin:0}.bb-tutor-bubble{max-width:92%;padding:8px 12px;border-radius:10px}.bb-tutor-bubble.is-user{align-self:flex-end;background:var(--paper-navy);color:#fff}.bb-tutor-bubble.is-assistant{align-self:flex-start;background:#fff;border:1px solid var(--paper-border);color:var(--paper-ink)}.bb-tutor-bubble.is-pending{opacity:.7}.bb-tutor-role{display:block;font-size:10.5px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;margin-bottom:4px;opacity:.72}.bb-tutor-p{margin:0 0 8px;font-size:14px;line-height:1.5}.bb-tutor-p:last-child{margin-bottom:0}.bb-tutor-rich{font-size:14px;line-height:1.5}.bb-tutor-rich .bb-sol{gap:10px}.bb-tutor-rich .bb-sol-eq{text-align:left;padding-left:4px}.bb-tutor-error{margin:0;padding:0 16px 8px;font-size:12.5px;color:#b42318}.bb-tutor-composer{display:flex;gap:8px;align-items:flex-end;padding:10px 12px 12px;border-top:1px solid var(--paper-border);background:#fff}.bb-tutor-field{position:relative;flex:1;min-width:0}.bb-tutor-picker{position:absolute;left:6px;bottom:6px;z-index:2}.bb-tutor-picker-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:0;border-radius:6px;background:transparent;color:#8b95a3;cursor:pointer}.bb-tutor-picker-btn:hover:not(:disabled),.bb-tutor-picker.is-open .bb-tutor-picker-btn{color:var(--paper-navy);background:var(--paper-hover)}.bb-tutor-picker-btn:disabled{opacity:.45;cursor:not-allowed}.bb-tutor-picker-caret{width:12px;height:12px;transition:transform .12s}.bb-tutor-picker.is-open .bb-tutor-picker-caret{transform:rotate(180deg)}.bb-tutor-picker-menu{position:absolute;left:0;bottom:calc(100% + 6px);z-index:var(--z-hud);min-width:240px;max-width:min(360px,80vw);padding:6px;border:1px solid var(--paper-border);border-radius:10px;background:#fff;box-shadow:0 10px 28px #1f181024;display:flex;flex-direction:column;gap:2px}.bb-tutor-picker-item{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;text-align:left;border:0;border-radius:7px;background:transparent;color:var(--paper-ink);font:inherit;font-size:13px;line-height:1.35;padding:8px 10px;cursor:pointer}.bb-tutor-picker-item:hover,.bb-tutor-picker-item:focus-visible{background:var(--paper-hover);color:var(--paper-navy)}.bb-tutor-input{width:100%;resize:none;min-height:72px;max-height:140px;padding:10px 12px 36px;font-size:14px;line-height:1.45;color:var(--paper-ink);background:var(--paper-card);border:1px solid var(--paper-border);border-radius:8px}.bb-tutor-input:focus-visible{border-color:var(--paper-navy);box-shadow:var(--focus-ring-paper)}.bb-tutor-send{flex-shrink:0;height:44px;padding:0 16px;border:0;border-radius:8px;background:var(--paper-navy);color:var(--paper-chrome-fg);font-size:14px;font-weight:700;cursor:pointer}.bb-tutor-send:hover:not(:disabled){background:var(--paper-navy-hover)}.bb-tutor-send:disabled{opacity:.45;cursor:not-allowed}@media(max-width:720px){.bb-panel{padding:18px 14px 24px}.bb-topbar{grid-template-columns:1fr;height:auto;padding:10px 12px;gap:8px}.bb-topbar-center,.bb-topbar-right,.bb-topbar-left{justify-content:space-between}.bb-menubar{justify-content:flex-start;padding:8px 12px}.bb-menubar-actions{width:100%}.bb-bottombar{grid-template-columns:1fr;gap:8px;padding:10px 12px}.bb-bottom-left,.bb-bottom-center,.bb-bottom-right{justify-content:stretch}.bb-nav-btn,.bb-question-menu-btn{width:100%;justify-content:center}}.history-list-panel{padding:16px 20px 18px;background:var(--surface-1);border:1px solid var(--border-subtle);color:var(--text-1);box-shadow:var(--glow-sm);overflow:visible}.history-panel{display:flex;flex-direction:column;gap:0;overflow:hidden;border:1px solid color-mix(in srgb,var(--text-3) 22%,transparent);border-radius:16px;box-shadow:0 4px 12px #0000000d,0 1px 3px #0000000a}.history-panel-error{margin:0 30px 16px}.history-panel-body{padding:0 30px 28px;border-top:1px solid var(--border-subtle);background:color-mix(in srgb,var(--blend-c) 42%,var(--surface-1))}.history-panel-transition{flex:1;min-width:0}.history-subject-home{padding:4px 0 12px}.history-subject-grid{margin-top:4px}.history-subject-card-count{font-size:13px;font-weight:650;line-height:1.35}.history-back-link{display:inline-flex;align-items:center;gap:6px;margin:0 0 12px;padding:0;border:none;background:none;font:inherit;font-size:14px;font-weight:650;color:var(--text-2);cursor:pointer}.history-back-link:hover{color:var(--text-1);text-decoration:underline;text-underline-offset:3px}.history-folders{display:flex;flex-direction:column;gap:28px}.history-subject-section{--card-accent: var(--accent)}.history-subject-heading{margin:0 0 12px;font-family:Fraunces,Georgia,Times New Roman,serif;font-size:20px;font-weight:650;letter-spacing:-.02em;color:var(--card-accent, var(--text-1))}.course-card-physics_1 .history-subject-heading{--card-accent: var(--shade-sea)}.course-card-physics_2 .history-subject-heading{--card-accent: var(--shade-mist)}.course-card-mechanics .history-subject-heading{--card-accent: var(--shade-honey)}.course-card-em .history-subject-heading{--card-accent: var(--shade-blush)}.course-card-bio .history-subject-heading{--card-accent: var(--shade-sage)}.course-card-chem .history-subject-heading{--card-accent: var(--shade-clay)}.course-card-calc .history-subject-heading{--card-accent: var(--shade-dusk)}.course-card-stats .history-subject-heading{--card-accent: var(--shade-stone)}.history-folder-title,.history-folder-toggle{display:flex;align-items:center;gap:10px;margin:0 0 12px;padding:0;width:100%;border:0;background:transparent;font-size:15px;font-weight:700;letter-spacing:.02em;color:var(--text-1);cursor:pointer;text-align:left;font-family:inherit}.history-folder-toggle.history-subject-physics{color:#0284c7}.history-folder-toggle.history-subject-biology{color:#059669}.history-folder-toggle.history-subject-chemistry{color:#ea580c}.history-folder-toggle.history-subject-calculus{color:#7c3aed}.history-folder-toggle:hover .history-folder-label{text-decoration:underline;text-underline-offset:3px}.history-folder-chevron{display:inline-flex;align-items:center;justify-content:center;width:1.1em;flex-shrink:0;font-size:18px;line-height:1;color:inherit;opacity:.7;transform:rotate(-90deg);transition:transform .15s ease}.history-folder-chevron.is-open{transform:rotate(0)}.history-folder-label{min-width:0}.history-folder-count{font-size:12px;font-weight:500;color:var(--text-3);letter-spacing:0}.history-folder-empty{margin:0;padding:4px 0 8px 28px;font-size:13px;color:var(--text-3)}.history-folder-sets{margin:0 0 14px;padding:4px 0 4px 14px;border-left:2px solid color-mix(in srgb,var(--card-accent, var(--border-subtle)) 35%,var(--border-subtle))}.history-empty{margin:0;padding:6px 0 2px;color:var(--text-3);font-size:14px;font-weight:650}.history-empty-state{display:flex;flex-direction:column;align-items:center;gap:12px;padding:28px 16px 8px;text-align:center}.history-list{margin:0;padding:16px;list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;overflow:visible;border-top:none;background:color-mix(in srgb,var(--blend-c) 38%,var(--surface-1))}.history-set-row{--history-accent: var(--accent);display:flex;flex-direction:column;min-width:0;list-style:none}.history-set-row.history-subject-physics{--history-accent: var(--shade-sea)}.history-set-row.history-subject-biology{--history-accent: var(--shade-sage)}.history-set-row.history-subject-chemistry{--history-accent: var(--shade-clay)}.history-set-row.history-subject-calculus{--history-accent: var(--shade-dusk)}.history-set-row.history-subject-statistics{--history-accent: var(--shade-stone)}.history-set-row.is-loading{opacity:.72}.history-set-card{position:relative;display:flex;flex-direction:column;gap:14px;width:100%;min-width:0;padding:17px 17px 14px;border:1px solid color-mix(in srgb,var(--text-3) 16%,transparent);border-radius:13px;background:var(--surface-1);box-shadow:0 2px 8px #0000000a;transition:border-color var(--dur-fast),box-shadow var(--dur-fast),transform var(--dur-fast)}.history-set-card:hover{border-color:color-mix(in srgb,var(--history-accent) 38%,transparent);box-shadow:0 4px 14px #00000012}.history-set-card-content{display:flex;flex-direction:column;gap:10px;padding-right:26px}.history-set-header{display:flex;flex-direction:column;gap:4px;min-width:0}.history-set-body{display:flex;align-items:center;justify-content:space-between;gap:10px 12px;min-width:0}.history-set-when{display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:.4rem;min-width:0;font-size:.88rem;font-weight:700;color:var(--text-3);font-variant-numeric:tabular-nums}.history-set-date{font-weight:800;color:var(--text-2);white-space:nowrap}.history-set-when-sep{opacity:.55;font-weight:700}.history-set-time{white-space:nowrap}.history-set-title{font-size:1.1rem;font-weight:800;line-height:1.3;color:var(--text-1);display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.history-set-meta{display:flex;flex-wrap:wrap;align-items:center;gap:7px;font-size:.92rem;font-weight:700;color:var(--text-3);min-width:0;flex:1 1 auto}.history-set-scores{display:flex;flex-direction:row;align-items:stretch;gap:6px;flex:0 0 auto;margin-left:auto}.history-set-scores.is-split{min-width:0}.history-set-score-pill{display:inline-flex;align-items:center;justify-content:center;padding:.4rem .85rem;border-radius:999px;font-size:.88rem;font-weight:800;white-space:nowrap}.history-set-score-pill.is-pending{background:transparent;color:var(--text-3);border:1.5px solid color-mix(in srgb,#64748b 38%,transparent)}.history-set-score-block{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:.44rem .65rem .48rem;border-radius:9px;border:1px solid var(--border-subtle);background:var(--blend-c);text-align:center;min-width:5rem;min-height:3rem}.history-set-score-headline{font-size:.82rem;font-weight:800;line-height:1.15;font-variant-numeric:tabular-nums;white-space:nowrap}.history-set-score-detail,.history-set-score-status{font-size:.73rem;font-weight:700;line-height:1.2;opacity:.86;font-variant-numeric:tabular-nums;white-space:nowrap}.history-set-score-block.is-high{background:var(--success-bg);color:var(--success-text);border-color:var(--success-border)}.history-set-score-block.is-high .history-set-score-detail{color:color-mix(in srgb,var(--success-text) 78%,transparent)}.history-set-score-block.is-mid{background:var(--score-mid-bg);color:var(--score-mid-text);border-color:var(--score-mid-border)}.history-set-score-block.is-mid .history-set-score-detail{color:color-mix(in srgb,var(--score-mid-text) 78%,transparent)}.history-set-score-block.is-low{background:var(--danger-bg);color:var(--danger-text);border-color:var(--danger-border)}.history-set-score-block.is-low .history-set-score-detail{color:color-mix(in srgb,var(--danger-text) 78%,transparent)}.history-set-score-block.is-ungraded{background:color-mix(in srgb,var(--text-3) 7%,var(--surface-1));border:1.5px dashed color-mix(in srgb,var(--text-3) 32%,transparent);color:var(--text-2)}.history-set-score-block.is-ungraded .history-set-score-headline{color:var(--text-3)}.history-set-score-block.is-ungraded .history-set-score-status{font-weight:800;color:var(--text-2);opacity:1}.history-set-pdfs{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.history-set-pdf-btn{display:inline-flex;align-items:center;padding:5px 12px;border:1px solid var(--accent-border);border-radius:var(--radius-pill);background:transparent;color:var(--text-1);font-size:13px;font-weight:700;text-decoration:none;transition:background var(--dur-fast),border-color var(--dur-fast)}.history-set-pdf-btn:hover{background:var(--nav-hover-bg);border-color:var(--accent)}.history-set-pdf-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.history-set-cta-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;width:100%;min-height:46px;padding:0 18px;border:1px solid color-mix(in srgb,var(--text-strong) 22%,transparent);border-radius:11px;font:inherit;font-size:.98rem;font-weight:800;color:var(--accent-contrast);background:var(--text-strong);cursor:pointer;white-space:nowrap;transition:background var(--dur-fast),border-color var(--dur-fast),transform var(--dur-fast),box-shadow var(--dur-fast);box-shadow:0 1px 2px #0000001a}.history-set-cta-btn.is-review{background:color-mix(in srgb,var(--text-strong) 88%,#000)}.history-set-cta-btn:hover:not(:disabled){background:var(--accent-deep);border-color:color-mix(in srgb,var(--text-strong) 35%,transparent);transform:translateY(-1px);box-shadow:0 2px 6px #00000024}.history-set-cta-btn:focus-visible{outline:2px solid color-mix(in srgb,var(--text-strong) 45%,white);outline-offset:2px}.history-set-cta-btn:disabled{opacity:.65;cursor:wait;transform:none}.history-set-cta-arrow{font-size:1.1rem;line-height:1;transition:transform var(--dur-fast)}.history-set-cta-btn:hover:not(:disabled) .history-set-cta-arrow{transform:translate(3px)}.history-set-menu{position:absolute;top:8px;right:8px;z-index:2}.history-set-time.is-prominent{font-size:.94rem;font-weight:800;color:var(--text-2)}.history-set-menu>summary{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:9px;border:1px solid transparent;background:transparent}.history-set-menu>summary:hover{border-color:color-mix(in srgb,var(--history-accent) 30%,var(--border-subtle));color:var(--history-accent)}@media(max-width:900px){.history-list{grid-template-columns:1fr}}@media(max-width:720px){.history-set-body{flex-direction:column;align-items:stretch}.history-set-scores{margin-left:0;justify-content:flex-start}.history-set-score-block{flex:1 1 0;min-width:0}}.history-row{--history-accent: #38bdf8;position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:16px 16px 16px 18px;background:var(--surface-2);border:1px solid rgba(255,255,255,.08);border-left:4px solid var(--history-accent);border-radius:14px;overflow:hidden}.history-row.history-subject-physics{--history-accent: #38bdf8}.history-row.history-subject-biology{--history-accent: #34d399}.history-row.history-subject-chemistry{--history-accent: #fb923c}.history-row.history-subject-calculus{--history-accent: #a78bfa}.history-row-main{flex:1 1 280px;min-width:0}.history-row-head{display:flex;align-items:center;gap:10px;margin-bottom:8px}.history-subject-badge{font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:.04em;padding:4px 9px;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--history-accent) 18%,transparent);color:var(--history-accent);border:1px solid color-mix(in srgb,var(--history-accent) 40%,transparent);white-space:nowrap}.history-date{font-size:12.5px;font-weight:600;color:var(--text-3)}.history-title{margin:0 0 6px;font-size:17px;font-weight:700;letter-spacing:-.02em;color:var(--text-1);line-height:1.3}.history-meta{margin:0 0 4px;font-size:13px;color:var(--text-3)}.history-attempts{margin-top:10px}.history-score-path{display:flex;flex-wrap:wrap;align-items:flex-end;gap:4px;margin:0 0 8px;padding:0;list-style:none}.history-score-path li{display:inline-flex;align-items:center;gap:4px}.history-score-arrow{color:var(--text-3);font-size:12px}.history-score-chip{border:1px solid color-mix(in srgb,var(--history-accent) 35%,transparent);background:color-mix(in srgb,var(--history-accent) 12%,transparent);color:var(--history-accent);border-radius:var(--radius-pill);padding:3px 9px;font:inherit;font-size:12px;font-weight:750;cursor:pointer}.history-score-chip:hover{background:color-mix(in srgb,var(--history-accent) 22%,transparent)}.history-score-chip.is-latest{background:color-mix(in srgb,var(--history-accent) 28%,transparent);border-color:color-mix(in srgb,var(--history-accent) 65%,transparent);padding:8px 16px;font-size:28px;font-weight:800;letter-spacing:-.03em;line-height:1}.history-attempts-toggle{display:inline-block;margin:8px 0 0;padding:0;border:0;background:none;font:inherit;font-size:12.5px;font-weight:700;color:var(--text-3);cursor:pointer;text-decoration:underline;text-underline-offset:3px}.history-attempts-toggle:hover{color:var(--text-1)}.history-attempt-list{margin:10px 0 0;padding:8px 0 0;list-style:none;border-top:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;gap:8px}.history-attempt-list li{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;font-size:12.5px;color:var(--text-2)}.history-attempt-n{font-weight:750;color:var(--history-accent);min-width:1.6em}.history-attempt-when{flex:1 1 140px}.history-attempt-score{font-weight:700;color:var(--text-1)}.history-attempt-review{margin-left:auto;border:1px solid color-mix(in srgb,var(--history-accent) 40%,transparent);background:transparent;color:var(--history-accent);border-radius:var(--radius-pill);padding:4px 10px;font:inherit;font-size:12px;font-weight:750;cursor:pointer}.history-attempt-review:hover{background:color-mix(in srgb,var(--history-accent) 14%,transparent)}.history-attempt-misses{padding-top:4px;color:var(--text-3)}.history-row-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;flex-shrink:0}.history-primary{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:0;border-radius:var(--radius-pill);padding:10px 16px;font:inherit;font-size:13.5px;font-weight:750;color:#041018;background:var(--history-accent);cursor:pointer;text-decoration:none;box-shadow:0 0 18px color-mix(in srgb,var(--history-accent) 45%,transparent);transition:transform .12s,box-shadow .12s,filter .12s}.history-primary svg{width:14px;height:14px}.history-primary:hover:not(:disabled){filter:brightness(1.08);box-shadow:0 0 22px color-mix(in srgb,var(--history-accent) 62%,transparent)}.history-primary:disabled{opacity:.6;cursor:default}.history-primary.is-review{color:var(--history-accent);background:color-mix(in srgb,var(--history-accent) 14%,var(--surface-2));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--history-accent) 55%,transparent)}.history-download{position:relative}.history-download>summary{display:inline-flex;align-items:center;gap:6px;list-style:none;cursor:pointer;padding:9px 13px;font-size:13px;font-weight:700;color:#e8eef8d1;background:#ffffff0d;border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-pill)}.history-download>summary::-webkit-details-marker{display:none}.history-download>summary::marker{content:""}.history-download>summary:after{content:"▾";font-size:11px;opacity:.7}.history-download svg{width:14px;height:14px}.history-download[open]>summary{border-color:color-mix(in srgb,var(--history-accent) 45%,transparent);color:var(--history-accent)}.history-download-menu{position:absolute;right:0;top:calc(100% + 6px);z-index:var(--z-chrome);min-width:180px;display:flex;flex-direction:column;padding:6px;background:var(--surface-1);border:1px solid rgba(255,255,255,.12);border-radius:12px;box-shadow:0 12px 32px #0006}.history-download-menu a{padding:8px 10px;font-size:13px;font-weight:650;color:var(--text-1);text-decoration:none;border-radius:8px}.history-download-menu a:hover{background:#ffffff0f;color:var(--history-accent)}.history-icon-delete{margin-left:auto;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:0;border-radius:8px;background:transparent;color:var(--text-3);cursor:pointer;transition:color .15s,background .15s,opacity .15s}.history-icon-delete svg{width:15px;height:15px}.history-row:hover .history-icon-delete,.history-icon-delete:focus-visible{color:var(--text-2)}.history-icon-delete:hover,.history-icon-delete:focus-visible{color:#fecaca;background:#b91c1c47}@media(hover:none){.history-icon-delete{color:var(--text-3)}}.users-panel{padding:28px 30px 32px}.users-head{display:flex;flex-wrap:wrap;align-items:flex-start;gap:12px 24px;margin-bottom:8px}.users-head .panel-label{margin-bottom:6px}.users-head .panel-hint{margin:0;max-width:36em}.users-head .exam-focus-link{margin-left:auto;align-self:center}.users-count-label{display:flex;align-items:baseline;gap:10px;margin:0;color:var(--text-3);font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.users-count-label strong{font-size:36px;font-weight:800;letter-spacing:-.04em;line-height:1;color:var(--accent-bright);text-transform:none}.users-section{margin-top:22px;padding-top:18px;border-top:1px solid var(--border-subtle)}.users-section-title{margin:0 0 var(--space-3);font-size:var(--text-sm);font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3)}.users-log-summary{margin:calc(-1 * var(--space-2)) 0 var(--space-3);font-size:var(--text-sm);color:var(--text-2)}.users-log-summary strong{font-size:1.15em;color:var(--text-1)}.users-empty{margin:0;font-size:var(--text-base);color:var(--text-3)}.users-table{width:100%;border-collapse:collapse;font-size:13.5px;color:var(--text-1)}.users-table th{padding:0 12px 8px 0;text-align:left;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);border-bottom:1px solid var(--border-subtle)}.users-table td{padding:10px 12px 10px 0;vertical-align:top;border-bottom:1px solid var(--border-subtle);color:var(--text-2)}.users-table tbody tr:last-child td{border-bottom:0}.users-table .users-td-name{font-weight:700;color:var(--text-1)}.users-table .users-td-email{color:var(--accent-bright);font-weight:600}.users-table .users-td-when{white-space:nowrap;color:var(--text-3);font-variant-numeric:tabular-nums}@media(max-width:820px){.users-table,.users-table thead,.users-table tbody,.users-table th,.users-table td,.users-table tr{display:block}.users-table thead{display:none}.users-table tr{padding:10px 0;border-bottom:1px solid var(--border-subtle)}.users-table td{padding:2px 0;border:0}}.usage-periods{display:flex;gap:6px;align-self:center}.usage-periods .chip.usage-period-active,.usage-periods .chip.usage-period-active:hover{background:var(--accent);border-color:var(--accent);color:#fff}.usage-tiles{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:18px}.usage-tiles .performance-stat-value{font-size:26px;font-variant-numeric:tabular-nums}.usage-table td{font-variant-numeric:tabular-nums}.usage-table .usage-td-total{font-weight:700;color:var(--text-1)}.usage-table .usage-td-timing{color:var(--text-3);font-size:12.5px}.usage-table .usage-total-note,.usage-table .usage-timing-line{display:block}.usage-table .usage-total-note{font-weight:400;font-size:11.5px;color:var(--text-3)}.usage-difficulty{font-weight:500;color:var(--text-3)}@media(max-width:1100px){.usage-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}.pricing-lead{margin:0 0 var(--space-2);font-size:var(--text-md);line-height:1.5;color:var(--text-2)}.pricing-status{margin:0 0 18px;font-size:13px;font-weight:700;color:var(--text-strong)}.pricing-notice{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin:0 0 16px;padding:10px 12px;border-radius:var(--radius-md);background:#0f766e47;border:1px solid rgba(94,234,212,.28);color:var(--text-1);font-size:14px;line-height:1.45}.pricing-bundles{margin:4px 0 14px}.pricing-bundles .exam-timing-choice{flex:1 1 220px}.pricing-fineprint{margin:0 0 14px}.pricing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:8px 0 18px}.pricing-card{padding:18px 16px 16px;border-radius:16px;background:var(--surface-1);border:1px solid var(--border-subtle)}.pricing-card.is-current{border-color:#5eead473;box-shadow:0 0 0 1px #4a3c2a33}.pricing-card-name{margin:0;font-size:13px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--text-2)}.pricing-card-price{margin:8px 0 0;font-size:32px;font-weight:800;letter-spacing:-.03em;color:var(--text-strong)}.pricing-card-period{margin-left:4px;font-size:14px;font-weight:650;color:var(--text-3)}.pricing-card-blurb{margin:8px 0 12px;font-size:13px;line-height:1.4;color:var(--text-2)}.pricing-card-points{margin:0 0 16px;padding-left:18px;font-size:13px;line-height:1.55;color:var(--text-1);display:flex;flex-direction:column;gap:6px}.pricing-card-current{margin:0;font-size:13px;font-weight:700;color:var(--accent-deep)}.pricing-card .btn-generate{margin-top:0;padding:11px 14px;font-size:14px}.pricing-portal{margin-top:4px}.pricing-owner{margin:0 0 12px;font-size:13px;color:var(--text-2)}.pricing-connect{margin:8px 0 16px;padding:16px;border-radius:16px;background:var(--surface-1);border:1px solid rgba(94,234,212,.22)}.pricing-connect-title{margin:0 0 6px;font-size:14px;font-weight:800;color:var(--text-strong)}.pricing-connect .exam-honesty{margin-top:0}.pricing-connect .exam-honesty a{color:var(--accent-bright)}.pricing-connect .btn-generate{margin-top:12px}.pricing-connect .auth-input{background:var(--surface-1);color:var(--text-1);border-color:var(--border-subtle)}@media(max-width:820px){.pricing-grid{grid-template-columns:1fr}.app-chrome-sets{font-size:11px;padding:5px 8px}}.weakness-board{display:flex;flex-direction:column;gap:var(--course-gap, 18px)}.weakness-board-head{display:flex;flex-direction:column;gap:4px}.weakness-board-head h2{margin:0;font-size:18px;font-weight:750;letter-spacing:.02em;color:var(--text-1)}.weakness-board-head p{margin:0;font-size:13px;color:var(--text-3)}.weakness-card{display:flex;flex-direction:column;gap:12px;padding:16px 16px 18px;border-radius:16px;background:#0c1220b8;border:1px solid var(--border-subtle);box-shadow:0 12px 28px #00000038;min-width:0}.weakness-card-full{padding:22px 24px 24px}.weakness-card-open{display:flex;flex-direction:column;align-items:flex-start;gap:2px;margin:0;padding:0;border:0;background:none;color:inherit;text-align:left;cursor:pointer}.weakness-card-open:hover .weakness-title{color:var(--accent-bright)}.weakness-kicker{margin:0;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text-3)}.weakness-title{margin:0;font-size:16px;font-weight:750;color:var(--text-1)}.weakness-meta{margin:4px 0 0;font-size:12px;color:#eef3fb94}.weakness-empty{margin:0;font-size:13px;line-height:1.45;color:#eef3fb94}.weakness-bars{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:9px}.weakness-bar-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.weakness-bar-name{display:flex;align-items:baseline;gap:8px;min-width:0;font-size:12.5px;font-weight:650;color:#f4f7fbeb;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.weakness-bar-num{flex-shrink:0;font-variant-numeric:tabular-nums;font-weight:800;color:var(--text-3)}.weakness-bar-pct{flex-shrink:0;font-size:12px;font-variant-numeric:tabular-nums;font-weight:750;color:var(--text-2)}.weakness-bar-track{height:7px;border-radius:99px;background:#ffffff14;overflow:hidden}.weakness-bar-fill{display:block;height:100%;border-radius:inherit;background:#94a3b8;transition:width .35s ease}.weakness-bar.is-weak .weakness-bar-fill{background:#f87171}.weakness-bar.is-weak .weakness-bar-pct{color:var(--danger-text)}.weakness-bar.is-ok .weakness-bar-fill{background:#fbbf24}.weakness-bar.is-strong .weakness-bar-fill{background:#6b5f52}.weakness-bar.is-empty .weakness-bar-name,.weakness-bar.is-empty .weakness-bar-pct{color:#eef3fb61}.weakness-work{display:flex;flex-direction:column;gap:8px;padding-top:4px}.weakness-work-label{margin:0;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--danger-text)}.weakness-work ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.weakness-work li{display:flex;flex-direction:column;gap:2px;font-size:12.5px;line-height:1.35;color:var(--text-2)}.weakness-work strong{font-weight:700;color:var(--text-1)}.weakness-focus{align-self:flex-start;margin-top:4px;border:1px solid rgba(94,234,212,.35);background:#0f766e2e;color:var(--text-strong);border-radius:var(--radius-pill);padding:7px 12px;font-size:12.5px;font-weight:700;cursor:pointer}.weakness-focus:hover{background:#0f766e52}.exam-page>.weakness-card-full{background:var(--surface-1);border:1px solid var(--border-subtle)}.puzzle-launch{margin-top:16px;padding-top:16px;border-top:1px solid var(--border)}.puzzle-launch-copy{margin:0 0 10px;font-size:13px;line-height:1.45;color:var(--text-3)}.puzzle-launch-row{display:flex;gap:10px}.puzzle-launch-row .btn-secondary{width:auto;flex:1}.puzzle-launch-error{margin:8px 0 0;font-size:13px;color:#b91c1c}.puzzle-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-overlay);background:var(--paper-wrap);display:flex;flex-direction:column}.puzzle-overlay :where(button,a,input,select,textarea,[tabindex]):focus-visible{outline-color:var(--paper-navy);box-shadow:var(--focus-ring-paper)}.puzzle-shell{display:flex;flex-direction:column;flex:1;min-height:0;background:var(--paper-bg);color:var(--paper-ink)}.puzzle-topbar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;padding:12px 18px;background:var(--paper-wrap);color:var(--text-1)}.puzzle-kicker{margin:0;font-size:13px;font-weight:650}.puzzle-progress{margin:0;text-align:center;font-size:13px;font-variant-numeric:tabular-nums}.puzzle-close{justify-self:end;border:1px solid rgba(238,243,251,.25);background:transparent;color:var(--text-1);border-radius:var(--radius-pill);padding:6px 12px;font-size:13px;font-weight:650;cursor:pointer}.puzzle-body{flex:1;overflow:auto;padding:28px 22px 40px;max-width:720px;width:100%;margin:0 auto}.puzzle-play{flex:1;min-height:0;display:flex;flex-direction:column;padding:16px 18px 20px;gap:12px}.puzzle-play-copy{max-width:1100px;width:100%;margin:0 auto}.puzzle-kind{margin:0 0 4px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#047857}.puzzle-topic,.puzzle-title{margin:0 0 8px;font-size:22px;font-weight:700}.puzzle-setup{margin:0 0 8px;font-size:15px;line-height:1.5}.puzzle-lock-meter{margin:0;font-size:13px;font-weight:650;color:#047857}.puzzle-board{position:relative;flex:1;min-height:420px;border-radius:16px;background:radial-gradient(circle at 20% 20%,rgba(15,118,110,.06),transparent 40%),#dfe6ee;overflow:hidden;touch-action:none}.puzzle-piece{position:absolute;left:0;top:0;width:196px;height:124px;cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none;overflow:visible}.puzzle-piece.is-drag{cursor:grabbing;z-index:20;filter:drop-shadow(0 10px 16px rgba(15,27,45,.22))}.puzzle-piece.is-linked{z-index:var(--z-hud)}.puzzle-piece-svg{position:absolute;left:-26px;top:-4px;width:248px;height:132px;pointer-events:none;filter:drop-shadow(0 2px 2px rgba(28,25,23,.12))}.puzzle-piece-text{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:14px 18px;text-align:center;font-size:13.5px;line-height:1.35;font-weight:650;color:#1c1917;pointer-events:none}.puzzle-joint{position:absolute;left:0;top:0;z-index:8;pointer-events:none;max-width:140px;padding:3px 8px;border-radius:var(--radius-pill);background:#047857;color:#ecfdf5;font-size:11px;font-weight:700;line-height:1.3;box-shadow:0 2px 6px #0f1b2d2e}.puzzle-complete{max-width:1100px;width:100%;margin:0 auto}.puzzle-complete .btn-generate{margin-top:0;max-width:280px}.puzzle-why{margin:0 0 12px;padding:12px 14px;border-radius:8px;font-size:15px;line-height:1.45}.puzzle-why.is-ok,.puzzle-review li.is-ok{background:#f0fdfa;color:#115e59}.puzzle-why.is-miss,.puzzle-review li.is-miss{background:#fef2f2;color:#991b1b}.puzzle-review{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.puzzle-review li{display:flex;flex-direction:column;gap:4px;padding:12px 14px;border-radius:8px}.puzzle-review strong{font-size:14px}.exam-viewport:has(.exam-viewport-pane:not([hidden]) .memory-viewport-pane:not([hidden])){overflow:auto}.memory-viewport-pane:not([hidden]){position:relative;flex:1;min-height:0;height:100%}.memory-page{position:relative;height:100%;min-height:0;flex:1;overflow:hidden;background:var(--surface-base);color:var(--text-1)}.memory-nebula,.memory-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.memory-canvas{display:block}.memory-labels{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden}.memory-token-label{position:absolute;transform:translate(-50%,calc(-100% - 10px));padding:3px 8px;border-radius:var(--radius-pill);font-size:11px;font-weight:650;letter-spacing:.01em;color:#f8fffd;background:color-mix(in srgb,var(--token-color, var(--accent)) 22%,rgba(6,10,22,.78));border:1px solid color-mix(in srgb,var(--token-color, var(--accent)) 55%,transparent);white-space:nowrap;max-width:180px;overflow:hidden;text-overflow:ellipsis;text-shadow:0 0 12px color-mix(in srgb,var(--token-color, var(--accent)) 70%,transparent)}.memory-token-label.is-selected{background:color-mix(in srgb,var(--token-color, var(--accent)) 38%,rgba(6,10,22,.88))}.memory-nebula-label{position:absolute;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 10px;border-radius:12px;font-size:11px;font-weight:650;color:#f8fffd;background:color-mix(in srgb,var(--token-color, var(--accent)) 14%,rgba(4,8,18,.72));border:1px solid color-mix(in srgb,var(--token-color, var(--accent)) 42%,transparent);pointer-events:none;text-align:center;white-space:nowrap;text-shadow:0 0 14px color-mix(in srgb,var(--token-color, var(--accent)) 55%,transparent)}.memory-nebula-label strong{font-size:12px;font-weight:800;letter-spacing:.02em}.memory-nebula-label em{font-style:normal;font-size:10px;font-weight:600;color:var(--text-3)}.memory-chrome{position:absolute;z-index:2;top:18px;left:22px;right:22px;display:flex;align-items:flex-start;justify-content:space-between;gap:18px;pointer-events:none}.memory-hero{max-width:420px}.memory-kicker{margin:0 0 4px;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-bright)}.memory-title{margin:0;font-family:Georgia,Times New Roman,serif;font-size:28px;font-weight:700;letter-spacing:-.02em}.memory-lead{margin:8px 0 0;font-size:13.5px;line-height:1.45;color:var(--text-2);max-width:34em}.memory-legend{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px 12px;margin:0;padding:0;list-style:none;font-size:11px;font-weight:650;color:var(--text-2)}.memory-legend li{display:inline-flex;align-items:center;gap:6px}.memory-legend-dot{width:7px;height:7px;border-radius:50%;box-shadow:0 0 8px currentColor}.memory-empty{position:absolute;z-index:2;left:50%;bottom:28%;transform:translate(-50%);margin:0;padding:8px 14px;border-radius:var(--radius-pill);font-size:13px;color:#e8eef8c7;background:#060a168c;border:1px solid rgba(94,234,212,.25);pointer-events:none}.memory-error{position:absolute;z-index:var(--z-chrome);left:22px;bottom:22px;margin:0;max-width:420px;color:#fecaca;font-size:13px}.memory-tooltip{position:absolute;z-index:var(--z-chrome);left:50%;bottom:22px;transform:translate(-50%);padding:7px 12px;border-radius:var(--radius-pill);font-size:12.5px;background:var(--surface-glass);border:1px solid rgba(255,255,255,.12);pointer-events:none}.memory-tooltip-course{margin-right:8px;color:var(--accent-bright);font-weight:700}.memory-hud{position:absolute;z-index:var(--z-chrome);right:22px;bottom:22px;width:min(340px,calc(100% - 44px));padding:16px 18px 18px;border-radius:16px;background:var(--surface-1);border:1px solid var(--border-subtle);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:var(--glow-md)}.memory-hud-kicker{margin:0 0 2px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-bright)}.memory-hud-title{margin:0 0 12px;font-size:18px;line-height:1.25}.memory-hud-title span{font-weight:500;color:#e8eef8d1}.memory-hud-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px 14px;margin:0 0 10px}.memory-hud-stats dt{font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#e8eef880}.memory-hud-stats dd{margin:2px 0 0;font-size:13.5px;font-weight:650}.memory-hud-why{margin:0 0 14px;font-size:12.5px;line-height:1.45;color:var(--text-2)}.memory-hud-actions{display:flex;flex-wrap:wrap;gap:8px}.memory-hud-primary,.memory-hud-secondary{font:inherit;font-size:13px;font-weight:700;border-radius:var(--radius-pill);padding:8px 14px;cursor:pointer}.memory-hud-primary{border:none;color:#1e3a8a;background:var(--accent-bright)}.memory-hud-primary:hover{background:#93c5fd}.memory-hud-secondary{color:var(--text-1);background:transparent;border:1px solid rgba(255,255,255,.18)}.memory-hud-secondary:hover:not(:disabled){border-color:var(--accent-bright);color:var(--accent-bright)}.memory-hud-secondary:disabled{opacity:.45;cursor:default}@media(prefers-reduced-motion:reduce){.memory-token-label{text-shadow:none}}.memory-hub{display:flex;flex-direction:column;gap:1.25rem;padding:1.5rem 1.75rem 2rem;min-height:calc(100vh - 7rem)}.memory-hub-head{max-width:52rem}.memory-subject-tabs{display:flex;flex-wrap:wrap;gap:.45rem}.memory-subject-tab{border:1px solid rgba(255,255,255,.12);background:#0f172a8c;color:#e2e8f0;border-radius:var(--radius-pill);padding:.35rem .85rem;font-size:.82rem;cursor:pointer;transition:border-color .15s,background .15s}.memory-subject-tab.is-active{border-color:var(--subject-accent, var(--accent-bright));background:color-mix(in srgb,var(--subject-accent, var(--accent-bright)) 18%,transparent);color:#fff}.memory-hub-body{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.9fr);gap:1.25rem;align-items:start}.memory-sky-pane{min-height:420px;border-radius:16px;border:1px solid rgba(255,255,255,.08);background:radial-gradient(ellipse at 50% 20%,#1e293be6,#020617f2);overflow:hidden}.memory-action-pane{display:flex;flex-direction:column;gap:1rem}.memory-prompt-label{display:flex;flex-direction:column;gap:.35rem;font-size:.85rem;color:var(--text-3)}.memory-prompt-input{width:100%;border-radius:10px;border:1px solid rgba(255,255,255,.12);background:#0f172a99;color:#f1f5f9;padding:.55rem .65rem;resize:vertical;font:inherit}.memory-mode-fieldset{border:none;margin:0;padding:0}.memory-mode-legend{font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);margin-bottom:.5rem}.memory-mode-list{display:flex;flex-direction:column;gap:.5rem}.memory-mode-card{display:flex;gap:.65rem;align-items:flex-start;padding:.75rem .85rem;border-radius:12px;border:1px solid var(--border-subtle);background:#0f172a73;cursor:pointer;transition:border-color .15s,background .15s}.memory-mode-card input{margin-top:.2rem;accent-color:var(--accent-bright)}.memory-mode-card.is-selected{border-color:var(--accent-bright);background:#14b8a61f}.memory-mode-card-body{display:flex;flex-direction:column;gap:.2rem;font-size:.88rem;color:var(--text-3)}.memory-mode-card-body strong{color:var(--paper-card);font-size:.95rem}.memory-send-row{display:flex;gap:.75rem;align-items:center}.memory-send-btn{flex:1;border:1px solid var(--btn-border);border-radius:12px;padding:.75rem 1.25rem;font-weight:600;font-size:1rem;cursor:pointer;background:var(--btn-fill);color:var(--btn-text)}.memory-send-btn:disabled{opacity:.45;cursor:default}.mindmap-sky{position:relative;width:100%;height:100%;min-height:420px;display:flex;flex-direction:column}.mindmap-sky--empty,.mindmap-sky--loading{align-items:center;justify-content:center;color:var(--text-3);padding:2rem;text-align:center}.mindmap-svg{flex:1;width:100%;min-height:320px}.mindmap-star{cursor:pointer}.mindmap-star-label{font-size:2.8px;fill:var(--text-1);pointer-events:none}.mindmap-edge-label{font-size:2.2px;text-anchor:middle;opacity:.85;pointer-events:none}.mindmap-meta{padding:.75rem 1rem 1rem;border-top:1px solid rgba(255,255,255,.06);font-size:.88rem;color:var(--text-3)}.mindmap-summary{margin:0 0 .35rem;color:var(--text-3)}.mindmap-node-tip strong,.mindmap-edge-tip strong{color:var(--accent-bright)}.exam-viewport:has(.exam-viewport-pane:not([hidden]) .exam-page--memory){overflow:auto}.exam-viewport-pane:not([hidden]):has(.exam-page--memory){flex:1;min-height:0;min-height:min(100%,100dvh);overflow:auto;display:flex;flex-direction:column}.course-page-tabs{display:flex;flex-wrap:wrap;gap:4px;margin:0 0 1rem;padding:4px;border-radius:var(--radius-pill);background:var(--surface-glass);border:1px solid rgba(255,255,255,.12);width:fit-content;max-width:100%;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 12px 32px #00000047}.course-page-layout{overflow:visible;min-height:min-content}.course-page-layout>.exam-form-header{padding:4px 30px 12px;margin-bottom:0}.course-page-layout>.course-page-transition{min-width:0}.course-page-layout .performance-dashboard,.course-page-layout .frq-grader-pane{display:flex;flex-direction:column;gap:16px}.performance-dashboard{display:flex;flex-direction:column;gap:22px}.performance-header{padding:4px 2px 0;text-align:center}.performance-header-title{margin:0 0 8px;font-family:var(--font-brand);font-size:clamp(1.45rem,2.4vw,1.75rem);font-weight:800;letter-spacing:-.02em;color:var(--text-1)}.performance-header-lead{margin:0 auto;max-width:40rem;font-size:16px;line-height:1.55;color:var(--text-3)}.performance-card{padding:26px 28px;border-radius:18px;background:var(--surface-1);border:1px solid var(--border-subtle);color:var(--text-1);box-shadow:0 8px 24px #4a3c2a14}.performance-hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1.4fr);gap:24px;align-items:stretch}.performance-hero-kicker,.performance-section-head h3{margin:0 0 10px;font-size:12.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}.performance-hero-score-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:6px}.performance-hero-value{margin:0;font-family:Fraunces,Georgia,Times New Roman,serif;font-size:72px;font-weight:700;line-height:.95;letter-spacing:-.04em;color:var(--text-1)}.performance-confidence{padding:6px 14px;border-radius:var(--radius-pill);font-size:13.5px;font-weight:600;text-transform:capitalize;border:1px solid rgba(255,255,255,.12);background:#ffffff0f;color:var(--text-2)}.performance-confidence.is-high{color:#2d4a38;border-color:#2d4a3859;background:#4a3c2a1f}.performance-confidence.is-medium{color:#6b4f0a;border-color:#fcd34d59;background:#f59e0b1f}.performance-confidence.is-low{color:var(--danger-text);border-color:#fca5a559;background:#ef44441a}.performance-hero-meta{margin:0 0 10px;font-size:16.5px;font-weight:600;color:var(--text-2)}.performance-hero-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;align-content:start}.performance-stat{padding:14px 14px 12px;border-radius:12px;background:var(--surface-2);border:1px solid rgba(255,255,255,.08)}.performance-stat-label{margin:0 0 6px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3)}.performance-stat-value{margin:0;font-size:30px;font-weight:700;line-height:1.1;color:var(--text-1)}.performance-stat-meta{margin:6px 0 0;font-size:12px;line-height:1.35;color:var(--text-3)}.performance-section-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:10px 16px;margin-bottom:18px}.performance-selection-bar{display:flex;flex-direction:column;gap:16px;margin-top:18px;padding:20px 22px;border-radius:16px;border:1.5px solid color-mix(in srgb,var(--accent) 38%,var(--border-subtle));background:color-mix(in srgb,var(--accent) 8%,var(--surface-1))}.performance-selection-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 14px}.performance-selection-label{margin:0;font-size:.96rem;font-weight:650;color:var(--text-2)}.performance-selection-clear{padding:.38rem .85rem;border-radius:999px;border:1px solid var(--border-subtle);background:transparent;color:var(--text-3);font-size:.86rem;font-weight:700;cursor:pointer}.performance-selection-clear:hover{color:var(--text-1);border-color:color-mix(in srgb,var(--accent) 22%,var(--border-subtle))}.performance-selection-chips{display:flex;flex-wrap:wrap;gap:10px;margin:0;padding:0;list-style:none}.performance-selection-chip{display:inline-flex;align-items:center;gap:8px;padding:.4rem .55rem .4rem .9rem;border-radius:999px;border:1px solid var(--border-subtle);background:var(--surface-1);color:var(--text-1);font-size:.9rem;font-weight:650}.performance-selection-chip-remove{display:inline-flex;align-items:center;justify-content:center;width:21px;height:21px;padding:0;border:none;border-radius:50%;background:var(--blend-a);color:var(--text-3);font-size:1rem;line-height:1;cursor:pointer}.performance-selection-chip-remove:hover{background:color-mix(in srgb,var(--danger-text, #b33) 16%,var(--blend-a));color:var(--text-1)}.performance-selected-cta{align-self:stretch;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:1rem 1.4rem;border:1px solid var(--btn-border);border-radius:999px;background:var(--btn-fill);color:var(--btn-text);font-size:1.08rem;font-weight:750;white-space:nowrap;cursor:pointer;box-shadow:0 6px 18px #4a3c2a38;transition:background var(--dur-fast),transform var(--dur-fast),box-shadow var(--dur-fast)}.performance-selected-cta:hover{background:var(--btn-fill-hover);transform:translateY(-1px);box-shadow:0 8px 22px #4a3c2a47}.performance-section-head h3{font-size:21px;font-weight:750;letter-spacing:.01em;color:var(--text-1)}.performance-section-head p{margin:4px 0 0;font-size:15px;color:var(--text-3)}.performance-empty{margin:0;font-size:14px;line-height:1.45;color:var(--text-3)}.performance-bars{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.performance-bar-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:6px}.performance-bar-name{min-width:0;font-size:13px;font-weight:650;color:var(--text-1);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.performance-bar-pct{flex-shrink:0;font-size:13px;font-weight:700;color:var(--text-2)}.performance-bar-track{height:8px;border-radius:var(--radius-pill);background:#ffffff14;overflow:hidden}.performance-bar-fill{height:100%;border-radius:inherit;background:var(--accent);transition:width .25s ease}.performance-bar.is-danger .performance-bar-fill,.performance-bar.is-critical .performance-bar-fill,.performance-bar.is-weak .performance-bar-fill{background:linear-gradient(90deg,#f87171,#ef4444)}.performance-bar.is-danger .performance-bar-pct,.performance-bar.is-critical .performance-bar-pct,.performance-bar.is-weak .performance-bar-pct,.performance-unit-pct.is-danger{color:var(--danger-text)}.performance-bar.is-warning .performance-bar-fill,.performance-bar.is-developing .performance-bar-fill,.performance-bar.is-ok .performance-bar-fill{background:linear-gradient(90deg,#fbbf24,#f59e0b)}.performance-bar.is-warning .performance-bar-pct,.performance-bar.is-developing .performance-bar-pct,.performance-bar.is-ok .performance-bar-pct,.performance-unit-pct.is-warning{color:#6b4f0a}.performance-bar.is-neutral .performance-bar-fill{background:linear-gradient(90deg,#94a3b8,#64748b)}.performance-bar.is-neutral .performance-bar-pct,.performance-unit-pct.is-neutral{color:var(--text-3)}.performance-bar.is-success .performance-bar-fill,.performance-bar.is-strong .performance-bar-fill{background:linear-gradient(90deg,#6b5f52,#4a4034)}.performance-bar.is-success .performance-bar-pct,.performance-bar.is-strong .performance-bar-pct,.performance-unit-pct.is-success{color:#2d4a38}.performance-bar.is-empty .performance-bar-name,.performance-bar.is-empty .performance-bar-pct{color:var(--text-3)}.performance-stat-trend{margin:4px 0 0;font-size:11px;font-weight:650;color:var(--text-3)}.performance-stat-trend.is-up{color:#2d4a38}.performance-stat-trend.is-down{color:var(--danger-text)}.performance-stat-empty{display:flex;flex-direction:column;gap:8px;align-items:flex-start}.performance-inline-cta{padding:6px 10px;border-radius:var(--radius-pill);border:1px solid rgba(74,60,42,.35);background:#4a3c2a1a;color:var(--text-strong);font:inherit;font-size:11.5px;font-weight:700;cursor:pointer}.performance-inline-cta:hover{background:#4a3c2a2e}.performance-score-meter{margin:12px 0 8px}.performance-score-meter-track{position:relative;height:10px;border-radius:var(--radius-pill);background:#ffffff14;overflow:hidden}.performance-score-meter-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,#ef4444,#f59e0b,#34d399);transition:width .3s ease}.performance-score-marker{position:absolute;top:-2px;bottom:-2px;width:2px;margin-left:-1px;background:#ffffff59;pointer-events:none}.performance-score-meter-labels{display:flex;justify-content:space-between;margin-top:6px;padding:0 2px;font-size:10px;font-weight:700;color:var(--text-3)}.performance-milestone{margin:10px 0 0;padding:10px 12px;border-radius:var(--radius-md);background:#4a3c2a1a;border:1px solid rgba(74,60,42,.25);color:var(--text-1);font-size:12.5px;line-height:1.45}.performance-bar{list-style:none;border-radius:12px;border:1px solid rgba(255,255,255,.08);background:#ffffff08;padding:12px 14px}.performance-bar summary{list-style:none;cursor:pointer}.performance-bar summary::-webkit-details-marker{display:none}.performance-bar-summary{display:block}.predicted-score-card{display:flex;flex-direction:column;gap:8px}.predicted-score-kicker{margin:0;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}.predicted-score-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.predicted-score-value{margin:0;font-family:Fraunces,Georgia,Times New Roman,serif;font-size:56px;font-weight:700;line-height:1;letter-spacing:-.03em}.predicted-score-confidence{padding:4px 10px;border-radius:var(--radius-pill);font-size:12px;font-weight:600;text-transform:capitalize;background:#ffffff14;color:var(--text-2)}.predicted-score-confidence.is-high{color:#2d4a38}.predicted-score-confidence.is-medium{color:#6b4f0a}.predicted-score-composite{margin:0;font-size:14px;color:var(--text-2)}.performance-stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.performance-stat-card{padding:16px;border-radius:14px;background:var(--surface-2);border:1px solid rgba(255,255,255,.08)}.performance-stat-card .performance-stat-label{margin:0 0 6px;font-size:12px;font-weight:600;color:var(--text-3);text-transform:uppercase;letter-spacing:.06em}.performance-stat-card .performance-stat-value{margin:0;font-size:28px;font-weight:700;color:var(--text-1)}.performance-stat-card .performance-stat-meta{margin:4px 0 0;font-size:12px;color:var(--text-3)}.frq-grader-panel{display:flex;flex-direction:column;gap:18px}.frq-grader-picker-head{margin-bottom:4px}.frq-grader-picker-title{margin:0 0 4px;font-family:Fraunces,Georgia,Times New Roman,serif;font-size:1.35rem;font-weight:650;letter-spacing:-.02em;color:var(--text-1)}.frq-grader-picker-sub{margin:0;font-size:.88rem;color:var(--text-3)}.frq-grader-exam-groups{display:flex;flex-direction:column;gap:22px}.frq-grader-exam-group-label{margin:0 0 10px;font-size:.78rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3)}.frq-grader-section-label{margin:0 0 10px;font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3)}.frq-grader-exam-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}.frq-grader-exam-card{display:grid;grid-template-columns:6.5rem minmax(0,1fr) 13rem;gap:18px 22px;align-items:center;width:100%;min-height:100px;padding:22px 24px;border:1px solid var(--border-subtle);border-radius:16px;background:var(--surface-1);box-shadow:var(--glow-sm);font:inherit;color:inherit;text-align:left;cursor:pointer;transition:transform var(--dur-fast),border-color var(--dur-fast),box-shadow var(--dur-fast)}.frq-grader-exam-card:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 30%,var(--border-subtle));box-shadow:var(--glow-md)}.frq-grader-exam-when{display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding-right:14px;border-right:1px solid var(--border-subtle)}.frq-grader-exam-weekday{font-size:.7rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}.frq-grader-exam-date{font-size:.98rem;font-weight:750;color:var(--text-1);line-height:1.3;font-variant-numeric:tabular-nums}.frq-grader-exam-time{font-size:.76rem;font-weight:600;color:var(--text-3);font-variant-numeric:tabular-nums}.frq-grader-exam-info{display:flex;flex-direction:column;gap:10px;min-width:0}.frq-grader-exam-title{font-size:1.02rem;font-weight:700;line-height:1.35;color:var(--text-1);overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.frq-grader-exam-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.frq-grader-exam-cta{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:52px;width:100%;padding:12px 24px;border-radius:14px;font-size:1rem;font-weight:750;color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--surface-1));border:1px solid color-mix(in srgb,var(--accent) 24%,transparent);white-space:nowrap;transition:background var(--dur-fast),border-color var(--dur-fast)}.frq-grader-exam-card:hover .frq-grader-exam-cta{background:color-mix(in srgb,var(--accent) 16%,var(--surface-1));border-color:color-mix(in srgb,var(--accent) 34%,transparent)}.frq-grader-exam-cta-arrow{transition:transform var(--dur-fast)}.frq-grader-exam-card:hover .frq-grader-exam-cta-arrow{transform:translate(2px)}.frq-grader-crumb{margin:0}.frq-grader-crumb-back{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:8px 14px;border:1px solid var(--border-subtle);border-radius:12px;background:var(--surface-1);box-shadow:var(--glow-sm);font:inherit;font-size:.88rem;font-weight:700;color:var(--text-2);cursor:pointer;transition:background var(--dur-fast),border-color var(--dur-fast),color var(--dur-fast)}.frq-grader-crumb-back:hover{background:var(--blend-a);color:var(--text-1);border-color:color-mix(in srgb,var(--accent) 22%,var(--border-subtle))}.frq-grader-crumb-icon{font-size:1rem;line-height:1}.frq-grader-exam-header{display:flex;flex-direction:column;gap:14px;padding:18px 20px;border:1px solid var(--border-subtle);border-radius:16px;background:linear-gradient(180deg,color-mix(in srgb,var(--surface-2) 55%,var(--surface-1)) 0%,var(--surface-1) 100%)}.frq-grader-exam-header-main{display:flex;flex-direction:column;gap:10px}.frq-grader-selected-title{margin:0;font-family:Fraunces,Georgia,Times New Roman,serif;font-size:1.35rem;font-weight:650;letter-spacing:-.02em;line-height:1.25;color:var(--text-1)}.frq-grader-exam-header-chips{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.frq-grader-date-chip{display:inline-flex;align-items:center;gap:10px;padding:8px 12px;border-radius:12px;border:1px solid var(--border-subtle);background:var(--blend-c)}.frq-grader-date-chip-day{font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--accent)}.frq-grader-date-chip-body{font-size:.84rem;font-weight:650;color:var(--text-2);line-height:1.35}.frq-grader-date-chip-time{font-weight:600;color:var(--text-3)}.frq-grader-workspace{display:grid;grid-template-columns:minmax(240px,310px) minmax(0,1fr);gap:18px;align-items:start}.frq-grader-frq-nav{position:sticky;top:12px;padding:16px;border:1px solid var(--border-subtle);border-radius:15px;background:color-mix(in srgb,var(--surface-2) 65%,var(--surface-1))}.frq-grader-frq-nav-list{display:flex;flex-direction:column;gap:9px}.frq-grader-frq-nav-item{display:grid;grid-template-columns:auto minmax(0,1fr);gap:11px;align-items:start;width:100%;padding:12px 14px;border-radius:13px;border:1px solid transparent;background:transparent;text-align:left;cursor:pointer;font:inherit;color:inherit;transition:background var(--dur-fast),border-color var(--dur-fast),box-shadow var(--dur-fast)}.frq-grader-frq-nav-item:hover{background:var(--surface-1);border-color:var(--border-subtle)}.frq-grader-frq-nav-item.is-active{background:var(--surface-1);border-color:color-mix(in srgb,var(--accent) 32%,var(--border-subtle));box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 14%,transparent)}.frq-grader-frq-nav-num{font-size:.8rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--accent);padding-top:2px}.frq-grader-frq-nav-body{display:flex;flex-direction:column;gap:4px;min-width:0}.frq-grader-main{display:flex;flex-direction:column;gap:20px;min-width:0}.frq-grader-frq-detail-wrap{padding:21px 23px;border:1px solid var(--border-subtle);border-radius:17px;background:var(--surface-1);box-shadow:var(--glow-sm)}.frq-grader-frq-detail{display:flex;flex-direction:column;gap:16px}.frq-grader-frq-detail-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px}.frq-grader-frq-detail-badges{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.frq-grader-frq-detail-summary{font-size:.78rem;font-weight:650;color:var(--text-3)}.frq-grader-answer-key-toggle{padding:7px 12px;border-radius:999px;border:1px solid color-mix(in srgb,var(--accent) 24%,transparent);background:color-mix(in srgb,var(--accent) 8%,var(--surface-1));font:inherit;font-size:.76rem;font-weight:750;letter-spacing:.02em;color:var(--accent);cursor:pointer;transition:background var(--dur-fast)}.frq-grader-answer-key-toggle:hover{background:color-mix(in srgb,var(--accent) 14%,var(--surface-1))}.frq-grader-prompt-section-title,.frq-grader-upload-title{margin:0 0 8px;font-size:.9rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3)}.frq-grader-prompt-section{padding-top:4px;border-top:1px solid var(--border-subtle)}.frq-grader-frq-detail .bb-frq-title{margin:0;font-size:1.15rem;line-height:1.35}.frq-grader-frq-detail .bb-stimulus{font-size:.94rem;line-height:1.58}.frq-grader-frq-detail .bb-diagram-fallback{max-width:100%;height:auto;border-radius:10px}.frq-grader-answer-key{padding:14px 16px;border-radius:14px;border:1px solid color-mix(in srgb,var(--success-border, #8fb88a) 35%,var(--border-subtle));background:color-mix(in srgb,var(--success-bg, #eef6ea) 55%,var(--surface-1))}.frq-grader-answer-key-title{margin:0 0 12px;font-size:.82rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--success-text, #2f5a32)}.frq-grader-answer-key-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:12px}.frq-grader-answer-key-part{padding:12px 14px;border-radius:12px;background:#ffffff8c;border:1px solid rgba(255,255,255,.7)}.frq-grader-answer-key-part-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.frq-grader-answer-key-label{font-size:.82rem;font-weight:800;color:var(--text-1)}.frq-grader-answer-key-pts{font-size:.74rem;font-weight:700;color:var(--text-3)}.frq-grader-answer-key-kicker{display:block;margin-bottom:4px;font-size:.7rem;font-weight:750;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3)}.frq-grader-answer-key-text{font-size:.9rem;line-height:1.5;color:var(--text-1)}.frq-grader-answer-key-body+.frq-grader-answer-key-notes{margin-top:10px;padding-top:10px;border-top:1px dashed var(--border-subtle)}.frq-grader-upload-section{padding:21px 23px;border:1px solid var(--border-subtle);border-radius:17px;background:color-mix(in srgb,var(--surface-2) 45%,var(--surface-1))}.frq-grader-upload-sub{margin:0 0 16px;font-size:.98rem;line-height:1.45;color:var(--text-3)}.frq-grader-grade-btn{width:100%;margin-top:16px}.frq-grader-pane .bb-frq-upload{padding:22px 24px;border-radius:15px;background:var(--surface-1)}.frq-grader-pane .bb-secondary{min-height:46px;padding:12px 24px;border-radius:12px;font-size:15px}.frq-grader-pane .btn-generate{min-height:54px;padding:16px 22px;font-size:17px;border-radius:14px}.frq-grader-frq-num{display:inline-flex;align-items:center;justify-content:center;min-width:3.25rem;padding:.2rem .45rem;border-radius:999px;font-size:.72rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--surface-1));border:1px solid color-mix(in srgb,var(--accent) 22%,transparent)}.frq-grader-frq-skill{font-size:.8rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text-3)}.frq-grader-frq-title{font-size:.98rem;font-weight:650;line-height:1.35;color:var(--text-1)}.frq-grader-frq-parts{font-size:.85rem;font-weight:600;color:var(--text-3)}@media(max-width:900px){.frq-grader-workspace{grid-template-columns:1fr}.frq-grader-frq-nav{position:static}.frq-grader-frq-nav-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}}@media(max-width:640px){.frq-grader-exam-card{grid-template-columns:1fr;gap:12px;min-height:0}.frq-grader-exam-when{flex-direction:row;flex-wrap:wrap;align-items:baseline;gap:6px 10px;padding-right:0;border-right:none;padding-bottom:10px;border-bottom:1px solid var(--border-subtle)}.frq-grader-exam-cta{width:100%}.frq-grader-frq-nav-list{grid-template-columns:1fr}}.bb-frq-grade-head{align-items:flex-start;gap:10px 16px}.bb-frq-grade-head-main{display:flex;flex-direction:column;gap:4px;min-width:0}.bb-frq-grade-headline{display:block;font-size:1rem;line-height:1.35}.bb-frq-grade-headline-sep{margin:0 .25rem;color:var(--text-3);font-weight:600}.bb-frq-grade-skill{font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text-3)}.bb-frq-grade-score-pill{flex-shrink:0;padding:.28rem .65rem;border-radius:999px;font-size:.78rem;font-weight:700;color:var(--text-2);background:color-mix(in srgb,var(--text-3) 8%,var(--surface-1));border:1px solid color-mix(in srgb,var(--text-3) 14%,transparent);white-space:nowrap}.frq-grade-results-panel{margin-top:0}.frq-grade-results{display:flex;flex-direction:column;gap:16px}.frq-grade-results-items{display:flex;flex-direction:column;gap:12px}.bb-frq-grade-next{margin:0 0 12px;font-size:14px;color:var(--text-2)}.exam-page--memory{position:relative;flex:1;min-height:0;height:100%;max-width:none;width:100%;margin:0;padding:0;gap:0;overflow:hidden;background:var(--surface-base)}.exam-page--memory .course-page-tabs{position:absolute;z-index:calc(var(--z-chrome) + 2);top:18px;left:22px;margin:0}.course-memory-section{position:relative;flex:1;min-height:0;height:100%}.course-memory-section--empty{align-items:center;justify-content:center;text-align:center;padding:3rem 1.5rem}.mindmap-nebula-wrap{position:absolute;top:0;right:0;bottom:0;left:0}.mindmap-nebula{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;background:radial-gradient(ellipse 80% 60% at 50% 42%,rgba(74,60,42,.22),transparent 58%),radial-gradient(ellipse 55% 50% at 28% 38%,rgba(167,139,250,.18),transparent 62%),radial-gradient(ellipse 50% 46% at 72% 58%,rgba(56,189,248,.16),transparent 60%),var(--surface-base)}.mindmap-nebula .memory-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block;touch-action:none}.mindmap-nebula .memory-labels{z-index:2}.mindmap-star-chip{-moz-appearance:none;appearance:none;-webkit-appearance:none;font:inherit;color:inherit;margin:0;transform:translate(-50%,calc(-100% - 14px));max-width:210px;white-space:normal;pointer-events:auto;cursor:pointer;text-align:center;box-shadow:0 0 18px color-mix(in srgb,var(--token-color, var(--accent)) 48%,transparent),0 0 42px color-mix(in srgb,var(--token-color, var(--accent)) 22%,transparent)}.mindmap-star-chip.is-hovered,.mindmap-star-chip.is-selected{background:color-mix(in srgb,var(--token-color, var(--accent)) 28%,rgba(4,8,18,.88));border-color:color-mix(in srgb,var(--token-color, var(--accent)) 70%,transparent);box-shadow:0 0 22px color-mix(in srgb,var(--token-color, var(--accent)) 70%,transparent),0 0 52px color-mix(in srgb,var(--token-color, var(--accent)) 30%,transparent);z-index:var(--z-chrome)}.mindmap-star-chip em{display:block;max-width:198px;white-space:normal;line-height:1.35}.mindmap-nebula-hint{position:absolute;z-index:2;left:auto;right:22px;bottom:22px;margin:0;font-size:12px;color:var(--text-3);pointer-events:none;max-width:280px;text-align:right}.mindmap-nebula-wrap .memory-hud{max-height:min(52vh,460px);overflow:auto}.mindmap-center-popup{left:50%;right:auto;bottom:28px;transform:translate(-50%);width:min(420px,calc(100% - 48px));pointer-events:auto;z-index:var(--z-hud)}.mindmap-finder{position:absolute;z-index:var(--z-chrome);top:72px;left:22px;width:min(240px,calc(100% - 48px));max-height:min(calc(52vh - 54px),380px);display:flex;flex-direction:column;gap:8px;padding:10px;border-radius:16px;background:var(--surface-glass);border:1px solid rgba(255,255,255,.12);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);pointer-events:auto}.mindmap-finder input{font:inherit;font-size:13px;color:var(--text-1);background:#040a16b3;border:1px solid rgba(255,255,255,.14);border-radius:10px;padding:7px 10px}.mindmap-finder-list{overflow:auto;min-height:0;display:flex;flex-direction:column;gap:10px}.mindmap-finder h3{margin:0 0 4px;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#94a3b8d9}.mindmap-finder ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.mindmap-finder li button{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;font:inherit;font-size:12.5px;text-align:left;color:var(--text-1);background:transparent;border:0;border-radius:8px;padding:5px 8px;cursor:pointer}.mindmap-finder li button:hover{background:#5eead41f}.mindmap-finder p{margin:0;font-size:12px;color:#94a3b8cc}.mindmap-edge-jump{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;font:inherit;text-align:left;color:inherit;background:transparent;border:0;padding:0;cursor:pointer;display:flex;flex-direction:column;gap:2px}.mindmap-edge-jump:hover strong{color:var(--text-strong)}.mindmap-star-chip.is-dusty{opacity:1;filter:none}.mindmap-star-chip.is-owned{opacity:1}.mindmap-choice-list{display:flex;flex-direction:column;gap:8px;margin:0 0 12px}.mindmap-choice{font:inherit;text-align:left;color:var(--text-1);background:#ffffff0a;border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:10px 12px;cursor:pointer}.mindmap-choice:hover:not(:disabled){border-color:#5eead473}.mindmap-choice.is-correct{border-color:var(--accent-bright);background:#4a3c2a1f}.mindmap-choice.is-wrong{border-color:#f87171;background:#f871711a}.mindmap-typed{display:flex;flex-direction:column;gap:6px;margin:0 0 10px;font-size:12px;font-weight:650;color:var(--text-3)}.mindmap-typed input,.mindmap-typed textarea,.mindmap-typed select{font:inherit;font-weight:500;color:var(--text-1);background:var(--surface-1);border:1px solid var(--border-subtle);border-radius:10px;padding:8px 10px}.mindmap-verdict{margin:8px 0 0;font-size:12.5px;line-height:1.4}.mindmap-verdict.is-hit{color:var(--accent-bright)}.mindmap-verdict.is-miss{color:var(--danger-text)}.mindmap-edge-list{list-style:none;margin:0 0 12px;padding:0;display:flex;flex-direction:column;gap:8px;font-size:12.5px;color:#e8eef8c7}.mindmap-edge-list li{display:flex;flex-direction:column;gap:2px;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.08)}.mindmap-edge-list li:last-child{border-bottom:none;padding-bottom:0}.mindmap-edge-list strong{color:var(--accent-bright);font-size:13px}@media(max-width:720px){.performance-hero,.performance-hero-stats{grid-template-columns:1fr}.performance-hero-value{font-size:56px}.performance-stats-grid{grid-template-columns:1fr}.predicted-score-value{font-size:44px}.exam-page--memory .course-page-tabs{left:12px;top:12px}.mindmap-nebula-wrap .memory-hud{width:min(420px,calc(100% - 24px));bottom:16px}.mindmap-finder{top:12px;left:12px;width:min(188px,calc(100% - 24px));max-height:34vh;padding:8px}}.puzzle-figure-board,.puzzle-sketch-wrap{min-height:280px;border-radius:12px;background:#faf8f3;border:1px solid #e2ddd0;overflow:hidden}.puzzle-figure-svg,.puzzle-sketch-svg{width:100%;height:280px;display:block}.puzzle-slot{fill:#ffffffd9;stroke:#94a3b8;stroke-width:.6}.puzzle-slot.is-filled{stroke:#047857}.puzzle-slot.is-ok{stroke:#059669;fill:#ecfdf5}.puzzle-slot.is-miss{stroke:#dc2626;fill:#fef2f2}.puzzle-slot-label{font-size:3px;fill:#64748b}.puzzle-slot-token{font-size:3.2px;fill:#0f172a}.puzzle-token-bank{display:flex;flex-wrap:wrap;gap:.45rem;margin:.75rem 0}.puzzle-token{border:1px solid #c4b8a4;background:#fff;border-radius:8px;padding:.35rem .55rem;font-size:.85rem;cursor:grab}.puzzle-token.is-placed{opacity:.35}.puzzle-token.is-drag{border-color:#047857;box-shadow:0 0 0 2px #0f766e40}.puzzle-sketch-actions{display:flex;gap:.5rem;margin-top:.5rem}.puzzle-axis-label{font-size:4px;fill:#475569}@media(max-width:960px){.memory-hub-body{grid-template-columns:1fr}}.memory-hub--view-only{max-width:1100px}.memory-sky-pane--full{min-height:520px}.course-action-send{display:flex;flex-direction:column;gap:.75rem;margin-top:.25rem}.course-action-status{margin:0;font-size:.88rem;color:var(--accent-bright)}.compact-list-row{display:grid;grid-template-columns:auto 1fr auto auto auto;align-items:center;gap:.65rem .75rem;padding:.55rem .75rem;border:1px solid var(--border-subtle);border-radius:12px;background:var(--surface-1);list-style:none}.compact-list-chevron{color:var(--text-3);transform:rotate(0);transition:transform .15s ease}details[open]>summary .compact-list-chevron{transform:rotate(90deg)}.compact-list-label{min-width:0;font-size:.92rem;font-weight:650;color:var(--text-1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.exam-focus-link-group{display:inline-flex;align-items:center;gap:.35rem}.exam-focus-link-sep{color:var(--text-3);font-size:.85rem}.performance-hero-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.performance-hero-card{display:flex;flex-direction:column;align-items:stretch;min-height:210px}.performance-gauge{position:relative;width:164px;height:164px;margin:.5rem auto}.performance-gauge-center{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.performance-gauge-value{font-family:Fraunces,Georgia,serif;font-size:2.75rem;font-weight:700;line-height:1;color:var(--text-1)}.performance-gauge-label{font-size:.82rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3)}.performance-sparkline-wrap{flex:1;display:flex;flex-direction:column;justify-content:center;gap:.45rem}.performance-sparkline{width:100%;height:70px}.performance-sparkline-empty{margin:0;font-size:.96rem;color:var(--text-3)}.performance-sparkline-delta{margin:0;font-size:.92rem;font-weight:650;color:var(--text-3)}.performance-sparkline-delta.is-up{color:#2d4a38}.performance-sparkline-delta.is-down{color:var(--danger-text)}.performance-streak-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:7px;margin-top:.6rem}.performance-streak-cell{aspect-ratio:1;border-radius:7px;background:#ffffff14}.performance-streak-cell.is-active{background:var(--btn-fill);opacity:.95}.performance-streak-labels{display:grid;grid-template-columns:repeat(7,1fr);gap:7px;margin-top:5px;font-size:.76rem;color:var(--text-3);text-align:center}.performance-streak-meta{margin:.45rem 0 0;font-size:.92rem;color:var(--text-3)}.performance-primary-cta{align-self:flex-start;padding:.95rem 1.5rem;border:1px solid var(--btn-border);border-radius:999px;background:var(--btn-fill);color:var(--btn-text);font-size:1.08rem;font-weight:700;cursor:pointer}.performance-primary-cta:hover{background:var(--btn-fill-hover)}.performance-milestone-prominent{padding:1.05rem 1.25rem;border-radius:13px;background:#4a3c2a1f;border:1px solid rgba(74,60,42,.25);font-size:1rem;font-weight:650;color:var(--text-1)}.performance-unit-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.6rem}.performance-unit-row{border:1px solid var(--border-subtle);border-radius:13px;background:var(--surface-1);padding:.3rem .55rem}.performance-unit-summary{display:grid;grid-template-columns:1fr auto 92px auto auto;align-items:center;gap:.85rem 1rem;padding:.65rem .55rem}.performance-unit-summary .compact-list-label{font-size:1.05rem}.performance-unit-checkbox{justify-self:end;width:20px;height:20px;margin:0;accent-color:var(--accent);cursor:pointer}.performance-trend-arrow{font-size:.9rem;font-weight:800;width:1.1rem;text-align:center}.performance-trend-arrow.is-up{color:#2d4a38}.performance-trend-arrow.is-down{color:var(--danger-text)}.performance-trend-arrow.is-flat{color:var(--text-3)}.performance-mini-bar{width:92px;height:7px;border-radius:999px;background:#ffffff14;overflow:hidden}.performance-mini-bar-fill{display:block;height:100%;background:var(--accent);border-radius:inherit}.performance-unit-pct{font-size:.94rem;font-weight:700;font-variant-numeric:tabular-nums;min-width:2.9rem;text-align:right}.history-grouped-list{display:flex;flex-direction:column;gap:10px;overflow:visible;padding-top:18px}.history-list-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.65rem 1rem;padding-bottom:4px}.history-list-toolbar-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.history-toolbar-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border-subtle);border-radius:var(--radius-pill);background:var(--surface-1);color:var(--text-2);font:inherit;font-size:.9rem;font-weight:800;padding:.5rem 1rem;cursor:pointer;transition:background var(--dur-fast),border-color var(--dur-fast),color var(--dur-fast)}.history-toolbar-btn:hover{background:var(--blend-a);border-color:var(--accent-border);color:var(--text-1)}.history-toolbar-btn-primary{background:var(--btn-fill);border-color:var(--btn-border);color:var(--btn-text)}.history-toolbar-btn-primary:hover{background:var(--btn-fill-hover);border-color:#2a231847;color:var(--btn-text)}.history-day-control{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border-subtle);border-radius:var(--radius-pill);background:var(--blend-c);color:var(--text-2);font:inherit;font-size:.76rem;font-weight:700;padding:.32rem .72rem;cursor:pointer;transition:background var(--dur-fast),border-color var(--dur-fast),color var(--dur-fast)}.history-day-control:hover:not(:disabled){background:var(--blend-a);border-color:var(--accent-border);color:var(--text-1)}.history-day-control:disabled{opacity:.45;cursor:default}.history-day-hint{margin:4px 0 0;padding:0;border:none;background:transparent;font-size:.84rem;font-weight:650;color:var(--text-3);text-align:center}.history-date-group{border:1px solid color-mix(in srgb,var(--text-3) 18%,transparent);border-radius:14px;background:var(--surface-1);overflow:hidden;box-shadow:0 4px 12px #0000000d,0 1px 3px #0000000a}.history-date-group.is-collapsed{background:color-mix(in srgb,var(--blend-c) 55%,var(--surface-1))}.history-date-group-toggle{display:flex;align-items:center;gap:.75rem;width:100%;margin:0;padding:1rem 1.2rem;border:0;background:transparent;font:inherit;text-align:left;cursor:pointer;color:var(--text-1);transition:background var(--dur-fast)}.history-date-group-toggle:hover{background:var(--blend-a)}.history-date-group.is-open .history-date-group-toggle{background:linear-gradient(180deg,var(--blend-b) 0%,var(--blend-c) 100%);border-bottom:1px solid var(--border-subtle)}.history-date-group-chevron{flex-shrink:0;width:1.1rem;font-size:.92rem;line-height:1;color:var(--text-3)}.history-date-group-label-text{flex:1;min-width:0;font-size:1.08rem;font-weight:800;letter-spacing:-.01em;text-transform:none;color:var(--text-1)}.history-date-group+.history-date-group{margin-top:0}.history-compact-row{grid-template-columns:minmax(0,1fr) auto auto;overflow:visible}.history-compact-row.is-loading{opacity:.72}.history-compact-open{display:grid;grid-template-columns:4.5rem minmax(0,1fr) auto;gap:.65rem .75rem;align-items:center;min-width:0;padding:0;margin:0;border:0;background:transparent;font:inherit;color:inherit;text-align:left;cursor:pointer;border-radius:8px}.history-compact-open:hover:not(:disabled){background:#ffffff0d}.history-compact-open:disabled{cursor:wait}.history-compact-date{flex:0 0 9.5rem;font-size:.82rem;color:var(--text-3);font-variant-numeric:tabular-nums;white-space:nowrap}.history-compact-title{font-weight:600}.history-compact-meta{font-size:.82rem;color:var(--text-3)}.history-score-chip.is-pending{display:inline-flex;align-items:center;padding:.2rem .55rem;border-radius:999px;font-size:.78rem;font-weight:650;background:#ffffff14;color:var(--text-3)}.history-row-menu{position:relative}.history-row-menu>summary{list-style:none;cursor:pointer;padding:.25rem;color:var(--text-3)}.history-row-menu>summary::-webkit-details-marker{display:none}.history-row-menu-panel{position:absolute;right:0;top:calc(100% + 4px);z-index:var(--z-hud);min-width:10rem;padding:.35rem;border-radius:10px;border:1px solid var(--border-subtle);background:var(--surface-2);box-shadow:0 12px 32px #00000073;display:flex;flex-direction:column;gap:.15rem}.history-row-menu-panel button,.history-row-menu-panel a{display:block;width:100%;padding:.45rem .55rem;border:none;border-radius:8px;background:transparent;color:var(--text-1);font-size:.86rem;text-align:left;text-decoration:none;cursor:pointer}.history-row-menu-panel button:hover,.history-row-menu-panel a:hover{background:#ffffff0f}.history-row-menu-panel button.is-danger{color:var(--danger-text)}.history-filter-bar{display:flex;flex-direction:column;gap:14px}.history-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px 14px}.history-filter{display:flex;flex-direction:column;gap:.4rem;min-width:0;font-size:.8rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3)}.history-filter select{width:100%;min-width:0;padding:.68rem .8rem;border-radius:11px;border:1px solid var(--border-subtle);background:var(--surface-1);color:var(--text-1);font:inherit;font-size:1rem;font-weight:700;letter-spacing:0;text-transform:none}.history-filter-shell{width:100%;margin-top:6px;padding:19px 21px;border:1px solid color-mix(in srgb,var(--text-3) 18%,transparent);border-radius:15px;background:color-mix(in srgb,var(--blend-c) 70%,var(--surface-1));box-shadow:0 2px 8px #0000000a}.history-filter-shell.is-sticky{position:sticky;top:0;z-index:25;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:color-mix(in srgb,var(--surface-1) 92%,transparent);box-shadow:0 4px 12px #00000014,0 1px color-mix(in srgb,var(--text-3) 12%,transparent)}.history-filter-timing{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;padding-top:14px;border-top:1px solid color-mix(in srgb,var(--border-subtle) 80%,transparent)}.history-filter-timing-label{font-size:.8rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3)}.history-filter-timing .exam-timing{flex:1;min-width:min(100%,320px)}.history-filter-timing .exam-timing-row{justify-content:flex-end}.history-filter-timing .exam-timing-choice{min-width:7.5rem;padding:.55rem 1rem}.history-filter-timing .exam-timing-choice-title{font-size:.9rem;font-weight:800}.history-page-header{display:flex;flex-direction:column;align-items:center;gap:14px;padding-bottom:22px;text-align:center}.history-page-header--landing{margin-bottom:.35rem}.history-page-hero,.history-page-heading{display:flex;flex-direction:column;gap:4px;min-width:0}.history-page-title{margin:0;font-family:var(--font-brand);font-size:clamp(1.7rem,2.7vw,2.1rem);font-weight:900;letter-spacing:-.03em;line-height:1.15;color:var(--text-strong)}.history-page-course,.history-page-lead{margin:0;font-size:1.05rem;font-weight:700;line-height:1.45;color:var(--text-2)}.history-page-stats{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem;align-items:center}.history-stat-chip{display:inline-flex;align-items:baseline;gap:.36rem;padding:.45rem .85rem;border-radius:var(--radius-pill);border:1px solid color-mix(in srgb,var(--text-3) 16%,transparent);background:var(--blend-c);font-size:.92rem;font-weight:700;color:var(--text-3);white-space:nowrap;box-shadow:0 1px 2px #0000000a}.history-stat-chip strong{font-size:1.05rem;font-weight:900;color:var(--text-1);font-variant-numeric:tabular-nums}.history-page-header .panel-directions{width:100%;max-width:42rem}.history-page-header .panel-directions>summary{font-size:12.5px;font-weight:750;color:var(--text-2)}.history-page-header .panel-directions-body{font-size:13px;font-weight:650;color:var(--text-2)}.history-list-summary{margin:0;font-size:.98rem;font-weight:750;color:var(--text-2)}@media(max-width:900px){.history-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.history-filter-timing{flex-direction:column;align-items:stretch}.history-filter-timing .exam-timing-row{justify-content:stretch}.history-filter-timing .exam-timing-choice{flex:1;min-width:0}}@media(max-width:720px){.history-panel-body{padding:0 16px 22px}.history-panel-error{margin:0 16px 14px}.history-filter-shell{padding:14px}}.history-date-group-count{flex-shrink:0;font-size:.74rem;font-weight:800;letter-spacing:.02em;text-transform:none;color:var(--text-2);font-variant-numeric:tabular-nums;padding:.14rem .48rem;border-radius:var(--radius-pill);border:1px solid var(--border-subtle);background:var(--blend-a)}.history-format-chip{display:inline-flex;align-items:center;gap:4px;padding:.18rem .52rem;border-radius:var(--radius-pill);border:1px solid var(--border-subtle);background:var(--blend-c);font-size:.74rem;font-weight:800;letter-spacing:.02em;color:var(--text-2);white-space:nowrap}.history-format-chip svg{width:12px;height:12px;flex-shrink:0;opacity:.9}.history-format-chip.is-mcq{background:color-mix(in srgb,var(--text-strong) 9%,var(--blend-c));border-color:color-mix(in srgb,var(--text-strong) 28%,transparent);color:var(--text-strong)}.history-format-chip.is-frq{background:color-mix(in srgb,var(--text-1) 11%,var(--blend-c));border-color:color-mix(in srgb,var(--text-1) 30%,transparent);color:var(--text-1)}.history-format-chip.is-mcq svg,.history-format-chip.is-frq svg{opacity:.78}.history-format-chip.is-empty{background:transparent;border-style:dashed}.app-sidebar-course-dot{grid-row:1 / span 2;width:10px;height:10px;border-radius:50%;flex-shrink:0;background:var(--card-accent, var(--accent));box-shadow:0 0 12px color-mix(in srgb,var(--card-accent, var(--accent)) 55%,transparent)}.app-sidebar-secondary-links{display:flex;flex-wrap:wrap;gap:.35rem .65rem;margin-bottom:.65rem}.app-sidebar-secondary-link{border:none;background:transparent;color:var(--text-3);font-size:.78rem;font-weight:650;cursor:pointer;padding:0}.app-sidebar-secondary-link:hover,.app-sidebar-secondary-link.active{color:var(--accent-bright)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:960px){.performance-hero-row{grid-template-columns:1fr}}.course-home-section-lead{margin:-6px 0 0;max-width:72ch;font-size:14px;line-height:1.45;color:var(--text-3)}.app-course-switcher-group+.app-course-switcher-group{margin-top:8px;padding-top:8px;border-top:1px solid var(--border-subtle)}.amc-lattice circle{fill:var(--scene-ink-faint)}.amc-trace{fill:var(--scene-fill-mid);fill-opacity:0;stroke:var(--scene-ink);stroke-width:2.2;stroke-linejoin:round;stroke-dasharray:300;stroke-dashoffset:300;animation:amc-trace 5s ease-in-out infinite}.amc-triangle{fill:none;stroke:var(--scene-ink);stroke-width:2.2;stroke-linejoin:round}.amc-incircle,.amc-unit-circle{fill:none;stroke:var(--scene-ink-soft);stroke-width:1.8}.amc-radius{transform-origin:71.3px 52.2px;animation:amc-spin 6s linear infinite}.amc-radius line{stroke:var(--scene-ink);stroke-width:1.6;stroke-linecap:round}.amc-radius circle,.amc-roots circle{fill:var(--scene-ink)}.amc-axes line{stroke:var(--scene-ink-faint);stroke-width:1.2}.amc-roots{transform-origin:80px 44px;animation:amc-spin 14s linear infinite}.amc-roots polygon{fill:var(--scene-fill-mid);stroke:var(--scene-ink);stroke-width:2;stroke-linejoin:round}@keyframes amc-trace{0%{stroke-dashoffset:300;fill-opacity:0}55%{stroke-dashoffset:0;fill-opacity:0}75%,to{stroke-dashoffset:0;fill-opacity:1}}@keyframes amc-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.amc-trace{animation:none;stroke-dashoffset:0;fill-opacity:1}.amc-radius,.amc-roots{animation:none}}.aime-circle{fill:none;stroke:var(--scene-ink-soft);stroke-width:1.8}.aime-chords line{stroke:var(--scene-ink);stroke-width:2;stroke-linecap:round;stroke-dasharray:70;stroke-dashoffset:70;animation:aime-draw 4.5s ease-in-out infinite}.aime-chords line:nth-child(2){animation-delay:.6s}.aime-point{fill:var(--scene-ink)}.aime-answer rect{fill:var(--scene-fill-mid);stroke:var(--scene-ink);stroke-width:1.6}.aime-answer text{font-family:var(--font-display);font-size:13px;font-weight:700;fill:var(--scene-ink);text-anchor:middle}@keyframes aime-draw{0%{stroke-dashoffset:70}50%,to{stroke-dashoffset:0}}@media(prefers-reduced-motion:reduce){.aime-chords line{animation:none;stroke-dashoffset:0}}.performance-amc-score{margin:12px 0 4px;font-family:var(--font-display);font-size:44px;font-weight:800;line-height:1;color:var(--text-1)}.performance-amc-score-max{font-size:18px;font-weight:600;color:var(--text-3)}.amc-format-note{margin:4px 0 0}.generation-toasts{position:fixed;right:20px;bottom:20px;z-index:1200;display:flex;flex-direction:column;gap:10px;width:min(380px,calc(100vw - 32px))}.generation-toast{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:10px;padding:12px 12px 12px 14px;border:1px solid var(--border-subtle);border-left:4px solid var(--accent);border-radius:var(--radius-md);background:var(--surface-1);color:var(--text-1);box-shadow:0 10px 28px #0000002e;animation:generation-toast-in .22s ease-out}.generation-toast.is-failed{border-left-color:#b42318}.generation-toast-mark{display:grid;place-items:center;width:24px;height:24px;border-radius:999px;background:var(--accent);color:var(--surface-1);font-size:13px;font-weight:800}.generation-toast.is-failed .generation-toast-mark{background:#b42318;color:#fff}.generation-toast-title{margin:0;font-size:14px;font-weight:700;line-height:1.35}.generation-toast-body{margin:2px 0 0;font-size:12.5px;line-height:1.4;color:var(--text-2);overflow-wrap:anywhere}.generation-toast-actions{display:flex;align-items:center;gap:4px}.generation-toast-open{padding:6px 12px;border:1px solid var(--btn-border);border-radius:8px;background:var(--btn-fill);color:var(--btn-text);font:inherit;font-size:13px;font-weight:700;cursor:pointer}.generation-toast-close{width:28px;height:28px;border:0;border-radius:8px;background:transparent;color:var(--text-2);font-size:18px;line-height:1;cursor:pointer}.generation-toast-close:hover{background:var(--surface-2)}@keyframes generation-toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.generation-toast{animation:none}}@media(max-width:560px){.generation-toasts{right:16px;left:16px;bottom:16px;width:auto}}.app-chrome-menu-panel-floating{z-index:1000;min-width:min(240px,calc(100vw - 24px));max-width:calc(100vw - 16px)}.brand-karate-a{display:inline-block;height:.82em;width:.79em;vertical-align:-.04em;margin-right:.02em;overflow:visible}.brand-glyph-p,.brand-glyph-l{display:inline-block;height:.72em;vertical-align:0;overflow:visible}.brand-glyph-p{width:.52em;margin:0 .02em 0 .04em}.brand-glyph-l{width:.19em;margin:0 .05em 0 .04em}.brand-yinyang-e{display:inline-block;height:.56em;width:.56em;vertical-align:-.02em;margin:0 .035em;overflow:visible}.brand-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}@keyframes aurora-drift-a{0%,to{transform:translate(0) scale(1)}33%{transform:translate(4%,3%) scale(1.06)}66%{transform:translate(-3%,2%) scale(.96)}}@keyframes aurora-drift-b{0%,to{transform:translate(0) scale(1)}50%{transform:translate(-5%,-4%) scale(1.08)}}@keyframes aurora-drift-c{0%,to{transform:translate(0)}50%{transform:translate(3%,-5%)}}@keyframes brand-orbit-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes brand-aperture-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.03)}}@keyframes btn-glow-pulse{0%,to{box-shadow:0 0 20px color-mix(in srgb,var(--card-accent, var(--accent)) 35%,transparent)}50%{box-shadow:0 0 32px color-mix(in srgb,var(--card-accent, var(--accent)) 55%,transparent)}}@keyframes btn-shimmer{0%{background-position:200% center}to{background-position:-200% center}}@keyframes generating-ring{0%,to{box-shadow:inset 3px 0 0 var(--card-accent, var(--accent)),0 0 0 0 transparent}50%{box-shadow:inset 3px 0 0 var(--card-accent, var(--accent)),0 0 16px color-mix(in srgb,var(--card-accent, var(--accent)) 40%,transparent)}}@keyframes stat-chip-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.app-bg{overflow:hidden;background:radial-gradient(ellipse 120% 80% at 50% -20%,rgba(242,236,223,.9),transparent 55%),linear-gradient(180deg,var(--surface-base) 0%,color-mix(in srgb,var(--surface-2) 18%,var(--surface-base)) 100%)}.app-bg:before,.app-bg:after{display:none}.auth-shell .app-bg:before{animation-duration:calc(var(--dur-ambient) * .9)}.auth-shell:before{display:none}.brand-mark-wrap{display:inline-flex;flex-shrink:0;animation:brand-aperture-breathe 4s ease-in-out infinite}.brand-mark-wrap .brand-mark-orbit{transform-origin:16px 16px;animation:brand-orbit-spin 24s linear infinite}.course-home-stat-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:4px 0 0;padding:0;list-style:none}.course-home-stat-chip{padding:8px 18px;font-family:var(--font-brand);font-size:14px;font-weight:600;letter-spacing:.04em;text-transform:none;color:var(--text-2);background:var(--surface-2);border:none;border-radius:var(--radius-pill);box-shadow:none;animation:none}.course-home-stat-chip:nth-child(1){color:var(--text-1);background:var(--blend-a)}.course-home-stat-chip:nth-child(2){color:var(--text-1);background:var(--blend-b)}.course-home-stat-chip:nth-child(3){color:var(--text-1);background:var(--blend-c)}.course-home-stat-chip:nth-child(2){animation-delay:.08s}.course-home-stat-chip:nth-child(3){animation-delay:.16s}.course-home-section-title{font-family:var(--font-display)}.course-card{transform-style:preserve-3d;perspective:800px}@media(min-width:641px){.course-card:hover{transform:translateY(-2px);box-shadow:var(--glow-md)}}.course-card-glow{display:none}.course-card:hover .course-scene *{animation-duration:1.2s}.course-card.is-generating,.course-card:has(.spinner){animation:generating-ring 2s ease-in-out infinite}.course-home-quick-btn{position:relative;overflow:hidden}.course-home-quick-btn:before{display:none}.course-home-quick-btn:hover .course-home-quick-icon{text-shadow:none}.app-chrome-context-kicker{font-family:var(--font-display);font-size:12px;text-transform:none;letter-spacing:.03em}.app-chrome-context-title{font-size:clamp(20px,2.4vw,28px)}.app-chrome-context-course .app-chrome-context-kicker{color:var(--text-label)}.app-chrome-course-tabs{position:relative;background:transparent;border:none;border-radius:0;padding:0;gap:4px}.app-chrome-course-tab{position:relative;z-index:1;border:none;background:transparent;transition:color var(--dur-fast),transform var(--dur-fast)}.app-chrome-course-tab.active{background:transparent;border-color:transparent;box-shadow:none;color:var(--text-1)}.app-chrome-course-tab.active:after{content:"";position:absolute;inset:auto 0 0;top:auto;height:2px;z-index:-1;border-radius:0;background:var(--text-1);box-shadow:none;transform-origin:center bottom;animation:tab-indicator-enter var(--dur-mid) var(--ease-spring) both}@keyframes tab-indicator-enter{0%{opacity:0;transform:scaleX(.65)}to{opacity:1;transform:scaleX(1)}}.app-chrome-course-tab-label{position:relative;z-index:1}.app-chrome-util-btn.active{background:var(--btn-fill);box-shadow:var(--glow-sm);border:1px solid var(--btn-border);color:var(--btn-text)}.app-chrome-util-btn:nth-child(1){--util-accent: var(--feature-history-accent)}.app-chrome-util-btn:nth-child(2){--util-accent: var(--feature-plans-accent)}.app-sidebar-item.active{box-shadow:inset 2px 0 0 var(--text-1);background:var(--nav-active-bg)}.app-sidebar-course-dot{width:8px;height:8px;border-radius:50%;background:color-mix(in srgb,var(--card-accent, var(--stone)) 20%,var(--surface-2));box-shadow:none}.app-sidebar-item.is-generating{animation:generating-ring 2s ease-in-out infinite}.app-sidebar-item.is-generating .app-sidebar-course-dot{animation:btn-glow-pulse 1.5s ease-in-out infinite}.app-chrome-menu-panel{background:var(--surface-1);backdrop-filter:none;-webkit-backdrop-filter:none;border:none;box-shadow:var(--glow-md);overflow:hidden}.app-chrome-menu-panel:before{display:none}.course-page-layout .exam-form.panel{position:relative;background:color-mix(in srgb,var(--card-accent, var(--stone)) 4%,var(--surface-1));backdrop-filter:none;-webkit-backdrop-filter:none;overflow:hidden;border:none;box-shadow:var(--glow-sm)}.course-page-layout .exam-form.panel:before{display:none}.course-page-layout .exam-form>.panel-label,.course-page-layout .exam-field-label{font-family:var(--font-brand);font-size:11px;font-weight:650;letter-spacing:.07em;text-transform:uppercase;color:var(--text-label)}.course-page-layout .exam-generator-cta{background:var(--btn-fill);color:var(--btn-text);border:1px solid var(--btn-border);box-shadow:var(--glow-sm);animation:none;transition:transform var(--dur-fast),box-shadow var(--dur-fast),background var(--dur-fast),border-color var(--dur-fast)}.course-page-layout .exam-generator-cta-main,.course-page-layout .exam-generator-cta-detail{color:var(--btn-text)}.course-page-layout .exam-generator-cta:hover:not(:disabled){background:var(--btn-fill-hover);border-color:#2a231847;filter:none;transform:translateY(-1px);box-shadow:var(--glow-md)}.course-page-layout .exam-generator-cta:disabled{animation:none}.course-page-layout .exam-generator-cta:has(.spinner){background-size:200% auto;background-image:linear-gradient(110deg,var(--btn-fill) 0%,var(--accent-bright) 50%,var(--btn-fill) 100%);animation:btn-shimmer 2s linear infinite}.course-page-layout .btn-generate:not(.exam-download){background:var(--btn-fill);color:var(--btn-text);border:1px solid var(--btn-border);box-shadow:var(--glow-sm);transition:background var(--dur-fast),transform var(--dur-fast),box-shadow var(--dur-fast),border-color var(--dur-fast)}.course-page-layout .btn-generate:not(.exam-download):hover:not(:disabled){background:var(--btn-fill-hover);border-color:#2a231847;transform:translateY(-1px)}.auth-card.panel{position:relative;background:var(--surface-1);backdrop-filter:none;-webkit-backdrop-filter:none;border:none;border-radius:20px;box-shadow:var(--glow-md);overflow:hidden}.auth-card.panel:before{display:none}.auth-kicker{font-family:var(--font-display)}.pricing-card{position:relative;transition:transform var(--dur-mid),box-shadow var(--dur-mid),border-color var(--dur-mid)}.pricing-card.is-recommended{border:1px solid var(--border-subtle);background:color-mix(in srgb,var(--stone) 6%,var(--surface-1));box-shadow:var(--glow-md)}.pricing-card.is-recommended:hover{transform:translateY(-2px);box-shadow:var(--glow-md)}.pricing-card-badge{position:absolute;top:-10px;right:14px;padding:4px 10px;font-family:var(--font-brand);font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-label);background:var(--blend-b);border-radius:var(--radius-pill);box-shadow:none}.pricing-card-name,.performance-hero-kicker,.performance-section-head h3{font-family:var(--font-display)}.performance-hero-card,.performance-stat{background:var(--surface-1);border:none;box-shadow:none;transition:box-shadow var(--dur-mid)}.performance-stat:nth-child(3n+1){background:var(--blend-a)}.performance-stat:nth-child(3n+2){background:var(--blend-b)}.performance-stat:nth-child(3n){background:var(--blend-c)}.performance-hero-card:hover,.performance-stat:hover{box-shadow:var(--glow-sm)}.performance-primary-cta{display:inline-flex;align-items:center;justify-content:center;width:100%;max-width:420px;margin:12px 0 0;padding:14px 18px;font-size:15px;font-weight:650;color:var(--btn-text);background:var(--btn-fill);border:1px solid var(--btn-border);border-radius:var(--radius-md);cursor:pointer;box-shadow:var(--glow-sm);animation:none;transition:background var(--dur-fast),transform var(--dur-fast),box-shadow var(--dur-fast),border-color var(--dur-fast)}.performance-primary-cta:hover{background:var(--btn-fill-hover);border-color:#2a231847;transform:translateY(-1px);box-shadow:var(--glow-md)}.performance-stat-value{font-family:var(--font-display);font-weight:800;letter-spacing:-.03em;background:none;-webkit-background-clip:unset;background-clip:unset;color:var(--text-1)}@media(max-width:640px){.app-bg:before,.app-bg:after{filter:blur(48px);opacity:.1}.course-card:hover{transform:translateY(-3px)}.course-home-stat-chips{gap:8px}.app-chrome-course-tabs{border-radius:var(--radius-md)}}@media(prefers-reduced-motion:reduce){.app-bg:before,.app-bg:after,.auth-shell:before{animation:none}.brand-mark-wrap,.brand-mark-wrap .brand-mark-orbit,.course-home-stat-chip{animation:none}.course-page-layout .exam-generator-cta:not(:disabled),.performance-primary-cta{animation:none}.app-sidebar-item.is-generating{animation:none}}html,body,#root{font-family:var(--font-body);line-height:1.5}.brand-wordmark{font-family:var(--font-brand);font-weight:800;letter-spacing:-.02em;line-height:1}.brand-ap{font-family:var(--font-display);font-weight:800;letter-spacing:0}.brand-tagline{font-family:var(--font-body);font-style:normal;font-weight:600;letter-spacing:-.01em}.brand-courses{font-family:var(--font-display);font-weight:700;letter-spacing:.04em}.course-home-hero .brand-wordmark,.auth-hero .brand-wordmark{font-size:clamp(42px,6.5vw,64px);font-weight:800;text-shadow:0 2px 12px rgba(42,35,24,.08)}.course-home-hero .brand-ap,.auth-hero .brand-ap{background:none;-webkit-background-clip:unset;background-clip:unset;color:var(--text-1)}.app-chrome .brand-wordmark{font-family:var(--font-brand);font-weight:800;font-size:20px;letter-spacing:-.02em}.app-chrome-context-title{font-family:var(--font-brand);font-weight:700;letter-spacing:-.02em}.app-chrome-context-kicker,.course-home-section-title,.course-card-kicker,.panel-label,.auth-kicker,.performance-hero-kicker,.performance-section-head h3,.pricing-card-badge{font-family:var(--font-display);font-weight:700;letter-spacing:.04em;text-transform:none}.course-card-title{font-family:var(--font-brand);font-size:23px;font-weight:700;letter-spacing:-.02em;line-height:1.2}.course-amp{font-family:var(--font-display);font-weight:700;font-size:.92em}.course-home-lead{font-size:17px;font-weight:500;letter-spacing:-.01em}.course-home-quick-label{font-family:var(--font-brand);font-size:16px;font-weight:700;letter-spacing:-.02em}.course-home-quick-hint,.course-card-tagline{font-family:var(--font-body);font-weight:500}.course-card-action{font-family:var(--font-brand);font-size:14px;font-weight:700;letter-spacing:0;text-transform:none}.app-chrome-course-tab{font-family:var(--font-display);font-size:13px;font-weight:700;letter-spacing:.02em;text-transform:none}.app-chrome-util-btn{font-family:var(--font-brand);font-size:12px;font-weight:700;letter-spacing:.02em;text-transform:none}.app-sidebar-item-label{font-family:var(--font-brand);font-weight:700;letter-spacing:-.02em}.app-sidebar-section-label{font-family:var(--font-display);font-weight:700}.exam-form-title{font-family:var(--font-brand);font-size:clamp(26px,3vw,34px);font-weight:800;letter-spacing:-.02em}.exam-form-subtitle{font-family:var(--font-body);font-weight:600}.exam-generator-cta-main{font-family:var(--font-brand);font-weight:800;letter-spacing:-.01em}.auth-title{font-family:var(--font-brand);font-weight:800;letter-spacing:-.02em}.auth-subtitle{font-family:var(--font-body);font-weight:500}.pricing-card-name{font-family:var(--font-brand);font-weight:800;font-size:1.35rem;letter-spacing:-.02em}.pricing-card-price{font-family:var(--font-display);font-weight:800;letter-spacing:0}.pricing-lead{font-family:var(--font-body);font-weight:500}.performance-hero-value{font-family:var(--font-brand);font-weight:800}.performance-primary-cta{font-family:var(--font-brand);font-weight:800;letter-spacing:-.02em}.performance-gauge-value{font-family:var(--font-brand);font-weight:800}.compact-list-label{font-family:var(--font-brand);font-weight:700}.result-title{font-family:var(--font-brand);font-weight:800;letter-spacing:-.02em}.app-chrome{border-bottom:1px solid var(--border-subtle);background:var(--surface-1);box-shadow:none;color:var(--text-1)}.app-chrome:after{display:none}.app-sidebar{border-right:1px solid var(--border-subtle);background:var(--surface-2);color:var(--text-1);box-shadow:none}.app-chrome-util-btn{color:var(--text-2);background:transparent;border:none}.app-chrome-util-btn:hover{color:var(--text-1);background:var(--nav-hover-bg);border:none}.app-chrome-menu-user{border-bottom:none}.course-card{background:color-mix(in srgb,var(--card-tint, var(--blend-a)) 62%,var(--surface-1));border:1px solid color-mix(in srgb,var(--card-accent, var(--stone)) 14%,var(--border-subtle));box-shadow:var(--glow-sm);color:var(--text-1);backdrop-filter:none;-webkit-backdrop-filter:none;transition:transform var(--dur-fast),box-shadow var(--dur-fast),background var(--dur-fast),border-color var(--dur-fast)}.course-card:hover{border-color:color-mix(in srgb,var(--card-accent, var(--stone)) 32%,var(--border-subtle));box-shadow:var(--glow-md),0 0 0 1px color-mix(in srgb,var(--card-accent, var(--stone)) 10%,transparent);background:color-mix(in srgb,var(--card-tint, var(--blend-a)) 72%,var(--surface-1))}.course-card-stage{background:color-mix(in srgb,var(--card-accent, var(--stone)) 8%,var(--card-tint, var(--surface-1)))}.course-card-kicker{color:var(--card-accent, var(--text-label));font-family:var(--font-brand);font-size:12px;font-weight:650;letter-spacing:.06em;text-transform:uppercase}.course-home-quick-btn{background:var(--quick-bg, var(--surface-1));border:none;box-shadow:var(--glow-sm);color:var(--text-1)}.course-home-quick-btn:nth-child(1){--quick-bg: var(--feature-history-bg)}.course-home-quick-btn:nth-child(1) .course-home-quick-icon{color:var(--feature-history-ink)}.course-home-quick-btn:nth-child(2){--quick-bg: var(--feature-plans-bg)}.course-home-quick-btn:nth-child(2) .course-home-quick-icon{color:var(--feature-plans-ink)}.course-home-quick-btn:hover{box-shadow:var(--glow-md);background:color-mix(in srgb,var(--quick-bg, var(--surface-1)) 70%,var(--surface-1))}.exam-form.panel{background:var(--surface-1);border:none;box-shadow:var(--glow-sm);color:var(--text-1)}.auth-card.panel{background:var(--surface-1)}.btn-generate:not(.exam-download){background:var(--btn-fill);color:var(--btn-text);border:1px solid var(--btn-border);box-shadow:var(--glow-sm);transition:background var(--dur-fast),transform var(--dur-fast),box-shadow var(--dur-fast),border-color var(--dur-fast)}.btn-generate:not(.exam-download):hover:not(:disabled){background:var(--btn-fill-hover);border-color:#2a231847;transform:translateY(-1px);box-shadow:var(--glow-md)}.btn-generate.exam-download{background:var(--surface-2);color:var(--text-1);border:1px solid var(--border-subtle);box-shadow:none;transition:background var(--dur-fast),border-color var(--dur-fast)}.btn-generate.exam-download:hover{background:var(--blend-a);border-color:var(--border-subtle)}.course-card-physics_1 .history-subject-heading{color:#0284c7}.course-card-physics_2 .history-subject-heading{color:#0891b2}.course-card-mechanics .history-subject-heading{color:#ca8a04}.course-card-em .history-subject-heading{color:#e11d48}.course-card-bio .history-subject-heading{color:#059669}.course-card-chem .history-subject-heading{color:#ea580c}.course-card-calc .history-subject-heading{color:#7c3aed}.history-folder-toggle.history-subject-physics{color:var(--shade-mist-ink)}.history-folder-toggle.history-subject-biology{color:var(--shade-sage-ink)}.history-folder-toggle.history-subject-chemistry{color:var(--shade-clay-ink)}.history-folder-toggle.history-subject-calculus{color:var(--shade-dusk-ink)}.history-folder-toggle.history-subject-statistics{color:var(--shade-stone-ink)}.compact-list-row:nth-child(odd){background:var(--blend-a)}.compact-list-row:nth-child(2n){background:var(--surface-1)}.exam-form-config,.exam-generator-footer{border-top:none;background:transparent}.compact-list-row{background:var(--surface-1);border:none;box-shadow:none}.pricing-card:nth-child(3n+1){background:var(--blend-a);border:none;box-shadow:var(--glow-sm)}.pricing-card:nth-child(3n+2){background:var(--blend-b);border:none;box-shadow:var(--glow-sm)}.pricing-card:nth-child(3n){background:var(--blend-c);border:none;box-shadow:var(--glow-sm)}.app-sidebar-toggle{background:transparent;border:none;color:var(--text-2)}.app-sidebar-toggle:hover{background:var(--nav-hover-bg);border:none;color:var(--text-1)}.app-sidebar-item:hover{background:var(--nav-hover-bg)}.app-sidebar-item.active{background:var(--nav-active-bg)}.app-chrome-brand.is-home{border:none;background:transparent;box-shadow:none}.panel-label,.auth-kicker,.course-home-section-title,.app-chrome-context-kicker,.app-sidebar-section-label,.exam-field-label,.performance-stat-label,.exam-form>.panel-label{font-family:var(--font-brand);font-size:11px;font-weight:650;letter-spacing:.07em;text-transform:uppercase;color:var(--text-label)}.course-home-lead,.auth-subtitle,.exam-form-subtitle{color:var(--text-1)}.course-home-quick-hint,.course-card-tagline{color:var(--text-2)}.app-chrome-context-title,.course-card-title,.exam-form-title,.auth-title,.performance-hero-value,.performance-stat-value,.pricing-card-name,.pricing-card-price,.pricing-card-blurb,.pricing-card-points,.compact-list-label,.course-home-quick-label,.course-card-action,.result-title{color:var(--text-strong)}.btn-generate:not(.exam-download),.exam-generator-cta,.performance-primary-cta{color:var(--btn-text)}input:not([type=checkbox]):not([type=radio]),select,textarea{color:var(--text-1)}.app-chrome-course-tab:not(.active){color:var(--text-2)}.app-chrome-course-tab.active{color:var(--text-strong)}.view-transition{min-width:0}.view-transition--page,.view-transition.exam-viewport-inner,.view-transition.course-home-pane,.view-transition.history-panel-transition{flex:1;min-height:0;display:flex;flex-direction:column;animation:view-page-enter .32s cubic-bezier(.22,1,.36,1) both}.view-transition.course-page-transition{flex:1;min-width:0;display:flex;flex-direction:column}.view-transition--tab{animation-duration:.26s}.view-transition--tab.view-transition--dir-right{animation:view-tab-enter-right .26s cubic-bezier(.22,1,.36,1) both}.view-transition--tab.view-transition--dir-left{animation:view-tab-enter-left .26s cubic-bezier(.22,1,.36,1) both}.view-transition--chrome,.view-transition.app-chrome-context-transition{animation:view-chrome-enter .22s ease both}@keyframes view-page-enter{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes view-tab-enter-right{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes view-tab-enter-left{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes view-chrome-enter{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.app-chrome-util-btn,.app-sidebar-item{transition:background var(--dur-fast),color var(--dur-fast),border-color var(--dur-fast),box-shadow var(--dur-fast),transform var(--dur-fast)}.app-chrome-util-btn:active:not(:disabled),.app-sidebar-item:active:not(.active){transform:scale(.985)}.app-chrome-course-tab:active:not(.active){transform:scale(.97)}.course-home,.exam-page{width:100%}@media(min-width:721px){.course-home{max-width:1440px;padding:24px 32px 56px;gap:22px}.course-home-hero{gap:8px}.course-home-hero .brand-lockup-lg .brand-mark{width:48px;height:48px}.course-home-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}.course-card{min-height:0;padding:18px}.course-card-stage{height:116px}.course-home-boards{gap:12px}}.course-home-quick{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:-8px}.course-home-quick-btn{flex-direction:row;align-items:center;gap:10px;padding:9px 18px;border-radius:999px}.course-home-quick-icon{font-size:16px}.course-home-quick-label{font-size:15px}.course-home-quick-hint{font-size:13px}.course-home-hero-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px}.course-home-hero-row .course-home-stat-chips,.course-home-hero-row .course-home-quick{margin:0}@media(min-width:721px){.course-home-hero .brand-lockup-lg{flex-direction:row;align-items:center;text-align:left;gap:16px}.course-home-hero .brand-lockup-lg .brand-tagline{margin-top:4px}.course-home-lead{font-size:16.5px;max-width:680px}}.app-chrome-avatar{width:46px;height:46px;font-size:16px;font-weight:800;border:2px solid color-mix(in srgb,var(--accent) 45%,var(--border-subtle));background:var(--surface-2)}.app-chrome-menu-panel{min-width:240px}@media(max-width:820px){.app-chrome-course .app-chrome-right{display:flex}.app-chrome-avatar{width:40px;height:40px;font-size:14px}}.auth-card{width:min(440px,100%);padding:28px 30px 24px}.auth-heading{margin:0 0 6px;font-family:var(--font-brand);font-size:24px;font-weight:800;letter-spacing:-.02em;color:var(--text-1)}.auth-subtitle{margin:0 0 18px;font-size:14px;line-height:1.45;color:var(--text-2)}.auth-form{gap:14px}.auth-input::placeholder{color:var(--text-3);opacity:.8}.auth-input.is-invalid{border-color:var(--danger-border);box-shadow:0 0 0 3px color-mix(in srgb,var(--danger-border) 30%,transparent)}.auth-field-error{font-size:12.5px;line-height:1.35;color:var(--danger-text)}.auth-password-wrap{position:relative;display:block}.auth-password{padding-right:64px}.auth-password-toggle{position:absolute;top:50%;right:6px;transform:translateY(-50%);padding:5px 9px;font:inherit;font-size:12.5px;font-weight:700;color:var(--text-2);background:transparent;border:none;border-radius:8px;cursor:pointer}.auth-password-toggle:hover{color:var(--text-1);background:var(--surface-2)}.auth-password-help{display:flex;flex-direction:column;gap:6px}.auth-password-help:empty{display:none}.auth-caps{font-size:12.5px;font-weight:700;color:var(--danger-text)}.auth-strength{display:flex;align-items:center;gap:10px;font-size:12.5px;font-weight:700}.auth-strength-bar{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;flex:1}.auth-strength-bar span{height:5px;border-radius:999px;background:var(--border-subtle);transition:background .2s}.auth-strength.is-1 .auth-strength-bar span:nth-child(-n+1){background:var(--danger-border)}.auth-strength.is-2 .auth-strength-bar span:nth-child(-n+2){background:#e4b860}.auth-strength.is-3 .auth-strength-bar span:nth-child(-n+3){background:var(--success-border)}.auth-strength.is-1 .auth-strength-label{color:var(--danger-text)}.auth-strength.is-3 .auth-strength-label{color:var(--success-text)}.auth-rules{display:flex;flex-wrap:wrap;gap:4px 16px;font-size:12.5px;color:var(--text-3)}.auth-rule.is-met{color:var(--success-text);font-weight:650}.auth-rule.is-missing{color:var(--danger-text)}.auth-error p{margin:0}.auth-error .auth-link{margin-top:6px}.auth-form .auth-submit{width:100%;min-height:46px;margin-top:4px;padding:12px 16px;justify-content:center;font-size:15px;font-weight:750;border-radius:12px}.auth-link{display:inline;padding:0;font:inherit;font-weight:700;color:var(--accent);background:none;border:none;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.auth-link:hover{color:var(--accent-bright)}.auth-switch{margin:18px 0 0;padding-top:16px;border-top:1px solid var(--border-subtle);text-align:center;font-size:14px;color:var(--text-2)}.credit-meter{display:flex;align-items:center;gap:14px;padding:7px 14px;font:inherit;color:var(--text-1);background:var(--surface-2);border:1px solid var(--border-subtle);border-radius:14px;cursor:pointer;transition:border-color var(--dur-fast),box-shadow var(--dur-fast)}.credit-meter:hover{border-color:var(--accent-border);box-shadow:var(--glow-sm)}.credit-gauge{display:flex;flex-direction:column;gap:4px;min-width:86px}.credit-gauge-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;font-size:12px;line-height:1}.credit-gauge-label{font-weight:800;letter-spacing:.06em;color:var(--text-label)}.credit-gauge-value strong{font-size:13.5px;font-weight:800}.credit-gauge-total{color:var(--text-3)}.credit-gauge-bar{display:block;height:5px;border-radius:999px;background:var(--border-subtle);overflow:hidden}.credit-gauge-bar>span{display:block;height:100%;border-radius:inherit;background:var(--success-text);transition:width .3s ease}.credit-gauge.is-mid .credit-gauge-bar>span{background:#c8932f}.credit-gauge.is-low .credit-gauge-bar>span{background:var(--danger-text)}.credit-gauge.is-low .credit-gauge-value strong{color:var(--danger-text)}.credit-meter.is-unlimited{gap:8px;padding:9px 14px;font-size:13.5px;font-weight:750}.credit-meter-infinity{font-size:20px;line-height:1;color:var(--accent)}@media(max-width:820px){.credit-meter{gap:8px;padding:6px 10px}.credit-gauge{min-width:58px}.credit-gauge-total,.credit-meter-unlimited-text{display:none}}.exam-live-cost{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:6px 16px;margin:10px 0 0;padding:10px 14px;font-size:14px;color:var(--text-2);background:var(--surface-2);border:1px solid var(--border-subtle);border-radius:12px}.exam-live-cost-main strong{font-size:16px;font-weight:800;color:var(--text-1)}.exam-live-cost-detail strong{color:var(--text-1)}.exam-live-cost.is-short{color:var(--danger-text);background:var(--danger-bg);border-color:var(--danger-border)}.exam-live-cost.is-short .exam-live-cost-main strong{color:var(--danger-text)}.st-page{max-width:1080px;margin:0 auto;padding:20px 24px 64px;color:var(--text-1);font-family:var(--font-body)}.st-page-head{margin-bottom:18px}.st-crumbs{font-size:.95rem;display:flex;flex-wrap:wrap;align-items:center;gap:2px}.st-crumb-sep{color:var(--text-3)}.st-crumb-current{font-weight:700;color:var(--text-strong)}.st-lead{margin:8px 0 0;max-width:760px;color:var(--text-2);line-height:1.55}.st-muted{color:var(--text-3);font-size:.92rem}.st-pad{padding:12px 4px}.st-link-button{background:none;border:none;padding:2px 4px;color:var(--accent);font:inherit;font-weight:600;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.st-link-button:hover{color:var(--accent-deep)}.st-link-button.is-danger{color:var(--danger-text)}.st-error{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:10px 0;padding:10px 12px;border-radius:10px;background:var(--danger-bg);border:1px solid var(--danger-border);color:var(--danger-text)}.st-empty{padding:28px 18px;text-align:center;border:1px dashed var(--border);border-radius:14px;background:var(--surface-1)}.st-empty p{margin:0 0 10px}.st-section-title{font-family:var(--font-display);font-size:1.15rem;margin:18px 0 10px;color:var(--text-strong)}.st-kicker{display:block;font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-3);margin-bottom:4px}.st-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:flex-end;margin-top:10px}.st-field{display:flex;flex-direction:column;gap:6px;margin:10px 0;font-weight:600;color:var(--text-2)}.st-field input,.st-field select,.st-field textarea,.st-reply-box textarea,.st-teach-input,.st-recall textarea,.st-search input,.st-toolbar select{font:inherit;font-weight:400;color:var(--text-1);background:var(--surface-solid);border:1px solid var(--border);border-radius:10px;padding:9px 11px;width:100%;box-sizing:border-box}.st-field textarea,.st-reply-box textarea,.st-teach-input,.st-recall textarea{resize:vertical;line-height:1.5}.st-field input:focus,.st-field select:focus,.st-field textarea:focus,.st-reply-box textarea:focus,.st-teach-input:focus,.st-recall textarea:focus,.st-search input:focus{outline:2px solid var(--accent-border);outline-offset:1px}.st-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:999px;font-size:.78rem;font-weight:700;background:var(--neutral-bg);color:var(--neutral-text);border:1px solid var(--neutral-border);white-space:nowrap}.st-badge.is-quiet{font-weight:600;background:transparent}.st-badge.is-solved,.st-badge.is-mastered{background:var(--success-bg);color:var(--success-text);border-color:var(--success-border)}.st-badge.is-op{background:var(--accent-subtle);color:var(--accent-deep);border-color:var(--accent-border)}.st-badge.is-due,.st-badge.is-to-redo,.st-badge.is-myth{background:var(--danger-bg);color:var(--danger-text);border-color:var(--danger-border)}.st-badge.is-learning,.st-badge.is-fixed,.st-badge.is-taught{background:var(--score-mid-bg);color:var(--score-mid-text);border-color:var(--score-mid-border)}.st-folder-sections{display:flex;flex-direction:column;gap:6px}.st-folder-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.st-folder{display:flex;flex-direction:column;align-items:flex-start;gap:4px;text-align:left;padding:14px 16px;border-radius:14px;border:1px solid var(--border);background:var(--surface-1);box-shadow:var(--glow-sm);cursor:pointer;font:inherit;color:inherit;transition:transform var(--dur-fast),box-shadow var(--dur-fast)}.st-folder:hover{transform:translateY(-2px);box-shadow:var(--glow-md)}.st-folder-icon{font-size:1.5rem}.st-folder-name{font-weight:800;color:var(--text-strong)}.st-folder-meta{font-size:.86rem;color:var(--text-3)}.st-course-layout{display:grid;grid-template-columns:minmax(220px,290px) 1fr;gap:18px;align-items:start}.st-unit-folders{display:flex;flex-direction:column;gap:4px;position:sticky;top:12px;max-height:calc(100vh - 120px);overflow-y:auto;padding-right:4px}.st-unit-folder{display:flex;justify-content:space-between;gap:8px;align-items:center;padding:8px 10px;border-radius:10px;border:1px solid transparent;background:transparent;font:inherit;font-size:.9rem;color:var(--text-2);text-align:left;cursor:pointer}.st-unit-folder:hover{background:var(--nav-hover-bg)}.st-unit-folder.is-active{background:var(--nav-active-bg);border-color:var(--accent-border);color:var(--text-strong);font-weight:700}.st-unit-folder-label{overflow:hidden;text-overflow:ellipsis}.st-unit-folder-count{flex:none;min-width:22px;text-align:center;border-radius:999px;background:var(--surface-2);font-size:.78rem;padding:1px 6px}.st-toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:10px}.st-tabs{display:inline-flex;flex-wrap:wrap;gap:2px;padding:3px;border-radius:12px;background:var(--surface-2)}.st-tab{border:none;background:transparent;padding:6px 12px;border-radius:9px;font:inherit;font-size:.9rem;font-weight:600;color:var(--text-2);cursor:pointer}.st-tab.is-active{background:var(--surface-solid);color:var(--text-strong);box-shadow:var(--glow-sm)}.st-search{flex:1 1 180px}.st-toolbar select{width:auto}.st-new-post{margin-left:auto}.st-threads{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.st-thread-row{width:100%;display:flex;gap:12px;align-items:flex-start;text-align:left;padding:12px 14px;border-radius:12px;border:1px solid var(--border);background:var(--surface-1);font:inherit;color:inherit;cursor:pointer}.st-thread-row:hover{border-color:var(--accent-border);background:var(--surface-solid)}.st-thread-score{flex:none;min-width:34px;text-align:center;font-weight:800;color:var(--text-2);padding-top:2px}.st-thread-main{display:flex;flex-direction:column;gap:4px;min-width:0}.st-thread-title{font-weight:700;color:var(--text-strong)}.st-thread-excerpt{color:var(--text-2);font-size:.92rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.st-thread-meta{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:.84rem;color:var(--text-3)}.st-status-dot{width:12px;height:12px;min-width:12px;border-radius:50%;margin-top:6px;background:var(--danger-border)}.st-status-dot.is-fixed{background:var(--score-mid-border)}.st-status-dot.is-mastered{background:var(--success-border)}.st-vote{display:flex;flex-direction:column;align-items:center;gap:2px;flex:none;width:36px}.st-vote--empty{min-height:10px}.st-vote-btn{border:none;background:transparent;color:var(--text-3);cursor:pointer;font-size:.85rem;line-height:1;padding:3px 6px;border-radius:6px}.st-vote-btn:hover{background:var(--nav-hover-bg);color:var(--text-1)}.st-vote-btn.is-on{color:var(--success-text)}.st-vote-btn.is-on.is-down{color:var(--danger-text)}.st-vote-score{font-weight:800;font-size:.92rem}.st-thread{display:flex;flex-direction:column;gap:12px}.st-post{display:flex;gap:12px;padding:16px;border-radius:14px;border:1px solid var(--border);background:var(--surface-1);box-shadow:var(--glow-sm)}.st-post-main{flex:1;min-width:0}.st-post-meta{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 0 6px;font-size:.86rem;color:var(--text-3)}.st-post-title{font-family:var(--font-display);margin:0 0 8px;font-size:1.35rem;color:var(--text-strong)}.st-rich p{margin:0 0 10px;line-height:1.6}.st-preview{margin:8px 0;padding:10px 12px;border-radius:10px;background:var(--surface-solid);border:1px dashed var(--border)}.st-replies{padding:4px 0}.st-comments{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}.st-comment.is-nested{margin-left:18px;padding-left:12px;border-left:2px solid var(--border)}.st-comment-row{display:flex;gap:8px;padding:10px 12px;border-radius:12px;background:var(--surface-1);border:1px solid var(--border-subtle)}.st-comment.is-accepted>.st-comment-row{border-color:var(--success-border);background:color-mix(in srgb,var(--success-bg) 45%,var(--surface-1))}.st-comment-main{flex:1;min-width:0}.st-comment-head{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:.86rem;margin-bottom:4px}.st-collapse{border:none;background:none;color:var(--text-3);cursor:pointer;font:inherit;padding:0}.st-author{font-weight:700;color:var(--text-strong)}.st-deleted{color:var(--text-3);font-style:italic}.st-comment-actions{display:flex;flex-wrap:wrap;gap:4px;margin-top:2px;font-size:.86rem}.st-reply-box{margin:8px 0}.st-compose{max-width:820px;padding:18px;border-radius:14px;border:1px solid var(--border);background:var(--surface-1)}.st-attach{margin:12px 0}.st-attached{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:10px 12px;border-radius:10px;background:var(--accent-subtle);border:1px solid var(--accent-border);font-weight:600}.st-modal-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:var(--paper-modal-scrim);display:flex;align-items:center;justify-content:center;padding:20px}.st-modal{width:min(720px,100%);max-height:min(80vh,760px);overflow-y:auto;border-radius:16px;background:var(--surface-solid);box-shadow:0 20px 60px #1f181059;padding:16px 18px}.st-modal-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:8px}.st-modal-head h2{font-size:1.1rem;margin:0}.st-pick-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.st-pick-row{width:100%;display:flex;flex-direction:column;gap:3px;text-align:left;padding:10px 12px;border-radius:10px;border:1px solid var(--border);background:var(--surface-1);font:inherit;color:inherit;cursor:pointer}.st-pick-row:hover:not(:disabled){border-color:var(--accent-border)}.st-pick-title{font-weight:700}.st-pick-preview{color:var(--text-2);font-size:.9rem}.st-question{margin:12px 0;padding:14px 16px;border-radius:12px;border:1px solid var(--border);background:var(--paper-bg)}.st-question-source{margin:0 0 8px;font-size:.82rem;font-weight:700;color:var(--text-3)}.st-question-frq-title{font-weight:700;margin:0 0 8px}.st-question-stimulus{margin-bottom:10px}.st-question-stem{margin:10px 0}.st-figures{display:flex;flex-wrap:wrap;gap:12px;margin:10px 0}.st-figure{margin:0;max-width:100%}.st-figure img{max-width:min(100%,560px);height:auto;display:block}.st-figure figcaption{font-size:.85rem;color:var(--text-3);margin-top:4px}.st-choices,.st-frq-parts{list-style:none;margin:8px 0;padding:0;display:flex;flex-direction:column;gap:6px}.st-choice,.st-frq-part{display:flex;gap:8px;padding:6px 8px;border-radius:8px}.st-choice.is-correct{background:var(--success-bg);outline:1px solid var(--success-border)}.st-choice-letter{font-weight:700;flex:none}.st-key{margin-top:10px;border-top:1px dashed var(--border);padding-top:8px}.st-key-body{margin-top:8px}.st-key-answer{font-weight:700;margin:6px 0}.st-share-row{display:flex;justify-content:flex-end;margin:10px 0 4px}.st-stats-row{display:flex;flex-wrap:wrap;gap:10px;margin:6px 0 14px}.st-stat{display:flex;flex-direction:column;gap:2px;min-width:120px;padding:10px 14px;border-radius:12px;background:var(--surface-1);border:1px solid var(--border);font:inherit;color:inherit;text-align:left}.st-stat-btn{cursor:pointer}.st-stat-btn.is-on{border-color:var(--accent);box-shadow:var(--glow-sm)}.st-stat-number{font-family:var(--font-display);font-size:1.5rem;font-weight:800;color:var(--text-strong)}.st-stat-label{font-size:.85rem;color:var(--text-3)}.st-unit{margin-bottom:10px}.st-unit-head{width:100%;display:flex;gap:10px;align-items:center;padding:10px 12px;border-radius:12px;border:1px solid var(--border);background:var(--surface-1);font:inherit;color:inherit;cursor:pointer;text-align:left}.st-unit-name{font-weight:700;flex:1}.st-unit-progress{font-size:.85rem;color:var(--text-3)}.st-unit-title{font-size:1rem;margin:18px 0 8px}.st-topic-list{list-style:none;margin:6px 0 0 14px;padding:0;display:flex;flex-direction:column;gap:4px}.st-topic-row{width:100%;display:flex;gap:10px;align-items:center;padding:8px 10px;border-radius:10px;border:1px solid transparent;background:transparent;font:inherit;color:inherit;cursor:pointer;text-align:left}.st-topic-row:hover{background:var(--surface-1);border-color:var(--border)}.st-topic-id{flex:none;min-width:36px;font-weight:700;color:var(--text-3)}.st-topic-name{flex:1}.st-topic-badges{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.st-lesson{display:flex;flex-direction:column;gap:12px}.st-lesson-head{display:flex;flex-direction:column;gap:4px;align-items:flex-start}.st-lesson-title{font-family:var(--font-display);font-size:1.6rem;margin:0;color:var(--text-strong)}.st-stepper{display:flex;flex-wrap:wrap;gap:6px}.st-stepper-item{border:1px solid var(--border);background:var(--surface-1);border-radius:999px;padding:6px 12px;font:inherit;font-size:.88rem;font-weight:600;color:var(--text-2);cursor:pointer}.st-stepper-item.is-done{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}.st-stepper-item.is-active{background:var(--btn-fill);border-color:var(--btn-fill);color:var(--btn-text)}.st-step-body{padding:18px;border-radius:14px;border:1px solid var(--border);background:var(--surface-1);min-height:240px}.st-step-title{font-size:1.05rem;margin:18px 0 8px;color:var(--text-strong)}.st-bigidea{padding:16px 18px;border-radius:12px;background:var(--btn-fill);color:var(--btn-text)}.st-bigidea .st-kicker{color:#f5efe3bf}.st-bigidea p{margin:0;font-size:1.15rem;font-weight:700;line-height:1.45}.st-analogy,.st-feynman,.st-example-problem,.st-example-answer,.st-reflect{margin:14px 0;padding:12px 14px;border-radius:12px;background:var(--accent-subtle);border-left:4px solid var(--accent)}.st-feynman-prompt{font-weight:700;font-size:1.05rem;margin:8px 0 0}.st-term-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}.st-term{display:flex;flex-direction:column;gap:6px;min-height:92px;padding:12px;border-radius:12px;border:1px solid var(--border);background:var(--surface-solid);font:inherit;color:inherit;text-align:left;cursor:pointer}.st-term.is-open{border-color:var(--success-border);background:color-mix(in srgb,var(--success-bg) 40%,var(--surface-solid))}.st-term-name{font-weight:800}.st-term-meaning{font-size:.9rem;color:var(--text-2)}.st-layer{padding-bottom:14px;margin-bottom:14px;border-bottom:1px dashed var(--border)}.st-check{margin:12px 0;padding:12px 14px;border-radius:12px;border:1px solid var(--border);background:var(--surface-solid)}.st-check.is-correct{border-color:var(--success-border)}.st-check.is-wrong{border-color:var(--danger-border)}.st-check-label{margin:0 0 4px;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-3)}.st-check-question{margin:0 0 8px;font-weight:600}.st-check-choices{display:flex;flex-direction:column;gap:6px;margin:8px 0}.st-check-choice{display:flex;gap:8px;align-items:flex-start;text-align:left;padding:9px 12px;border-radius:10px;border:1px solid var(--border);background:var(--surface-1);font:inherit;color:inherit;cursor:pointer}.st-check-choice:hover:not(:disabled){border-color:var(--accent-border);background:var(--paper-hover)}.st-check-choice:disabled{cursor:default}.st-check-choice.is-picked{border-color:var(--accent);background:var(--accent-subtle);box-shadow:inset 0 0 0 1px var(--accent)}.st-check-choice.is-correct{border-color:var(--success-border);background:var(--success-bg);color:var(--success-text)}.st-check-choice.is-wrong{border-color:var(--danger-border);background:var(--danger-bg);color:var(--danger-text)}.st-check-choice.is-dim{opacity:.6}.st-check-feedback{margin-top:8px;line-height:1.5}.st-done{margin:12px 0 0;padding:10px 12px;border-radius:10px;background:var(--success-bg);color:var(--success-text);font-weight:600}.st-example-steps{margin:12px 0;padding-left:0;list-style:none;display:flex;flex-direction:column;gap:10px}.st-example-step{padding:10px 12px;border-radius:10px;background:var(--surface-solid);border:1px solid var(--border-subtle);animation:st-reveal var(--dur-mid) ease-out}@keyframes st-reveal{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.st-teach-input{min-height:160px}.st-feedback{margin-top:14px;display:flex;flex-direction:column;gap:10px}.st-score{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;padding:12px 14px;border-radius:12px;background:var(--score-mid-bg);border:1px solid var(--score-mid-border)}.st-score.is-good{background:var(--success-bg);border-color:var(--success-border)}.st-score.is-low{background:var(--danger-bg);border-color:var(--danger-border)}.st-score-number{font-family:var(--font-display);font-size:2rem;font-weight:800}.st-score-of{color:var(--text-3)}.st-score-verdict{flex-basis:100%}.st-feedback-block{padding:10px 12px;border-radius:10px;border:1px solid var(--border);background:var(--surface-solid)}.st-feedback-block h4{margin:0 0 6px}.st-feedback-block ul{margin:0;padding-left:18px}.st-feedback-block.is-good{border-left:4px solid var(--success-border)}.st-feedback-block.is-gap{border-left:4px solid var(--score-mid-border)}.st-feedback-block.is-fix{border-left:4px solid var(--danger-border)}.st-said{color:var(--text-3)}.st-followup{margin:0}.st-details{margin:8px 0}.st-details summary{cursor:pointer;font-weight:700}.st-practice-score{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:12px 14px;border-radius:12px;background:var(--score-mid-bg)}.st-practice-score.is-good{background:var(--success-bg)}.st-summary{margin:0;padding-left:20px;line-height:1.6}.st-myths{display:flex;flex-direction:column;gap:8px}.st-myth{padding:10px 12px;border-radius:10px;background:var(--surface-solid);border:1px solid var(--border)}.st-myth summary{cursor:pointer}.st-recall{margin:12px 0;padding:12px;border-radius:12px;border:1px solid var(--border);background:var(--surface-solid)}.st-recall-answer{margin-top:8px;padding-top:8px;border-top:1px dashed var(--border)}.bb-secondary.is-picked{outline:2px solid var(--accent)}.st-lesson-nav{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px}.st-loading-lesson{display:flex;gap:14px;align-items:center;padding:24px;border-radius:14px;background:var(--surface-1);border:1px solid var(--border)}.st-spinner{width:28px;height:28px;flex:none;border-radius:50%;border:3px solid var(--border);border-top-color:var(--accent);animation:st-spin .9s linear infinite}@keyframes st-spin{to{transform:rotate(360deg)}}.st-insight{padding:10px 12px;border-radius:10px;background:var(--accent-subtle);border:1px solid var(--accent-border)}.st-chips{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}.st-chip{border:1px solid var(--border);background:var(--surface-solid);border-radius:999px;padding:5px 12px;font:inherit;font-size:.88rem;cursor:pointer;color:var(--text-2)}.st-chip.is-on{background:var(--btn-fill);border-color:var(--btn-fill);color:var(--btn-text)}.st-redo{display:flex;flex-direction:column;gap:10px;max-width:900px}.st-redo-head p{margin:4px 0 0}.st-redo-tools{display:flex;flex-direction:column;gap:6px;align-items:flex-start}.st-hint{padding:10px 12px;border-radius:10px;background:var(--score-mid-bg);border:1px solid var(--score-mid-border);width:100%;box-sizing:border-box}.st-pre{white-space:pre-wrap;margin:6px 0}.st-result{padding:14px 16px;border-radius:12px;border:1px solid var(--border)}.st-result.is-good{background:color-mix(in srgb,var(--success-bg) 60%,var(--surface-1));border-color:var(--success-border)}.st-result.is-low{background:color-mix(in srgb,var(--danger-bg) 55%,var(--surface-1));border-color:var(--danger-border)}.st-redo-foot{margin-top:12px}.st-today{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin:8px 0 22px}.st-today-card{display:flex;flex-direction:column;gap:3px;align-items:flex-start;text-align:left;padding:14px 16px;border-radius:14px;border:1px solid var(--border);background:var(--surface-1);box-shadow:var(--glow-sm);font:inherit;color:inherit}button.st-today-card{cursor:pointer;transition:transform var(--dur-fast),box-shadow var(--dur-fast)}button.st-today-card:hover{transform:translateY(-2px);box-shadow:var(--glow-md)}.st-today-big{font-family:var(--font-display);font-size:1.6rem;font-weight:800;color:var(--text-strong)}.st-today-label{font-weight:700}@media(max-width:760px){.st-page{padding:14px 12px 48px}.st-course-layout{grid-template-columns:1fr}.st-unit-folders{position:static;max-height:none;flex-direction:row;overflow-x:auto}.st-unit-folder{flex:none;max-width:240px}.st-new-post{margin-left:0}.st-comment.is-nested{margin-left:8px;padding-left:8px}}.cr-page{max-width:1280px}.cr-layout{display:grid;grid-template-columns:minmax(230px,300px) minmax(0,1fr);gap:24px;align-items:start}.cr-loading{padding:24px 0}.cr-outline{position:sticky;top:12px;max-height:calc(100vh - 110px);overflow-y:auto;padding:10px;border-radius:14px;border:1px solid var(--border);background:var(--surface-1);display:flex;flex-direction:column;gap:2px}.cr-search input{width:100%;box-sizing:border-box;font:inherit;padding:8px 10px;border-radius:10px;border:1px solid var(--border);background:var(--surface-solid);margin-bottom:6px}.cr-outline-link,.cr-outline-unit-name,.cr-outline-topic,.cr-outline-toggle{font:inherit;color:inherit;background:none;border:none;text-align:left;cursor:pointer}.cr-outline-link{padding:7px 8px;border-radius:8px;font-weight:700;font-size:.92rem}.cr-outline-link:hover,.cr-outline-unit-name:hover,.cr-outline-topic:hover{background:var(--nav-hover-bg)}.cr-outline-link.is-active,.cr-outline-unit-name.is-active,.cr-outline-topic.is-active{background:var(--nav-active-bg);box-shadow:inset 3px 0 0 var(--accent)}.cr-outline-unit{margin-top:4px}.cr-outline-unit-row{display:flex;align-items:stretch}.cr-outline-toggle{width:22px;flex:none;color:var(--text-3);border-radius:6px}.cr-outline-unit-name{flex:1;display:flex;justify-content:space-between;gap:8px;padding:6px;border-radius:8px;font-weight:700;font-size:.9rem}.cr-outline-count{flex:none;font-size:.76rem;color:var(--text-3);font-weight:600}.cr-outline-topics{list-style:none;margin:0 0 4px 18px;padding:0}.cr-outline-topic{width:100%;display:flex;gap:8px;align-items:flex-start;padding:5px 6px;border-radius:8px;font-size:.86rem;color:var(--text-2)}.cr-due{margin-left:auto;color:var(--danger-text);font-weight:700}.cr-dot{flex:none;width:10px;height:10px;margin-top:5px;border-radius:50%;border:2px solid var(--stone);box-sizing:border-box;display:inline-block}.cr-dot.is-started{border-color:var(--score-mid-text);background:linear-gradient(90deg,var(--score-mid-border) 50%,transparent 50%)}.cr-dot.is-done{border-color:var(--success-text);background:var(--success-text)}.cr-main{min-width:0}.cr-topic{max-width:820px;padding:22px 26px 28px;border-radius:16px;border:1px solid var(--border);background:var(--paper-bg);box-shadow:var(--glow-sm);line-height:1.65;font-size:1.02rem}.cr-topic-head{margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--border)}.cr-kicker{margin:0 0 4px;font-size:.8rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-3)}.cr-topic-title{font-family:var(--font-display);font-size:1.75rem;line-height:1.2;margin:0 0 6px;color:var(--text-strong)}.cr-topic-meta{margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:.9rem;color:var(--text-3)}.cr-topic-tools,.cr-home-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.cr-tool{font:inherit;font-size:.86rem;font-weight:600;padding:5px 12px;border-radius:999px;border:1px solid var(--border);background:var(--surface-1);color:var(--text-2);cursor:pointer}.cr-tool.is-on{background:var(--btn-fill);border-color:var(--btn-fill);color:var(--btn-text)}.cr-progress{display:block;height:8px;border-radius:999px;background:var(--surface-2);overflow:hidden;margin:8px 0 6px;width:100%}.cr-progress--thin{height:5px}.cr-progress-bar{display:block;height:100%;border-radius:999px;background:var(--success-text);transition:width var(--dur-mid)}.cr-h3{font-family:var(--font-display);font-size:1.2rem;margin:26px 0 10px;color:var(--text-strong)}.cr-subheading{font-size:1.05rem;margin:20px 0 6px;color:var(--text-strong)}.cr-p{margin:0 0 12px}.cr-list{margin:0 0 12px;padding-left:22px}.cr-list li{margin:3px 0}.cr-math{margin:10px 0 14px;overflow-x:auto;overflow-y:hidden;text-align:center}.cr-table-wrap{overflow-x:auto;margin:10px 0 14px}.cr-table{border-collapse:collapse;font-size:.95rem;min-width:50%}.cr-table th,.cr-table td{border:1px solid var(--border);padding:6px 10px;text-align:left;vertical-align:top}.cr-table th{background:var(--surface-2)}.cr-box{margin:16px 0;padding:12px 16px 4px;border-radius:12px;border:1px solid var(--border);border-left-width:5px;background:var(--surface-1)}.cr-box-label{display:flex;gap:8px;align-items:center;margin:0 0 6px;font-weight:800;color:var(--text-strong)}.cr-box-sub{margin:10px 0 4px;font-weight:700;font-size:.92rem}.cr-box-icon{display:inline-flex;width:22px;height:22px;align-items:center;justify-content:center;border-radius:50%;font-size:.8rem;background:var(--surface-2)}.cr-box.is-key{border-left-color:var(--accent);background:color-mix(in srgb,var(--accent-subtle) 60%,var(--surface-1))}.cr-box.is-asks{border-left-color:#6b7f99}.cr-box.is-mistake{border-left-color:var(--danger-border);background:color-mix(in srgb,var(--danger-bg) 35%,var(--surface-1))}.cr-box.is-tip{border-left-color:var(--success-border);background:color-mix(in srgb,var(--success-bg) 35%,var(--surface-1))}.cr-box.is-note{border-left-color:var(--stone)}.cr-example{margin:18px 0;padding:14px 16px;border-radius:12px;border:1px solid var(--border);background:var(--surface-solid)}.cr-example-label,.cr-check-label{margin:0 0 8px;font-size:.8rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--text-3)}.cr-frq{border-style:dashed}.cr-reveal-btn{font:inherit;font-weight:700;font-size:.9rem;padding:6px 12px;border-radius:10px;border:1px solid var(--accent-border);background:var(--accent-subtle);color:var(--accent-deep);cursor:pointer}.cr-reveal-body{margin-top:10px;padding-top:10px;border-top:1px dashed var(--border);animation:st-reveal var(--dur-mid) ease-out}.cr-link{font:inherit;font-size:.88rem;background:none;border:none;padding:0;color:var(--accent);text-decoration:underline;cursor:pointer}.cr-check{margin:18px 0;padding:14px 16px;border-radius:12px;border:1px solid var(--border);background:var(--surface-solid)}.cr-check.is-correct{border-color:var(--success-border)}.cr-check.is-wrong{border-color:var(--danger-border)}.cr-check-title{text-transform:none;letter-spacing:0}.cr-choices{display:flex;flex-direction:column;gap:6px;margin:8px 0}.cr-choice{display:flex;gap:8px;align-items:flex-start;text-align:left;padding:9px 12px;border-radius:10px;border:1px solid var(--border);background:var(--surface-1);font:inherit;color:inherit;cursor:pointer}.cr-choice:hover:not(:disabled){border-color:var(--accent-border);background:var(--paper-hover)}.cr-choice:disabled{cursor:default}.cr-choice.is-correct{border-color:var(--success-border);background:var(--success-bg)}.cr-choice.is-wrong{border-color:var(--danger-border);background:var(--danger-bg)}.cr-choice.is-dim{opacity:.55}.cr-choice-letter{font-weight:700;flex:none}.cr-check-feedback{margin-top:8px}.cr-check-verdict{font-weight:800;margin:0 0 6px}.cr-review-done{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:12px 14px;border-radius:12px;background:var(--success-bg)}.cr-review-done p{margin:0;font-weight:700}.cr-topic-foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:26px;padding-top:16px;border-top:1px solid var(--border)}.cr-foot-links{margin:10px 0 0;font-size:.88rem}.cr-topic-index,.cr-search-results{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.cr-index-row,.cr-search-row{width:100%;display:flex;gap:10px;align-items:center;flex-wrap:wrap;text-align:left;padding:8px 10px;border-radius:10px;border:1px solid transparent;background:none;font:inherit;color:inherit;cursor:pointer}.cr-index-row:hover,.cr-search-row:hover{background:var(--surface-1);border-color:var(--border)}.cr-index-id{min-width:34px;font-weight:700;color:var(--text-3)}.cr-index-name{flex:1}.cr-search-row{flex-direction:column;align-items:flex-start;gap:2px}.cr-search-title{font-weight:700}.cr-search-snippet{font-size:.9rem;color:var(--text-2)}.cr-extra{margin-top:8px}.cr-unit-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}.cr-unit-card{display:flex;flex-direction:column;gap:3px;align-items:flex-start;text-align:left;padding:12px 14px;border-radius:12px;border:1px solid var(--border);background:var(--surface-1);font:inherit;color:inherit;cursor:pointer}.cr-unit-card:hover{border-color:var(--accent-border)}.cr-unit-num{font-size:.78rem;font-weight:700;text-transform:uppercase;color:var(--text-3)}.cr-unit-name{font-weight:800}.cr-formula-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:10px}.cr-formula-card{padding:10px 12px;border-radius:10px;border:1px solid var(--border);background:var(--surface-1);font-size:.92rem;break-inside:avoid}.cr-formula-topic{margin:0 0 4px;font-weight:800}.cr-approach{margin-top:0}@media(max-width:900px){.cr-layout{grid-template-columns:1fr}.cr-outline{position:static;max-height:320px}.cr-topic{padding:16px 14px 20px}}@media print{.app-sidebar,.app-chrome,.cr-outline,.st-page-head,.cr-topic-tools,.cr-topic-foot,.cr-foot-links{display:none!important}.cr-layout{display:block}.cr-topic{border:none;box-shadow:none;max-width:none;padding:0}}.lp{min-height:100vh;background:var(--surface-base);color:var(--text-1);font-family:var(--font-body);scroll-behavior:smooth}.lp .brand-wordmark{color:var(--text-1)}.lp .brand-ap,.lp .brand-mark{color:var(--accent)}.lp-container{width:100%;max-width:1120px;margin:0 auto;padding:0 24px}.lp-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 18px;border:1px solid transparent;border-radius:10px;font:inherit;font-size:15px;font-weight:700;line-height:1.2;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease,transform .15s ease}.lp-btn:focus-visible{outline:3px solid var(--accent-border);outline-offset:2px}.lp-btn-primary{background:var(--btn-fill);color:var(--btn-text);border-color:var(--btn-border)}.lp-btn-primary:hover{background:var(--btn-fill-hover);transform:translateY(-1px)}.lp-btn-ghost{background:transparent;color:var(--text-1);border-color:var(--accent-border)}.lp-btn-ghost:hover{background:var(--accent-subtle)}.lp-btn-text{background:transparent;color:var(--text-1);padding-inline:12px}.lp-btn-text:hover{background:var(--nav-hover-bg)}.lp-btn-lg{padding:14px 24px;font-size:16px;border-radius:12px}.lp-btn-block{width:100%}.lp-nav{position:sticky;top:0;z-index:20;background:#eae2d0e6;backdrop-filter:saturate(1.2) blur(10px);-webkit-backdrop-filter:saturate(1.2) blur(10px);border-bottom:1px solid var(--border-subtle)}.lp-nav-inner{display:flex;align-items:center;gap:24px;height:64px}.lp-nav-brand{display:inline-flex;color:inherit;text-decoration:none}.lp-nav-links{display:flex;flex:1;justify-content:center;gap:28px}.lp-nav-links a{color:var(--text-2);font-size:15px;font-weight:600;text-decoration:none}.lp-nav-links a:hover{color:var(--text-strong)}.lp-nav-actions{display:flex;align-items:center;gap:6px;margin-left:auto}.lp-hero{padding:72px 0 64px}.lp-hero-inner{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:56px;align-items:center}.lp-eyebrow{margin:0 0 12px;font-size:12.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--text-3)}.lp-h1{margin:0 0 18px;font-family:var(--font-display);font-size:clamp(38px,5.2vw,60px);font-weight:800;line-height:1.04;letter-spacing:-.02em;color:var(--text-strong)}.lp-h2{margin:0 0 28px;max-width:22em;font-family:var(--font-display);font-size:clamp(28px,3.4vw,40px);font-weight:800;line-height:1.1;letter-spacing:-.01em;color:var(--text-strong)}.lp-lead{margin:0 0 28px;max-width:34em;font-size:18.5px;line-height:1.55;color:var(--text-2)}.lp-cta-row{display:flex;flex-wrap:wrap;gap:12px}.lp-note{margin:16px 0 0;font-size:14px;color:var(--text-3)}.lp-preview-card{padding:22px 22px 18px;border:1px solid var(--border-subtle);border-radius:16px;background:#fbf8f2;box-shadow:0 30px 60px -30px #2a231873,0 2px 6px #2a23180f}.lp-preview-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.lp-preview-tag{font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3)}.lp-preview-check{padding:3px 10px;border-radius:999px;background:#1f7a451a;color:#1f7a45;font-size:12px;font-weight:800}.lp-preview-stem{margin:0 0 12px;font-family:"Noto Serif",Georgia,serif;font-size:15.5px;line-height:1.55;color:var(--paper-ink, #2a2318)}.lp-preview-choices{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:0 0 14px;padding:0;list-style:none}.lp-preview-choices li{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 4px;border:1px solid var(--border-subtle);border-radius:10px;background:#fff;font-family:"Noto Serif",Georgia,serif}.lp-preview-choices li.is-correct{border:2px solid #1f7a45;background:#1f7a450f}.lp-preview-letter{font-size:11px;font-weight:800;color:var(--text-3)}.lp-preview-solution{padding-top:12px;border-top:1px dashed var(--border-subtle);font-family:"Noto Serif",Georgia,serif;font-size:13.5px;line-height:1.45}.lp-preview-solution .bb-sol{gap:10px}.lp-courses{padding:28px 0;border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle);background:var(--surface-1)}.lp-courses-inner{display:grid;grid-template-columns:2fr 1fr;gap:28px}.lp-courses-label{margin:0 0 10px;font-size:12.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--text-3)}.lp-chips{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}.lp-chips li{padding:6px 12px;border:1px solid var(--accent-border);border-radius:999px;background:var(--surface-base);font-size:14px;font-weight:600;color:var(--text-1)}.lp-section{padding:88px 0;scroll-margin-top:64px}.lp-section-alt{background:var(--surface-1)}.lp-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.lp-feature{padding:22px;border:1px solid var(--border-subtle);border-radius:14px;background:var(--surface-1)}.lp-feature-icon{width:40px;height:40px;padding:8px;border-radius:10px;background:var(--accent-subtle);color:var(--accent)}.lp-feature h3,.lp-step h3,.lp-plan h3{margin:14px 0 6px;font-family:var(--font-brand);font-size:18px;font-weight:700;color:var(--text-strong)}.lp-feature p,.lp-step p{margin:0;font-size:15px;line-height:1.55;color:var(--text-2)}.lp-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:0;padding:0;list-style:none}.lp-step{padding:22px;border:1px solid var(--border-subtle);border-radius:14px;background:var(--surface-base)}.lp-step-num{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:var(--btn-fill);color:var(--btn-text);font-family:var(--font-brand);font-weight:700}.lp-toggle{display:inline-flex;gap:4px;margin:-8px 0 24px;padding:4px;border:1px solid var(--accent-border);border-radius:999px;background:var(--surface-1)}.lp-toggle button{padding:8px 16px;border:0;border-radius:999px;background:transparent;color:var(--text-2);font:inherit;font-size:14px;font-weight:700;cursor:pointer}.lp-toggle button.is-active{background:var(--btn-fill);color:var(--btn-text)}.lp-plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:stretch}.lp-plan{position:relative;display:flex;flex-direction:column;padding:24px;border:1px solid var(--border-subtle);border-radius:16px;background:var(--surface-1)}.lp-plan.is-featured{border:2px solid var(--accent);box-shadow:0 24px 50px -30px #2a231880}.lp-plan-badge{position:absolute;top:-12px;left:24px;padding:4px 10px;border-radius:999px;background:var(--btn-fill);color:var(--btn-text);font-size:12px;font-weight:800}.lp-plan h3{margin-top:0}.lp-plan-price{margin:0 0 6px;font-family:var(--font-display);font-size:40px;font-weight:800;line-height:1.1;color:var(--text-strong)}.lp-plan-price span{margin-left:4px;font-family:var(--font-body);font-size:15px;font-weight:600;color:var(--text-3)}.lp-plan-blurb{margin:0 0 16px;font-size:15px;color:var(--text-2)}.lp-plan ul{flex:1;display:flex;flex-direction:column;gap:8px;margin:0 0 20px;padding:0;list-style:none;font-size:14.5px;line-height:1.45;color:var(--text-1)}.lp-plan li{position:relative;padding-left:22px}.lp-plan li:before{content:"";position:absolute;top:6px;left:2px;width:9px;height:5px;border-left:2px solid var(--accent);border-bottom:2px solid var(--accent);transform:rotate(-45deg)}.lp-faq-list{max-width:820px;display:flex;flex-direction:column;gap:10px}.lp-faq-item{padding:4px 18px;border:1px solid var(--border-subtle);border-radius:12px;background:var(--surface-base)}.lp-faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;font-size:16px;font-weight:700;color:var(--text-strong);cursor:pointer;list-style:none}.lp-faq-item summary::-webkit-details-marker{display:none}.lp-faq-item summary:after{content:"+";font-size:22px;font-weight:400;color:var(--text-3)}.lp-faq-item[open] summary:after{content:"−"}.lp-faq-item p{margin:0 0 16px;font-size:15px;line-height:1.55;color:var(--text-2)}.lp-final{padding:80px 0;background:var(--accent-deep);color:var(--accent-contrast);text-align:center}.lp-final-inner{display:flex;flex-direction:column;align-items:center}.lp-final .lp-h2{margin-bottom:10px;color:var(--accent-contrast)}.lp-final .lp-lead{color:#f5efe3cc}.lp-final .lp-btn-primary{background:var(--accent-contrast);color:var(--accent-deep)}.lp-final .lp-btn-primary:hover{background:#fff}.lp-final .lp-btn-ghost{border-color:#f5efe366;color:var(--accent-contrast)}.lp-final .lp-btn-ghost:hover{background:#f5efe31a}.lp-footer{padding:32px 0 40px;border-top:1px solid var(--border-subtle)}.lp-footer-inner{display:flex;flex-direction:column;gap:14px}.lp-fineprint{margin:0;max-width:70em;font-size:12.5px;line-height:1.55;color:var(--text-3)}@media(max-width:960px){.lp-hero-inner{grid-template-columns:minmax(0,1fr);gap:40px}.lp-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lp-steps,.lp-plans,.lp-courses-inner{grid-template-columns:minmax(0,1fr)}}@media(max-width:720px){.lp-container{padding:0 16px}.lp-nav-links{display:none}.lp-nav-inner{gap:10px}.lp-nav-actions .lp-btn{padding:8px 12px;font-size:14px}.lp-hero{padding:44px 0 40px}.lp-section{padding:60px 0}.lp-feature-grid{grid-template-columns:minmax(0,1fr)}.lp-preview-choices{grid-template-columns:repeat(5,minmax(0,1fr));gap:4px}.lp-preview-choices li{padding:6px 2px;font-size:13px}.lp-cta-row .lp-btn-lg{flex:1 1 auto}}
