@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,math,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.19.1"}.katex .katex-mathml{border:0;-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;overflow:hidden;padding:0;position:absolute;width:1px}.katex .katex-html>.katex-newline{display:block}.katex .katex-base{position:relative;white-space:nowrap;width:-webkit-min-content;width:-moz-min-content;width:min-content}.katex .katex-base,.katex .katex-strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;display:inline-table;table-layout:fixed}.katex .vlist-r{display:table-row}.katex .vlist{display:table-cell;position:relative;vertical-align:bottom}.katex .vlist>span{display:block;height:0;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{overflow:hidden;width:0}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{display:table-cell;font-size:1px;min-width:2px;vertical-align:bottom;width:2px}.katex .katex-vbox{align-items:baseline;display:inline-flex;flex-direction:column}.katex .katex-thinbox{display:inline-flex;flex-direction:row;max-width:0;width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .katex-hdashline,.katex .katex-hline,.katex .katex-overline .overline-line,.katex .katex-rule,.katex .katex-underline .underline-line,.katex .mfrac .frac-line{min-height:1px}.katex .mspace{display:inline-block}.katex .katex-smash{display:inline;line-height:0}.katex .clap,.katex .llap,.katex .rlap{position:relative;width:0}.katex .clap>.katex-inner,.katex .llap>.katex-inner,.katex .rlap>.katex-inner{position:absolute}.katex .clap>.katex-fix,.katex .llap>.katex-fix,.katex .rlap>.katex-fix{display:inline-block}.katex .llap>.katex-inner{right:0}.katex .clap>.katex-inner,.katex .rlap>.katex-inner{left:0}.katex .clap>.katex-inner>span{margin-left:-50%;margin-right:50%}.katex .katex-rule{border:0 solid;display:inline-block;position:relative}.katex .katex-hline,.katex .katex-overline .overline-line,.katex .katex-underline .underline-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .katex-hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.katex .sqrt>.katex-root{margin-left:.2777777778em;margin-right:-.5555555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .katex-sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .katex-sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .katex-sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .katex-sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .katex-sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .katex-sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .katex-sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .katex-sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .katex-sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .katex-sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .katex-sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .katex-sizing.reset-size2.size1{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .katex-sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .katex-sizing.reset-size2.size3{font-size:1.1666666667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .katex-sizing.reset-size2.size4{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .katex-sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .katex-sizing.reset-size2.size6{font-size:1.6666666667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .katex-sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .katex-sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .katex-sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .katex-sizing.reset-size2.size10{font-size:3.4566666667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .katex-sizing.reset-size2.size11{font-size:4.1466666667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .katex-sizing.reset-size3.size1{font-size:.7142857143em}.katex .fontsize-ensurer.reset-size3.size2,.katex .katex-sizing.reset-size3.size2{font-size:.8571428571em}.katex .fontsize-ensurer.reset-size3.size3,.katex .katex-sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .katex-sizing.reset-size3.size4{font-size:1.1428571429em}.katex .fontsize-ensurer.reset-size3.size5,.katex .katex-sizing.reset-size3.size5{font-size:1.2857142857em}.katex .fontsize-ensurer.reset-size3.size6,.katex .katex-sizing.reset-size3.size6{font-size:1.4285714286em}.katex .fontsize-ensurer.reset-size3.size7,.katex .katex-sizing.reset-size3.size7{font-size:1.7142857143em}.katex .fontsize-ensurer.reset-size3.size8,.katex .katex-sizing.reset-size3.size8{font-size:2.0571428571em}.katex .fontsize-ensurer.reset-size3.size9,.katex .katex-sizing.reset-size3.size9{font-size:2.4685714286em}.katex .fontsize-ensurer.reset-size3.size10,.katex .katex-sizing.reset-size3.size10{font-size:2.9628571429em}.katex .fontsize-ensurer.reset-size3.size11,.katex .katex-sizing.reset-size3.size11{font-size:3.5542857143em}.katex .fontsize-ensurer.reset-size4.size1,.katex .katex-sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .katex-sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .katex-sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .katex-sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .katex-sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .katex-sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .katex-sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .katex-sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .katex-sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .katex-sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .katex-sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .katex-sizing.reset-size5.size1{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .katex-sizing.reset-size5.size2{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .katex-sizing.reset-size5.size3{font-size:.7777777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .katex-sizing.reset-size5.size4{font-size:.8888888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .katex-sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .katex-sizing.reset-size5.size6{font-size:1.1111111111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .katex-sizing.reset-size5.size7{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .katex-sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .katex-sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .katex-sizing.reset-size5.size10{font-size:2.3044444444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .katex-sizing.reset-size5.size11{font-size:2.7644444444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .katex-sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .katex-sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .katex-sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .katex-sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .katex-sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .katex-sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .katex-sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .katex-sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .katex-sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .katex-sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .katex-sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .katex-sizing.reset-size7.size1{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .katex-sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .katex-sizing.reset-size7.size3{font-size:.5833333333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .katex-sizing.reset-size7.size4{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .katex-sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .katex-sizing.reset-size7.size6{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .katex-sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .katex-sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .katex-sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .katex-sizing.reset-size7.size10{font-size:1.7283333333em}.katex .fontsize-ensurer.reset-size7.size11,.katex .katex-sizing.reset-size7.size11{font-size:2.0733333333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .katex-sizing.reset-size8.size1{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .katex-sizing.reset-size8.size2{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .katex-sizing.reset-size8.size3{font-size:.4861111111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .katex-sizing.reset-size8.size4{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .katex-sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .katex-sizing.reset-size8.size6{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .katex-sizing.reset-size8.size7{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .katex-sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .katex-sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .katex-sizing.reset-size8.size10{font-size:1.4402777778em}.katex .fontsize-ensurer.reset-size8.size11,.katex .katex-sizing.reset-size8.size11{font-size:1.7277777778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .katex-sizing.reset-size9.size1{font-size:.2893518519em}.katex .fontsize-ensurer.reset-size9.size2,.katex .katex-sizing.reset-size9.size2{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .katex-sizing.reset-size9.size3{font-size:.4050925926em}.katex .fontsize-ensurer.reset-size9.size4,.katex .katex-sizing.reset-size9.size4{font-size:.462962963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .katex-sizing.reset-size9.size5{font-size:.5208333333em}.katex .fontsize-ensurer.reset-size9.size6,.katex .katex-sizing.reset-size9.size6{font-size:.5787037037em}.katex .fontsize-ensurer.reset-size9.size7,.katex .katex-sizing.reset-size9.size7{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .katex-sizing.reset-size9.size8{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .katex-sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .katex-sizing.reset-size9.size10{font-size:1.2002314815em}.katex .fontsize-ensurer.reset-size9.size11,.katex .katex-sizing.reset-size9.size11{font-size:1.4398148148em}.katex .fontsize-ensurer.reset-size10.size1,.katex .katex-sizing.reset-size10.size1{font-size:.2410800386em}.katex .fontsize-ensurer.reset-size10.size2,.katex .katex-sizing.reset-size10.size2{font-size:.2892960463em}.katex .fontsize-ensurer.reset-size10.size3,.katex .katex-sizing.reset-size10.size3{font-size:.337512054em}.katex .fontsize-ensurer.reset-size10.size4,.katex .katex-sizing.reset-size10.size4{font-size:.3857280617em}.katex .fontsize-ensurer.reset-size10.size5,.katex .katex-sizing.reset-size10.size5{font-size:.4339440694em}.katex .fontsize-ensurer.reset-size10.size6,.katex .katex-sizing.reset-size10.size6{font-size:.4821600771em}.katex .fontsize-ensurer.reset-size10.size7,.katex .katex-sizing.reset-size10.size7{font-size:.5785920926em}.katex .fontsize-ensurer.reset-size10.size8,.katex .katex-sizing.reset-size10.size8{font-size:.6943105111em}.katex .fontsize-ensurer.reset-size10.size9,.katex .katex-sizing.reset-size10.size9{font-size:.8331726133em}.katex .fontsize-ensurer.reset-size10.size10,.katex .katex-sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .katex-sizing.reset-size10.size11{font-size:1.1996142719em}.katex .fontsize-ensurer.reset-size11.size1,.katex .katex-sizing.reset-size11.size1{font-size:.2009646302em}.katex .fontsize-ensurer.reset-size11.size2,.katex .katex-sizing.reset-size11.size2{font-size:.2411575563em}.katex .fontsize-ensurer.reset-size11.size3,.katex .katex-sizing.reset-size11.size3{font-size:.2813504823em}.katex .fontsize-ensurer.reset-size11.size4,.katex .katex-sizing.reset-size11.size4{font-size:.3215434084em}.katex .fontsize-ensurer.reset-size11.size5,.katex .katex-sizing.reset-size11.size5{font-size:.3617363344em}.katex .fontsize-ensurer.reset-size11.size6,.katex .katex-sizing.reset-size11.size6{font-size:.4019292605em}.katex .fontsize-ensurer.reset-size11.size7,.katex .katex-sizing.reset-size11.size7{font-size:.4823151125em}.katex .fontsize-ensurer.reset-size11.size8,.katex .katex-sizing.reset-size11.size8{font-size:.578778135em}.katex .fontsize-ensurer.reset-size11.size9,.katex .katex-sizing.reset-size11.size9{font-size:.6945337621em}.katex .fontsize-ensurer.reset-size11.size10,.katex .katex-sizing.reset-size11.size10{font-size:.8336012862em}.katex .fontsize-ensurer.reset-size11.size11,.katex .katex-sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{display:inline-block;width:.12em}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .katex-accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .katex-accent .accent-body{position:relative}.katex .katex-accent .accent-body:not(.accent-full){width:0}.katex .katex-overlay{display:block}.katex .mtable .vertical-separator{display:inline-block;min-width:1px}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;display:block;height:inherit;position:absolute;width:100%}.katex svg path{stroke:none}.katex svg{fill-rule:nonzero;fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1}.katex img{border-style:none;max-height:none;max-width:none;min-height:0;min-width:0}.katex .katex-stretchy{display:block;overflow:hidden;position:relative;width:100%}.katex .katex-stretchy:after,.katex .katex-stretchy:before{content:""}.katex .hide-tail{overflow:hidden;position:relative;width:100%}.katex .halfarrow-left{left:0;overflow:hidden;position:absolute;width:50.2%}.katex .halfarrow-right{overflow:hidden;position:absolute;right:0;width:50.2%}.katex .brace-left{left:0;overflow:hidden;position:absolute;width:25.1%}.katex .brace-center{left:25%;overflow:hidden;position:absolute;width:50%}.katex .brace-right{overflow:hidden;position:absolute;right:0;width:25.1%}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{border:.04em solid;box-sizing:border-box}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .katex-sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{border-right:.049em solid;border-top:.049em solid;box-sizing:border-box;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .reflectbox{display:inline-block;transform:scaleX(-1)}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{display:inline-block;position:absolute;right:calc(50% + .3em);text-align:left}.katex .cd-label-right{display:inline-block;left:calc(50% + .3em);position:absolute;text-align:right}.katex-display{display:block;margin:1em 0;text-align:center}.katex-display>.katex{display:block;text-align:center;white-space:nowrap}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.katex-tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.katex-tag{left:0;right:auto}.katex-display.fleqn>.katex{padding-left:2em;text-align:left}body{counter-reset:katexEqnNo mmlEqnNo}:root{--teal-900: #073F46;--teal-700: #0A5C66;--teal-500: #0E7C88;--teal-100: #D3EEF0;--teal-50: #EEF8F9;--saffron: #F59E0B;--saffron-light: #FEF3C7;--saffron-dark: #B45309;--navy: #0B2A33;--cobalt: var(--teal-500);--cobalt-hover: var(--teal-700);--ice: var(--teal-50);--ice-border: #BFE3E7;--bg: #F6F7F9;--paper: #FFFFFF;--surface2: #F9FAFB;--ink: #101828;--muted: #475467;--subtle: #667085;--ok: #067647;--ok-bg: #ECFDF3;--warn: #B42318;--warn-bg: #FEF3F2;--note: var(--saffron-dark);--note-bg: #FFFAEB;--line: #EAECF0;--line-dark: #D0D5DD;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--shadow-xs: 0 1px 2px rgba(16, 24, 40, .05);--shadow-sm: 0 1px 3px rgba(16, 24, 40, .08), 0 1px 2px rgba(16, 24, 40, .04);--shadow-md: 0 8px 24px -6px rgba(16, 24, 40, .12), 0 2px 6px -2px rgba(16, 24, 40, .05);--focus-ring: 0 0 0 4px rgba(14, 124, 136, .18);--accent: var(--cobalt);color-scheme:light;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-feature-settings:"cv11","ss01";font-size:15px;line-height:1.55;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,*:before,*:after{box-sizing:border-box}html,body,#root{margin:0;height:100%}button,input,select,textarea{font:inherit;color:inherit}a{color:var(--cobalt)}a:hover{color:var(--cobalt-hover)}.shell{display:grid;grid-template-columns:244px 1fr;grid-template-rows:56px minmax(0,1fr);height:100vh;overflow:hidden}.app-topbar{grid-column:1 / -1;grid-row:1;background:var(--teal-900);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:0 1.25rem;box-shadow:0 2px 8px #0d4f5c2e;min-width:0;z-index:10}.app-topbar-brand{display:flex;align-items:center;gap:.65rem;min-width:0}.app-logo{width:32px;height:32px;border-radius:8px;background:var(--saffron);color:var(--teal-900);display:grid;place-items:center;font-weight:800;letter-spacing:-.04em;flex:0 0 auto}.app-title{display:grid;gap:.05rem;min-width:0}.app-title strong{color:#fff;font-size:1.05rem}.app-title-accent{color:#d47b31;line-height:1.1}.app-title span{color:var(--teal-100);font-size:.72rem;opacity:.78;white-space:nowrap}.app-topbar-right{display:flex;align-items:center;gap:.55rem;min-width:0}.app-topbar-chip{display:inline-flex;align-items:center;gap:.35rem;border:1px solid rgba(255,255,255,.16);background:#ffffff1a;color:#ffffffdb;border-radius:999px;padding:.25rem .65rem;font-size:.78rem;font-weight:600;white-space:nowrap}.app-topbar-chip.role{background:var(--saffron);color:var(--teal-900);border-color:var(--saffron)}button.app-topbar-chip.role{cursor:pointer;font:inherit;font-size:.78rem;font-weight:600}.account-menu{position:relative}.account-menu-panel{position:absolute;top:calc(100% + .45rem);right:0;min-width:10.5rem;background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:10px;box-shadow:0 8px 24px #0f172a29;padding:.3rem;z-index:30}.account-menu-item{display:block;width:100%;text-align:left;background:transparent;border:none;border-radius:8px;padding:.5rem .7rem;font:inherit;font-size:.85rem;font-weight:600;color:var(--ink);cursor:pointer}.account-menu-item:hover{background:var(--ice)}.app-topbar .btn.ghost{color:#fff;border-color:#ffffff38}.app-topbar .btn.ghost:hover{background:#ffffff1a;color:#fff}.shell.nav-collapsed{grid-template-columns:3rem 1fr}.nav-collapse{display:flex;align-items:center;gap:.4rem;margin:.7rem .75rem .15rem;padding:.4rem .55rem;border:1px solid var(--line);border-radius:8px;background:transparent;color:var(--muted);font:inherit;font-size:.78rem;font-weight:600;cursor:pointer}.shell.nav-collapsed .nav-section-label,.shell.nav-collapsed .nav-links,.shell.nav-collapsed .nav-collapse span{display:none}.shell.nav-collapsed .nav-collapse{margin:.7rem auto 0;padding:.4rem}.nav{grid-column:1;grid-row:2;background:var(--paper);border-right:1px solid var(--line);display:flex;flex-direction:column;overflow-y:auto;gap:0}.nav-brand{padding:1.25rem 1rem 1rem;display:flex;align-items:baseline;gap:.5rem}.nav-brand h1{margin:0;font-size:1.1rem;font-weight:700;letter-spacing:-.01em;color:var(--navy)}.nav-brand .tagline{font-size:.72rem;color:var(--muted);letter-spacing:.02em}.nav-divider{margin:.25rem 0;border:none;border-top:1px solid var(--line)}.nav-section-label{padding:1rem 1rem .25rem;font-size:.68rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--subtle)}.nav-links{display:flex;flex-direction:column;padding:0 .5rem;gap:1px}.nav a{display:flex;align-items:center;gap:.4rem;padding:.5rem .75rem;border-radius:6px;text-decoration:none;font-size:.875rem;font-weight:450;color:var(--muted);line-height:1.3;transition:background .1s,color .1s}.nav a .icon-label{flex:1 1 auto}.nav-footer{margin-top:auto;padding:.85rem 1rem 1rem;font-size:.72rem;color:var(--muted);border-top:1px solid var(--line);line-height:1.4}.main{grid-column:2;grid-row:2;overflow-y:auto;padding:2rem 2.5rem 3rem;background:var(--slate-50, var(--surface2))}.main--full{padding:0;overflow:hidden;display:flex;flex-direction:column}.knowledge-result-list{display:grid;gap:.75rem}.knowledge-result{padding:1rem 1.1rem}.knowledge-result-meta{display:flex;align-items:center;gap:.55rem}.knowledge-rank{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--navy);color:#fff;font-size:.75rem;font-weight:700}.knowledge-score{margin-left:auto;color:var(--ok);font-size:.78rem;font-weight:600}.knowledge-result p{white-space:pre-line;margin:.8rem 0}.knowledge-result footer{display:flex;gap:.5rem;padding-top:.65rem;border-top:1px solid var(--line);color:var(--muted);font-size:.8rem}.curriculum-selectors{display:grid;grid-template-columns:repeat(3,minmax(9rem,1fr));gap:.75rem}.curriculum-selectors>div,.explore-controls>div{min-width:0}.curriculum-selectors select,.explore-controls select{width:100%}.explore-controls{display:grid;grid-template-columns:minmax(0,3fr) minmax(12rem,1fr);gap:.75rem;align-items:end}.chapter-intake-cta{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:0 0 1.25rem;padding:.8rem .95rem;border:1px solid var(--ice-border);border-radius:10px;background:var(--ice)}.chapter-intake-cta>div{display:grid;gap:.15rem}.chapter-intake-cta span{color:var(--muted);font-size:.82rem}.knowledge-result-list.compact{margin-top:.75rem}.knowledge-result-list.compact .knowledge-result{padding:.75rem .85rem}@media(max-width:760px){.curriculum-selectors,.explore-controls{grid-template-columns:1fr}.chapter-intake-cta{align-items:stretch;flex-direction:column}}h2{font-size:1.4rem;font-weight:600;margin:0 0 .35rem;color:var(--navy);text-wrap:balance}h3{font-size:1rem;font-weight:600;margin:0 0 .25rem;color:var(--ink)}p.lead{color:var(--muted);margin:0 0 1.5rem;font-size:.9rem}.page-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.75rem;margin-bottom:.6rem}.page-section-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.65rem;margin:1.25rem 0 .75rem}.card{background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:1rem 1.25rem}.card+.card{margin-top:0}.home-hero{background:linear-gradient(180deg,var(--ice) 0%,var(--paper) 70%);border-color:var(--ice-border);margin-bottom:1.1rem}.home-hero-top{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.75rem}.grid{display:grid;gap:.75rem}.stepper{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:.6rem 1rem;align-items:center}.stepper-step{display:inline-flex;align-items:center;gap:.45rem;color:var(--muted);font-size:.82rem}.stepper-dot{width:10px;height:10px;border-radius:999px;border:2px solid var(--line-dark);background:var(--paper);flex:0 0 auto}.stepper-step.active{color:var(--ink);font-weight:600}.stepper-step.active .stepper-dot{border-color:var(--cobalt);box-shadow:0 0 0 3px #1a56db29}.stepper-step.done{color:var(--ink)}.stepper-step.done .stepper-dot{border-color:var(--cobalt);background:var(--cobalt)}.row{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.btn{display:inline-flex;align-items:center;gap:.35rem;background:var(--cobalt);color:#fff;border:none;border-radius:6px;padding:.45rem 1rem;font-size:.875rem;font-weight:500;cursor:pointer;text-decoration:none;transition:background .12s;white-space:nowrap}.btn:hover{background:var(--cobalt-hover);color:#fff}.btn:focus-visible{outline:2px solid var(--cobalt);outline-offset:2px}.btn.secondary{background:transparent;color:var(--cobalt);border:1.5px solid var(--cobalt)}.btn.secondary:hover{background:var(--ice)}.btn.ghost{background:transparent;color:var(--muted);border:1px solid var(--line)}.btn:disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.icon-label{display:inline-flex;align-items:center;gap:.4rem;min-width:0}.app-icon{width:1rem;height:1rem;flex:0 0 auto;stroke-width:2}.nav .app-icon{width:.95rem;height:.95rem;opacity:.9}.btn .app-icon{width:.95rem;height:.95rem}label{display:block;font-size:.8rem;font-weight:500;color:var(--muted);margin-bottom:.3rem;letter-spacing:.01em}input,select,textarea{width:100%;background:var(--paper);border:1.5px solid var(--line-dark);border-radius:6px;padding:.5rem .65rem;font-size:.9rem;transition:border-color .12s}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--cobalt)}textarea{min-height:6rem;resize:vertical}.chip{display:inline-flex;align-items:center;gap:.25rem;border-radius:999px;padding:.2rem .65rem;font-size:.75rem;font-weight:500;border:1px solid var(--line);background:var(--surface2);color:var(--muted);white-space:nowrap}.chip.primary{background:var(--cobalt);color:#fff;border-color:var(--cobalt)}.chip.ice{background:var(--ice);color:var(--cobalt);border-color:var(--ice-border)}.chip.ok{background:var(--ok-bg);color:var(--ok);border-color:#86efac}.chip.warn{background:var(--warn-bg);color:var(--warn);border-color:#fecaca}.chip.note{background:var(--note-bg);color:var(--note);border-color:#fde68a}.pill{display:inline-flex;align-items:center;gap:.25rem;border-radius:999px;padding:.2rem .65rem;font-size:.75rem;font-weight:500;border:1px solid var(--line);background:var(--surface2);color:var(--muted);white-space:nowrap}.banner{border:1px solid var(--line);background:var(--surface2);padding:.8rem 1rem;border-radius:8px;font-size:.875rem;margin-bottom:1rem}.banner p.lead{margin:.25rem 0 0;font-size:.85rem}.banner.ok{background:var(--ok-bg);border-color:#86efac;color:var(--ok)}.banner.warn{background:var(--warn-bg);border-color:#fecaca;color:var(--warn)}.banner.note{background:var(--note-bg);border-color:#fde68a;color:var(--note)}.banner.info{background:var(--ice);border-color:var(--ice-border);color:var(--navy)}.table{width:100%;border-collapse:collapse;font-size:.9rem;font-variant-numeric:tabular-nums}.table th{text-align:left;padding:.5rem .75rem;font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);border-bottom:1.5px solid var(--line-dark)}.table td{padding:.6rem .75rem;border-bottom:1px solid var(--line);vertical-align:middle}.table tbody tr:hover{background:var(--surface2)}.error{color:var(--warn);font-size:.875rem}.level-options{display:grid;grid-template-columns:repeat(auto-fill,minmax(9rem,1fr));gap:.5rem}.level-option{cursor:pointer;border:1.5px solid var(--line-dark);border-radius:8px;padding:.65rem .85rem;background:var(--paper);transition:border-color .12s,background .12s;text-align:left}.level-option:hover,.level-option.selected{border-color:var(--cobalt);background:var(--ice)}.level-option .level-name{font-size:.85rem;font-weight:600;color:var(--ink);display:block;margin-bottom:.15rem}.level-option.selected .level-name{color:var(--cobalt)}.level-option .level-desc{font-size:.72rem;color:var(--muted);display:block;line-height:1.3}.main:has(.tutor-session){display:flex;flex-direction:column;overflow:hidden;padding:0}.tutor-session{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;height:100%}.tutor-session .curriculum-bar{position:static;top:auto;margin:0;flex:none}.chat-layout{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;height:100%}.chat-header{padding:1rem 1.5rem;background:var(--paper);border-bottom:1px solid var(--line);flex-shrink:0}.chat-header h2{margin-bottom:.5rem}.chat-header-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem}.mode-toggle{display:inline-flex;flex-wrap:wrap;gap:.35rem;margin-top:.65rem}.mode-toggle-btn{min-height:2rem;border:1px solid var(--line-dark);border-radius:7px;background:var(--paper);color:var(--muted);padding:.35rem .65rem;font-size:.78rem;font-weight:600;cursor:pointer}.mode-toggle-btn:hover,.mode-toggle-btn.active{border-color:var(--cobalt);background:var(--ice);color:var(--cobalt)}.mode-toggle-btn:disabled{opacity:.6;cursor:not-allowed}.chat-body{flex:1;overflow-y:auto;padding:1.25rem 1.5rem;display:flex;flex-direction:column;gap:1.1rem;scroll-behavior:smooth}.chat-scaffold{background:linear-gradient(180deg,var(--ice) 0%,var(--paper) 62%);border-color:var(--ice-border);max-width:56rem}.chat-scaffold-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.5rem}.chat-scaffold-list{margin:.3rem 0 .65rem 1.1rem;padding:0;color:var(--muted);font-size:.9rem;line-height:1.5}.chat-coaching{flex-shrink:0;padding:0 1.5rem}.chat-footer{flex-shrink:0;border-top:1px solid var(--line);padding:.875rem 1.5rem;background:var(--paper)}.chat-footer form{display:flex;flex-direction:column;gap:.5rem}.chat-footer .row{margin-top:0}.turn{display:flex;flex-direction:column;max-width:82%;min-width:0}.turn.tutor{align-self:flex-start;align-items:flex-start}.turn.student{align-self:flex-end;align-items:flex-end}.turn .who{font-size:.68rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;margin-bottom:.25rem;color:var(--muted)}.turn.tutor .who{color:var(--cobalt)}.turn .bubble{padding:.65rem .9rem;line-height:1.55;font-size:.9rem;word-break:break-word;overflow-wrap:break-word}.turn.tutor .bubble{background:var(--ice);border:1px solid var(--ice-border);border-radius:2px 10px 10px}.turn.student .bubble{background:var(--paper);border:1px solid var(--line-dark);border-radius:10px 2px 10px 10px}.turn.sahitya-turn{width:min(100%,64rem);max-width:100%}.turn.tutor .sahitya-response-bubble{width:100%;padding:0;background:transparent;border:0}.sahitya-response{width:100%}.sahitya-response-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.sahitya-section-card,.sahitya-redirect-card{min-width:0;padding:.8rem .9rem;background:var(--paper);border:1px solid var(--ice-border);border-left:3px solid var(--cobalt);border-radius:8px;color:var(--ink)}.sahitya-section-card h3,.sahitya-redirect-card h3{margin:0 0 .45rem;color:var(--cobalt);font-size:.9rem}.sahitya-fallback-card{width:100%;white-space:pre-wrap}.sahitya-english{margin-top:.65rem;padding-top:.45rem;border-top:1px solid var(--line)}.sahitya-english summary{width:fit-content;color:var(--cobalt);cursor:pointer;font-size:.78rem;font-weight:700}.sahitya-english[open] summary{margin-bottom:.4rem}.sahitya-redirect-card{border-left-color:var(--note);background:var(--note-bg)}.sahitya-redirect-card p{margin:.6rem 0;color:var(--muted)}.sahitya-response>.turn-citations{padding:.6rem .1rem 0}.turn.tutor.reveal .bubble{border-color:var(--cobalt);border-left-width:3px}.typing-indicator{display:flex;align-items:center;gap:4px;padding:.5rem .75rem;background:var(--ice);border:1px solid var(--ice-border);border-radius:2px 10px 10px;width:fit-content}.typing-indicator span{display:block;width:6px;height:6px;border-radius:50%;background:var(--cobalt);opacity:.4;animation:typing-pulse 1.2s infinite ease-in-out}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typing-pulse{0%,80%,to{opacity:.4;transform:scale(1)}40%{opacity:1;transform:scale(1.25)}}.turn-group{display:flex;flex-direction:column;gap:.5rem}.concept-note{max-width:80%;align-self:flex-start;background:var(--surface2);border-left:3px solid var(--cobalt);border-radius:0 8px 8px;padding:.6rem .9rem .65rem;font-size:.85rem;line-height:1.6;color:var(--ink);margin-left:0}.concept-note-label{display:block;font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--cobalt);margin-bottom:.3rem}.route-note{border-left-color:var(--ok)}.route-note-meta{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.45rem}.route-note-meta span{border:1px solid var(--ice-border);border-radius:999px;color:var(--muted);font-size:.72rem;line-height:1;padding:.25rem .45rem;text-transform:capitalize}.turn.tutor.human-turn{max-width:min(100%,40rem)}.human-tutor-panel{max-width:100%;align-self:flex-start;display:grid;gap:.65rem;background:var(--paper);border:1px solid var(--line);border-left:3px solid var(--note);border-radius:0 8px 8px;padding:.75rem .9rem;font-size:.85rem;line-height:1.55}.human-tutor-panel p{margin:.25rem 0 0}.human-panel-label{display:block;font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--note);margin-bottom:.25rem}.board-steps{margin:.35rem 0 0;padding-left:1.2rem}.board-steps li{margin-bottom:.55rem}.board-steps code{display:inline-block;max-width:100%;margin-top:.2rem;padding:.16rem .35rem;border-radius:4px;background:var(--surface2);white-space:normal;overflow-wrap:anywhere}.diagram-hint{max-width:100%;overflow-x:auto;margin:.3rem 0 0;padding:.55rem;border-radius:6px;background:var(--surface2);font-size:.78rem;line-height:1.35}.diagram-caption{color:var(--muted);font-size:.78rem}.diagram-panel{max-width:min(80%,44rem);align-self:flex-start;background:var(--paper);border:1px solid var(--ice-border);border-left:3px solid var(--cobalt);border-radius:0 8px 8px;padding:.7rem .85rem;overflow:hidden}.diagram-panel-label{display:inline-flex;align-items:center;gap:.3rem;color:var(--cobalt);font-size:.65rem;font-weight:600;letter-spacing:.04em;margin-bottom:.5rem;text-transform:uppercase;background:color-mix(in srgb,var(--cobalt) 10%,transparent);border:1px solid color-mix(in srgb,var(--cobalt) 25%,transparent);border-radius:4px;padding:.15rem .45rem}.diagram-panel-svg,.diagram-panel-mermaid{width:100%;overflow:auto}.diagram-panel-svg svg,.diagram-panel-mermaid svg{display:block;max-width:100%;height:auto}.diagram-panel-ascii{max-width:100%;overflow-x:auto;margin:0;padding:.75rem .9rem;border:1px solid var(--line);border-radius:8px;background:color-mix(in srgb,var(--cobalt) 5%,var(--paper));color:var(--ink);font-family:SF Mono,Fira Mono,Cascadia Code,ui-monospace,monospace;font-size:.82rem;line-height:1.6;white-space:pre;font-variant-ligatures:none;tab-size:4}.diagram-panel-blocked{border:1px solid #FECACA;border-radius:6px;background:var(--warn-bg);color:var(--warn);padding:.65rem;font-size:.82rem}.diagram-panel-blocked .diagram-panel-ascii{margin-top:.45rem;background:var(--paper);color:var(--ink)}.diagram-panel-caption{color:var(--muted);font-size:.78rem;line-height:1.45;margin:.45rem 0 0}.card .diagram-panel{margin-top:.75rem;max-width:100%}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1.5rem;background:var(--bg)}.login-presets button:disabled{opacity:.45;cursor:not-allowed}.login-card{width:100%;max-width:32rem;padding:1.5rem}.login-presets{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.25rem}.login-custom{display:flex;flex-direction:column;gap:.35rem;padding-top:1rem;border-top:1px solid var(--line)}.nav-user{background:var(--surface2);border-color:var(--line);box-shadow:none}.student-turn-callout{padding:.55rem .65rem;border-radius:6px;background:var(--note-bg);border:1px solid #FDE68A}.tutor-reply-buckets{display:flex;flex-direction:column;gap:.65rem;width:min(100%,36rem)}.tutor-bucket{min-width:0;padding:.8rem .9rem;background:var(--paper);border:1px solid var(--ice-border);border-left:3px solid var(--cobalt);border-radius:8px;color:var(--ink)}.tutor-bucket h3{margin:0 0 .45rem;color:var(--cobalt);font-size:.85rem;font-weight:600;letter-spacing:.02em}.tutor-bucket p{margin:0;white-space:pre-wrap;line-height:1.55;font-size:.9rem}.tutor-bucket-empty{margin:0;color:var(--muted);font-size:.85rem}.tutor-bucket-source.knowledge-sources{width:100%;margin:0}.tutor-bucket-source .turn-citations{margin-top:.45rem;padding-top:0;border-top:0}.tutor-bucket-source .tutor-bucket-empty{margin-top:.45rem}.turn.tutor.tutor-buckets{max-width:min(100%,40rem)}.turn-citations{margin-top:.6rem;padding-top:.5rem;border-top:1px solid var(--ice-border);display:flex;flex-direction:column;gap:.35rem}.citation-reveal{display:flex;flex-direction:column;gap:.15rem}.citation-chunks{display:flex;align-items:baseline;flex-wrap:wrap;gap:.3rem}.citation-label{font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--cobalt);flex-shrink:0}.citation-text{font-size:.82rem;color:var(--ink);line-height:1.45}.citation-list{display:flex;flex-wrap:wrap;gap:.25rem}.citation-chunk{display:inline-block;background:var(--paper);border:1px solid var(--ice-border);border-radius:4px;padding:.1rem .4rem;font-size:.72rem;font-weight:500;color:var(--cobalt);cursor:default;font-variant-numeric:tabular-nums}.citation-pre-engage{margin:.5rem 0 0;font-size:.75rem;color:var(--subtle);font-style:italic}.sources-detail{margin-top:1rem;border:1px solid var(--line);border-radius:8px;overflow:hidden;font-size:.85rem}.sources-detail summary{padding:.6rem .9rem;cursor:pointer;font-weight:500;color:var(--muted);background:var(--surface2);-webkit-user-select:none;user-select:none}.sources-detail summary:hover{color:var(--ink)}.sources-detail-body{padding:.75rem .9rem;border-top:1px solid var(--line)}.sources-detail-body p{margin:0 0 .4rem}.sources-detail-body p:last-child{margin-bottom:0}.chapter-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(20rem,1fr));gap:.75rem}.chapter-card{background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:1rem 1.25rem;display:flex;flex-direction:column;gap:.5rem}.chapter-card:hover{border-color:var(--line-dark);box-shadow:0 1px 4px #0f172a0f}.chapter-card-title{font-size:.95rem;font-weight:600;color:var(--ink)}.chapter-card-meta{font-size:.8rem;color:var(--muted);display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.chapter-card-actions{margin-top:.25rem;display:flex;gap:.4rem}.sh-hero{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;margin-bottom:1.5rem;flex-wrap:wrap;padding:.35rem 0 .2rem}.sh-hero-text{flex:1;min-width:0}.sh-hero-text h2{margin:0 0 .35rem;font-size:clamp(1.75rem,2vw,2.35rem);line-height:1.1;letter-spacing:-.04em}.sh-hero .lead{margin:0;font-size:.98rem;line-height:1.6;max-width:44rem}.sh-stats-card{flex-shrink:0;background:linear-gradient(180deg,#fffffffa,#f8fafcf5);border:1px solid var(--line);border-radius:12px;padding:.8rem 1rem .7rem;min-width:17.5rem;display:flex;flex-direction:column;gap:.7rem;box-shadow:0 8px 22px #0f172a0a}.sh-stats-row{display:flex;align-items:center;justify-content:space-between;gap:.8rem}.sh-stat{display:flex;flex:1;flex-direction:column;align-items:center;gap:.08rem;min-width:0}.sh-stat-value{font-size:1.5rem;font-weight:800;font-variant-numeric:tabular-nums;color:var(--navy);line-height:1}.sh-stat-label{font-size:.7rem;color:var(--muted);font-weight:600;white-space:nowrap}.sh-stat-divider{width:1px;height:2.25rem;background:var(--line);flex-shrink:0}.sh-progress-track{height:6px;background:#94a3b833;border-radius:999px;overflow:hidden}.sh-progress-fill{height:100%;background:linear-gradient(90deg,var(--cobalt),#4f8af7);border-radius:999px;transition:width .5s ease;min-width:2px}.sh-capability-section{margin:0 0 1.6rem}.sh-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:.85rem;flex-wrap:wrap}.sh-section-heading h3{margin:.18rem 0 0;font-size:1.05rem;line-height:1.3;letter-spacing:0}.sh-section-heading-line{display:flex;align-items:baseline;flex-wrap:wrap;gap:.4rem;margin:0}.sh-section-kicker{color:var(--muted);font-weight:500}.sh-section-heading-picker{flex-shrink:0;align-self:center}.curriculum-bar{position:sticky;top:-2rem;z-index:5;margin:-2rem -2.5rem 1.25rem;padding:.9rem 2.5rem 1rem;background:var(--paper);border-bottom:1px solid var(--line);box-shadow:0 1px #0f172a0a}.curriculum-bar.is-collapsed .curriculum-bar-copy{margin-bottom:.35rem}.curriculum-bar-copy{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.35rem}.curriculum-bar-copy h2{margin:0;font-size:1rem;flex:0 0 auto}.curriculum-bar-toggle{display:inline-flex;align-items:center;gap:.3rem;font-size:.78rem;padding:.28rem .65rem}.curriculum-bar-active{margin:0 0 .75rem;color:var(--muted);font-size:.82rem;line-height:1.45}.curriculum-bar.is-collapsed .curriculum-bar-active{margin-bottom:0}.curriculum-bar-form{display:flex;flex-wrap:wrap;align-items:end;gap:.65rem .75rem}.curriculum-bar-form label{display:flex;flex-direction:column;gap:.25rem;min-width:9rem;flex:1 1 9rem;margin-bottom:0;font-size:.75rem;color:var(--muted)}.curriculum-bar-form .btn{flex:0 0 auto;align-self:end;box-sizing:border-box;height:2.4rem;padding:0 1rem;line-height:1}.curriculum-bar-form select{box-sizing:border-box;height:2.4rem}.sh-capability-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(17rem,1fr));gap:.75rem;align-items:start}.sh-capability-card{min-height:13.25rem;background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:1rem;display:flex;flex-direction:column;gap:.7rem}.sh-capability-card:hover{border-color:var(--line-dark);box-shadow:0 1px 4px #0f172a0f}.sh-capability-card--start{background:linear-gradient(180deg,rgba(239,246,255,.85),var(--paper) 68%);border-color:#60a5fa73}.sh-capability-icon{width:2.15rem;height:2.15rem;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;background:var(--ice);color:var(--cobalt);flex-shrink:0}.sh-capability-body{display:flex;flex-direction:column;gap:.45rem;flex:1;min-width:0}.sh-capability-body h4{margin:0;font-size:.98rem;line-height:1.25;letter-spacing:0}.sh-capability-body p{margin:0;color:var(--muted);font-size:.86rem;line-height:1.5}.sh-capability-how{margin-top:.1rem;padding-top:.55rem;border-top:1px solid var(--line);color:var(--ink);font-size:.8rem;line-height:1.45}.sh-capability-picker{margin-top:.2rem}.sh-capability-actions{display:flex;align-items:center;justify-content:space-between;gap:.55rem;flex-wrap:wrap;margin-top:auto}.sh-capability-actions .btn{font-size:.82rem;padding:.4rem .75rem}.plan-level{display:inline-flex;align-items:center;border-radius:999px;padding:.1rem .5rem;font-size:.7rem;font-weight:600;border:1px solid transparent;cursor:default;text-transform:capitalize}.plan-level.lig-level-beginner{background:var(--ok-bg);color:var(--ok);border-color:#86efac}.plan-level.lig-level-intermediate{background:var(--saffron-light);color:var(--saffron-dark);border-color:#fcd34d}.plan-level.lig-level-advanced{background:var(--teal-100);color:var(--teal-900);border-color:var(--ice-border)}.plan-level.lig-level-expert{background:var(--ice);color:var(--cobalt);border-color:var(--ice-border)}@media(max-width:520px){.plan-grid{grid-template-columns:1fr}}.sh-continue{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem 1rem;background:linear-gradient(180deg,#eff6fff2,#e0efffe6);border:1px solid rgba(96,165,250,.45);border-radius:12px;margin-bottom:1.1rem;flex-wrap:wrap}.sh-continue-label{font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--cobalt);margin-bottom:.25rem}.sh-continue-chapter{font-size:.93rem;font-weight:700;color:var(--navy)}.sh-filter-bar{display:flex;gap:.75rem;align-items:center;margin:0 0 1.35rem;flex-wrap:wrap}.sh-search{width:auto;flex:1;min-width:12rem;max-width:21rem;height:2.55rem;background:var(--paper);border:1px solid var(--line-dark);border-radius:9px;padding:.55rem .75rem;font-size:.9rem;box-shadow:inset 0 1px 2px #0f172a05}.sh-search:focus{outline:none;border-color:var(--cobalt);box-shadow:0 0 0 3px #1a56db1f}.sh-filter-pills{display:flex;gap:.4rem;flex-wrap:wrap}.sh-filter-pill{padding:.45rem .8rem;border:1px solid var(--line-dark);border-radius:8px;background:#ffffffe6;font-size:.8rem;font-weight:600;color:var(--muted);cursor:pointer;transition:border-color .12s,color .12s,background .12s,transform .12s;white-space:nowrap}.sh-filter-pill:hover{color:var(--ink);border-color:var(--cobalt);transform:translateY(-1px)}.sh-filter-pill.active{background:var(--ice);color:var(--cobalt);border-color:#1a56dbb3}.sh-unit-group{margin-bottom:1.8rem}.sh-unit-label{font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:.7rem;display:flex;align-items:center;gap:.7rem}.sh-unit-label:after{content:"";flex:1;height:1px;background:linear-gradient(90deg,rgba(148,163,184,.45),transparent)}.sh-level-dot{display:inline-block;width:8px;height:8px;border-radius:50%;flex-shrink:0}.sh-topic-chips{display:flex;flex-wrap:wrap;gap:.35rem;min-height:1.65rem}.sh-topic-chip{font-size:.68rem;color:var(--muted);background:#0f172a06;border:1px solid var(--line);border-radius:999px;padding:.18rem .5rem;white-space:nowrap}.sh-topic-chip--more{color:var(--subtle)}.sh-lig-row{display:flex;align-items:center;gap:.35rem;margin:.35rem 0 .15rem;font-size:.82rem}.sh-lig-link{color:var(--brand);font-weight:600;text-decoration:none}.sh-lig-link:hover{text-decoration:underline}.sh-weak-row{display:flex;flex-wrap:wrap;gap:.3rem;align-items:center}.sh-weak-label{font-size:.68rem;color:var(--muted);font-weight:700}.sh-empty{display:flex;flex-direction:column;align-items:center;text-align:center;padding:3rem 1rem;color:var(--muted);gap:.8rem;background:#ffffff80;border:1px dashed var(--line-dark);border-radius:12px}.sh-empty-icon{font-size:2rem;line-height:1}.sh-empty p{margin:0;font-size:.92rem}.sh-onboard{display:flex;align-items:flex-start;gap:.85rem;padding:1rem 1.2rem;background:linear-gradient(180deg,#fffbebf5,#fff7c5b8);border:1px solid rgba(250,204,21,.55);border-radius:12px;font-size:.92rem;color:var(--note);margin-top:.65rem;line-height:1.55}.sh-onboard-icon{font-size:1.35rem;flex-shrink:0;margin-top:.05rem}@media(max-width:768px){.sahitya-response-grid{grid-template-columns:1fr}.turn.sahitya-turn,.sahitya-section-card,.sahitya-redirect-card{width:100%}.sh-hero{flex-direction:column;align-items:stretch}.sh-stats-card{width:100%;min-width:0}.sh-capability-card{min-height:0}.sh-filter-bar{flex-direction:column;align-items:stretch}.sh-search{max-width:100%}.chapter-grid{grid-template-columns:1fr}}.header-pills{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.75rem}.max-prose{max-width:680px}.teacher-split{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:1.25rem;align-items:start}.teacher-sticky{position:sticky;top:1rem}.two-col-panels{display:grid;grid-template-columns:1fr;gap:.9rem}.dropzone{border:2px dashed var(--line-dark);border-radius:10px;padding:1rem;background:var(--surface2);transition:border-color .12s,background .12s}.dropzone.dragging{border-color:var(--cobalt);background:var(--ice)}.dropzone-top{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.75rem}.dropzone-hint{color:var(--muted);font-size:.85rem;margin:.25rem 0 0}.dropzone-file{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-top:.75rem}.dropzone-file code{background:var(--paper);border:1px solid var(--line);border-radius:8px;padding:.2rem .5rem;font-size:.82rem}@media(min-width:980px){.two-col-panels{grid-template-columns:1fr 1fr}}@media(max-width:768px){.lig-player-sticky{top:0;margin:-1.25rem -1rem .75rem;padding:0 1rem .65rem}.lig-player-sticky .curriculum-bar{margin:0 -1rem .65rem}.main--full{overflow:visible;height:auto}.chat-layout{height:auto;min-height:calc(100vh - 4rem)}.tutor-session .chat-layout{min-height:calc(100vh - 8rem)}.chat-body{max-height:60vh}.tutor-session .chat-body{max-height:none}.level-options{grid-template-columns:1fr 1fr}.chapter-grid,.teacher-split{grid-template-columns:1fr}.teacher-sticky{position:static;top:auto}}.follow-on-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.chip{background:#f0f4f8;border:1px solid #d0d7de;border-radius:1rem;padding:.35rem .85rem;font-size:.82rem;cursor:pointer;transition:background .15s,border-color .15s;text-align:left;line-height:1.3}.chip:hover:not(:disabled){background:#e2e8f0;border-color:#94a3b8}.chip:disabled{opacity:.5;cursor:not-allowed}.explore-topics{border:1px solid var(--line);border-radius:10px;padding:1rem 1.1rem;background:var(--paper)}.main:has(.explore-page){display:flex;flex-direction:column;overflow:hidden}.explore-page{display:flex;flex-direction:column;flex:1 1 auto;min-height:0}.explore-head{flex:none}.explore-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:1.5rem;margin-bottom:.85rem}.explore-title-copy{min-width:0;flex:1 1 auto}.explore-title-copy h2,.explore-title-copy .lead{margin-bottom:.15rem}.explore-title-copy .lead{margin-bottom:0}.explore-mode-side{flex:0 1 20rem;width:min(20rem,42%)}.explore-mode-side label{margin-bottom:.2rem}.explore-mode-line{margin:.35rem 0 0;font-size:.78rem;line-height:1.35;color:var(--muted)}.explore-more{margin-top:.65rem}.explore-more summary{cursor:pointer;color:var(--cobalt);font-size:.82rem;font-weight:600}.explore-page .history{flex:1 1 auto;min-height:0;overflow-y:auto;padding-right:.35rem}.explore-page .history>*{flex:none}.explore-error{flex:none;margin:.75rem 0 0}.explore-composer{flex:none;margin-top:.75rem}.explore-note-action{margin-top:.55rem}.explore-note-action .btn{font-size:.75rem;padding:.2rem .6rem}@media(max-width:768px){.main:has(.explore-page){display:block;overflow:visible}.explore-page,.explore-page .history{display:block;overflow:visible;min-height:0}.explore-head{position:sticky;top:0;z-index:4;background:var(--slate-50, var(--surface2))}.explore-title-row{flex-direction:column;gap:.75rem}.explore-mode-side{width:100%}}.history{display:flex;flex-direction:column;gap:1rem}.explore-bubble{width:100%;box-shadow:0 1px 2px #0f172a0a}.explore-flag{margin:.35rem 0 0;font-size:.82rem;font-weight:600}.explore-flag--beyond{color:var(--cobalt, #1d4e89)}.explore-flag--out{color:var(--warn, #9b2c2c)}.rich-text{display:flex;flex-direction:column;gap:.75rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Apple Symbols,STIX Two Text,"Cambria Math",Segoe UI Symbol,sans-serif}.math-inline{display:inline}.math-display{display:block;margin:.75rem 0;overflow-x:auto}.math-display .katex-display{margin:0}.diagram-panel-latex{padding:.75rem 0}.rich-paragraph{margin:0;color:var(--ink);line-height:1.7}.rich-heading{margin:0;font-size:.98rem;line-height:1.35;color:var(--navy)}.rich-list{margin:0;padding-left:1.1rem;color:var(--ink)}.rich-list--ordered{padding-left:1.25rem}.rich-list li+li{margin-top:.35rem}.rich-inline-code{background:var(--surface2);border:1px solid var(--line);border-radius:4px;padding:.05rem .3rem;font-size:.82em}.rich-quote{margin:0;padding-left:.85rem;border-left:3px solid var(--ice-border);color:var(--muted)}.rich-strong{color:var(--navy)}.rich-code,.mermaid-fallback{margin:0;background:var(--surface2);border:1px solid var(--line);border-radius:8px;padding:.85rem 1rem;overflow:auto;font-size:.82rem;line-height:1.55}.mermaid-card{width:100%;margin-top:.75rem;background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:.25rem .75rem}.explore-topics-label{font-size:.72rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);margin:0 0 .6rem}.explore-topic-bubbles{display:flex;flex-wrap:wrap;gap:.4rem}.explore-topic-bubble{padding:.4rem .9rem;border-radius:999px;border:1.5px solid var(--line-dark);background:var(--surface2);font-size:.82rem;font-weight:500;color:var(--ink);cursor:pointer;transition:border-color .12s,background .12s,color .12s;white-space:nowrap}.explore-topic-bubble:hover{border-color:var(--cobalt);background:var(--ice);color:var(--cobalt)}.explore-topic-bubble.active{border-color:var(--cobalt);background:var(--cobalt);color:#fff}.explore-prompts{margin-top:.85rem;padding-top:.85rem;border-top:1px solid var(--line)}.explore-prompts-label{font-size:.78rem;color:var(--muted);margin:0 0 .5rem}.explore-prompt-chips{display:flex;flex-direction:column;gap:.35rem}.explore-prompt-chip{text-align:left;padding:.55rem .9rem;border-radius:8px;border:1.5px solid var(--line);background:var(--bg);font-size:.875rem;color:var(--ink);cursor:pointer;line-height:1.4;transition:border-color .12s,background .12s}.explore-prompt-chip:hover:not(:disabled){border-color:var(--cobalt);background:var(--ice)}.explore-prompt-chip:disabled{opacity:.5;cursor:not-allowed}.concept-panel{margin-top:.85rem;border:1px solid var(--ice-border);border-radius:8px;overflow:hidden;font-size:.875rem;width:100%;background:var(--paper)}.concept-panel--loading{display:flex;align-items:center;padding:.6rem .85rem;background:var(--surface2);border-color:var(--line)}.concept-panel-toggle{display:flex;align-items:center;gap:.4rem;width:100%;text-align:left;padding:.6rem .85rem;background:var(--ice);border:none;cursor:pointer;font-size:.8rem;font-weight:600;color:var(--cobalt);transition:background .1s}.concept-panel-toggle:hover{background:var(--ice-border)}.concept-panel-icon{font-size:.9rem}.concept-panel-chevron{margin-left:auto;font-size:.65rem;color:var(--subtle)}.concept-panel-body{padding:.85rem;background:var(--paper);display:flex;flex-direction:column;gap:.75rem;border-top:1px solid var(--ice-border)}.concept-insight p,.concept-level-text,.concept-misconception p{margin:.2rem 0 0;line-height:1.55;color:var(--ink);font-size:.875rem}.concept-label{display:inline-block;font-size:.65rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--cobalt)}.concept-label.warn{color:var(--warn)}.concept-levels{display:flex;flex-direction:column;gap:.6rem}.concept-level{display:flex;flex-direction:column;gap:.2rem}.concept-misconception{padding:.5rem .7rem;background:var(--warn-bg);border:1px solid #FECACA;border-radius:6px}.concept-misconception p{color:var(--warn);font-size:.84rem}.mermaid-diagram svg{max-width:100%;height:auto}.mermaid-diagram svg[aria-roledescription=error],.mermaid-diagram .error-icon,.mermaid-diagram g[id*=error]{display:none!important}.turn.student .explore-bubble{max-width:min(48rem,100%)}.turn.tutor .explore-bubble{max-width:min(56rem,100%)}.knowledge-sources{width:min(56rem,100%);margin-top:.85rem;font-size:.82rem;line-height:1.45;color:var(--ink)}.knowledge-sources summary{cursor:pointer;font-weight:600;color:var(--cobalt)}.knowledge-sources ul{margin:.55rem 0 0;padding-left:1.15rem}.knowledge-sources li+li{margin-top:.45rem}.ws-empty{display:flex;flex-direction:column;align-items:center;text-align:center;padding:3rem 1rem;color:var(--muted);gap:.75rem}.ws-empty-icon{font-size:2.5rem;line-height:1}.ws-empty p{margin:0;font-size:.9rem}.ws-note-date{font-size:.75rem;color:var(--subtle)}.ws-note-preview{font-size:.82rem;color:var(--muted);line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:42ch}.ws-tabs{display:flex;gap:.25rem;border-bottom:1.5px solid var(--line)}.ws-tab{padding:.5rem .85rem;border:none;background:transparent;border-bottom:2px solid transparent;font-size:.875rem;font-weight:500;color:var(--muted);cursor:pointer;display:flex;align-items:center;gap:.35rem;margin-bottom:-1.5px;transition:color .1s}.ws-tab:hover{color:var(--ink)}.ws-tab.active{color:var(--cobalt);border-bottom-color:var(--cobalt)}.ws-tab-count{background:var(--surface2);border-radius:999px;padding:.05rem .45rem;font-size:.72rem;font-weight:600;color:var(--muted)}.ws-filter-bar{display:flex;gap:.35rem}.ws-filter-btn{padding:.35rem .75rem;border:1.5px solid var(--line-dark);border-radius:6px;background:var(--paper);font-size:.8rem;font-weight:500;color:var(--muted);cursor:pointer;display:flex;align-items:center;gap:.3rem;transition:border-color .1s,color .1s}.ws-filter-btn:hover{color:var(--ink);border-color:var(--cobalt)}.ws-filter-btn.active{background:var(--ice);color:var(--cobalt);border-color:var(--cobalt)}.ws-project-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(18rem,1fr));gap:.75rem}.ws-project-card{display:flex;background:var(--paper);border:1px solid var(--line);border-radius:10px;overflow:hidden;text-decoration:none;color:inherit;transition:box-shadow .15s,border-color .15s}.ws-project-card:hover{border-color:var(--line-dark);box-shadow:0 2px 6px #0f172a12;color:inherit}.ws-project-swatch{width:6px;flex-shrink:0;background:var(--project-color, #6366f1)}.ws-project-body{flex:1;padding:.85rem 1rem;display:flex;flex-direction:column;gap:.35rem}.ws-project-name{font-size:.95rem;font-weight:600;color:var(--ink)}.ws-project-desc{font-size:.82rem;color:var(--muted);line-height:1.4}.ws-project-meta{display:flex;align-items:center;gap:.4rem;margin-top:.1rem}.ws-project-date{font-size:.72rem;color:var(--subtle)}.ws-quick-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(9rem,1fr));gap:.5rem}.ws-quick-tile{display:flex;flex-direction:column;align-items:center;gap:.4rem;padding:1rem .5rem;background:var(--paper);border:1px solid var(--line);border-radius:10px;text-decoration:none;color:var(--ink);font-size:.875rem;font-weight:500;transition:border-color .12s,box-shadow .12s}.ws-quick-tile:hover{border-color:var(--cobalt);box-shadow:0 1px 4px #1a56db1a;color:var(--cobalt)}.ws-tile-icon{font-size:1.6rem;line-height:1}.ws-notes-layout{display:grid;grid-template-columns:16rem 1fr;height:calc(100vh - 4rem);margin:-2rem -2.5rem -3rem;overflow:hidden}.ws-notes-sidebar{border-right:1px solid var(--line);display:flex;flex-direction:column;overflow:hidden}.ws-notes-sidebar-head{display:flex;align-items:center;justify-content:space-between;padding:1rem 1rem .75rem;border-bottom:1px solid var(--line);flex-shrink:0}.ws-notes-list{overflow-y:auto;flex:1}.ws-note-list-item{display:block;width:100%;text-align:left;padding:.65rem 1rem;border:none;border-bottom:1px solid var(--line);background:transparent;cursor:pointer;transition:background .1s}.ws-note-list-item:hover{background:var(--surface2)}.ws-note-list-item.active{background:var(--ice)}.ws-note-list-title{font-size:.875rem;font-weight:500;color:var(--ink);margin-bottom:.15rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ws-note-list-meta{font-size:.72rem;color:var(--subtle)}.ws-notes-editor{display:flex;flex-direction:column;overflow:hidden;padding:1rem}.ws-notes-toolbar{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem;flex-shrink:0;flex-wrap:wrap}.ws-notes-title-input{flex:1;min-width:10rem;font-size:1rem;font-weight:600;border:none;border-bottom:1.5px solid var(--line-dark);border-radius:0;padding:.25rem 0;background:transparent}.ws-notes-title-input:focus{border-bottom-color:var(--cobalt);outline:none}.ws-notes-chapter-select{width:auto;min-width:7rem;font-size:.8rem;padding:.3rem .5rem}.ws-notes-textarea{flex:1;resize:none;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.875rem;line-height:1.65;min-height:0;border-color:var(--line)}.ws-notes-preview{flex:1;overflow-y:auto;padding:.75rem 1rem;background:var(--surface2);border:1.5px solid var(--line);border-radius:6px;min-height:0}.ws-cal-nav{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem;flex-wrap:wrap}.ws-cal-month-label{font-size:1rem;font-weight:600;color:var(--ink);min-width:12rem}.ws-cal-legend{display:flex;gap:.75rem;flex-wrap:wrap}.ws-cal-legend-item{display:flex;align-items:center;gap:.3rem;font-size:.75rem;color:var(--muted)}.ws-cal-dot{display:inline-block;width:8px;height:8px;border-radius:50%;flex-shrink:0}.ws-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:8px;overflow:hidden}.ws-cal-dow{background:var(--surface2);padding:.4rem .5rem;font-size:.7rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);text-align:center}.ws-cal-cell{background:var(--paper);min-height:6rem;padding:.4rem .5rem;cursor:pointer;display:flex;flex-direction:column;gap:.2rem;transition:background .1s}.ws-cal-cell:hover{background:var(--surface2)}.ws-cal-cell--empty{background:var(--bg);cursor:default}.ws-cal-cell--today .ws-cal-day-num{background:var(--cobalt);color:#fff;border-radius:50%;width:1.5rem;height:1.5rem;display:flex;align-items:center;justify-content:center;font-weight:700}.ws-cal-cell--selected{background:var(--ice)}.ws-cal-day-num{font-size:.78rem;font-weight:600;color:var(--ink);align-self:flex-start;line-height:1.5rem;width:1.5rem;text-align:center}.ws-cal-events{display:flex;flex-direction:column;gap:2px}.ws-cal-event-pill{font-size:.68rem;font-weight:500;padding:.1rem .35rem;border-radius:3px;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ws-cal-event-more{font-size:.65rem;color:var(--subtle);padding:0 .2rem}.ws-modal-backdrop{position:fixed;inset:0;background:#0f172a59;display:flex;align-items:center;justify-content:center;z-index:100}.ws-modal{background:var(--paper);border-radius:12px;padding:1.5rem;width:min(90vw,26rem);box-shadow:0 8px 32px #0f172a2e}.ws-todo-row{padding:.65rem 1rem}.ws-todo-done .ws-todo-title{text-decoration:line-through;opacity:.5}.ws-todo-title{font-size:.9rem;font-weight:500}.ws-dropzone{border:2px dashed var(--line-dark);border-radius:10px;padding:2.5rem 1.5rem;text-align:center;cursor:pointer;transition:border-color .15s,background .15s;margin-bottom:.5rem;display:flex;flex-direction:column;align-items:center;gap:.5rem;color:var(--muted);-webkit-user-select:none;user-select:none}.ws-dropzone:hover,.ws-dropzone--over{border-color:var(--cobalt);background:var(--ice)}.ws-dropzone--busy{border-color:var(--cobalt);background:var(--ice);cursor:default;pointer-events:none}.ws-dropzone p{margin:0;font-size:.9rem}.ws-dropzone-icon{font-size:2rem;line-height:1}.ws-dropzone-hint{font-size:.78rem;color:var(--subtle)}.ws-spinner{display:inline-block;width:12px;height:12px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:spin .7s linear infinite;vertical-align:middle}.ws-spinner--large{width:28px;height:28px;border-width:3px}.ws-uploading{display:inline-flex;align-items:center;gap:.35rem}.ws-stat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(10rem,1fr));gap:.75rem}.ws-stat-card{text-align:center;padding:1.25rem 1rem}.ws-stat-value{font-size:2rem;font-weight:700;color:var(--cobalt);font-variant-numeric:tabular-nums;line-height:1;margin-bottom:.3rem}.ws-stat-label{font-size:.78rem;color:var(--muted);font-weight:500}@media(max-width:768px){.ws-notes-layout{grid-template-columns:1fr;height:auto;margin:-1.25rem -1rem -2rem}.ws-notes-sidebar{border-right:none;border-bottom:1px solid var(--line);max-height:12rem}.ws-notes-editor{min-height:60vh}.ws-cal-cell{min-height:3.5rem}.ws-cal-dow{font-size:.6rem;padding:.3rem .2rem}.ws-project-grid{grid-template-columns:1fr}.ws-quick-tiles{grid-template-columns:repeat(3,1fr)}}.nav-badge{margin-left:auto;min-width:1.15rem;height:1.15rem;padding:0 .3rem;border-radius:999px;background:var(--saffron);color:#1e293b;font-size:.68rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.asmt-backdrop{z-index:120}.asmt-modal{width:min(92vw,44rem);max-height:min(88vh,40rem);overflow:auto;display:flex;flex-direction:column;gap:.85rem}.asmt-modal-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.asmt-tabs{display:flex;gap:.25rem;border-bottom:1px solid var(--line)}.asmt-tab{background:none;border:none;padding:.45rem .75rem;font-size:.85rem;color:var(--muted);cursor:pointer;border-bottom:2px solid transparent}.asmt-tab--on{color:var(--ink);font-weight:600;border-bottom-color:var(--cobalt)}.asmt-body{min-height:10rem}.asmt-pills{display:flex;flex-wrap:wrap;gap:.4rem}.asmt-topic-list,.asmt-plan{display:flex;flex-direction:column;gap:.75rem;padding:0;margin:0;list-style:none}.asmt-plan{list-style:decimal;padding-left:1.25rem}.asmt-topic,.asmt-plan li{border:1px solid var(--line);border-radius:8px;padding:.75rem .9rem;background:var(--paper)}.asmt-topic header,.asmt-plan-head,.ins-latest,.ins-chapter-head,.ins-timeline-head,.ins-action-head{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.asmt-plan-done{opacity:.65}.asmt-check{display:inline-flex;align-items:center;gap:.3rem;font-size:.8rem;color:var(--muted)}.asmt-actions{display:flex;flex-direction:column;gap:.6rem}.asmt-ack{display:flex;flex-direction:column;gap:.5rem}.asmt-ack textarea,.asmt-ack label{width:100%}.asmt-toast{position:fixed;top:.85rem;right:.85rem;z-index:140;display:flex;gap:.5rem;align-items:center;background:var(--paper);border:1px solid var(--line-dark);border-radius:10px;padding:.55rem .7rem;box-shadow:0 8px 24px #0f172a29}.asmt-toast-body{background:none;border:none;cursor:pointer;font-size:.88rem;color:var(--ink);text-align:left}.asmt-teacher-layout{display:grid;grid-template-columns:minmax(14rem,18rem) 1fr;gap:1.25rem}.asmt-pending-list{list-style:none;padding:0;margin:.75rem 0 0;display:flex;flex-direction:column;gap:.4rem}.asmt-pending{width:100%;text-align:left;background:var(--paper);border:1px solid var(--line);border-radius:8px;padding:.65rem .75rem;display:flex;flex-direction:column;gap:.2rem;cursor:pointer}.asmt-pending--on{border-color:var(--cobalt)}.asmt-teacher-detail{display:flex;flex-direction:column;gap:.75rem}.ins-chapter-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.85rem}.ins-chapter-card{border:1px solid var(--line);border-radius:12px;padding:1rem 1.1rem;display:flex;flex-direction:column;gap:.55rem}.ins-chapter-num{font-size:.78rem;font-weight:600;color:var(--muted)}.ins-chapter-card h3{margin:0;font-size:1rem}.ins-card-actions{display:flex;flex-wrap:wrap;gap:.45rem}.ins-section{margin-top:1.75rem}.pyq-hub{max-width:1120px}.pyq-hero{margin-bottom:1.25rem;padding:1.35rem 1.4rem 1.25rem;border:1px solid var(--line);border-radius:16px;background:linear-gradient(135deg,rgba(14,104,120,.08),transparent 45%),linear-gradient(180deg,#fff 0%,var(--teal-50) 100%)}.pyq-hero h2{margin:.15rem 0 .45rem;font-size:clamp(1.55rem,2.4vw,2.1rem)}.pyq-disclaimer{margin:.75rem 0 0;color:var(--muted);font-size:.9rem;line-height:1.45}.pyq-meta{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:1rem}.pyq-meta span{padding:.4rem .65rem;border:1px solid var(--ice-border);border-radius:999px;background:#fffc;color:var(--teal-900);font-size:.78rem;font-weight:700}.pyq-stats{margin-bottom:1rem}.pyq-actions{margin-bottom:1.25rem}.pyq-insight-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:0;padding:0;list-style:none}.pyq-insight-grid li{padding:1rem 1.05rem;border:1px solid var(--line);border-radius:12px;background:var(--paper);font-size:.95rem;line-height:1.45}.pyq-route-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem}.pyq-route-card{padding:1.15rem 1.2rem;border:1px solid var(--line);border-top:5px solid var(--saffron);border-radius:12px;background:var(--paper)}.pyq-route-target{display:flex;align-items:baseline;gap:.45rem;margin:.35rem 0 .55rem}.pyq-route-target strong{font-size:2.2rem;font-weight:600;color:var(--teal-900);line-height:1}.pyq-route-target span{color:var(--muted);font-size:.85rem;font-weight:600}.pyq-route-types{margin:0 0 .65rem;color:var(--teal-700);font-weight:700;font-size:.88rem}.pyq-route-card ol{margin:0;padding-left:1.1rem;color:var(--muted);font-size:.9rem}.pyq-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:12px;background:var(--paper)}.pyq-heatmap th,.pyq-heatmap td{white-space:nowrap}.pyq-heat-cell{background:rgba(11,107,79,var(--heat, .08));font-weight:700;text-align:center}.pyq-heatmark{color:var(--teal-700);font-weight:700}.pyq-chapter-card{background:linear-gradient(180deg,var(--teal-50) 0%,var(--paper) 38%)}.pyq-score-panel{display:grid;grid-template-columns:minmax(180px,240px) 1fr;gap:1.25rem;margin:.85rem 0 1rem;padding:1.2rem 1.3rem;border:1px solid var(--line);border-top:6px solid var(--teal-700);border-radius:14px;background:var(--paper)}.pyq-score-value{margin:.2rem 0 0;color:var(--teal-700);font-size:clamp(2.2rem,4vw,3.2rem);font-weight:600;line-height:1}.pyq-score-value span{font-size:1rem;font-weight:700;color:var(--muted)}.pyq-score-band{margin:.55rem 0 0;font-weight:700;color:var(--ink)}.pyq-concept-toolbar{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.85rem}.pyq-concept-toolbar input[type=search]{width:min(320px,100%);padding:.65rem .8rem;border:1px solid var(--line-dark);border-radius:10px;background:var(--paper)}.pyq-concept-chapter{margin:.95rem 0 0;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--paper)}.pyq-concept-chapter-header{display:flex;justify-content:space-between;align-items:end;gap:1rem;padding:.95rem 1.1rem;background:var(--teal-50)}.pyq-concept-chapter-header h3{margin:.15rem 0 0;font-size:1.15rem}.pyq-concept-chapter-header strong{color:var(--teal-700);white-space:nowrap}.pyq-chapter-badge{display:inline-block;margin-right:.4rem;padding:.15rem .4rem;border-radius:6px;background:var(--teal-100);color:var(--teal-700);font-size:.72rem;font-weight:700}.pyq-mastery-select{min-width:8.5rem;padding:.4rem .55rem;border:1px solid var(--line-dark);border-radius:8px;background:#fff}@media(max-width:900px){.pyq-insight-grid,.pyq-route-grid,.pyq-score-panel{grid-template-columns:1fr}.pyq-concept-toolbar,.pyq-concept-chapter-header{flex-direction:column;align-items:stretch}.pyq-concept-toolbar input[type=search]{width:100%}}.ins-timeline{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.75rem}.ins-timeline li{border:1px solid var(--line);border-radius:10px;padding:.85rem 1rem;background:var(--paper)}.ins-priority{margin-top:.85rem;display:flex;flex-direction:column;gap:.55rem}.ins-priority h4{align-self:flex-start;cursor:default}.ins-action-card{border:1px solid var(--line);border-radius:10px;padding:.85rem 1rem;background:var(--paper);display:flex;flex-direction:column;gap:.4rem}.ins-bar{display:grid;grid-template-columns:minmax(6rem,9rem) 1fr 2.4rem;gap:.45rem;align-items:center}.ins-bar-label{font-size:.78rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ins-bar-track{height:.45rem;background:#e2e8f0;border-radius:999px;overflow:hidden}.ins-bar-fill{height:100%;border-radius:999px}.ins-bar-fill--weak{background:#ef4444}.ins-bar-fill--mid{background:#f59e0b}.ins-bar-fill--strong{background:#10b981}.ins-bar-pct{font-size:.75rem;font-variant-numeric:tabular-nums;color:var(--muted);text-align:right}button.linkish{background:none;border:none;padding:0;font:inherit;font-weight:600;cursor:pointer;text-align:left;color:var(--ink)}@media(max-width:1100px){.ins-chapter-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.ins-chapter-grid,.asmt-teacher-layout{grid-template-columns:1fr}.ins-bar{grid-template-columns:1fr auto}.ins-bar-track{grid-column:1 / -1}}.lig-skeleton-line{background:linear-gradient(90deg,var(--line) 25%,color-mix(in srgb,var(--line) 60%,var(--paper)) 50%,var(--line) 75%);background-size:200% 100%;animation:lig-shimmer 1.4s infinite;border-radius:4px}@keyframes lig-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.lig-pack-card--skeleton{pointer-events:none}.lig-player-skeleton{display:flex;flex-direction:column;gap:.5rem}.lig-spin{animation:lig-spin 1s linear infinite}@keyframes lig-spin{to{transform:rotate(360deg)}}.lig-catalog-header{align-items:flex-start}.lig-catalog-lead{font-size:.42em;font-weight:400;line-height:1.35}.lig-stats-strip{display:flex;align-items:center;gap:1.25rem;padding:.75rem 1rem;border:1px solid var(--line);border-radius:10px;background:var(--paper);margin-bottom:1.25rem}.lig-stat{display:flex;flex-direction:column;align-items:center;line-height:1}.lig-stat-value{font-size:1.35rem;font-weight:700;color:var(--ink)}.lig-stat-label{font-size:.72rem;color:var(--muted);margin-top:.15rem;text-transform:uppercase;letter-spacing:.04em}.lig-stat-divider{width:1px;height:2rem;background:var(--line)}.lig-search-wrap{position:relative;margin-bottom:1rem;max-width:420px}.lig-search-icon{position:absolute;left:.65rem;top:50%;transform:translateY(-50%);color:var(--muted);pointer-events:none}.lig-search-input{width:100%;padding:.5rem .75rem .5rem 2.15rem;border:1px solid var(--line);border-radius:8px;font-size:.9rem;background:var(--paper);color:var(--ink);box-sizing:border-box}.lig-search-input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 2px color-mix(in srgb,var(--brand) 15%,transparent)}.lig-corpus-heading{display:flex;align-items:center;gap:.5rem;margin-bottom:.65rem;color:var(--muted)}.lig-corpus-heading h2{margin:0;font-size:.95rem;font-weight:600;color:var(--ink)}.lig-pack-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.75rem}.lig-pack-card{position:relative;display:flex;flex-direction:column;gap:.35rem;transition:border-color .15s ease,box-shadow .15s ease;cursor:pointer}.lig-pack-card:hover{position:relative;z-index:2;border-color:var(--brand);box-shadow:0 4px 14px #0f172a14}.lig-level-badge{font-size:.7rem;font-weight:600;padding:.15rem .45rem;border-radius:999px;border:1px solid transparent;text-transform:capitalize;letter-spacing:.02em}.lig-level-dot{display:inline-block;width:.5rem;height:.5rem;border-radius:999px;flex-shrink:0}a.chip.lig-level-chip{position:static;font-weight:600;text-decoration:none}a.chip.lig-level-chip:after{content:attr(data-lessons);position:absolute;top:.85rem;right:1.05rem;padding:.2rem .5rem;border-radius:6px;background:var(--ink);color:#fff;font-size:.72rem;font-weight:600;line-height:1.3;white-space:nowrap;pointer-events:none;opacity:0;z-index:4;box-shadow:0 4px 12px #0f172a29;transition:opacity .12s ease}a.chip.lig-level-chip:hover:after,a.chip.lig-level-chip:focus-visible:after{opacity:1}.chip.lig-level-beginner{background:var(--ok-bg);color:var(--ok);border-color:#86efac}a.chip.lig-level-beginner:hover{background:#dcfce7;color:#166534;border-color:#4ade80}.chip.lig-level-intermediate{background:var(--saffron-light);color:var(--saffron-dark);border-color:#fcd34d}a.chip.lig-level-intermediate:hover{background:#fde68a;color:#92400e;border-color:var(--saffron)}.chip.lig-level-advanced{background:var(--teal-100);color:var(--teal-900);border-color:var(--ice-border)}a.chip.lig-level-advanced:hover{background:#c5e8ef;color:var(--teal-900);border-color:var(--teal-500)}.lig-card-meta{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.lig-chapter-pill{font-size:.75rem;font-weight:600;color:var(--muted);background:var(--line);padding:.1rem .45rem;border-radius:4px}.lig-card-title{font-weight:600;font-size:.92rem;color:var(--ink);line-height:1.35;margin:0}.lig-card-footer{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:.35rem}.lig-card-cta{font-size:.8rem;font-weight:600;color:var(--brand);opacity:0;transition:opacity .15s}.lig-pack-card:hover .lig-card-cta{opacity:1}.lig-breadcrumb{display:flex;align-items:center;gap:.35rem;font-size:.82rem;color:var(--muted);margin:0 0 .4rem}.lig-breadcrumb-link{color:var(--muted);text-decoration:none}.lig-breadcrumb-link:hover{color:var(--ink);text-decoration:underline}.lig-breadcrumb-sep{color:var(--muted);opacity:.5}.lig-lesson-index-grid{display:flex;flex-direction:column;gap:.5rem}.lig-index-card{display:flex;align-items:center;gap:.9rem;padding:.75rem 1rem;border-radius:10px;text-decoration:none;transition:border-color .15s,box-shadow .15s}.lig-index-card:hover{border-color:var(--brand);box-shadow:0 2px 8px #0f172a0f}.lig-index-num{width:2.1rem;height:2.1rem;border-radius:50%;border:2px solid;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.9rem;flex-shrink:0}.lig-index-info{flex:1;min-width:0}.lig-player-sticky{position:sticky;top:-2rem;z-index:6;margin:-2rem -2.5rem .85rem;padding:0 2.5rem .7rem;background:var(--slate-50, var(--surface2));border-bottom:1px solid var(--line)}.lig-player-sticky .curriculum-bar{position:static;top:auto;margin:0 -2.5rem .7rem;box-shadow:none}.lig-player-sticky .lig-block-nav{margin-bottom:0}.lig-player-header{display:flex;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.45rem}.lig-player-header-left{display:flex;align-items:center;gap:.65rem;flex:1;min-width:0}.lig-player-header-right{display:flex;align-items:center;gap:.75rem;flex-shrink:0}.lig-player-meta{display:flex;align-items:center;margin:0;flex-shrink:0}.lig-meta-sep{color:var(--muted);opacity:.4}.lig-player-title{margin:0;font-size:1.25rem;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lig-player-desc{margin:0 0 .55rem}.lig-progress-bar-track{height:3px;background:var(--line);border-radius:999px;margin-bottom:1rem;overflow:hidden}.lig-progress-bar-fill{height:100%;border-radius:999px;transition:width .4s ease}.lig-progress-ring-wrap{position:relative;width:2.5rem;height:2.5rem;display:flex;align-items:center;justify-content:center}.lig-progress-ring{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}.lig-ring-track{fill:none;stroke:var(--line);stroke-width:3.5}.lig-ring-fill{fill:none;stroke-width:3.5;stroke-linecap:round;transition:stroke-dasharray .4s ease}.lig-ring-pct{position:relative;font-size:.62rem;font-weight:700;color:var(--ink);z-index:1}.lig-block-nav{display:flex;flex-wrap:wrap;gap:.35rem;margin:0 0 .85rem}.lig-block-nav-item{display:inline-flex;align-items:center;flex-shrink:0;gap:.25rem;font-size:.75rem;padding:.22rem .55rem;border-radius:999px;border:1px solid var(--line);text-decoration:none;color:var(--muted);transition:color .12s,border-color .12s,background .12s}.lig-block-nav-item:hover{color:var(--ink);border-color:var(--brand)}.lig-block-nav-item--active{color:var(--ink);border-color:var(--brand);background:color-mix(in srgb,var(--brand) 8%,var(--paper));font-weight:600}.lig-block-nav-item--done{color:#047857;border-color:#bbf7d0;background:#f0fdf4}.lig-nav-check{font-size:.65rem}.lig-concept-list{display:flex;flex-direction:column;gap:.65rem}.lig-concept{border:1px solid var(--line);border-radius:12px;background:var(--paper)}.lig-concept.is-open{border-color:var(--ice-border)}.lig-concept-toggle{width:100%;display:flex;align-items:center;gap:.7rem;padding:.8rem 1rem;border:0;background:transparent;text-align:left;cursor:pointer;color:var(--ink)}.lig-concept-copy{display:flex;flex-direction:column;min-width:0;flex:1}.lig-concept-kicker{font-size:.72rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.lig-concept-title{font-size:1rem;font-weight:600;line-height:1.3}.lig-concept-count{font-size:.78rem;font-weight:600;color:var(--muted);flex-shrink:0}.lig-concept-body{padding:0 1rem 1rem}.lig-lesson-blocks{display:flex;flex-direction:column;gap:.9rem}.lig-block-wrap{border:1px solid var(--line);border-left:3px solid transparent;border-radius:12px;padding:1rem 1.15rem;background:var(--paper);scroll-margin-top:22rem;transition:border-left-color .2s ease,box-shadow .2s ease}.lig-block-wrap--active{box-shadow:0 2px 12px #0f172a12}.lig-block-wrap--done{background:color-mix(in srgb,#F0FDF4 60%,var(--paper))}.lig-block-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.65rem}.lig-block-header h3{margin:0;font-size:.95rem;font-weight:600}.lig-block-emoji{font-size:1rem;line-height:1;flex-shrink:0}.lig-block-done-badge{font-size:.75rem;color:#047857;background:#d1fae5;padding:.1rem .35rem;border-radius:999px;font-weight:700}.lig-big-idea{font-weight:600;color:var(--ink);line-height:1.4}.lig-cite{font-size:.85rem;color:var(--muted);border-left:3px solid var(--brand);padding-left:.65rem;margin-top:.5rem}.lig-misconception{font-size:.85rem;background:#fff7ed;border:1px solid #FED7AA;border-radius:8px;padding:.6rem .75rem;margin-top:.65rem}:root[data-theme=dark] .lig-misconception{background:#fed7aa14;border-color:#fed7aa40}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .lig-misconception{background:#fed7aa14;border-color:#fed7aa40}}.lig-misconception-label{font-size:.75rem;font-weight:700;color:#92400e;display:block;margin-bottom:.2rem}.lig-exam-note{font-size:.84rem;color:var(--muted);margin-top:.5rem}.lig-rw-scenario{font-style:italic;color:var(--ink)}.lig-rw-examples{padding-left:1.25rem}.lig-rw-examples li{margin-bottom:.3rem}.lig-visual-labels{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.5rem}.lig-visual-chip{font-size:.78rem}.lig-check-question{font-weight:600;color:var(--ink);margin-bottom:.75rem}.lig-check-options{display:flex;flex-direction:column;gap:.4rem}.lig-check-option{display:flex;align-items:flex-start;gap:.6rem;text-align:left;border:1.5px solid var(--line);border-radius:8px;padding:.6rem .75rem;background:var(--paper);cursor:pointer;font-size:.9rem;transition:border-color .12s,background .12s;width:100%}.lig-check-option:hover:not(:disabled){border-color:var(--brand);background:color-mix(in srgb,var(--brand) 5%,var(--paper))}.lig-check-option:disabled{cursor:default}.lig-check-option--correct{border-color:#059669!important;background:#ecfdf5!important}.lig-check-option--wrong{border-color:#dc2626!important;background:#fef2f2!important}.lig-check-option--reveal{border-color:#059669!important;opacity:.6}.lig-check-option--dim{opacity:.45}:root[data-theme=dark] .lig-check-option--correct{background:#0596691f!important}:root[data-theme=dark] .lig-check-option--wrong{background:#dc26261f!important}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .lig-check-option--correct{background:#0596691f!important}:root:not([data-theme=light]) .lig-check-option--wrong{background:#dc26261f!important}}.lig-option-label{font-weight:700;font-size:.85rem;min-width:1.1rem;flex-shrink:0}.lig-feedback-box{display:flex;align-items:flex-start;gap:.5rem;margin-top:.75rem;padding:.6rem .75rem;border-radius:8px;font-size:.88rem;font-weight:500}.lig-feedback-box.ok{background:#ecfdf5;color:#047857}.lig-feedback-box.warn{background:#fef2f2;color:#dc2626}:root[data-theme=dark] .lig-feedback-box.ok{background:#0478571f}:root[data-theme=dark] .lig-feedback-box.warn{background:#dc26261f}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .lig-feedback-box.ok{background:#0478571f}:root:not([data-theme=light]) .lig-feedback-box.warn{background:#dc26261f}}.lig-feedback-icon{font-size:1rem;flex-shrink:0;line-height:1.3}.lig-example-steps-list{padding-left:1.5rem;display:flex;flex-direction:column;gap:.5rem;margin-top:.5rem}.lig-example-step-heading{font-weight:600;font-size:.88rem;color:var(--brand);margin-bottom:.15rem}.lig-connect-pills{display:flex;flex-direction:column;gap:.4rem}.lig-connect-pill{font-size:.85rem;padding:.4rem .65rem;border-radius:6px;background:color-mix(in srgb,var(--brand) 8%,var(--paper));border:1px solid color-mix(in srgb,var(--brand) 20%,transparent);color:var(--ink)}.lig-summary-list{padding-left:1.25rem;display:flex;flex-direction:column;gap:.35rem}.lig-summary-list li{font-size:.9rem}.lig-player-nav{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;flex-shrink:0}.pyq-contract-banner code{font-size:.85em}.pyq-review-actions{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center}.pyq-review-actions .btn:disabled{opacity:.55;cursor:not-allowed}.pyq-held-chip{font-size:.72rem}.pyq-review-detail{padding:.65rem .25rem .35rem;border-top:1px dashed var(--line)}.pyq-review-stem{margin:0;font-size:.92rem;line-height:1.45}.pyq-validation-list{margin:.5rem 0 0;padding-left:1.1rem;font-size:.85rem;color:var(--muted)}.pyq-review-detail-row td{background:#f8fafc}.product-tour{position:fixed;inset:0;z-index:12000;pointer-events:none}.product-tour-backdrop{position:absolute;inset:0;background:#0f172a73;pointer-events:auto}.product-tour-spotlight{position:absolute;border-radius:10px;box-shadow:0 0 0 9999px #0f172a8c,0 0 0 2px #0f766e,0 8px 28px #0f172a59;background:transparent;pointer-events:none;transition:top .2s ease,left .2s ease,width .2s ease,height .2s ease}.product-tour-card{position:absolute;width:min(340px,calc(100vw - 24px));padding:.9rem 1rem 1rem;pointer-events:auto;z-index:1;box-shadow:0 12px 40px #0f172a40}.product-tour-card h3{margin:.15rem 0 .4rem;font-size:1.05rem}.product-tour-progress{margin:0;font-size:.72rem;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.ms-shell{display:grid;grid-template-columns:232px 1fr;height:100%;overflow:hidden;background:var(--bg)}.ms-sidebar{background:var(--surface2);border-right:1px solid var(--line);display:flex;flex-direction:column;overflow:hidden}.ms-sidebar-header{padding:1rem 1rem .6rem;border-bottom:1px solid var(--line)}.ms-sidebar-wordmark{font-size:1.05rem;font-weight:700;color:var(--ink);letter-spacing:-.3px}.ms-sidebar-subtitle{font-size:.7rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-top:2px}.ms-mode-nav{padding:.5rem .5rem 0;display:flex;flex-direction:column;gap:2px}.ms-mode-nav-item{display:flex;align-items:center;gap:.5rem;padding:.45rem .6rem;border-radius:6px;border:none;background:transparent;font-size:.82rem;font-weight:500;color:var(--muted);cursor:pointer;text-align:left;transition:background .12s,color .12s}.ms-mode-nav-item:hover{background:var(--line);color:var(--ink)}.ms-mode-nav-item--active{background:var(--teal-100);color:var(--teal-700)}.ms-sidebar-divider{border:none;border-top:1px solid var(--line);margin:.5rem 0}.ms-chat-history{padding:0 .5rem;overflow-y:auto;flex:1}.ms-new-chat-btn{width:100%;padding:.45rem .75rem;margin-bottom:.5rem;background:var(--cobalt);color:#fff;border:none;border-radius:6px;font-size:.8rem;font-weight:600;cursor:pointer;transition:opacity .15s}.ms-new-chat-btn:hover{opacity:.88}.ms-history-label{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--subtle);padding:.25rem .4rem .3rem}.ms-history-item{display:flex;align-items:flex-start;gap:.5rem;padding:.45rem .4rem;border-radius:6px;border:none;background:transparent;width:100%;text-align:left;cursor:pointer;transition:background .12s;margin-bottom:2px}.ms-history-item:hover{background:var(--line)}.ms-history-item-icon{width:26px;height:26px;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;flex-shrink:0;margin-top:1px}.ms-history-item-body{flex:1;min-width:0}.ms-history-item-title{font-size:.8rem;font-weight:500;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ms-history-item-preview{font-size:.7rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ms-sidebar-footer{padding:.6rem .75rem;border-top:1px solid var(--line)}.ms-sidebar-footer-label{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--subtle);margin-bottom:.35rem}.ms-doc-chip{display:flex;align-items:center;gap:.35rem;padding:.3rem .5rem;background:var(--paper);border:1px solid var(--line);border-radius:5px;font-size:.72rem;color:var(--muted);margin-bottom:3px}.ms-doc-chip--empty{opacity:.6}.ms-doc-chip-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ms-doc-chip-badge{color:var(--ok);font-weight:700;flex-shrink:0}.ms-context-note{font-size:.68rem;color:var(--muted);text-align:center;margin-top:.35rem}.ms-main{display:flex;flex-direction:column;overflow:hidden;background:var(--bg)}.ms-chat-area{display:flex;flex-direction:column;height:100%;overflow:hidden}.ms-skill-strip{display:flex;gap:.4rem;padding:.5rem 1rem;border-bottom:1px solid var(--line);background:var(--paper);overflow-x:auto;scrollbar-width:none;flex-shrink:0}.ms-skill-strip::-webkit-scrollbar{display:none}.ms-skill-card{flex-shrink:0;display:flex;align-items:center;gap:.3rem;padding:.3rem .65rem .3rem .45rem;border-radius:20px;border:1px solid var(--line);background:var(--bg);font-size:.75rem;font-weight:500;color:var(--muted);cursor:pointer;white-space:nowrap;transition:border-color .12s,background .12s,color .12s}.ms-skill-card:hover{border-color:var(--cobalt);background:var(--ice);color:var(--cobalt)}.ms-skill-card--active{border-color:var(--saffron-dark);background:var(--saffron-light);color:var(--saffron-dark)}.ms-skill-emoji{font-size:13px}.ms-messages{flex:1;overflow-y:auto;padding:1rem 0 .5rem}.ms-welcome{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:70%;text-align:center;padding:2rem 1.5rem}.ms-welcome-wordmark{font-size:2.4rem;font-weight:800;color:var(--ink);letter-spacing:-1.5px;line-height:1;margin-bottom:.4rem}.ms-welcome-wordmark span{color:var(--cobalt)}.ms-welcome-tagline{font-size:.9rem;color:var(--muted);max-width:440px;line-height:1.6;margin-bottom:2rem}.ms-welcome-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;max-width:480px;width:100%}.ms-welcome-card{background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:1rem;text-align:left;cursor:pointer;transition:border-color .15s,box-shadow .15s;display:block;width:100%}.ms-welcome-card:hover{border-color:var(--cobalt);box-shadow:0 0 0 3px var(--ice)}.ms-welcome-card-icon{font-size:1.3rem;margin-bottom:.4rem}.ms-welcome-card-title{font-size:.83rem;font-weight:600;color:var(--ink);margin-bottom:.2rem}.ms-welcome-card-desc{font-size:.73rem;color:var(--muted);line-height:1.4}.ms-msg{display:flex;gap:.65rem;margin-bottom:1rem;max-width:760px;margin-left:auto;margin-right:auto;padding:0 1rem}.ms-avatar{width:26px;height:26px;border-radius:7px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex-shrink:0;margin-top:2px}.ms-avatar--user{background:var(--teal-100);color:var(--teal-700)}.ms-avatar--ai{background:var(--saffron-light);color:var(--saffron-dark)}.ms-msg-body{flex:1;min-width:0}.ms-msg-sender{font-size:.68rem;font-weight:700;color:var(--subtle);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.25rem}.ms-skill-badge{display:inline-flex;align-items:center;gap:.25rem;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--teal-700);background:var(--teal-100);padding:2px 7px;border-radius:10px;margin-bottom:.3rem}.ms-bubble{background:var(--paper);border:1px solid var(--line);border-radius:3px 10px 10px;padding:.7rem .85rem;font-size:.875rem;line-height:1.65;color:var(--ink)}.ms-bubble--user{background:var(--ice);border-color:var(--ice-border);border-radius:10px 3px 10px 10px}.ms-bubble .ms-p{margin:0 0 .5rem}.ms-bubble .ms-p:last-child{margin-bottom:0}.ms-bubble .ms-h3{font-size:.95rem;font-weight:700;margin:.5rem 0 .3rem;color:var(--ink)}.ms-bubble .ms-h4{font-size:.85rem;font-weight:600;margin:.4rem 0 .25rem}.ms-bubble .ms-ul{padding-left:1.1rem;margin:.3rem 0 .5rem}.ms-bubble .ms-li{margin-bottom:.2rem}.ms-code-inline{font-family:SF Mono,Fira Code,monospace;font-size:.8rem;background:var(--surface2);padding:1px 5px;border-radius:3px;color:var(--cobalt)}.ms-pre{background:var(--surface2);border:1px solid var(--line);border-radius:6px;padding:.7rem .85rem;overflow-x:auto;margin:.5rem 0;font-family:SF Mono,Fira Code,monospace;font-size:.78rem}.ms-thinking{display:flex;gap:4px;align-items:center;padding:4px 0}.ms-dot{width:6px;height:6px;border-radius:50%;background:var(--subtle);animation:ms-pulse 1.2s ease-in-out infinite}.ms-dot:nth-child(2){animation-delay:.2s}.ms-dot:nth-child(3){animation-delay:.4s}@keyframes ms-pulse{0%,80%,to{opacity:.3;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}.ms-error-bar{display:flex;align-items:center;gap:.5rem;padding:.5rem 1.25rem;background:var(--warn-bg);color:var(--warn);font-size:.8rem;border-top:1px solid #FECACA}.ms-error-close{margin-left:auto;background:none;border:none;cursor:pointer;color:var(--warn);display:flex;padding:2px}.ms-skill-active-banner{display:flex;align-items:center;gap:.6rem;padding:.4rem 1rem;background:color-mix(in srgb,var(--saffron-light) 60%,var(--paper));border-top:1px solid color-mix(in srgb,var(--saffron-dark) 20%,transparent);font-size:.78rem;flex-shrink:0}.ms-skill-banner-id{display:flex;align-items:center;gap:.25rem;color:var(--saffron-dark);white-space:nowrap;flex-shrink:0}.ms-skill-banner-id strong{font-weight:700}.ms-skill-banner-hint{flex:1;color:var(--muted);font-size:.75rem;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ms-skill-clear{display:inline-flex;align-items:center;gap:.25rem;padding:.2rem .55rem;border-radius:5px;border:1px solid color-mix(in srgb,var(--saffron-dark) 30%,transparent);background:transparent;color:var(--saffron-dark);font-size:.7rem;font-weight:600;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:background .12s}.ms-skill-clear:hover{background:color-mix(in srgb,var(--saffron-dark) 12%,transparent)}.ms-history-empty{font-size:.74rem;color:var(--subtle);text-align:center;padding:1rem .5rem;line-height:1.5}.ms-input-area{padding:.5rem 1rem .65rem;background:var(--paper);border-top:1px solid var(--line);flex-shrink:0}.ms-input-box{border:1.5px solid var(--line-dark);border-radius:10px;background:var(--bg);transition:border-color .15s,box-shadow .15s}.ms-input-box:focus-within{border-color:var(--cobalt);box-shadow:0 0 0 3px var(--ice)}.ms-input-textarea{width:100%;border:none;background:transparent;font-size:.875rem;color:var(--ink);padding:.55rem .85rem .2rem;resize:none;outline:none;line-height:1.5;max-height:120px;overflow-y:auto}.ms-input-textarea::placeholder{color:var(--subtle)}.ms-input-toolbar{display:flex;align-items:center;gap:.25rem;padding:.2rem .5rem .4rem}.ms-input-tool{width:28px;height:28px;border-radius:6px;border:none;background:transparent;color:var(--muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .12s,color .12s}.ms-input-tool:hover{background:var(--line);color:var(--ink)}.ms-context-pill{display:flex;align-items:center;gap:.3rem;font-size:.7rem;color:var(--muted);background:var(--surface2);padding:2px 8px;border-radius:10px}.ms-context-dot{width:6px;height:6px;border-radius:50%;background:var(--ok);flex-shrink:0}.ms-send-btn{width:30px;height:30px;border-radius:8px;border:none;background:var(--cobalt);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;transition:opacity .12s,transform .1s}.ms-send-btn:hover:not(:disabled){opacity:.85}.ms-send-btn:active:not(:disabled){transform:scale(.92)}.ms-send-btn:disabled{opacity:.35;cursor:not-allowed}.ms-send-btn--stop{background:var(--warn)}.ms-input-hint{text-align:center;font-size:.64rem;color:var(--subtle);margin-top:.25rem}.ms-spin{animation:ms-rotate .8s linear infinite}@keyframes ms-rotate{to{transform:rotate(360deg)}}.ms-panel{flex:1;overflow-y:auto;padding:1.5rem}.ms-panel-header{margin-bottom:1.25rem}.ms-panel-title{font-size:1.25rem;font-weight:700;color:var(--ink);letter-spacing:-.3px}.ms-panel-subtitle{font-size:.85rem;color:var(--muted);margin-top:.25rem}.ms-drop-zone{border:2px dashed var(--line-dark);border-radius:10px;padding:2.5rem 1.5rem;text-align:center;cursor:pointer;transition:border-color .15s,background .15s;background:var(--paper);display:flex;flex-direction:column;align-items:center;gap:.5rem;color:var(--muted)}.ms-drop-zone:hover,.ms-drop-zone--over{border-color:var(--cobalt);background:var(--ice)}.ms-drop-zone-title{font-size:.9rem;font-weight:500;color:var(--ink)}.ms-drop-zone-sub{font-size:.78rem;color:var(--muted)}.ms-doc-list{margin-top:1.25rem}.ms-doc-row{display:flex;align-items:center;gap:.65rem;padding:.65rem .85rem;background:var(--paper);border:1px solid var(--line);border-radius:8px;margin-bottom:.5rem;transition:border-color .12s}.ms-doc-row:hover{border-color:var(--cobalt)}.ms-doc-row-icon{width:32px;height:32px;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0;background:var(--surface2)}.ms-doc-row-body{flex:1;min-width:0}.ms-doc-row-name{font-size:.85rem;font-weight:500;color:var(--ink)}.ms-doc-row-meta{font-size:.7rem;color:var(--muted);margin-top:1px}.ms-doc-badge{font-size:.7rem;font-weight:600;padding:2px 8px;border-radius:10px;flex-shrink:0}.ms-doc-badge--ready{background:var(--ok-bg);color:var(--ok)}.ms-doc-badge--processing{background:var(--note-bg);color:var(--note)}.ms-empty-hint{font-size:.82rem;color:var(--muted);text-align:center;padding:2rem 0}.ms-gen-test-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.55rem 1rem;background:var(--teal-700);color:#fff;border:none;border-radius:7px;font-size:.82rem;font-weight:600;cursor:pointer;transition:opacity .15s;margin-bottom:1.25rem}.ms-gen-test-btn:hover{opacity:.88}.ms-test-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem}.ms-test-card{background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:1rem;cursor:pointer;transition:border-color .15s,box-shadow .15s}.ms-test-card:hover{border-color:var(--cobalt);box-shadow:0 2px 8px #00000014}.ms-test-subject{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--teal-700);margin-bottom:.3rem}.ms-test-title{font-size:.9rem;font-weight:600;color:var(--ink);margin-bottom:.5rem}.ms-test-meta{display:flex;gap:.75rem;font-size:.72rem;color:var(--muted)}.ms-student-selector{display:flex;gap:.4rem;flex-wrap:wrap;margin-bottom:1rem}.ms-student-chip{padding:.3rem .75rem;border-radius:20px;border:1px solid var(--line);background:var(--paper);font-size:.78rem;font-weight:500;cursor:pointer;color:var(--muted);transition:.12s}.ms-student-chip--active{border-color:var(--teal-700);background:var(--teal-100);color:var(--teal-700)}.ms-review-split{display:grid;grid-template-columns:1fr 1fr;gap:1rem;height:calc(100vh - 260px)}.ms-review-pane{background:var(--paper);border:1px solid var(--line);border-radius:10px;overflow:hidden;display:flex;flex-direction:column}.ms-review-pane-header{padding:.65rem .85rem;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:.5rem}.ms-review-pane-title{font-size:.82rem;font-weight:600;color:var(--ink);flex:1}.ms-annot-badge{font-size:.68rem;font-weight:700;background:var(--note-bg);color:var(--note);padding:1px 7px;border-radius:10px}.ms-review-pane-body{flex:1;padding:1rem;overflow-y:auto;font-size:.82rem;line-height:1.7;color:var(--ink)}.ms-diff-add{display:block;background:var(--ok-bg);border-left:3px solid var(--ok);padding:2px 6px;border-radius:0 4px 4px 0;margin:3px 0}.ms-diff-remove{display:block;background:var(--warn-bg);border-left:3px solid var(--warn);padding:2px 6px;border-radius:0 4px 4px 0;text-decoration:line-through;color:var(--muted);margin:3px 0}.ms-feedback-ok{margin-top:.75rem;padding:.5rem .75rem;background:var(--ok-bg);border-radius:6px;font-size:.75rem;color:var(--ok);font-weight:500}.lp-page{min-height:100vh;background:#f7f3e9;color:#16233b;font-family:Avenir Next,Segoe UI,Arial,sans-serif;display:flex;flex-direction:column}.lp-nav{padding:20px 60px;border-bottom:1px solid #d5d3c9;flex-shrink:0}.lp-nav-brand{display:flex;align-items:center;gap:12px}.lp-wordmark{font-size:22px;font-weight:700;letter-spacing:-.8px;color:#16233b;line-height:1}.lp-wordmark span{color:#d47b31}.lp-brand-tagline{margin:4px 0 0;font-size:11px;color:#58616c;letter-spacing:.2px}.lp-hero{display:grid;grid-template-columns:1fr 1fr;gap:0;padding:0;max-width:100%;width:100%;margin:0 auto;align-items:stretch;min-height:560px;box-sizing:border-box}.lp-hero-left{display:flex;flex-direction:column;gap:32px;padding:72px 60px;justify-content:center}.lp-hero-img{position:relative;overflow:hidden;min-height:400px}.lp-hero-img img{width:100%;height:100%;object-fit:cover;object-position:center top;display:block;max-width:100%}.lp-mission{display:block;font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:#d47b31;margin-bottom:18px}.lp-hero-copy h1{font-size:64px;line-height:1.06;letter-spacing:-3px;font-weight:600;margin:0;color:#16233b}.lp-accent{color:#d47b31}.lp-intro{font-size:19px;line-height:1.5;color:#58616c;margin:22px 0 0}.lp-belief{font-size:16px;line-height:1.6;color:#58616c;margin:14px 0 0;max-width:520px}.lp-auth{display:flex;align-items:flex-start}.lp-signin-card{background:#fff;border-radius:14px;padding:36px;box-shadow:0 2px 24px #16233b1a,0 0 0 1px #16233b0f;width:100%}.lp-signin-card h2{font-size:22px;font-weight:600;letter-spacing:-.4px;margin:0 0 10px;color:#16233b}.lp-signin-meta{font-size:14px;color:#58616c;line-height:1.5;margin:0 0 24px}.lp-signin-btn{display:flex;align-items:center;gap:10px;justify-content:center;width:100%;padding:14px 24px;background:#0e6878;color:#fff;border:none;border-radius:8px;font-size:15px;font-weight:600;cursor:pointer;transition:background .15s ease;font-family:inherit}.lp-signin-btn:hover{background:#0d4f5c}.lp-signin-btn:focus-visible{outline:3px solid #d47b31;outline-offset:3px}.lp-signin-note{font-size:12px;color:#9aa5b1;text-align:center;margin:14px 0 0}.lp-processing{flex:1;display:flex;align-items:center;justify-content:center;padding:40px 24px}.lp-processing .lp-signin-card{max-width:420px}.lp-features{background:#16233b;padding:64px 60px;flex-shrink:0}.lp-features-inner{max-width:1280px;margin:0 auto}.lp-section-eyebrow{font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:#d47b31;margin:0 0 32px}.lp-section-eyebrow--green{color:#326650}.lp-features-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}.lp-feature{border-top:3px solid #326650;padding-top:16px}.lp-feature-step{font-size:11px;font-weight:700;letter-spacing:1px;color:#326650;margin-bottom:10px}.lp-feature h3{font-size:19px;line-height:1.22;margin:0 0 8px;color:#f7f3e9;font-weight:600;min-height:46px}.lp-feature p{font-size:15px;line-height:1.55;color:#8fa4b2;margin:0}.lp-audiences{padding:64px 60px;flex-shrink:0}.lp-audiences-inner{max-width:1280px;margin:0 auto}.lp-audiences-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:36px}.lp-audience{border-top:3px solid #326650;padding-top:16px}.lp-audience h3{font-size:24px;font-weight:600;margin:0 0 12px;color:#16233b}.lp-audience-need{font-size:17px;line-height:1.4;margin:0 0 10px;color:#16233b;font-weight:500}.lp-audience p:last-child{font-size:15px;line-height:1.55;color:#58616c;margin:0}.lp-footer{border-top:1px solid #d5d3c9;padding:22px 60px;font-size:12px;color:#9aa5b1;background:#f7f3e9;margin-top:auto}.lp-footer p{margin:0;max-width:1280px}.lp-picker-wrap{flex:1;display:flex;align-items:center;justify-content:center;padding:60px 24px 80px}.lp-picker{width:100%;max-width:860px}.lp-picker-welcome{font-size:12px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--saffron);margin:0 0 12px}.lp-picker-heading{font-size:30px;font-weight:600;letter-spacing:-.8px;margin:0 0 8px;color:var(--ink)}.lp-picker-sub{font-size:14px;color:var(--muted);margin:0 0 36px}.lp-personas{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.lp-persona-card{display:flex;flex-direction:column;align-items:flex-start;gap:0;padding:28px 26px 24px;background:#fff;border:1px solid var(--line);border-top:3px solid var(--green);border-radius:10px;cursor:pointer;text-align:left;font-family:inherit;box-shadow:0 1px 8px #16233b0f;transition:box-shadow .15s ease,border-top-color .15s ease,transform .12s ease}.lp-persona-card:hover{box-shadow:0 4px 20px #16233b1f;border-top-color:var(--teal);transform:translateY(-2px)}.lp-persona-card:focus-visible{outline:3px solid var(--saffron);outline-offset:3px}.lp-persona-label{font-size:22px;font-weight:600;letter-spacing:-.4px;color:var(--ink);margin-bottom:8px;display:block}.lp-persona-tagline{font-size:15px;font-weight:500;color:var(--ink);line-height:1.4;margin-bottom:12px;display:block}.lp-persona-detail{font-size:13px;line-height:1.6;color:var(--muted);margin-bottom:18px;display:block;flex:1}.lp-persona-dest{display:block;font-size:11px;font-weight:600;letter-spacing:.5px;color:var(--teal);padding-top:14px;border-top:1px solid var(--line);width:100%}@media(max-width:900px){.lp-nav{padding:16px 24px}.lp-hero{grid-template-columns:1fr;gap:0}.lp-hero-left{padding:40px 24px 44px;gap:24px}.lp-hero-img{min-height:260px;order:-1}.lp-hero-copy h1{font-size:clamp(40px,8vw,64px);letter-spacing:-2px}.lp-features{padding:48px 24px}.lp-features-grid{grid-template-columns:1fr 1fr;gap:24px}.lp-feature h3{min-height:0}.lp-audiences{padding:48px 24px}.lp-audiences-grid{grid-template-columns:1fr;gap:28px}.lp-footer{padding:20px 24px}.lp-personas{grid-template-columns:1fr;gap:16px}.lp-picker-wrap{padding:40px 20px 60px}}.practice-progress{height:4px;background:var(--line);border-radius:2px;margin:0 0 1rem;overflow:hidden}.practice-progress>span{display:block;height:100%;background:var(--cobalt);border-radius:2px}.practice-options{display:flex;flex-direction:column;gap:.4rem;margin-top:.75rem}.practice-option{text-align:left;padding:.55rem .8rem;border-radius:10px;border:1px solid var(--line);background:var(--paper, var(--surface));color:var(--ink);cursor:pointer;line-height:1.4}.practice-option.is-selected{border-color:var(--cobalt);background:var(--ice)}.practice-option:disabled{cursor:default}.practice-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.65rem;margin-bottom:1rem}.practice-stat{text-align:center}.practice-stat strong{display:block;font-size:1.6rem;color:var(--cobalt)}body{background:var(--bg)}::selection{background:var(--teal-100);color:var(--navy)}:focus-visible{outline:none;box-shadow:var(--focus-ring)}h1,h2,h3,h4{color:var(--ink);letter-spacing:-.012em}h2{font-size:1.375rem;font-weight:650;line-height:1.3;margin:0 0 .4rem}h3{font-size:1.0625rem;font-weight:600;line-height:1.4}p.lead{color:var(--muted);font-size:.95rem}.page-header{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.page-title{margin:0;font-size:clamp(1.5rem,1.2rem + 1vw,1.875rem);font-weight:700;line-height:1.2;letter-spacing:-.022em}.page-subtitle{margin:.35rem 0 0;color:var(--muted);font-size:1rem}.section-title{margin:0 0 .75rem;font-size:.8125rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--subtle)}.eyebrow{display:block;font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--teal-500)}.main-inner>h2:first-child,.main-inner>div>h2:first-child,.main-inner .page-head h2{font-size:1.5rem;font-weight:700;letter-spacing:-.02em}.shell{grid-template-columns:252px minmax(0,1fr);grid-template-rows:64px minmax(0,1fr);background:var(--bg)}.shell.nav-collapsed{grid-template-columns:76px minmax(0,1fr)}.app-topbar{background:var(--paper);color:var(--ink);border-bottom:1px solid var(--line);box-shadow:none;padding:0 1.25rem 0 1rem;z-index:20}.app-brand-link{display:inline-flex;align-items:center;gap:.7rem;min-width:0;text-decoration:none;color:inherit;border-radius:var(--radius-sm)}.app-logo{width:36px;height:36px;border-radius:10px;background:linear-gradient(140deg,var(--teal-500),var(--teal-900));color:#fff;font-size:1.15rem;font-weight:700;letter-spacing:0;box-shadow:inset 0 -2px #f59e0be6}.app-title strong{color:var(--ink);font-size:1.0625rem;font-weight:700;letter-spacing:-.015em;line-height:1.2}.app-title span{color:var(--subtle);font-size:.75rem;opacity:1;line-height:1.3}.app-topbar-right{gap:.5rem}.icon-btn{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:var(--radius-sm);border:1px solid transparent;background:transparent;color:var(--muted);cursor:pointer}.icon-btn:hover{background:var(--surface2);color:var(--ink)}.app-menu-btn{display:none}.app-topbar .btn.ghost{color:var(--muted);border-color:transparent}.app-topbar .btn.ghost:hover{background:var(--surface2);color:var(--ink)}.account-trigger{display:inline-flex;align-items:center;gap:.5rem;height:40px;padding:0 .6rem 0 .3rem;border:1px solid var(--line);border-radius:999px;background:var(--paper);color:var(--ink);font-size:.875rem;font-weight:550;cursor:pointer}.account-trigger:hover{border-color:var(--line-dark);background:var(--surface2)}.account-trigger svg{color:var(--subtle)}.account-trigger-name{max-width:10rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.avatar{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--teal-100);color:var(--teal-700);font-size:.75rem;font-weight:700;flex:0 0 auto}.avatar-lg{width:40px;height:40px;font-size:.875rem}.account-menu-panel{top:calc(100% + .5rem);min-width:17rem;border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:.4rem}.account-menu-head{display:flex;align-items:center;gap:.75rem;padding:.6rem .6rem .75rem;margin-bottom:.3rem;border-bottom:1px solid var(--line)}.account-menu-head div strong{display:block;font-size:.9rem}.account-menu-head div span{display:block;font-size:.78rem;color:var(--subtle)}.account-menu-item{display:flex;align-items:center;gap:.55rem;font-weight:500;color:var(--muted);padding:.55rem .6rem}.account-menu-item:hover{background:var(--surface2);color:var(--ink)}.nav{background:var(--paper);border-right:1px solid var(--line);padding:1rem .75rem .75rem;justify-content:space-between;z-index:15}.nav-groups{display:grid;gap:1.1rem}.nav-section-label{padding:0 .75rem .4rem;margin:0;font-size:.6875rem;letter-spacing:.08em;color:var(--subtle)}.nav-links{padding:0;gap:2px}.nav a{position:relative;gap:.7rem;padding:.55rem .75rem;border-radius:var(--radius-sm);font-size:.9rem;font-weight:500;color:var(--muted)}.nav a svg{flex:0 0 auto;color:var(--subtle)}.nav a:hover{background:var(--surface2);color:var(--ink)}.nav a:hover svg{color:var(--muted)}.nav a.active{background:var(--teal-50);color:var(--teal-700);font-weight:600}.nav a.active svg{color:var(--teal-500)}.nav a.active:before{content:"";position:absolute;left:-.75rem;top:8px;bottom:8px;width:3px;border-radius:0 3px 3px 0;background:var(--teal-500)}.nav-link-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-collapse{margin:.75rem 0 0;padding:.55rem .75rem;gap:.7rem;border:none;border-radius:var(--radius-sm);font-size:.85rem;font-weight:500;color:var(--subtle)}.nav-collapse:hover{background:var(--surface2);color:var(--ink)}.shell.nav-collapsed .nav{padding-left:.6rem;padding-right:.6rem}.shell.nav-collapsed .nav-section-label,.shell.nav-collapsed .nav-link-label,.shell.nav-collapsed .nav-collapse span{display:none}.shell.nav-collapsed .nav-links{display:flex}.shell.nav-collapsed .nav a,.shell.nav-collapsed .nav-collapse{justify-content:center;padding:.65rem}.shell.nav-collapsed .nav-collapse{margin:.75rem 0 0}.shell.nav-collapsed .nav a.active:before{left:-.6rem}.shell.nav-collapsed .nav-groups{gap:.6rem}.shell.nav-collapsed .nav-group+.nav-group{border-top:1px solid var(--line);padding-top:.6rem}.nav-scrim{display:none}.main{background:var(--bg);padding:2rem 2.5rem 3.5rem;scroll-behavior:smooth}.main-inner{max-width:1180px;margin:0 auto}.main:has(.explore-page) .main-inner,.main:has(.tutor-session) .main-inner{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;width:100%}.main:has(.tutor-session) .main-inner{max-width:none}.explore-flag--note{color:var(--subtle);font-weight:500}.follow-on-chips .chip{white-space:normal;max-width:100%;text-align:left;line-height:1.4}@media(max-width:768px){.main:has(.explore-page){display:block;overflow-y:auto}.main:has(.explore-page) .main-inner{display:block}.explore-head{position:static}}.btn{justify-content:center;gap:.45rem;min-height:40px;padding:0 1rem;border-radius:var(--radius-sm);border:1px solid var(--teal-500);background:var(--teal-500);color:#fff;font-size:.875rem;font-weight:600;line-height:1.2;box-shadow:var(--shadow-xs);transition:background .15s,border-color .15s,color .15s,box-shadow .15s}.btn:hover{background:var(--teal-700);border-color:var(--teal-700);color:#fff}.btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}.btn.secondary{background:var(--paper);color:var(--ink);border:1px solid var(--line-dark)}.btn.secondary:hover{background:var(--surface2);color:var(--ink);border-color:var(--line-dark)}.btn.secondary svg{color:var(--muted)}.btn.ghost{background:transparent;color:var(--muted);border-color:transparent;box-shadow:none}.btn.ghost:hover{background:var(--surface2);color:var(--ink)}.btn:disabled,.btn[aria-disabled=true]{opacity:.5;box-shadow:none}.btn-sm{min-height:34px;padding:0 .8rem;font-size:.8125rem}.btn-lg{min-height:46px;padding:0 1.25rem;font-size:.9375rem}.btn-block{width:100%}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:spin .9s linear infinite}label{font-size:.8125rem;font-weight:550;color:var(--ink);letter-spacing:0}input,select,textarea{border:1px solid var(--line-dark);border-radius:var(--radius-sm);padding:.55rem .75rem;font-size:.9375rem;color:var(--ink);background-color:var(--paper);box-shadow:var(--shadow-xs);transition:border-color .15s,box-shadow .15s}input,select{min-height:42px}input::placeholder,textarea::placeholder{color:#98a2b3}input:hover,select:hover,textarea:hover{border-color:#98a2b3}input:focus,select:focus,textarea:focus{border-color:var(--teal-500);box-shadow:var(--focus-ring)}input[type=checkbox],input[type=radio]{min-height:0;box-shadow:none;width:auto}select{appearance:none;padding-right:2.25rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23667085' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .7rem center;cursor:pointer}select:disabled{cursor:not-allowed;color:var(--subtle);background-color:var(--surface2)}.field{display:grid;gap:.35rem}.field label{margin:0}.field-hint{font-size:.8rem;color:var(--subtle)}.form-error{margin:0;padding:.65rem .8rem;border-radius:var(--radius-sm);background:var(--warn-bg);border:1px solid #FECDCA;color:var(--warn);font-size:.875rem}.card{border:1px solid var(--line);border-radius:var(--radius-md);padding:1.25rem 1.5rem;box-shadow:var(--shadow-xs)}.banner{border-radius:var(--radius-md);padding:.9rem 1.1rem;font-size:.9rem}.banner.info{background:var(--teal-50);border-color:var(--ice-border);color:var(--navy)}.sh-empty{padding:3rem 1.5rem;background:var(--paper);border:1px dashed var(--line-dark);border-radius:var(--radius-lg)}.curriculum-bar{position:static;margin:0 0 1.5rem;padding:1.25rem 1.5rem;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-xs)}.curriculum-bar.is-collapsed{padding:.85rem 1rem .85rem .9rem}.cb-summary{display:flex;align-items:center;gap:.9rem}.cb-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:var(--radius-sm);background:var(--teal-50);color:var(--teal-500);flex:0 0 auto}.cb-text{display:grid;gap:.1rem;min-width:0;flex:1 1 auto}.cb-eyebrow{font-size:.78rem;color:var(--subtle);font-weight:500}.cb-title{font-size:1rem;font-weight:600;color:var(--ink);line-height:1.35}.cb-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}.cb-head h2{margin:0;font-size:1.0625rem}.cb-head p{margin:.2rem 0 0;color:var(--muted);font-size:.875rem}.curriculum-bar-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem 1rem;align-items:end}.curriculum-bar-form label{display:grid;gap:.35rem;min-width:0;margin:0;font-size:.8125rem;color:var(--ink)}.curriculum-bar-form select{height:auto;min-height:42px}.curriculum-bar-form .btn{height:auto;min-height:42px;grid-column:-2 / -1;padding:0 1.1rem}.home{display:grid;gap:2rem}.home .page-header{margin-bottom:-.5rem}.continue-card{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1.25rem;padding:1.5rem;border-radius:var(--radius-lg);border:1px solid var(--ice-border);background:radial-gradient(120% 140% at 100% 0%,rgba(14,124,136,.1),transparent 55%),linear-gradient(180deg,#FFFFFF,var(--teal-50));box-shadow:var(--shadow-sm)}.continue-main{display:flex;align-items:center;gap:1rem;min-width:0;flex:1 1 22rem}.continue-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:var(--radius-md);background:var(--teal-500);color:#fff;flex:0 0 auto;box-shadow:0 6px 14px -6px #0e7c8899}.continue-text{min-width:0}.continue-text h2{margin:.2rem 0 .15rem;font-size:1.25rem}.continue-text p{margin:0;color:var(--muted);font-size:.9rem}.continue-actions{display:flex;flex-wrap:wrap;gap:.6rem}.onboarding{padding:1.5rem;border-radius:var(--radius-lg);background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow-xs)}.onboarding .curriculum-bar{margin:1.25rem 0 0;box-shadow:none;background:var(--surface2)}.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.step{display:flex;gap:.75rem;align-items:flex-start}.step strong{display:block;font-size:.95rem}.step p{margin:.15rem 0 0;color:var(--muted);font-size:.875rem}.step-number{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--teal-50);color:var(--teal-700);border:1px solid var(--ice-border);font-size:.8125rem;font-weight:700;flex:0 0 auto}.feature-group .section-title{margin-bottom:.75rem}.feature-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,19rem),1fr));gap:.9rem}.feature-card{display:flex;align-items:flex-start;gap:.9rem;padding:1.1rem 1.15rem;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);color:inherit;text-decoration:none;transition:border-color .15s,box-shadow .15s,transform .15s}.feature-card:hover{border-color:var(--ice-border);box-shadow:var(--shadow-md);transform:translateY(-1px);color:inherit}.feature-card:focus-visible{box-shadow:var(--focus-ring)}.feature-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:var(--radius-sm);background:var(--teal-50);color:var(--teal-500);flex:0 0 auto}.feature-body{display:grid;gap:.2rem;flex:1 1 auto;min-width:0}.feature-body strong{font-size:.975rem;font-weight:600;color:var(--ink)}.feature-body span{font-size:.875rem;color:var(--muted);line-height:1.5}.feature-arrow{color:var(--line-dark);margin-top:.6rem;flex:0 0 auto;transition:color .15s,transform .15s}.feature-card:hover .feature-arrow{color:var(--teal-500);transform:translate(2px)}.auth-page{min-height:100vh;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);background:var(--paper)}.auth-brand{position:relative;overflow:hidden;display:flex;align-items:center;padding:3rem clamp(2rem,5vw,5rem);color:#fff;background:radial-gradient(90% 70% at 0% 100%,rgba(245,158,11,.22),transparent 60%),radial-gradient(80% 80% at 100% 0%,rgba(14,124,136,.55),transparent 60%),linear-gradient(160deg,var(--teal-700),var(--teal-900) 70%)}.auth-brand-inner{max-width:30rem;display:grid;gap:1.25rem}.auth-logo{display:inline-flex;align-items:center;gap:.7rem;font-size:1.15rem;font-weight:700}.auth-brand .app-logo{background:#fff;color:var(--teal-700)}.auth-brand h1{margin:1.5rem 0 0;color:#fff;font-size:clamp(1.9rem,1.3rem + 2vw,2.6rem);font-weight:700;line-height:1.15;letter-spacing:-.03em}.auth-tagline{margin:0;color:#ffffffbf;font-size:1rem;font-style:italic}.auth-points{list-style:none;margin:1rem 0 0;padding:0;display:grid;gap:1.1rem}.auth-points li{display:flex;gap:.85rem;align-items:flex-start}.auth-points strong{display:block;font-size:.975rem}.auth-points span{color:#ffffffbf;font-size:.9rem}.auth-point-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:#ffffff1f;border:1px solid rgba(255,255,255,.18);flex:0 0 auto}.auth-main{display:flex;align-items:center;justify-content:center;padding:3rem 1.5rem}.auth-card{width:100%;max-width:25rem}.auth-card h2{margin:0;font-size:1.75rem;font-weight:700;letter-spacing:-.025em}.auth-subtitle{margin:.4rem 0 1.5rem;color:var(--muted)}.auth-mobile-logo{display:none;align-items:center;gap:.6rem;font-weight:700;margin-bottom:2rem}.auth-form{display:grid;gap:1rem;margin-top:1.25rem}.auth-fields{display:grid;gap:1rem;margin:0;padding:0;border:0;min-width:0}.auth-fields:disabled{opacity:.55}.auth-fields:disabled input{background-color:var(--surface2);cursor:not-allowed}.auth-notice{margin:0;padding:.75rem .9rem;border-radius:var(--radius-sm);border:1px solid var(--ice-border);background:var(--teal-50);color:var(--navy);font-size:.875rem}.auth-form .btn{margin-top:.25rem}.auth-footnote{margin:.75rem 0 0;font-size:.8125rem;color:var(--subtle);text-align:center}.segmented{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;border-radius:10px;background:#f2f4f7;border:1px solid var(--line)}.segmented button{min-height:36px;border:none;border-radius:7px;background:transparent;color:var(--muted);font-size:.875rem;font-weight:600;cursor:pointer}.segmented button.active{background:var(--paper);color:var(--ink);box-shadow:var(--shadow-sm)}.divider{display:flex;align-items:center;gap:.75rem;margin:1.25rem 0;color:var(--subtle);font-size:.8125rem}.divider:before,.divider:after{content:"";flex:1;height:1px;background:var(--line)}@media(max-width:1100px){.curriculum-bar-form{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:900px){.shell,.shell.nav-collapsed{grid-template-columns:minmax(0,1fr);grid-template-rows:60px minmax(0,1fr)}.app-topbar{grid-column:1;padding:0 .75rem 0 .5rem}.app-menu-btn{display:inline-grid}.app-title span,.app-tour-btn span{display:none}.app-tour-btn{padding:0 .6rem}.account-trigger-name{display:none}.account-trigger{padding-right:.45rem}.nav{position:fixed;top:60px;left:0;bottom:0;width:min(18rem,85vw);grid-column:auto;grid-row:auto;transform:translate(-100%);transition:transform .22s ease;box-shadow:var(--shadow-md);z-index:30}.shell.drawer-open .nav{transform:translate(0)}.nav-collapse{display:none}.shell.nav-collapsed .nav-section-label,.shell.nav-collapsed .nav-link-label{display:initial}.shell.nav-collapsed .nav a{justify-content:flex-start;padding:.55rem .75rem}.nav-scrim{display:block;position:fixed;inset:60px 0 0;background:#10182866;opacity:0;pointer-events:none;transition:opacity .2s;z-index:25}.shell.drawer-open .nav-scrim{opacity:1;pointer-events:auto}.main{grid-column:1;padding:1.25rem 1rem 2.5rem}.steps,.auth-page{grid-template-columns:1fr}.auth-brand{display:none}.auth-mobile-logo{display:flex}.auth-main{align-items:flex-start;padding-top:2.5rem}}@media(max-width:640px){.curriculum-bar{padding:1rem}.curriculum-bar-form{grid-template-columns:1fr}.curriculum-bar-form .btn{grid-column:auto}.cb-summary{flex-wrap:wrap}.cb-summary .btn{width:100%}.continue-card{padding:1.15rem}.continue-actions{width:100%}.continue-actions .btn{flex:1 1 auto}.card{padding:1rem 1.1rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important}}.link-btn{margin-left:.6rem;padding:0;border:none;background:none;color:var(--teal-500);font:inherit;font-weight:600;cursor:pointer}.link-btn:hover{color:var(--teal-700);text-decoration:underline}.continue-card .curriculum-bar{flex:1 1 100%;margin:.25rem 0 0;box-shadow:none}.chip{border-radius:999px;font-size:.8125rem;font-weight:500;padding:.3rem .75rem}button.chip{background:var(--paper);border:1px solid var(--line-dark);color:var(--muted)}button.chip:hover:not(:disabled){background:var(--surface2);border-color:#98a2b3;color:var(--ink)}.chip.primary,button.chip.primary{background:var(--teal-50);border-color:var(--teal-500);color:var(--teal-700);font-weight:600}button.chip.primary:hover:not(:disabled){background:var(--teal-100);border-color:var(--teal-500);color:var(--teal-700)}.level-options{grid-template-columns:repeat(auto-fill,minmax(11rem,1fr));gap:.6rem}.level-option{border:1px solid var(--line-dark);border-radius:var(--radius-md);background:var(--paper);padding:.85rem .95rem;transition:border-color .15s,box-shadow .15s,background .15s}.level-option:hover{border-color:#98a2b3}.level-option.selected{border-color:var(--teal-500);background:var(--teal-50);box-shadow:0 0 0 1px var(--teal-500)}.level-option .level-name{font-size:.9rem}.level-option .level-desc{font-size:.8rem;line-height:1.4;margin-top:.15rem}@media(max-width:640px){.level-options{grid-template-columns:1fr}}.chat-body{gap:1.25rem}.turn .who{font-size:.75rem;letter-spacing:.02em;text-transform:none;font-weight:600;color:var(--subtle)}.turn.tutor .who{color:var(--teal-700)}.turn .bubble{padding:.8rem 1rem;font-size:.9375rem;line-height:1.6}.turn.tutor .bubble{background:var(--paper);border:1px solid var(--line);border-radius:4px 14px 14px;box-shadow:var(--shadow-xs)}.turn.student .bubble,.turn.student .explore-bubble{background:var(--teal-500);border:1px solid var(--teal-500);color:#fff;border-radius:14px 4px 14px 14px}.chat-footer{background:var(--paper);border-top:1px solid var(--line)}.chat-footer textarea{min-height:3.25rem}.mode-toggle-btn{border-radius:var(--radius-sm)}.mode-toggle-btn.active{border-color:var(--teal-500);background:var(--teal-50);color:var(--teal-700)}.max-prose{max-width:820px}.max-prose form.grid>.btn{justify-self:start;min-width:12rem;min-height:44px}.page-header-text{min-width:0}.page-header-text .eyebrow{margin-bottom:.3rem}.page-header-actions{display:flex;flex-wrap:wrap;gap:.6rem}.section-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.75rem}.section-head .section-title{margin:0}.back-link{display:inline-flex;align-items:center;gap:.35rem;margin:0 0 1rem -.4rem;padding:.35rem .5rem;border:none;border-radius:var(--radius-sm);background:none;color:var(--muted);font:inherit;font-size:.875rem;font-weight:550;text-decoration:none;cursor:pointer}.back-link:hover{background:var(--paper);color:var(--ink)}.search-field{position:relative;display:flex;align-items:center;width:min(100%,20rem);margin:0}.search-field svg{position:absolute;left:.75rem;color:var(--subtle);pointer-events:none}.search-field input{padding-left:2.3rem}.empty-state{display:grid;justify-items:center;gap:.4rem;padding:2.75rem 1.5rem;text-align:center;background:var(--paper);border:1px dashed var(--line-dark);border-radius:var(--radius-lg)}.empty-state-icon{display:grid;place-items:center;width:52px;height:52px;margin-bottom:.4rem;border-radius:50%;background:var(--teal-50);color:var(--teal-500)}.empty-state strong{font-size:1rem;color:var(--ink)}.empty-state p{margin:0;max-width:26rem;color:var(--muted);font-size:.9rem}.empty-state-action{margin-top:.75rem}.progress{height:8px;border-radius:999px;background:#eaecf0;overflow:hidden}.progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--teal-500),#14A3B2);transition:width .4s ease}.progress.is-done span{background:#12b76a}.level-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.15rem .6rem;border-radius:999px;font-size:.75rem;font-weight:600;white-space:nowrap}.level-badge:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.level-beginner{background:#ecfdf3;color:#067647}.level-intermediate{background:#fffaeb;color:#b54708}.level-advanced{background:#eff8ff;color:#175cd3}.level-expert{background:#f4f3ff;color:#5925dc}.status-pill{display:inline-flex;align-items:center;padding:.12rem .55rem;border-radius:999px;font-size:.75rem;font-weight:600;background:#f2f4f7;color:var(--muted);white-space:nowrap}.status-pill.status-in_progress{background:var(--teal-50);color:var(--teal-700)}.status-pill.status-complete{background:#ecfdf3;color:#067647}.status-pill.status-skipped{background:#f2f4f7;color:var(--subtle)}.callout{display:flex;flex-wrap:wrap;align-items:center;gap:.9rem;padding:1rem 1.15rem;margin-bottom:1.5rem;border-radius:var(--radius-md);border:1px solid var(--line);background:var(--paper)}.callout>div{flex:1 1 16rem}.callout strong{display:block}.callout p{margin:.15rem 0 0;color:var(--muted);font-size:.9rem}.callout-ok{background:#f6fef9;border-color:#abefc6}.callout-ok>svg{color:#079455}.callout-warn{background:#fffcf5;border-color:#fedf89}.callout-warn>svg{color:#dc6803}.callout-info{background:var(--teal-50);border-color:var(--ice-border)}.callout-info>svg{color:var(--teal-500)}.icon-btn:disabled{opacity:.4;cursor:not-allowed}.icon-btn.danger:hover{background:var(--warn-bg);color:var(--warn)}.segmented-sm{display:inline-grid;grid-auto-flow:column;grid-template-columns:none;padding:3px}.segmented-sm button{min-height:30px;padding:0 .75rem;display:inline-flex;align-items:center;gap:.35rem;font-size:.8125rem}.plan-create{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;padding:1.15rem 1.25rem;margin-bottom:2rem;border-radius:var(--radius-lg);border:1px solid var(--ice-border);background:linear-gradient(180deg,#FFFFFF,var(--teal-50));box-shadow:var(--shadow-xs)}.plan-create-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:var(--radius-md);background:var(--teal-500);color:#fff;flex:0 0 auto}.plan-create-text{flex:1 1 18rem;min-width:0}.plan-create-text strong{display:block;font-size:1rem}.plan-create-text p{margin:.2rem 0 0;color:var(--muted);font-size:.9rem}.plan-create-actions{display:flex;flex-wrap:wrap;gap:.6rem}.plan-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,17rem),1fr));gap:.9rem}.plan-card{display:flex;flex-direction:column;gap:.5rem;padding:1rem 1.1rem 1.1rem;text-align:left;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);font:inherit;color:inherit;cursor:pointer;transition:border-color .15s,box-shadow .15s,transform .15s}.plan-card:hover{border-color:var(--ice-border);box-shadow:var(--shadow-md);transform:translateY(-1px)}.plan-card-top{display:flex;align-items:center;justify-content:space-between}.plan-card-pct{font-size:.8125rem;font-weight:600;color:var(--muted);font-variant-numeric:tabular-nums}.plan-card-title{font-size:1rem;font-weight:600;line-height:1.35;color:var(--ink)}.plan-card-meta{font-size:.8125rem;color:var(--subtle);margin-bottom:.35rem}.plan-detail{max-width:860px}.plan-hero{display:grid;gap:1.1rem;padding:1.5rem;margin-bottom:1.75rem;border-radius:var(--radius-lg);background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow-xs)}.plan-hero .page-subtitle{font-size:.9rem}.plan-hero-progress{display:grid;gap:.55rem}.plan-hero-stats{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem;font-size:.875rem;color:var(--muted)}.plan-hero-stats strong{color:var(--ink)}.task-list{list-style:none;margin:0;padding:0}.task-item{position:relative;display:grid;grid-template-columns:2.25rem minmax(0,1fr);gap:.9rem;padding-bottom:1rem}.task-item:not(:last-child):before{content:"";position:absolute;left:calc(1.125rem - 1px);top:2.4rem;bottom:.2rem;width:2px;background:var(--line)}.task-item.status-complete:not(:last-child):before{background:#abefc6}.task-marker{display:grid;place-items:center;width:2.25rem;height:2.25rem;border-radius:50%;background:var(--paper);border:2px solid var(--line-dark);color:var(--muted);font-size:.875rem;font-weight:700;z-index:1}.task-item.status-complete .task-marker{background:#12b76a;border-color:#12b76a;color:#fff}.task-item.status-skipped .task-marker{background:#f2f4f7;color:var(--subtle)}.task-item.is-current .task-marker,.task-item.status-in_progress .task-marker{border-color:var(--teal-500);color:var(--teal-700);box-shadow:var(--focus-ring)}.task-card{padding:1rem 1.15rem;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-xs)}.task-item.is-current .task-card{border-color:var(--ice-border);box-shadow:var(--shadow-sm)}.task-item.status-complete .task-card,.task-item.status-skipped .task-card{background:var(--surface2);box-shadow:none}.task-item.status-skipped .task-desc{color:var(--subtle)}.task-card-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.4rem}.task-type{display:inline-flex;align-items:center;gap:.4rem;font-size:.9375rem;font-weight:600;color:var(--ink)}.task-type svg{color:var(--teal-500)}.task-desc{margin:0;color:var(--ink);font-size:.9rem;line-height:1.55}.task-meta{display:flex;flex-wrap:wrap;gap:.35rem 1rem;margin-top:.55rem;font-size:.8125rem;color:var(--subtle)}.task-meta>span{display:inline-flex;align-items:center;gap:.3rem}.task-meta>.task-topic{display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-goal{display:flex;gap:.45rem;margin:.7rem 0 0;padding:.6rem .75rem;border-radius:var(--radius-sm);background:var(--surface2);color:var(--muted);font-size:.8125rem;line-height:1.5}.task-goal svg{flex:0 0 auto;margin-top:.15rem;color:var(--teal-500)}.task-item.status-complete .task-goal{background:var(--paper)}.task-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.85rem}.main:has(.notes-page){padding:0;overflow:hidden;display:flex}.main:has(.notes-page) .main-inner{max-width:none;width:100%;height:100%;margin:0}.notes-page{display:grid;grid-template-columns:20rem minmax(0,1fr);height:100%;min-height:0}.notes-page.list-collapsed{grid-template-columns:minmax(0,1fr)}.notes-page.list-collapsed .notes-sidebar{display:none}.notes-sidebar{display:flex;flex-direction:column;gap:.9rem;min-height:0;padding:1.5rem 1rem 1rem;background:var(--paper);border-right:1px solid var(--line)}.notes-sidebar-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;padding:0 .25rem}.notes-heading{margin:0;font-size:1.375rem;font-weight:700;letter-spacing:-.02em}.notes-count{font-size:.8125rem;color:var(--subtle)}.notes-search-field{width:100%}.notes-list{flex:1 1 auto;min-height:0;overflow-y:auto;display:grid;align-content:start;gap:.75rem;margin:0 -.25rem;padding:0 .25rem}.notes-group-label{margin:0 0 .3rem;padding:0 .6rem;font-size:.6875rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--subtle)}.notes-list-item{display:grid;gap:.15rem;width:100%;padding:.65rem .7rem;margin-bottom:2px;text-align:left;background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);font:inherit;color:inherit;cursor:pointer}.notes-list-item:hover{background:var(--surface2)}.notes-list-item.active{background:var(--teal-50);border-color:var(--ice-border)}.notes-list-row{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem;min-width:0}.notes-list-title{font-size:.9rem;font-weight:600;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notes-list-date{flex:0 0 auto;font-size:.75rem;color:var(--subtle)}.notes-list-snippet{font-size:.8125rem;color:var(--muted);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.notes-list-meta{font-size:.75rem;color:var(--subtle);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notes-empty{margin:0;padding:.5rem .6rem;color:var(--subtle);font-size:.875rem}.notes-pager{display:flex;align-items:center;justify-content:space-between;padding-top:.6rem;border-top:1px solid var(--line);font-size:.8125rem;color:var(--subtle)}.notes-editor{display:flex;flex-direction:column;min-width:0;min-height:0;overflow-y:auto;background:var(--bg)}.notes-editor-empty{justify-content:center;align-items:center;padding:2rem}.notes-editor-empty .empty-state{width:min(100%,30rem)}.notes-toolbar{display:flex;align-items:center;gap:.75rem;padding:.75rem 1.25rem;background:var(--paper);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:2}.notes-status{font-size:.8125rem;color:var(--subtle);white-space:nowrap}.notes-status.is-dirty{color:var(--saffron-dark)}.notes-toolbar-actions{display:flex;align-items:center;gap:.4rem;margin-left:auto}.notes-editor>.form-error{margin:.75rem 1.25rem 0}.notes-sheet{flex:0 0 auto;width:min(100% - 2.5rem,52rem);margin:1.5rem auto;padding:2rem 2.25rem;display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.notes-title-input{width:100%;min-height:0;padding:0;border:none;box-shadow:none;background:transparent;font-size:1.75rem;font-weight:700;letter-spacing:-.02em;line-height:1.25}.notes-title-input:hover,.notes-title-input:focus{border:none;box-shadow:none}.notes-chapter{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;margin:.6rem 0 1.25rem;padding-bottom:1rem;border-bottom:1px solid var(--line);font-size:.8125rem;color:var(--subtle)}.source-tag{display:inline-flex;align-items:center;gap:.3rem;padding:.15rem .55rem;border-radius:999px;font-size:.75rem;font-weight:600}.source-tag.explore{background:var(--teal-50);color:var(--teal-700)}.source-tag.custom{background:#fffaeb;color:#b54708}.notes-preview{flex:1 1 auto;font-size:.975rem;line-height:1.7}.notes-preview-empty{width:100%;padding:2rem;border:1px dashed var(--line-dark);border-radius:var(--radius-md);background:var(--surface2);color:var(--subtle);font:inherit;cursor:text}.notes-textarea{flex:1 1 auto;min-height:20rem;field-sizing:content;overflow:hidden;padding:0;border:none;box-shadow:none;resize:none;font-size:.975rem;line-height:1.7}.notes-textarea:hover,.notes-textarea:focus{border:none;box-shadow:none}.notes-modal-backdrop{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:1rem;background:#10182873}.notes-modal{width:min(100%,26rem);padding:1.5rem;background:var(--paper);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.notes-modal h3{margin:0 0 .4rem;font-size:1.125rem}.notes-modal p{margin:0;color:var(--muted);font-size:.9rem;line-height:1.5}.notes-modal-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:1.4rem}.btn.notes-delete{background:var(--warn);border-color:var(--warn)}.btn.notes-delete:hover{background:#912018;border-color:#912018}@media(max-width:900px){.main:has(.notes-page){overflow:auto}.notes-page{grid-template-columns:minmax(0,1fr);height:auto;min-height:100%}.notes-page:not(.list-collapsed) .notes-editor{display:none}.notes-sidebar{border-right:none;padding:1.25rem 1rem;min-height:calc(100vh - 60px)}.notes-list{overflow:visible}.notes-toolbar{padding:.6rem .75rem;gap:.5rem}.notes-status{display:none}.notes-sheet{width:auto;margin:.75rem;padding:1.25rem}.notes-title-input{font-size:1.375rem}.plan-hero{padding:1.15rem}}.notes-toolbar{min-width:0}.notes-status{min-width:0;overflow:hidden;text-overflow:ellipsis}.notes-toolbar-actions{flex:0 0 auto}@media(min-width:901px)and (max-width:1200px){.notes-page{grid-template-columns:17rem minmax(0,1fr)}.notes-page.list-collapsed{grid-template-columns:minmax(0,1fr)}.notes-sheet{padding:1.5rem}}.eyebrow .level-badge{text-transform:none;letter-spacing:0}.stat-pair{display:flex;gap:1.25rem;font-size:.875rem;color:var(--muted)}.stat-pair strong{font-size:1.25rem;color:var(--ink);margin-right:.25rem;font-variant-numeric:tabular-nums}.lessons-search{margin-bottom:1rem}.chapter-grid-v2{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,18.5rem),1fr));gap:.9rem}.chapter-card{display:flex;flex-direction:column;gap:.35rem;padding:1.1rem 1.15rem 1rem;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-xs)}.chapter-card-num{font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--subtle)}.chapter-card-title{margin:0 0 .6rem;font-size:1rem;font-weight:600;line-height:1.35}.level-links{display:grid;gap:.35rem;margin-top:auto}.level-link{display:flex;align-items:center;gap:.6rem;padding:.5rem .65rem;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--surface2);color:var(--ink);font-size:.875rem;text-decoration:none;transition:border-color .15s,background .15s}.level-link:before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor;flex:0 0 auto}.level-link.level-beginner:before{background:#17b26a}.level-link.level-intermediate:before{background:#f79009}.level-link.level-advanced:before{background:#2e90fa}.level-link.level-beginner,.level-link.level-intermediate,.level-link.level-advanced{background:var(--surface2);color:var(--ink)}.level-link:hover{border-color:var(--ice-border);background:var(--teal-50);color:var(--ink)}.level-link-name{font-weight:600}.level-link-count{margin-left:auto;color:var(--subtle);font-size:.8125rem}.level-link svg{color:var(--subtle)}.level-link:hover svg{color:var(--teal-500)}.breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;margin-bottom:.75rem;font-size:.875rem;color:var(--subtle)}.breadcrumb a{color:var(--muted);text-decoration:none;font-weight:500}.breadcrumb a:hover{color:var(--teal-700);text-decoration:underline}.lesson-list{list-style:none;margin:0;padding:0;display:grid;gap:.65rem;max-width:860px}.lesson-row{display:flex;align-items:center;gap:1rem;padding:1rem 1.15rem;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);color:inherit;text-decoration:none;transition:border-color .15s,box-shadow .15s}.lesson-row:hover{border-color:var(--ice-border);box-shadow:var(--shadow-md);color:inherit}.lesson-row-num{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--teal-50);color:var(--teal-700);font-weight:700;flex:0 0 auto}.lesson-row-text{display:grid;gap:.15rem;min-width:0;flex:1 1 auto}.lesson-row-text strong{font-size:.975rem;font-weight:600;color:var(--ink)}.lesson-row-text span{font-size:.8125rem;color:var(--subtle)}.lesson-row-cta{display:inline-flex;align-items:center;gap:.2rem;font-size:.875rem;font-weight:600;color:var(--teal-500);flex:0 0 auto}.lig-player-sticky{background:var(--bg)}.lig-concept{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--paper);box-shadow:var(--shadow-xs)}.lig-concept.is-open{border-color:var(--ice-border);box-shadow:var(--shadow-sm)}.lig-concept-toggle{padding:1rem 1.15rem}.lig-block-wrap{border-radius:var(--radius-md)}.lig-progress-bar-fill,.lig-ring-fill{stroke:var(--teal-500)}@media(max-width:640px){.lesson-row-cta{display:none}.stat-pair{gap:.9rem}}.practice-page{max-width:900px}.practice-setup{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs)}.setup-row{display:grid;grid-template-columns:minmax(0,15rem) minmax(0,1fr);gap:1rem 2rem;align-items:start;padding:1.25rem 1.5rem;border-bottom:1px solid var(--line)}.setup-label strong{display:block;font-size:.9375rem}.setup-label span{display:block;margin-top:.15rem;font-size:.8125rem;color:var(--subtle)}.setup-row select{max-width:26rem}.chip-set{display:flex;flex-wrap:wrap;gap:.45rem}.chip-set .chip{display:inline-flex;align-items:center;gap:.35rem;min-height:34px;padding:0 .8rem}.chip-count{font-size:.75rem;font-weight:500;color:var(--subtle);font-variant-numeric:tabular-nums}.chip.primary .chip-count{color:var(--teal-500)}.setup-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;padding:1rem 1.5rem;background:var(--surface2);border-radius:0 0 var(--radius-lg) var(--radius-lg)}.setup-footer .muted{font-size:.875rem;color:var(--muted)}.quiz{max-width:760px}.quiz-top{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.5rem}.quiz-top .back-link{margin:0 0 0 -.4rem}.quiz-count{font-size:.875rem;font-weight:600;color:var(--muted)}.quiz-steps{display:flex;gap:4px;margin-bottom:1.25rem}.quiz-step{flex:1 1 0;height:6px;padding:0;border:none;border-radius:999px;background:#eaecf0;cursor:pointer}.quiz-step.is-right{background:#17b26a}.quiz-step.is-wrong{background:#f04438}.quiz-step.is-pending{background:#f79009}.quiz-step.is-current{box-shadow:0 0 0 2px var(--paper),0 0 0 4px var(--teal-500)}.question-card{padding:1.5rem;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.question-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;margin-bottom:1rem}.tag{padding:.15rem .55rem;border-radius:6px;background:#f2f4f7;color:var(--muted);font-size:.75rem;font-weight:600}.question-marks{margin-left:auto;font-size:.8125rem;font-weight:600;color:var(--teal-700)}.question-stem{margin:0 0 1.25rem;font-size:1.0625rem;font-weight:500;line-height:1.6;color:var(--ink)}.answer-options{display:grid;gap:.55rem}.answer-option{display:flex;align-items:center;gap:.85rem;width:100%;padding:.75rem .9rem;text-align:left;background:var(--paper);border:1px solid var(--line-dark);border-radius:var(--radius-md);font:inherit;color:var(--ink);cursor:pointer;transition:border-color .15s,background .15s,box-shadow .15s}.answer-option:hover:not(:disabled){border-color:var(--teal-500);background:var(--teal-50)}.answer-option:disabled{cursor:default}.answer-letter{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;border:1px solid var(--line-dark);background:var(--surface2);font-size:.8125rem;font-weight:700;color:var(--muted);flex:0 0 auto}.answer-text{font-size:.9375rem;line-height:1.45}.answer-option.is-selected{border-color:var(--teal-500);background:var(--teal-50);box-shadow:0 0 0 1px var(--teal-500)}.answer-option.is-selected .answer-letter{background:var(--teal-500);border-color:var(--teal-500);color:#fff}.answer-option.is-right{border-color:#17b26a;background:#ecfdf3;box-shadow:0 0 0 1px #17b26a}.answer-option.is-right .answer-letter{background:#17b26a;border-color:#17b26a}.answer-option.is-wrong{border-color:#f04438;background:#fef3f2;box-shadow:0 0 0 1px #f04438}.answer-option.is-wrong .answer-letter{background:#f04438;border-color:#f04438}.written-answer{min-height:9rem;font-size:.9375rem;line-height:1.6}.feedback{margin-top:1rem;padding:1rem 1.15rem;border-radius:var(--radius-md);border:1px solid var(--line)}.feedback.is-right{background:#f6fef9;border-color:#abefc6}.feedback.is-wrong{background:#fffbfa;border-color:#fecdca}.feedback.is-pending{background:#fffcf5;border-color:#fedf89}.feedback-head{display:flex;align-items:center;gap:.5rem}.feedback.is-right .feedback-head{color:#067647}.feedback.is-wrong .feedback-head{color:#b42318}.feedback.is-pending .feedback-head{color:#b54708}.feedback p{margin:.5rem 0 0;color:var(--muted);font-size:.9rem}.marking-guide{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--line)}.marking-guide>span{font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--subtle)}.marking-guide ul{margin:.35rem 0 0;padding-left:1.2rem;color:var(--ink);font-size:.9rem;line-height:1.55}.quiz-actions{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-top:1.25rem}.quiz-actions-right{display:flex;gap:.5rem;margin-left:auto}.results{max-width:820px}.results-hero{display:flex;flex-wrap:wrap;align-items:center;gap:1.5rem;padding:1.5rem;border-radius:var(--radius-lg);background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow-sm)}.results-text{flex:1 1 18rem;min-width:0}.results-text .page-subtitle{font-size:.9rem}.score-ring{--tone: var(--teal-500);display:grid;place-items:center;width:108px;height:108px;border-radius:50%;background:radial-gradient(closest-side,var(--paper) 78%,transparent 79%),conic-gradient(var(--tone) calc(var(--pct) * 1%),#EAECF0 0);flex:0 0 auto}.score-ring span{font-size:1.5rem;font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums}.tone-ok .score-ring{--tone: #17B26A}.tone-note .score-ring{--tone: #F79009}.tone-warn .score-ring{--tone: #F04438}.results-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin:1rem 0 1.5rem}.results-stats>div{display:grid;gap:.1rem;padding:.9rem 1rem;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-md)}.results-stats strong{font-size:1.25rem;font-variant-numeric:tabular-nums}.results-stats span{font-size:.8125rem;color:var(--subtle)}.results-list{list-style:none;margin:0 0 1.5rem;padding:0;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-md);overflow:hidden}.results-row{display:flex;align-items:flex-start;gap:.75rem;padding:.85rem 1rem;border-bottom:1px solid var(--line)}.results-row:last-child{border-bottom:none}.results-icon{flex:0 0 auto;margin-top:.1rem}.tone-right .results-icon{color:#17b26a}.tone-wrong .results-icon{color:#f04438}.tone-pending .results-icon{color:#f79009}.tone-skipped .results-icon{color:var(--subtle)}.results-stem{flex:1 1 auto;min-width:0;font-size:.9rem;color:var(--ink);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.results-score{flex:0 0 auto;font-size:.8125rem;font-weight:600;color:var(--muted);font-variant-numeric:tabular-nums}.results-actions{display:flex;flex-wrap:wrap;gap:.6rem}@media(max-width:760px){.setup-row{grid-template-columns:1fr;gap:.6rem;padding:1.1rem}.setup-footer{padding:1rem 1.1rem}.setup-footer .btn{width:100%}.question-card{padding:1.1rem}.results-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.results-hero{padding:1.15rem}}.reader{position:relative}.reader-progress{position:sticky;top:-2rem;z-index:6;margin:-2rem -2.5rem 1.5rem;padding:0;background:var(--bg)}.reader-progress .progress{height:4px;border-radius:0;background:var(--line)}.reader-progress .progress span{border-radius:0 4px 4px 0}.reader-head{max-width:46rem;margin-bottom:1.75rem;scroll-margin-top:1rem}.reader-eyebrow{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .9rem;margin-bottom:.6rem;font-size:.8125rem;color:var(--subtle)}.reader-eyebrow>span:not(.level-badge)+span:not(.level-badge):before{content:"·";margin-right:.9rem;color:var(--line-dark)}.reader-title{margin:0;font-size:clamp(1.6rem,1.2rem + 1.4vw,2.1rem);font-weight:700;line-height:1.2;letter-spacing:-.025em}.reader-desc{margin:.6rem 0 0;font-size:1.0625rem;line-height:1.6;color:var(--muted)}.reader-layout{display:grid;grid-template-columns:16.5rem minmax(0,1fr);gap:2.5rem;align-items:start}.reader-toc{position:sticky;top:1rem;max-height:calc(100vh - 64px - 2rem);overflow-y:auto;padding:1rem .75rem;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs)}.reader-toc-label{margin:0 0 .6rem;padding:0 .5rem;font-size:.6875rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--subtle)}.toc-concepts{list-style:none;margin:0;padding:0;display:grid;gap:2px}.toc-concept-btn{display:flex;align-items:flex-start;gap:.65rem;width:100%;padding:.55rem .5rem;text-align:left;border:none;border-radius:var(--radius-sm);background:transparent;font:inherit;color:inherit;cursor:pointer}.toc-concept-btn:hover{background:var(--surface2)}.toc-concept.is-open .toc-concept-btn{background:var(--teal-50)}.toc-marker{display:grid;place-items:center;width:24px;height:24px;margin-top:1px;border-radius:50%;border:1.5px solid var(--line-dark);background:var(--paper);color:var(--muted);font-size:.75rem;font-weight:700;flex:0 0 auto}.toc-concept.is-open .toc-marker{border-color:var(--teal-500);color:var(--teal-700)}.toc-concept.is-done .toc-marker{background:#17b26a;border-color:#17b26a;color:#fff}.toc-concept-text{display:grid;gap:.05rem;min-width:0}.toc-concept-title{font-size:.875rem;font-weight:600;line-height:1.35;color:var(--ink)}.toc-concept-count{font-size:.75rem;color:var(--subtle)}.toc-sections{list-style:none;margin:.15rem 0 .4rem;padding:0 0 0 1.35rem}.toc-sections a{display:flex;align-items:center;gap:.5rem;padding:.35rem .5rem .35rem .75rem;border-left:2px solid var(--line);font-size:.8125rem;line-height:1.35;color:var(--muted);text-decoration:none}.toc-sections a svg{flex:0 0 auto;color:var(--subtle)}.toc-sections a:hover{color:var(--ink);border-left-color:var(--line-dark)}.toc-sections a.is-read{color:var(--ink);border-left-color:#75e0a7}.toc-sections a.is-read svg{color:#17b26a}.toc-lessons{display:grid;gap:.4rem;margin-top:.85rem;padding-top:.85rem;border-top:1px solid var(--line)}.toc-lessons a{display:flex;align-items:flex-start;gap:.55rem;padding:.5rem;border-radius:var(--radius-sm);color:var(--ink);font-size:.8125rem;font-weight:500;line-height:1.35;text-decoration:none}.toc-lessons a:hover{background:var(--surface2);color:var(--ink)}.toc-lessons a svg{flex:0 0 auto;margin-top:.15rem;color:var(--teal-500)}.toc-lessons small{display:block;font-size:.6875rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--subtle)}.reader-main{max-width:46rem;min-width:0}.concept-head{margin-bottom:1.25rem}.concept-head h2{margin:.3rem 0 0;font-size:1.5rem;font-weight:700;letter-spacing:-.02em}.lesson-block{--kind: var(--teal-500);--kind-bg: var(--teal-50);margin-bottom:1rem;padding:1.25rem 1.4rem 1.35rem;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);font-size:1rem;line-height:1.7;scroll-margin-top:1.25rem}.lesson-block.type-realworld{--kind: #B54708;--kind-bg: #FFFAEB}.lesson-block.type-visual{--kind: #6938EF;--kind-bg: #F4F3FF}.lesson-block.type-example{--kind: #067647;--kind-bg: #ECFDF3}.lesson-block.type-checkpoint{--kind: #C11574;--kind-bg: #FDF2FA}.lesson-block.type-connect{--kind: #175CD3;--kind-bg: #EFF8FF}.lesson-block.type-summary{--kind: #344054;--kind-bg: #F2F4F7}.lesson-block-head{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.lesson-block-icon{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:var(--kind-bg);color:var(--kind)}.lesson-block-kind{font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--kind)}.lesson-block-read{margin-left:auto;color:#17b26a}.lesson-block h3{margin:0 0 .5rem;font-size:1.125rem;font-weight:650;line-height:1.4}.lesson-block p{margin:0 0 .75rem}.lesson-block p:last-child{margin-bottom:0}.lesson-block .rich-paragraph{margin:0 0 .75rem;font-size:1rem;line-height:1.7}.lesson-block .lig-big-idea{margin:0 0 .9rem;padding:.85rem 1rem;border-radius:var(--radius-md);background:var(--teal-50);color:var(--navy);font-size:1.0625rem;font-weight:600;line-height:1.5}.lesson-block .lig-cite{margin:.75rem 0 0;padding:0;border:none;background:none;font-size:.8125rem;font-style:normal;color:var(--subtle)}.lesson-block .lig-cite:before{content:"From the textbook · ";font-weight:600}.lesson-block .lig-misconception{margin-top:1rem;padding:.9rem 1rem;border-radius:var(--radius-md);border:1px solid #FEDF89;background:#fffcf5;font-size:.9375rem;line-height:1.6}.lesson-block .lig-misconception p{margin:.2rem 0 0}.lesson-block .lig-misconception-label{font-size:.75rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#b54708}.lesson-block .lig-rw-scenario{font-style:normal;font-weight:500;color:var(--ink)}.lesson-block .lig-rw-examples,.lesson-block .lig-summary-list{margin:.5rem 0 0;padding-left:1.25rem;display:grid;gap:.45rem}.lesson-block .lig-summary-list li{font-size:1rem}.lesson-block .lig-visual-labels{gap:.4rem;margin-top:.75rem}.lesson-block .lig-visual-chip{background:var(--kind-bg);border-color:transparent;color:var(--kind);font-weight:600}.lesson-block .lig-example-steps-list{counter-reset:step;list-style:none;margin:.75rem 0 0;padding:0;display:grid;gap:.6rem}.lesson-block .lig-example-step{position:relative;counter-increment:step;padding:.75rem .9rem .75rem 3rem;border-radius:var(--radius-md);background:var(--surface2);border:1px solid var(--line)}.lesson-block .lig-example-step:before{content:counter(step);position:absolute;left:.85rem;top:.75rem;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#17b26a;color:#fff;font-size:.75rem;font-weight:700}.lesson-block .lig-example-step-heading{color:var(--ink);font-size:.9375rem;font-weight:600}.lesson-block .lig-example-step .rich-paragraph{margin:.15rem 0 0;font-size:.9375rem}.lesson-block .lig-check-question{font-size:1.0625rem;font-weight:600;margin-bottom:.9rem}.lesson-block .lig-check-options{gap:.5rem}.lesson-block .lig-check-option{display:flex;align-items:center;gap:.8rem;padding:.7rem .85rem;border:1px solid var(--line-dark);border-radius:var(--radius-md);background:var(--paper);font-size:.9375rem;line-height:1.45;text-align:left}.lesson-block .lig-check-option:hover:not(:disabled){border-color:var(--teal-500);background:var(--teal-50)}.lesson-block .lig-option-label{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;border:1px solid var(--line-dark);background:var(--surface2);font-size:.8125rem;font-weight:700;color:var(--muted);flex:0 0 auto}.lesson-block .lig-check-option--correct{border-color:#17b26a!important;background:#ecfdf3!important;box-shadow:0 0 0 1px #17b26a;opacity:1}.lesson-block .lig-check-option--correct .lig-option-label{background:#17b26a;border-color:#17b26a;color:#fff}.lesson-block .lig-check-option--wrong{border-color:#f04438!important;background:#fef3f2!important;box-shadow:0 0 0 1px #f04438}.lesson-block .lig-check-option--wrong .lig-option-label{background:#f04438;border-color:#f04438;color:#fff}.lesson-block .lig-feedback-box{display:grid;gap:.2rem;margin-top:.9rem;padding:.85rem 1rem;border-radius:var(--radius-md);font-size:.9375rem;line-height:1.55}.lesson-block .lig-feedback-box span{color:var(--ink)}.lesson-block .lig-feedback-box.ok{background:#f6fef9;border:1px solid #ABEFC6;color:#067647}.lesson-block .lig-feedback-box.warn{background:#fffbfa;border:1px solid #FECDCA;color:#b42318}.lesson-block .lig-connect-pills{list-style:none;margin:.25rem 0 0;padding:0;gap:.5rem}.lesson-block .lig-connect-pill{padding:.65rem .85rem;border-radius:var(--radius-md);border:1px solid #B2DDFF;background:#f5faff;font-size:.9375rem;color:var(--ink)}.lesson-finish{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;margin:1.5rem 0 0;padding:1.25rem 1.4rem;border-radius:var(--radius-lg);border:1px solid var(--ice-border);background:linear-gradient(180deg,#FFFFFF,var(--teal-50))}.lesson-finish-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:#fef0c7;color:#dc6803;flex:0 0 auto}.lesson-finish>div{flex:1 1 16rem}.lesson-finish strong{display:block;font-size:1rem}.lesson-finish p{margin:.2rem 0 0;font-size:.9rem;color:var(--muted)}.lesson-finish-actions{display:flex;flex-wrap:wrap;gap:.5rem}.concept-nav{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid var(--line)}.concept-nav .btn{max-width:100%;white-space:normal;text-align:left;min-height:44px}@media(max-width:1100px){.reader-layout{grid-template-columns:14.5rem minmax(0,1fr);gap:1.75rem}}@media(max-width:900px){.reader-progress{top:-1.25rem;margin:-1.25rem -1rem 1.25rem}.reader-layout{grid-template-columns:minmax(0,1fr);gap:1.25rem}.reader-toc{position:static;max-height:none}.toc-concepts{grid-auto-flow:row}.toc-sections{display:none}.lesson-block{padding:1.1rem 1.1rem 1.2rem}.concept-nav{flex-direction:column-reverse;align-items:stretch}.concept-nav>span:empty{display:none}.concept-nav .btn{justify-content:center;text-align:center}}
