@font-face{font-display:block;font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2) format("woff2"),url(/assets/KaTeX_AMS-Regular-DMm9YOAa.woff) format("woff"),url(/assets/KaTeX_AMS-Regular-DRggAlZN.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff) format("woff"),url(/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff) format("woff"),url(/assets/KaTeX_Fraktur-Regular-CB_wures.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Main-Bold-Cx986IdX.woff2) format("woff2"),url(/assets/KaTeX_Main-Bold-Jm3AIy58.woff) format("woff"),url(/assets/KaTeX_Main-Bold-waoOVXN0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2) format("woff2"),url(/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff) format("woff"),url(/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2) format("woff2"),url(/assets/KaTeX_Main-Italic-BMLOBm91.woff) format("woff"),url(/assets/KaTeX_Main-Italic-3WenGoN9.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Main-Regular-B22Nviop.woff2) format("woff2"),url(/assets/KaTeX_Main-Regular-Dr94JaBh.woff) format("woff"),url(/assets/KaTeX_Main-Regular-ypZvNtVU.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2) format("woff2"),url(/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff) format("woff"),url(/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Math-Italic-t53AETM-.woff2) format("woff2"),url(/assets/KaTeX_Math-Italic-DA0__PXp.woff) format("woff"),url(/assets/KaTeX_Math-Italic-flOr_0UB.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:700;src:url(/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff) format("woff"),url(/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:italic;font-weight:400;src:url(/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff) format("woff"),url(/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:400;src:url(/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff) format("woff"),url(/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Script-Regular-D3wIWfF6.woff2) format("woff2"),url(/assets/KaTeX_Script-Regular-D5yQViql.woff) format("woff"),url(/assets/KaTeX_Script-Regular-C5JkGWo-.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2) format("woff2"),url(/assets/KaTeX_Size1-Regular-C195tn64.woff) format("woff"),url(/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2) format("woff2"),url(/assets/KaTeX_Size2-Regular-oD1tc_U0.woff) format("woff"),url(/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAA4oAA4AAAAAHbQAAA3TAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAABmAAgRQIDgmcDBEICo1oijYBNgIkA14LMgAEIAWJAAeBHAyBHBvbGiMRdnO0IkRRkiYDgr9KsJ1NUAf2kILNxgUmgqIgq1P89vcbIcmsQbRps3vCcXdYOKSWEPEKgZgQkprQQsxIXUgq0DqpGKmIvrgkeVGtEQD9DzAO29fM9jYhxZEsL2FeURH2JN4MIcTdO049NCVdxQ/w9NrSYFEBKTDKpLKfNkCGDc1RwjZLQcm3vqJ2UW9Xfa3tgAHz6ivp6vgC2yD4/6352ndnN0X0TL7seypkjZlMsjmZnf0Mm5Q+JykRWQBKCVCVPbARPXWyQtb5VgLB6Biq7/Uixcj2WGqdI8tGSgkuRG+t910GKP2D7AQH0DB9FMDW/obJZ8giFI3Wg8Cvevz0M+5m0rTh7XDBlvo9Y4vm13EXmfttwI4mBo1EG15fxJhUiCLbiiyCf/ZA6MFAhg3pGIZGdGIVjtPn6UcMk9A/UUr9PhoNsCENw1APAq0gpH73e+M+0ueyHbabc3vkbcdtzcf/fiy+NxQEjf9ud/ELBHAXJ0nk4z+MXH2Ev/kWyV4k7SkvpPc9Qr38F6RPWnM9cN6DJ0AdD1BhtgABtmoRoFCvPsBAumNm6soZG2Gk5GyVTo2sJncSyp0jQTYoR6WDvTwaaEcHsxHfvuWhHA3a6bN7twRKtcGok6NsCi7jYRrM2jExsUFMxMQYuJbMhuWNOumEJy9hi29Dmg5zMp/A5+hhPG19j1vBrq8JTLr8ki5VLPmG/PynJHVul440bxg5xuymHUFPBshC+nA9I1FmwbRBTNHAcik3Oae0cxKoI3MOriM42UrPe51nsaGxJ+WfXubAsP84aabUlQSJ1IiE0iPETLUU4CATgfXSCSpuRFRmCGbO+wSpAnzaeaCYW1VNEysRtuXCEL1kUFUbbtMv3Tilt/1c11jt3Q5bbMa84cpWipp8Elw3MZhOHsOlwwVUQM3lAR35JiFQbaYCRnMF2lxAWoOg2gyoIV4PouX8HytNIfLhqpJtXB4vjiViUI8IJ7bkC4ikkQvKksnOTKICwnqWSZ9YS5f0WCxmpgjbIq7EJcM4aI2nmhLNY2JIUgOjXZFWBHb+x5oh6cwb0Tv1ackHdKi0I9OO2wE9aogIOn540CCCziyhN+IaejtgAONKznHlHyutPrHGwCx9S6B8kfS4Mfi4Eyv7OU730bT1SCBjt834cXsf43zVjPUqqJjgrjeGnBxSG4aYAKFuVbeCfkDIjAqMb6yLNIbCuvXhMH2/+k2vkNpkORhR59N1CkzoOENvneIosjYmuTxlhUzaGEJQ/iWqx4dmwpmKjrwTiTGTCVozNAYqk/zXOndWxuWSmJkQpJw3pK5KX6QrLt5LATMqpmPAQhkhK6PUjzHUn7E0gHE0kPE0iKkolgkUx9SZmVAdDgpffdyJKg3k7VmzYGCwVXGz/tXmkOIp+vcWs+EMuhhvN0h9uhfzWJziBQmCREGSIFmQIkgVpAnSBRmC//6hkLZwaVhwxlrJSOdqlFtOYxlau9F2QN5Y98xmIAsiM1HVp2VFX+DHHGg6Ecjh3vmqtidX3qHI2qycTk/iwxSt5UzTmEP92ZBnEWTk4Mx8Mpl78ZDokxg/KWb+Q0QkvdKVmq3TMW+RXEgrsziSAfNXFMhDc60N5N9jQzjfO0kBKpUZl0ZmwJ41j/B9Hz6wmRaJB84niNmQrzp9eSlQCDDzazGDdVi3P36VZQ+Jy4f9UBNp+3zTjqI4abaFAm+GShVaXlsGdF3FYzZcDI6cori4kMxUECl9IjJZpzkvitAoxKue+90pDMvcKRxLl53TmOKCmV/xRolNKSqqUxc6LStOETmFOiLZZptlZepcKiAzteG8PEdpnQpbOMNcMsR4RR2Bs0cKFEvSmIjAFcnarqwUL4lDhHmnVkwu1IwshbiCcgvOheZuYyOteufZZwlcTlLgnZ3o/WcYdzZHW/WGaqaVfmTZ1aWCceJjkbZqsfbkOtcFlUZM/jy+hXHDbaUobWqqXaeWobbLO99yG5N3U4wxco0rQGGcOLASFMXeJoham8M+/x6O2WywK2l4HGbq1CoUyC/IZikQhdq3SiuNrvAEj0AVu9x2x3lp/xWzahaxidezFVtdcb5uEnzyl0ZmYiuKI0exvCd4Xc9CV1KB0db00z92wDPde0kukbvZIWN6jUWFTmPIC/Y4UPCm8UfDTFZpZNon1qLFTkBhxzB+FjQRA2Q/YRJT8pQigslMaUpFyAG8TMlXigiqmAZX4xgijKjRlGpLE0GdplRfCaJo0JQaSxNBk6ZmMzcya0FmrcisDdn0Q3HI2sWSppYigmlM1XT/kLQZSNpMJG0WkjYbSZuDpM1F0uYhFc1HxU4m1QJjDK6iL0S5uSj5rgXc3RejEigtcRBtqYPQsiTskmO5vosV+q4VGIKbOkDg0jtRrq+Em1YloaTFar3EGr1EUC8R0kus1Uus00usL97ABr2BjXoDm/QGNhuWtMVBKOwg/i78lT7hBsAvDmwHc/ao3vmUbBmhjeYySZNWvGkfZAgISDSaDo1SVpzGDsAEkF8B+gEapViUoZgUWXcRIGFZNm6gWbAKk0bp0k1MHG9fLYtV4iS2SmLEQFARzRcnf9PUS0LVn05/J9MiRRBU3v2IrvW974v4N00L7ZMk0wXP1409CHo/an8zTRHD3eSJ6m8D4YMkZNl3M79sqeuAsr/m3f+8/yl7A50aiAEJgeBeMWzu7ui9UfUBCe2TIqZIoOd/3/udRBOQidQZUERzb2/VwZN1H/Sju82ew2H2Wfr6qvfVf3hqwDvAIpkQVFy4B9Pe9e4/XvPeceu7h3dvO56iJPf0+A6cqA2ip18ER+iFgggiuOkvj24bby0N9j2UHIkgqIt+sVgfodC4YghLSMjSZbH0VR/6dMDrYJeKHilKTemt6v6kvzvn3/RrdWtr0GoN/xL+Sex/cPYLUpepx9cz/D46UPU5KXgAQa+NDps1v6J3xP1i2HtaDB0M9aX2deA7SYff//+gUCovMmIK/qfsFcOk+4Y5ZN97XlG6zebqtMbKgeRFi51vnxTQYBUik2rS/Cn6PC8ADR8FGxsRPB82dzfND90gIcshOcYUkfjherBz53odpm6TP8txlwOZ71xmfHHOvq053qFF/MRlS3jP0ELudrf2OeN8DHvp6ZceLe8qKYvWz/7yp0u4dKPfli3CYq0O13Ih71mylJ80tOi10On8wi+F4+LWgDPeJ30msSQt9/vkmHq9/Lvo2b461mP801v3W4xTcs6CbvF9UDdrSt+A8OUbpSh55qAUFXWznBBfdeJ8a4d7ugT5tvxUza3h9m4H7ptTqiG4z0g5dc0X29OcGlhpGFMpQo9ytTS+NViZpNdvU4kWx+LKxNY10kQ1yqGXrhe4/1nvP7E+nd5A92TtaRplbHSqoIdOqtRWti+fkB5/n1+/VvCmz12pG1kpQWsfi1ftlBobm0bpngs16CHkbIwdLnParxtTV3QYRlfJ0KFskH7pdN/YDn+yRuSd7sNH3aO0DYPggk6uWuXrfOc+fa3VTxFVvKaNxHsiHmsXyCLIE5yuOeN3/Jdf8HBL/5M6shjyhxHx9BjB1O0+4NLOnjLLSxwO7ukN4jMbOIcD879KLSi6Pk61Oqm2377n8079PXEEQ7cy7OKEC9nbpet118fxweTafpt69x/Bt8UqGzNQt7aelpc44dn5cqhwf71+qKp/Zf/+a0zcizOUWpl/iBcSXip0pplkatCchoH5c5aUM8I7/dWxAej8WicPL1URFZ9BDJelUwEwTkGqUhgSlydVes95YdXvhh9Gfz/aeFWvgVb4tuLbcv4+wLdutVZv/cUonwBD/6eDlE0aSiKK/uoH3+J1wDE/jMVqY2ysGufN84oIXB0sPzy8ollX/LegY74DgJXJR57sn+VGza0x3DnuIgABFM15LmajjjsNlYj+JEZGbuRYcAMOWxFkPN2w6Wd46xo4gVWQR/X4lyI/R6K/YK0110GzudPRW7Y+UOBGTfNNzHeYT0fiH0taunBpq9HEW8OKSaBGj21L0MqenEmNRWBAWDWAk4CpNoEZJ2tTaPFgbQYj8HxtFilErs3BTRwT8uO1NXQaWfIotchmPkAF5mMBAliEmZiOGVgCG9LgRzpscMAOOwowlT3JhusdazXGSC/hxR3UlmWVwWHpOIKheqONvjyhSiTHIkVUco5bnji8m//zL7PKaT1Vl5I6UE609f+gkr6MZKVyKc7zJRmCahLsdlyA5fdQkRSan9LgnnLEyGSkaKJCJog0wAgvepWBt80+1yKln1bMVtCljfNWDueKLsWwaEbBSfSPTEmVRsUcYYMnEjcjeyCZzBXK9E9BYBXLKjOSpUDR+nEV3TFSUdQaz+ot98QxgXwx0GQ+EEUAKB2qZPkQQ0GqFD8UPFMqyaCHM24BZmSGic9EYMagKizOw9Hz50DMrDLrqqLkTAhplMictiCAx5S3BIUQdeJeLnBy2CNtMfz6cV4u8XKoFZQesbf9YZiIERiHjaNodDW6LgcirX/mPnJIkBGDUpTBhSa0EIr38D5hCIszhCM8URGBqImoWjpvpt1ebu/v3Gl3qJfMnNM+9V+kiRFyROTPHQWOcs1dNW94/ukKMPZBvDi55i5CttdeJz84DLngLqjcdwEZ87bFFR8CIG35OAkDVN6VRDZ7aq67NteYqZ2lpT8oYB2CytoBd6VuAx4WgiAsnuj3WohG+LugzXiQRDeM3XYXlULv4dp5VFYC) format("woff2"),url(/assets/KaTeX_Size3-Regular-CTq5MqoE.woff) format("woff"),url(/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2) format("woff2"),url(/assets/KaTeX_Size4-Regular-BF-4gkZK.woff) format("woff"),url(/assets/KaTeX_Size4-Regular-DWFBv043.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2) format("woff2"),url(/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff) format("woff"),url(/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf) format("truetype")}.katex{font: 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;position:relative;text-indent:0;text-rendering:auto}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.16.47"}.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>.newline{display:block}.katex .base{position:relative;white-space:nowrap;width:-webkit-min-content;width:-moz-min-content;width:min-content}.katex .base,.katex .strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;display:inline-table;table-layout:fixed}.katex .vlist-r{display:table-row}.katex .vlist{display:table-cell;position:relative;vertical-align:bottom}.katex .vlist>span{display:block;height:0;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{overflow:hidden;width:0}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{display:table-cell;font-size:1px;min-width:2px;vertical-align:bottom;width:2px}.katex .vbox{align-items:baseline;display:inline-flex;flex-direction:column}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{display:inline-flex;flex-direction:row}.katex .thinbox{max-width:0;width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .smash{display:inline;line-height:0}.katex .clap,.katex .llap,.katex .rlap{position:relative;width:0}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.katex .sqrt>.root{margin-left:.2777777778em;margin-right:-.5555555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.1666666667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.6666666667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.4566666667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.1466666667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.7142857143em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.8571428571em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.1428571429em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.2857142857em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.4285714286em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.7142857143em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.0571428571em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.4685714286em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.9628571429em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.5542857143em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.7777777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.8888888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.1111111111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.3044444444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.7644444444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.5833333333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.7283333333em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.0733333333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.4861111111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.4402777778em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.7277777778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.2893518519em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.4050925926em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.462962963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.5208333333em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.5787037037em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.2002314815em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.4398148148em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.2410800386em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.2892960463em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.337512054em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.3857280617em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.4339440694em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.4821600771em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.5785920926em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.6943105111em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.8331726133em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.1996142719em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.2009646302em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.2411575563em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.2813504823em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.3215434084em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.3617363344em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.4019292605em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.4823151125em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.578778135em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.6945337621em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.8336012862em}.katex .fontsize-ensurer.reset-size11.size11,.katex .sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{display:inline-block;width:.12em}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{display:inline-block;min-width:1px}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;display:block;height:inherit;position:absolute;width:100%}.katex svg path{stroke:none}.katex svg{fill-rule:nonzero;fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1}.katex img{border-style:none;max-height:none;max-width:none;min-height:0;min-width:0}.katex .stretchy{display:block;overflow:hidden;position:relative;width:100%}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{overflow:hidden;position:relative;width:100%}.katex .halfarrow-left{left:0;overflow:hidden;position:absolute;width:50.2%}.katex .halfarrow-right{overflow:hidden;position:absolute;right:0;width:50.2%}.katex .brace-left{left:0;overflow:hidden;position:absolute;width:25.1%}.katex .brace-center{left:25%;overflow:hidden;position:absolute;width:50%}.katex .brace-right{overflow:hidden;position:absolute;right:0;width:25.1%}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{border:.04em solid;box-sizing:border-box}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{border-right:.049em solid;border-top:.049em solid;box-sizing:border-box;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{display:inline-block;position:absolute;right:calc(50% + .3em);text-align:left}.katex .cd-label-right{display:inline-block;left:calc(50% + .3em);position:absolute;text-align:right}.katex-display{display:block;margin:1em 0;text-align:center}.katex-display>.katex{display:block;text-align:center;white-space:nowrap}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{padding-left:2em;text-align:left}body{counter-reset:katexEqnNo mmlEqnNo}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400 800;font-display:swap;src:url(/fonts/plus-jakarta-sans-cyrillic-ext.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400 800;font-display:swap;src:url(/fonts/plus-jakarta-sans-vietnamese.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400 800;font-display:swap;src:url(/fonts/plus-jakarta-sans-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400 800;font-display:swap;src:url(/fonts/plus-jakarta-sans-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color-scheme:light;--text-xs: .75rem;--text-sm: .875rem;--text-md: 1rem;--text-lg: 1.25rem;--text-xl: 1.75rem;--text-2xl: 2.25rem;--weight-regular: 400;--weight-semibold: 600;--weight-bold: 700;--leading-tight: 1.2;--leading-snug: 1.4;--leading-normal: 1.6;--tracking-tight: -.02em;--tracking-snug: -.01em;--tracking-caps: .06em;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 3rem;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-full: 999px;--z-raised: 10;--z-dropdown: 20;--z-sticky: 30;--z-overlay: 40;--z-drawer: 50;--z-toast: 60;--z-skip-link: 70;--mobile-bar-height: 60px}:root,:is(.paper,.review-brief-document,.studio-empty-overlay,.material-text-view,.teaching-paper){--bg: hsl(220 18% 96.5%);--card: hsl(0 0% 100%);--surface-subtle: hsl(220 24% 98.2%);--surface-muted: hsl(220 20% 94.5%);--ink: hsl(222 26% 15%);--ink-soft: hsl(222 16% 29%);--muted: hsl(220 11% 42%);--faint: hsl(220 9% 46%);--line: hsl(222 30% 20% / .09);--line-strong: hsl(222 30% 20% / .15);--control-border: hsl(220 12% 55%);--control-border-hover: hsl(220 14% 46%);--selection: hsl(226 80% 88%);--backdrop: hsl(222 45% 10% / .5);--highlight: hsl(48 80% 94%);--accent: hsl(226 58% 45%);--accent-hover: hsl(226 60% 38%);--accent-strong: hsl(226 58% 39%);--accent-soft: hsl(226 80% 96.5%);--accent-soft-strong: hsl(226 72% 92%);--accent-line: hsl(226 50% 50% / .3);--on-accent: hsl(0 0% 100%);--brand-navy: hsl(223 36% 19%);--brand-navy-deep: hsl(224 40% 15%);--brand-mint: hsl(165 44% 78%);--on-navy: hsl(220 30% 94%);--on-navy-soft: hsl(220 22% 78%);--on-navy-muted: hsl(220 18% 66%);--on-navy-tint: hsl(0 0% 100%);--danger: hsl(0 66% 44%);--danger-ink: hsl(0 62% 36%);--danger-soft: hsl(0 82% 97%);--danger-line: hsl(0 72% 89%);--warn: hsl(29 80% 33%);--warn-ink: hsl(30 70% 26%);--warn-soft: hsl(38 92% 95%);--warn-line: hsl(38 70% 82%);--good: hsl(155 58% 29%);--good-ink: hsl(155 56% 24%);--good-soft: hsl(150 52% 95.5%);--good-line: hsl(152 42% 82%);--info: hsl(212 40% 32%);--chart-muted: hsl(224 30% 60%);--chart-muted-hover: hsl(224 36% 46%);--chart-urgent: hsl(3 58% 50%);--chart-recommended: hsl(35 85% 42%);--chart-monitor: hsl(212 48% 48%);--chart-clear: hsl(216 12% 58%);--chart-grid: hsl(222 30% 20% / .12);--chart-line: var(--accent);--chart-expectation: var(--muted);--chart-intervention: hsl(35 85% 32%);--chart-unknown: var(--surface-muted);--chart-unknown-stripe: var(--chart-clear);--paper: hsl(0 0% 100%);--paper-warm: hsl(42 40% 99.3%);--paper-ink: hsl(220 32% 16%);--paper-heading: hsl(220 45% 24%);--paper-rule: hsl(220 25% 20%);--paper-line: hsl(40 18% 86%);--paper-grid: hsl(216 18% 88%);--shadow-sm: 0 1px 2px hsl(222 47% 11% / .06);--shadow-md: 0 1px 2px hsl(222 47% 11% / .06), 0 12px 32px -12px hsl(222 47% 11% / .22);--shadow-lg: 0 2px 6px hsl(222 47% 11% / .08), 0 28px 72px -18px hsl(222 47% 11% / .38);--ring: inset 0 0 0 1px var(--line);--ring-accent: inset 0 0 0 1px var(--accent-line)}:is(.paper,.review-brief-document,.studio-empty-overlay,.material-text-view,.teaching-paper){color-scheme:light}:root{--ease-out: cubic-bezier(.2, 0, 0, 1);--duration-fast: .12s;--duration: .18s;--duration-slow: .24s;--move-fast: var(--duration-fast);--move: var(--duration);--move-slow: var(--duration-slow);--icon-info: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 12a9 9 0 1 0 18 0a9 9 0 0 0 -18 0'/%3E%3Cpath d='M12 9h.01'/%3E%3Cpath d='M11 12h1v4h1'/%3E%3C/svg%3E");--icon-alert: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 12a9 9 0 1 0 18 0a9 9 0 0 0 -18 0'/%3E%3Cpath d='M12 8v4'/%3E%3Cpath d='M12 16h.01'/%3E%3C/svg%3E");--icon-check: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 12a9 9 0 1 0 18 0a9 9 0 1 0 -18 0'/%3E%3Cpath d='M9 12l2 2l4 -4'/%3E%3C/svg%3E");--icon-chevron-right: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 6l6 6l-6 6'/%3E%3C/svg%3E");--icon-select: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23636e83' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 9l4 -4l4 4'/%3E%3Cpath d='M16 15l-4 4l-4 -4'/%3E%3C/svg%3E")}@media screen{:root[data-theme=dark]{color-scheme:dark;--bg: hsl(224 24% 9%);--card: hsl(224 22% 14%);--surface-subtle: hsl(224 20% 12%);--surface-muted: hsl(224 18% 19%);--ink: hsl(220 20% 93%);--ink-soft: hsl(220 14% 82%);--muted: hsl(218 12% 68%);--faint: hsl(218 10% 64%);--line: hsl(220 30% 90% / .1);--line-strong: hsl(220 30% 90% / .17);--control-border: hsl(220 10% 46%);--control-border-hover: hsl(220 12% 60%);--selection: hsl(228 50% 34%);--backdrop: hsl(224 40% 3% / .66);--highlight: hsl(48 40% 22%);--accent: hsl(228 85% 74%);--accent-hover: hsl(228 90% 82%);--accent-strong: hsl(228 70% 64%);--accent-soft: hsl(228 40% 20%);--accent-soft-strong: hsl(228 42% 28%);--accent-line: hsl(228 85% 74% / .4);--on-accent: hsl(224 40% 10%);--brand-navy: hsl(224 30% 12%);--brand-navy-deep: hsl(224 34% 8%);--danger: hsl(0 80% 72%);--danger-ink: hsl(0 85% 80%);--danger-soft: hsl(0 35% 18%);--danger-line: hsl(0 40% 34%);--warn: hsl(35 85% 62%);--warn-ink: hsl(38 85% 72%);--warn-soft: hsl(35 40% 16%);--warn-line: hsl(35 40% 32%);--good: hsl(150 50% 60%);--good-ink: hsl(150 50% 70%);--good-soft: hsl(152 30% 15%);--good-line: hsl(152 30% 30%);--info: hsl(212 60% 74%);--chart-muted: hsl(224 40% 58%);--chart-muted-hover: hsl(224 60% 72%);--chart-urgent: hsl(3 65% 60%);--chart-recommended: hsl(35 75% 50%);--chart-monitor: hsl(212 55% 62%);--chart-clear: hsl(216 10% 46%);--chart-grid: hsl(220 30% 90% / .12);--chart-intervention: hsl(35 85% 62%);--shadow-sm: 0 1px 2px hsl(224 40% 2% / .4);--shadow-md: 0 1px 2px hsl(224 40% 2% / .4), 0 12px 32px -12px hsl(224 40% 2% / .7);--shadow-lg: 0 2px 6px hsl(224 40% 2% / .5), 0 28px 72px -18px hsl(224 40% 2% / .8);--icon-select: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a5acba' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 9l4 -4l4 4'/%3E%3Cpath d='M16 15l-4 4l-4 -4'/%3E%3C/svg%3E")}}*{box-sizing:border-box}html{background:var(--bg);scrollbar-gutter:stable;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}:where(a,button,summary,label,input,select,textarea,[role=button],[role=option]){touch-action:manipulation}:where(button,[role=button],.btn,.tab,.nav-item,label.chip,.segmented label){-webkit-user-select:none;user-select:none}:where(a):where(.btn,.tab,.nav-item){-webkit-touch-callout:none}html,body{overscroll-behavior:none}dialog{overscroll-behavior:contain}html:has(dialog:modal){overflow:hidden}body{margin:0;padding-inline:env(safe-area-inset-left,0px) env(safe-area-inset-right,0px);min-height:100dvh;font-family:Plus Jakarta Sans,system-ui,-apple-system,Segoe UI,sans-serif;color:var(--ink);background:var(--bg);line-height:var(--leading-snug);letter-spacing:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}:where(button,input,select,textarea){font:inherit;letter-spacing:inherit}button{color:inherit}p,li,dd,figcaption{text-wrap:pretty}:is(h1,h2,h3,h4){text-wrap:balance}h1,h2,h3,h4,h5,h6{margin:0;font-weight:var(--weight-bold);line-height:var(--leading-snug);overflow-wrap:break-word}h1{font-size:var(--text-xl);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight)}h2{margin-bottom:var(--space-4);font-size:var(--text-lg);line-height:var(--leading-tight);letter-spacing:var(--tracking-snug)}h3{margin-bottom:var(--space-3);font-size:var(--text-md)}h4{margin-bottom:var(--space-2);font-size:var(--text-sm);font-weight:var(--weight-semibold)}h5,h6{font-size:var(--text-sm);font-weight:var(--weight-semibold)}a{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:.2em}a:active{color:var(--accent-hover)}@media (hover: hover) and (pointer: fine){a:hover{color:var(--accent-hover)}}:is(h2,h3,h4)>a,.class-roster>tbody>tr>th a{color:inherit;text-decoration:none}:is(h2,h3,h4)>a:active,.class-roster>tbody>tr>th a:active{color:var(--accent);text-decoration:underline}@media (hover: hover) and (pointer: fine){:is(h2,h3,h4)>a:hover,.class-roster>tbody>tr>th a:hover{color:var(--accent);text-decoration:underline}}.tabler-icon,.lucide{flex:none;stroke-width:1.75}input::placeholder,textarea::placeholder{color:var(--faint);opacity:1}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}h1[tabindex="-1"]:focus{outline:none}.skip-link{position:fixed;top:var(--space-2);left:var(--space-2);z-index:var(--z-skip-link);min-height:40px;display:inline-flex;align-items:center;padding:var(--space-2) var(--space-4);color:var(--ink);font-size:var(--text-sm);font-weight:var(--weight-semibold);text-decoration:none;border:1px solid var(--control-border);border-radius:var(--radius-md);background:var(--card);box-shadow:var(--shadow-md);transform:translateY(-200%)}.skip-link:focus-visible{transform:none}.knowledge-base-page{display:grid;gap:var(--space-4)}.assistant-frame{--assistant-height: calc(100dvh - var(--space-6) - var(--space-5))}.assistant-workspace{width:min(1320px,100%);height:max(32rem,var(--assistant-height));margin-inline:auto;display:flex;flex-direction:column;--frame-pad: var(--space-6);padding:0 var(--frame-pad) var(--space-2);border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--card);box-shadow:var(--shadow-sm)}.assistant-workspace.is-empty{height:auto;min-height:max(32rem,var(--assistant-height))}.assistant-disclaimer{flex:none;margin:0;padding:var(--space-1);color:var(--muted);font-size:var(--text-xs);text-align:center}.assistant-thread{flex:1;min-height:0;padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-4);overflow:auto;overscroll-behavior:contain}.assistant-empty{width:min(36rem,100%);margin:auto;text-align:center}.assistant-welcome-icon{flex:none;color:var(--accent)}.assistant-companion{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-5) 0;color:var(--muted);font-size:var(--text-sm);flex:none}.assistant-lil-guy{position:relative;display:inline-block;vertical-align:middle}.assistant-lottie{position:absolute;top:0;right:0;bottom:0;left:0}.assistant-lottie svg path{stroke:currentColor}.assistant-starters{display:grid;gap:var(--space-2)}.assistant-message{flex:none;width:min(44rem,88%);display:grid;gap:var(--space-3)}.assistant-message.user{align-self:flex-end}.assistant-account-context{display:flex;align-items:center;gap:var(--space-2);color:var(--muted);font-size:var(--text-xs)}.assistant-account-context strong{color:var(--ink)}.assistant-message-copy{min-width:0;padding:var(--space-3) var(--space-4);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:var(--radius-md);background:var(--surface-subtle);border:1px solid var(--line)}.assistant-markdown{white-space:normal;overflow-wrap:anywhere;line-height:var(--leading-normal)}.assistant-markdown :is(p,ul,ol,blockquote,pre,.assistant-markdown-table){margin:var(--space-3) 0}.assistant-markdown :is(h1,h2,h3,h4,h5,h6){margin:var(--space-5) 0 var(--space-2);font-size:var(--text-md);font-weight:var(--weight-bold);line-height:var(--leading-snug);letter-spacing:normal;text-wrap:balance}.assistant-markdown :is(h1,h2){font-size:var(--text-md)}.assistant-markdown :is(p,li,h1,h2,h3,h4,h5,h6,th,td){unicode-bidi:plaintext}.assistant-markdown>:first-child{margin-top:0}.assistant-markdown>:last-child{margin-bottom:0}.assistant-markdown :is(ul,ol){padding-left:var(--space-5)}.assistant-markdown li+li{margin-top:var(--space-1)}.assistant-markdown li>:is(ul,ol,p){margin:var(--space-1) 0}.assistant-markdown a{color:var(--accent);text-decoration:underline;text-underline-offset:.15em}.assistant-markdown a:active{color:var(--accent-hover)}@media (hover: hover) and (pointer: fine){.assistant-markdown a:hover{color:var(--accent-hover)}}.assistant-markdown blockquote{margin-left:0;padding-left:var(--space-4);border-left:2px solid var(--line-strong);color:var(--muted)}.assistant-markdown code{padding:var(--space-1) var(--space-1);border-radius:var(--radius-sm);background:var(--card);font-size:var(--text-sm)}.assistant-markdown pre{padding:var(--space-3);overflow-x:auto;white-space:pre;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--card);overscroll-behavior-x:contain}.assistant-markdown pre code{padding:0;background:none}.assistant-markdown-table{overflow-x:auto;overscroll-behavior-x:contain}.assistant-markdown .katex-display{overflow-x:auto;overflow-y:hidden;padding:var(--space-1) 0;overscroll-behavior-x:contain}.assistant-markdown :is(th,td){min-width:7rem;overflow-wrap:break-word}.assistant-markdown .contains-task-list{padding-left:0;list-style:none}.assistant-markdown .task-list-item input{width:auto;margin-right:var(--space-2)}.assistant-markdown hr{margin:var(--space-4) 0;border:0;border-top:1px solid var(--line-strong)}.assistant-message.user .assistant-message-copy{color:var(--on-accent);background:var(--accent);border-color:var(--accent)}.assistant-message.streaming .assistant-message-copy:not(:has(.assistant-markdown)):after,.ai-summary.streaming .ai-stream-copy:after{content:"";display:inline-block;width:.45rem;height:.9rem;margin-left:var(--space-1);vertical-align:-.1em;border-radius:var(--radius-sm);background:currentColor;opacity:.55;animation:stream-cursor .9s steps(1) infinite}@keyframes stream-cursor{50%{opacity:0}}.stream-word{animation:stream-word var(--duration-slow) var(--ease-out) both}@keyframes stream-word{0%{opacity:0}}.assistant-thinking{color:transparent;background:linear-gradient(90deg,var(--muted) 30%,var(--ink) 50%,var(--muted) 70%) 100% 0 / 300% 100%;-webkit-background-clip:text;background-clip:text;animation:thinking-pass 1.6s linear infinite}@keyframes thinking-pass{to{background-position:0 0}}.assistant-composer{position:relative;width:min(760px,100%);flex:none;align-self:center;display:grid;gap:var(--space-1);padding:var(--space-3);border:1px solid var(--control-border);border-radius:var(--radius-lg);background:var(--card);transition:border-color var(--duration-fast) var(--ease-out);box-shadow:var(--shadow-md)}.assistant-composer textarea{min-width:0;min-height:3rem;max-height:9rem;field-sizing:content;padding:var(--space-2) var(--space-3);font-size:var(--text-md);line-height:var(--leading-snug);resize:none;border:0;box-shadow:none;background:transparent}.assistant-composer:has(textarea:focus-visible){border-color:var(--accent);outline:2px solid var(--accent);outline-offset:1px}.assistant-composer textarea:focus-visible{outline:none}.assistant-composer-actions{display:flex;align-items:center;gap:var(--space-2)}.assistant-composer-actions>:is(.assistant-send,.assistant-stop){margin-left:auto}.assistant-composer-actions>.assistant-clear{margin-left:auto}.assistant-composer-actions>.assistant-clear+:is(.assistant-send,.assistant-stop){margin-left:0}.assistant-composer-actions>:is(.assistant-send,.assistant-stop,.assistant-clear){width:2.5rem;height:2.5rem;flex:none;display:inline-grid;place-items:center;border:0;border-radius:var(--radius-md);cursor:pointer;color:var(--on-accent);background:var(--accent);transition:background-color var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out),transform var(--move-fast) var(--ease-out)}.assistant-composer-actions>:is(.assistant-send,.assistant-stop):active:not(:disabled){background:var(--accent-hover)}@media (hover: hover) and (pointer: fine){.assistant-composer-actions>:is(.assistant-send,.assistant-stop):hover:not(:disabled){background:var(--accent-hover)}}.assistant-composer-actions>button:active:not(:disabled){transform:scale(.96)}.assistant-composer-actions>.assistant-clear{color:var(--muted);background:transparent}.assistant-composer-actions>.assistant-clear:active:not(:disabled){color:var(--danger);background:var(--danger-soft)}@media (hover: hover) and (pointer: fine){.assistant-composer-actions>.assistant-clear:hover:not(:disabled){color:var(--danger);background:var(--danger-soft)}}.assistant-mention-trigger{min-height:2rem;display:inline-flex;align-items:center;gap:var(--space-1);padding:0 var(--space-3) 0 var(--space-2);color:var(--ink-soft);font-size:var(--text-sm);font-weight:var(--weight-semibold);border:1px solid var(--control-border);border-radius:var(--radius-md);background:var(--card);cursor:pointer;transition:border-color var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.assistant-mention-trigger:active:not(:disabled){color:var(--ink);border-color:var(--control-border-hover)}@media (hover: hover) and (pointer: fine){.assistant-mention-trigger:hover:not(:disabled){color:var(--ink);border-color:var(--control-border-hover)}}.citation-list{display:grid;gap:var(--space-2);margin:0;padding:0;list-style:none}.citation{padding:var(--space-2) var(--space-3);display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:var(--space-2);align-items:start;color:var(--ink-soft);font-size:var(--text-md);overflow-wrap:anywhere;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-subtle)}.citation :is(strong,p){unicode-bidi:plaintext}.citation>svg{margin-top:var(--space-1);color:var(--accent)}.citation strong{color:var(--ink);font-weight:var(--weight-semibold)}.citation p{margin:var(--space-1) 0 0}.citation .icon-button{margin:calc(var(--space-1) * -1) calc(var(--space-1) * -1) 0 0}.knowledge-library{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-4)}.knowledge-library>.tabs{margin-bottom:0}.knowledge-toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.knowledge-toolbar>:only-child:not(.search-control){margin-left:auto}.search-control{width:min(28rem,100%);min-height:40px;padding:0 var(--space-3);display:flex;align-items:center;gap:var(--space-2);color:var(--faint);border:1px solid var(--control-border);border-radius:var(--radius-md);background:var(--card);box-shadow:var(--shadow-sm);transition:border-color var(--duration-fast) var(--ease-out)}.search-control:active{border-color:var(--control-border-hover)}@media (hover: hover) and (pointer: fine){.search-control:hover{border-color:var(--control-border-hover)}}.search-control:has(input:focus-visible){border-color:var(--accent);outline:2px solid var(--accent);outline-offset:1px}.search-control input{width:100%;min-height:0;margin-top:0;padding:var(--space-2) 0;font-size:var(--text-sm);border:0;box-shadow:none;background:transparent}.search-control input:focus-visible{outline:none}.source-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.research-browser-controls{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-3);padding:var(--space-4) 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.research-filters{display:flex;align-items:flex-end;flex-wrap:wrap;gap:var(--space-3)}.research-filters label{width:min(15rem,25%);min-width:10rem}.research-result-count{margin:0;color:var(--muted);font-size:var(--text-sm)}.research-filters .text-button{min-height:40px}.archived-sources ul{margin:var(--space-3) 0 0;padding:0;list-style:none}.archived-sources li{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2) var(--space-4);padding:var(--space-2) 0;border-top:1px solid var(--line)}.archived-sources li>span{display:grid;gap:var(--space-1);min-width:0}.archived-sources strong{font-weight:var(--weight-semibold);overflow-wrap:anywhere}.research-method-list{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-3)}.research-method{padding:var(--space-4) var(--space-5);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--card);box-shadow:var(--shadow-sm)}.research-method-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4)}.research-method-heading h2{margin:var(--space-1) 0 var(--space-1);font-size:var(--text-md)}.research-method>p{margin:var(--space-3) 0;color:var(--ink-soft);font-size:var(--text-sm)}.research-method-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-md)}.research-method-details>div{padding:var(--space-3);border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.research-method-details>div:nth-child(2n){border-right:0}.research-method-details>div:nth-last-child(-n+2){border-bottom:0}.research-method-details dt{margin-bottom:var(--space-1);color:var(--ink);font-size:var(--text-sm);font-weight:var(--weight-bold)}.research-method-details dd{margin:0;color:var(--ink-soft);font-size:var(--text-md);line-height:var(--leading-normal)}.research-basis{margin-top:var(--space-4)}.research-basis>strong{font-size:var(--text-sm)}.research-basis p{margin:var(--space-2) 0 0;display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-1);overflow-wrap:anywhere;color:var(--ink-soft);font-size:var(--text-md)}.research-basis a{width:fit-content;display:inline-flex;align-items:center;gap:var(--space-1);color:var(--accent);font-weight:var(--weight-semibold);text-decoration:none}.research-basis a:active{text-decoration:underline}@media (hover: hover) and (pointer: fine){.research-basis a:hover{text-decoration:underline}}.research-basis small{color:var(--ink-soft);font-size:var(--text-md)}.source-card{min-width:0;padding:var(--space-4);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--card);box-shadow:var(--shadow-sm)}.source-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3)}.source-card h2{margin:var(--space-1) 0 var(--space-1);font-size:var(--text-md);overflow-wrap:anywhere}.source-card>p{margin:var(--space-3) 0;color:var(--ink-soft);font-size:var(--text-sm);line-height:var(--leading-normal);white-space:pre-wrap;overflow-wrap:anywhere}.source-card>small{display:block;margin-top:var(--space-3);color:var(--muted);font-size:var(--text-xs)}.source-type{color:var(--muted);font-size:var(--text-xs);font-weight:var(--weight-regular)}.source-card-actions{display:flex;gap:var(--space-2);margin:calc(var(--space-1) * -1) calc(var(--space-2) * -1) 0 0}.source-tags{display:flex;flex-wrap:wrap;gap:var(--space-1)}.source-tags .pill{max-width:100%;overflow-wrap:anywhere}.source-card :is(h2,p),.archived-sources strong{unicode-bidi:plaintext}.source-card h2{text-align:left}.question-bank{display:grid;gap:var(--space-5)}.question-bank-review h2,.question-bank-test h2{margin:0}.question-bank-review dl{margin:var(--space-3) 0 var(--space-4);display:grid;gap:var(--space-1)}.question-bank-review dl>div{display:grid;grid-template-columns:11rem minmax(0,1fr);gap:var(--space-3)}.question-bank-review dt{color:var(--ink-soft)}.question-bank-review dd{margin:0}.question-bank-test>p{margin:var(--space-1) 0 0}.question-bank-domain h3{margin:var(--space-5) 0 var(--space-2)}.question-bank-domain ul{margin:0;padding:0;list-style:none}.question-bank-domain li{display:grid;grid-template-columns:minmax(12rem,22rem) minmax(0,1fr);gap:var(--space-4);padding:var(--space-1) 0;border-bottom:1px solid var(--line)}@media (max-width: 1024px){.question-bank-domain li{grid-template-columns:minmax(0,1fr);gap:var(--space-1)}}.source-editor-dialog{width:min(44rem,calc(100vw - 2rem));max-width:none;padding:0;border:0;background:transparent;overflow:visible}.source-editor{width:min(44rem,100%);max-height:calc(100dvh - 2rem);padding:var(--space-5);display:grid;gap:var(--space-4);overflow:auto;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--card);box-shadow:var(--shadow-lg);overscroll-behavior:contain}.source-editor>h2{margin:0}.source-editor-fields{display:grid;gap:var(--space-4)}.source-editor-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(9rem,1fr);gap:var(--space-3)}@media (max-width: 1024px){.source-list,.research-method-details,.source-editor-grid{grid-template-columns:minmax(0,1fr)}.research-method-details>div{border-right:0}.research-method-details>div:nth-last-child(2){border-bottom:1px solid var(--line)}.research-filters label{width:100%}.knowledge-toolbar{align-items:stretch;flex-direction:column}.assistant-message{width:96%}}::selection{color:var(--ink);background:var(--selection)}.demo-feedback-link{min-height:44px;display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);color:inherit;font-size:var(--text-sm);font-weight:var(--weight-semibold);text-align:left;border:0;border-radius:var(--radius-md);background:transparent;cursor:pointer;transition:background-color var(--duration-fast) var(--ease-out)}.demo-feedback-link:active{background:color-mix(in srgb,currentColor 10%,transparent)}@media (hover: hover) and (pointer: fine){.demo-feedback-link:hover{background:color-mix(in srgb,currentColor 10%,transparent)}}.app-sidebar>.demo-feedback-link{flex-shrink:0;color:var(--on-navy-soft)}.mobile-bar-actions{display:flex;align-items:center;gap:var(--space-1);flex-shrink:0}.mobile-bar-actions .demo-feedback-link>span{max-width:5.5rem;line-height:var(--leading-snug)}.feedback-dialog{width:min(40rem,calc(100vw - 2rem));max-width:none;max-height:calc(100dvh - 3rem);padding:0;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--card);box-shadow:var(--shadow-lg)}.feedback-dialog[open]{display:flex}.feedback-dialog-content{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column}.feedback-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--line)}.feedback-dialog-header h2{margin:0}.feedback-survey{flex:1;min-height:0;overflow-y:auto;padding:var(--space-5);overscroll-behavior:contain}.feedback-survey form{display:grid;gap:var(--space-5)}.feedback-survey [hidden]{display:none!important}.feedback-survey-note{margin:0;color:var(--muted);font-size:var(--text-sm);line-height:var(--leading-normal)}.feedback-survey .notice{margin:0}@media (max-width: 640px){.feedback-dialog{width:100%;height:100dvh;max-height:none;border:0;border-radius:0}.feedback-dialog-header{padding:var(--space-3) var(--space-4)}}.app-frame{min-height:100dvh;display:grid;grid-template-columns:clamp(256px,16rem,30vw) minmax(0,1fr)}.app-sidebar{position:sticky;top:0;z-index:var(--z-sticky);height:100dvh;overflow-y:auto;padding:var(--space-4) var(--space-3) 0;display:flex;flex-direction:column;gap:var(--space-3);color:var(--on-navy);background:linear-gradient(180deg,var(--brand-navy) 0%,var(--brand-navy-deep) 100%);box-shadow:inset -1px 0 color-mix(in srgb,var(--on-navy-tint) 5%,transparent);scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--on-navy-tint) 16%,transparent) transparent;overscroll-behavior:contain}.app-sidebar :focus-visible{outline-color:var(--brand-mint)}.sidebar-brand,.mobile-brand{min-width:0;display:flex;align-items:center;gap:var(--space-3)}.sidebar-brand{padding:var(--space-1) var(--space-2) var(--space-1)}.brand-logo{display:block;width:min(4.5rem,25vw);height:auto;flex:none}.sidebar-brand>span:nth-child(2),.mobile-brand>span:nth-child(2){min-width:0;display:flex;flex-direction:column;line-height:var(--leading-tight)}.sidebar-brand b,.mobile-brand b{overflow:hidden;text-overflow:ellipsis;font-size:var(--text-md);font-weight:var(--weight-bold);letter-spacing:var(--tracking-snug)}.mobile-brand small{margin-top:var(--space-1);color:var(--muted);font-size:var(--text-xs)}.app-sidebar .sidebar-close{display:none;margin-left:auto}.school-context{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg);background:color-mix(in srgb,var(--on-navy-tint) 5.5%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--on-navy-tint) 7%,transparent)}.school-avatar{width:2rem;height:2rem;flex:none;display:grid;place-items:center;border-radius:var(--radius-md);background:color-mix(in srgb,var(--on-navy-tint) 12%,transparent);color:var(--on-navy);font-size:var(--text-sm);font-weight:var(--weight-bold)}.school-context-copy,.account-copy{min-width:0;display:flex;flex-direction:column}.school-context-copy b{overflow-wrap:anywhere;font-size:var(--text-sm);font-weight:var(--weight-semibold);line-height:var(--leading-snug)}@media (min-width: 1025px){.school-context-copy b{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}}.school-context-copy small{margin-top:var(--space-1);color:var(--on-navy-muted);font-size:var(--text-xs)}.sidebar-nav,.sidebar-nav-group{display:flex;flex-direction:column;gap:var(--space-1)}.sidebar-nav-group+.sidebar-nav-group{margin-top:var(--space-4)}.sidebar-nav-label{margin:0 0 var(--space-1);padding:0 var(--space-3);color:var(--on-navy-muted);font-size:var(--text-xs);font-weight:var(--weight-semibold)}.nav-item{min-height:40px;display:grid;grid-template-columns:1.25rem minmax(0,1fr) auto;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);color:var(--on-navy-soft);border-radius:var(--radius-md);text-decoration:none;font-size:var(--text-sm);font-weight:var(--weight-semibold);transition:color var(--duration-fast) var(--ease-out),background-color var(--duration-fast) var(--ease-out)}button.nav-item{width:100%;border:0;background:transparent;font-family:inherit;text-align:left;cursor:pointer}.nav-item:active{color:var(--on-navy);background:color-mix(in srgb,var(--on-navy-tint) 6%,transparent)}@media (hover: hover) and (pointer: fine){.nav-item:hover{color:var(--on-navy);background:color-mix(in srgb,var(--on-navy-tint) 6%,transparent)}}.nav-item.active{color:var(--on-navy);background:color-mix(in srgb,var(--on-navy-tint) 11%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--on-navy-tint) 6%,transparent)}.nav-icon{width:1.25rem;height:1.25rem;display:grid;place-items:center;transition:color var(--duration-fast) var(--ease-out)}.nav-item.active .nav-icon{color:var(--brand-mint)}.nav-count{min-width:1.5rem;padding:var(--space-1) var(--space-2);color:var(--muted);background:var(--surface-muted);border-radius:var(--radius-full);text-align:center;font-size:var(--text-xs);font-weight:var(--weight-semibold);line-height:var(--leading-snug);font-variant-numeric:tabular-nums}.nav-item .nav-count{color:var(--on-navy);background:color-mix(in srgb,var(--on-navy-tint) 9%,transparent)}.nav-item.active .nav-count{color:var(--brand-navy);background:var(--brand-mint)}.nav-total{min-width:1.5rem;color:var(--on-navy-muted);text-align:center;font-size:var(--text-xs);font-variant-numeric:tabular-nums}.name-avatar{display:inline-grid;flex:none;place-items:center;width:2.1rem;height:2.1rem;border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--weight-bold);line-height:1;color:var(--ink-soft);background:var(--surface-muted)}.account-card .name-avatar{width:2rem;height:2rem;color:var(--on-navy);background:color-mix(in srgb,var(--on-navy-tint) 12%,transparent)}.sidebar-spacer{flex:1;min-height:.5rem}.account-card{position:sticky;bottom:0;display:grid;padding:var(--space-1) 0 calc(var(--space-2) + env(safe-area-inset-bottom,0px));border-top:1px solid color-mix(in srgb,var(--on-navy-tint) 8%,transparent);background:var(--brand-navy-deep)}.account-identity{display:flex;align-items:center;gap:var(--space-3);padding:0 var(--space-1) 0 var(--space-3)}.account-identity .icon-button{width:2.5rem;height:2.5rem}.account-card .nav-item{width:auto;justify-self:start;padding-right:var(--space-4)}.account-copy{flex:1 1 auto;display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;color:var(--on-navy);font-size:var(--text-sm);font-weight:var(--weight-semibold);line-height:var(--leading-snug);overflow-wrap:anywhere}.app-content{width:100%;max-width:1200px;min-width:0;margin:0 auto;padding:var(--space-6) var(--space-7) calc(var(--space-7) * 2);outline:none}.mobile-bar,.nav-overlay{display:none}.empty-state{padding:var(--space-6) var(--space-4);color:var(--muted);text-align:center;overflow-wrap:break-word}.empty-state :is(h2,h3,h4){margin:0 0 var(--space-1);color:var(--ink);font-size:var(--text-md);font-weight:var(--weight-semibold)}.empty-state p{max-width:44ch;margin:0 auto;font-size:var(--text-sm)}.empty-state .btn{margin-top:var(--space-4)}.empty-icon{width:3rem;height:3rem;display:grid;place-items:center;margin:0 auto var(--space-4);color:var(--accent);border-radius:var(--radius-lg);background:var(--accent-soft);box-shadow:var(--ring-accent)}.muted{color:var(--muted)}.small{font-size:var(--text-sm)}.danger{color:var(--danger)}.dropzone{display:flex;flex-direction:column;gap:var(--space-2);align-items:center;padding:var(--space-7) var(--space-5);background:var(--card);border:1px dashed var(--control-border);border-radius:var(--radius-lg);cursor:pointer;transition:border-color var(--duration-fast) var(--ease-out),background-color var(--duration-fast) var(--ease-out);box-shadow:var(--shadow-sm)}.dropzone.dragging,.dropzone:has(input:focus-visible),.dropzone:active{border-color:var(--accent);background:var(--accent-soft);box-shadow:var(--shadow-md)}@media (hover: hover) and (pointer: fine){.dropzone:hover{border-color:var(--accent);background:var(--accent-soft);box-shadow:var(--shadow-md)}}.dropzone.reading,.dropzone.reading:active{cursor:default;border-color:var(--control-border);background:var(--card);box-shadow:var(--shadow-sm)}@media (hover: hover) and (pointer: fine){.dropzone.reading:hover{cursor:default;border-color:var(--control-border);background:var(--card);box-shadow:var(--shadow-sm)}}.dropzone>svg{margin-bottom:var(--space-1);color:var(--accent)}.dropzone strong{color:var(--accent);font-size:var(--text-md);font-weight:var(--weight-bold)}.topbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4) var(--space-5);margin-bottom:var(--space-6)}.topbar h1{margin-bottom:var(--space-1)}.topbar p{margin:0;font-size:var(--text-md)}.topbar-actions{display:flex;gap:var(--space-2);flex:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:40px;padding:var(--space-2) var(--space-4);color:var(--on-accent);text-align:center;font-size:var(--text-sm);font-weight:var(--weight-semibold);line-height:var(--leading-tight);text-decoration:none;border:1px solid var(--accent-strong);border-radius:var(--radius-md);background:var(--accent);cursor:pointer;transition:color var(--duration-fast) var(--ease-out),background-color var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out),transform var(--move-fast) var(--ease-out)}.btn:active:not(:disabled,.disabled){color:var(--on-accent);border-color:var(--accent-hover);background:var(--accent-hover)}@media (hover: hover) and (pointer: fine){.btn:hover:not(:disabled,.disabled){color:var(--on-accent);border-color:var(--accent-hover);background:var(--accent-hover)}}.btn:active:not(:disabled,.disabled){transform:scale(.96)}.btn.small{min-height:32px;padding:var(--space-1) var(--space-3)}.btn.ghost{color:var(--ink);border-color:var(--control-border);background:var(--card);box-shadow:var(--shadow-sm)}.btn.ghost:active:not(:disabled,.disabled){color:var(--ink);border-color:var(--control-border-hover);background:var(--surface-subtle)}@media (hover: hover) and (pointer: fine){.btn.ghost:hover:not(:disabled,.disabled){color:var(--ink);border-color:var(--control-border-hover);background:var(--surface-subtle)}}.btn.danger,.btn.danger:active:not(:disabled,.disabled){color:var(--on-accent);border-color:var(--danger);background:var(--danger)}@media (hover: hover) and (pointer: fine){.btn.danger:hover:not(:disabled,.disabled){color:var(--on-accent);border-color:var(--danger);background:var(--danger)}}.btn.ghost.danger{color:var(--danger);border-color:var(--danger);background:var(--card)}.btn.ghost.danger:active:not(:disabled,.disabled){color:var(--danger);border-color:var(--danger);background:var(--danger-soft)}@media (hover: hover) and (pointer: fine){.btn.ghost.danger:hover:not(:disabled,.disabled){color:var(--danger);border-color:var(--danger);background:var(--danger-soft)}}.btn>svg{margin-inline:calc(var(--space-1) * -1)}.file-button{cursor:pointer}label.btn:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.text-button,.linklike{text-decoration:none;min-height:24px;display:inline-flex;align-items:center;gap:var(--space-1);padding:0;color:var(--accent);font-size:var(--text-sm);font-weight:var(--weight-semibold);text-align:left;border:0;background:transparent;cursor:pointer}.linklike{font:inherit}:is(.text-button,.linklike):active:not(:disabled){color:var(--accent-hover);text-decoration:underline;text-underline-offset:.2em}@media (hover: hover) and (pointer: fine){:is(.text-button,.linklike):hover:not(:disabled){color:var(--accent-hover);text-decoration:underline;text-underline-offset:.2em}}.text-button.danger,.text-button.danger:active:not(:disabled){color:var(--danger)}@media (hover: hover) and (pointer: fine){.text-button.danger:hover:not(:disabled){color:var(--danger)}}.link-arrow{min-height:24px;display:inline-flex;align-items:center;gap:var(--space-1);color:var(--accent);font-size:var(--text-sm);font-weight:var(--weight-semibold);text-decoration:none}.link-arrow:active{color:var(--accent-hover)}@media (hover: hover) and (pointer: fine){.link-arrow:hover{color:var(--accent-hover)}}.link-arrow svg{transition:transform var(--move) var(--ease-out)}.link-arrow:active svg{transform:translate(2px)}@media (hover: hover) and (pointer: fine){.link-arrow:hover svg{transform:translate(2px)}}.icon-button{width:2rem;height:2rem;flex:none;display:inline-grid;place-items:center;padding:0;color:var(--muted);border:0;border-radius:var(--radius-md);background:transparent;cursor:pointer;transition:color var(--duration-fast) var(--ease-out),background-color var(--duration-fast) var(--ease-out),transform var(--move-fast) var(--ease-out)}.icon-button:active:not(:disabled){transform:scale(.96)}.icon-button.large{width:2.5rem;height:2.5rem}.icon-button:active:not(:disabled){color:var(--ink);background:var(--surface-muted)}@media (hover: hover) and (pointer: fine){.icon-button:hover:not(:disabled){color:var(--ink);background:var(--surface-muted)}}.app-sidebar .icon-button{color:var(--on-navy-soft)}.app-sidebar .icon-button:active:not(:disabled){color:var(--on-navy);background:color-mix(in srgb,var(--on-navy-tint) 8%,transparent)}@media (hover: hover) and (pointer: fine){.app-sidebar .icon-button:hover:not(:disabled){color:var(--on-navy);background:color-mix(in srgb,var(--on-navy-tint) 8%,transparent)}}.tabs{min-width:0;display:flex;gap:var(--space-5);overflow-x:auto;margin:0 0 var(--space-5);box-shadow:inset 0 -1px 0 var(--line);scrollbar-width:none;overscroll-behavior-x:contain}.tabs[data-more~=start]{-webkit-mask-image:linear-gradient(to right,transparent,#000 var(--space-7));mask-image:linear-gradient(to right,transparent,#000 var(--space-7))}.tabs[data-more~=end]{-webkit-mask-image:linear-gradient(to left,transparent,#000 var(--space-7));mask-image:linear-gradient(to left,transparent,#000 var(--space-7))}.tabs[data-more="start end"]{-webkit-mask-image:linear-gradient(to right,transparent,#000 var(--space-7),#000 calc(100% - var(--space-7)),transparent);mask-image:linear-gradient(to right,transparent,#000 var(--space-7),#000 calc(100% - var(--space-7)),transparent)}.topbar+.tabs{margin-top:calc(var(--space-2) * -1)}.tab{min-height:44px;display:inline-flex;align-items:center;gap:var(--space-2);flex:none;color:var(--muted);font-size:var(--text-sm);font-weight:var(--weight-semibold);text-decoration:none;border-bottom:2px solid transparent;transition:color var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.tab:active{color:var(--ink)}@media (hover: hover) and (pointer: fine){.tab:hover{color:var(--ink)}}.tab[aria-current=page]{color:var(--ink);border-bottom-color:var(--accent)}.tab:focus-visible{outline-offset:-2px;border-radius:var(--radius-sm)}.heading-count{margin-left:var(--space-1);color:var(--muted);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums}.tab-count{min-width:1.5rem;padding:0 var(--space-2);color:var(--muted);font-size:var(--text-xs);line-height:var(--leading-normal);font-variant-numeric:tabular-nums;text-align:center;border-radius:var(--radius-full);background:var(--surface-muted)}.tab[aria-current=page] .tab-count{color:var(--accent);background:var(--accent-soft)}.segmented{width:fit-content;max-width:100%;display:inline-flex;flex-wrap:wrap;gap:2px;padding:2px;border-radius:var(--radius-md);background:var(--surface-muted);box-shadow:var(--ring)}.segmented label{min-height:0;display:flex;gap:0}.segmented input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.segmented :is(button,label>span){min-height:32px;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:0 var(--space-3);color:var(--muted);font-size:var(--text-sm);font-weight:var(--weight-semibold);white-space:nowrap;border:0;border-radius:var(--radius-sm);background:transparent;cursor:pointer;transition:color var(--duration-fast) var(--ease-out),background-color var(--duration-fast) var(--ease-out)}.segmented :is(button:active:not(:disabled),label:active>span){color:var(--ink)}@media (hover: hover) and (pointer: fine){.segmented :is(button:hover:not(:disabled),label:hover>span){color:var(--ink)}}.segmented :is(button[aria-pressed=true],input:checked+span){color:var(--ink);background:var(--card);box-shadow:0 0 0 1px var(--control-border)}.segmented input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}.badge{display:inline-flex;align-items:center;gap:var(--space-1);color:var(--ink-soft);font-size:var(--text-xs);font-weight:var(--weight-semibold);line-height:var(--leading-snug);font-variant-numeric:tabular-nums}.badge:before{content:"";flex:none;width:.5rem;height:.5rem;border-radius:var(--radius-full);background:currentColor}.badge:has(svg):before{display:none}.badge.good{color:var(--good)}.badge.warn{color:var(--warn)}.badge.danger{color:var(--danger)}.badge.info{color:var(--info)}.badge.muted{color:var(--muted)}.pill{display:inline-flex;align-items:center;gap:var(--space-1);padding:.125rem var(--space-2);color:var(--ink-soft);font-size:var(--text-xs);font-weight:var(--weight-semibold);line-height:var(--leading-snug);font-variant-numeric:tabular-nums;border-radius:var(--radius-sm);background:var(--surface-muted)}.pill.accent{color:var(--accent);background:var(--accent-soft)}.pill.good{color:var(--good);background:var(--good-soft)}.pill.warn{color:var(--warn);background:var(--warn-soft)}.pill.danger{color:var(--danger);background:var(--danger-soft)}.chip{min-height:32px;display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);color:var(--ink-soft);font-size:var(--text-sm);font-weight:var(--weight-regular);text-align:left;overflow-wrap:anywhere;border:1px solid var(--control-border);border-radius:22px;background:var(--card);transition:color var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out),background-color var(--duration-fast) var(--ease-out)}:is(button,label).chip{cursor:pointer}:is(button,label).chip:active:not(:disabled){color:var(--ink);border-color:var(--control-border-hover)}@media (hover: hover) and (pointer: fine){:is(button,label).chip:hover:not(:disabled){color:var(--ink);border-color:var(--control-border-hover)}}.chip:is([aria-pressed=true],:has(input:checked)){color:var(--accent);border-color:var(--accent);background:var(--accent-soft)}.chip:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.chip input:focus-visible{outline:none}fieldset:disabled .chip{color:var(--muted);cursor:not-allowed}.chip:has(.chip-action){padding-right:var(--space-1)}.chip-action{min-width:24px;min-height:24px;flex:none;display:inline-grid;place-items:center;white-space:nowrap;padding:0 var(--space-2);color:var(--muted);font-size:var(--text-sm);font-weight:var(--weight-semibold);border:0;border-radius:var(--radius-full);background:transparent;cursor:pointer}.chip-action:has(>svg:only-child){padding:0}.chip-action:active:not(:disabled){color:var(--ink);background:var(--surface-muted)}@media (hover: hover) and (pointer: fine){.chip-action:hover:not(:disabled){color:var(--ink);background:var(--surface-muted)}}.chip-action[aria-pressed=true]{color:var(--accent);background:var(--accent-soft)}.table-scroll{position:relative;overflow-x:auto;overscroll-behavior-x:contain}.data-table,.assistant-markdown table{width:100%;border-collapse:collapse;font-size:var(--text-sm);line-height:var(--leading-snug);font-variant-numeric:tabular-nums}.data-table caption{padding-bottom:var(--space-2);color:var(--ink-soft);font-weight:var(--weight-semibold);text-align:left}.data-table :is(th,td),.assistant-markdown :is(th,td){padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.data-table :is(th,td):first-child,.assistant-markdown :is(th,td):first-child{padding-left:0}.data-table :is(th,td):last-child,.assistant-markdown :is(th,td):last-child{padding-right:0}.data-table thead th,.assistant-markdown thead th{color:var(--muted);font-size:var(--text-xs);font-weight:var(--weight-semibold);border-bottom-color:var(--line-strong)}.data-table tbody th{font-weight:var(--weight-semibold)}.data-table.numeric :is(th,td):not(:first-child){text-align:right}summary{list-style:none;padding-block:var(--space-1);cursor:pointer}summary::-webkit-details-marker{display:none}summary:before{content:"";display:inline-block;flex:none;width:1em;height:1em;margin-right:var(--space-2);vertical-align:-.14em;background:currentColor;opacity:.7;-webkit-mask:var(--icon-chevron-right) center / contain no-repeat;mask:var(--icon-chevron-right) center / contain no-repeat;transition:transform var(--move-fast) var(--ease-out)}summary:has(.disclosure-chevron):before{content:none}.disclosure-chevron{transition:transform var(--move-fast) var(--ease-out)}details[open]>summary:before,details[open]>summary .disclosure-chevron,[aria-expanded=true]>.disclosure-chevron{transform:rotate(90deg)}.steps{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-5);margin:0;padding:0;list-style:none}.steps>*{min-height:32px;display:inline-flex;align-items:center;gap:var(--space-2);color:var(--muted);font-size:var(--text-sm);font-weight:var(--weight-semibold);text-decoration:none}.steps b{width:1.5rem;height:1.5rem;display:grid;flex:none;place-items:center;font-size:var(--text-xs);font-variant-numeric:tabular-nums;border-radius:var(--radius-full);box-shadow:inset 0 0 0 1px var(--control-border)}.steps b svg{stroke-width:2.75}.steps .complete{color:var(--ink-soft)}.steps .complete b{color:var(--good);box-shadow:inset 0 0 0 1px currentColor}.steps [aria-current=step]{color:var(--ink)}.steps [aria-current=step] b{color:var(--on-accent);background:var(--accent);box-shadow:none}.steps a:active{color:var(--ink)}@media (hover: hover) and (pointer: fine){.steps a:hover{color:var(--ink)}}.card{padding:var(--space-4) var(--space-5);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--card);box-shadow:var(--shadow-sm)}.card.quiet{padding:var(--space-4);border-radius:var(--radius-md);background:var(--surface-subtle);box-shadow:none}.action-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.action-row.end{justify-content:flex-end}.section-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:var(--space-2) var(--space-4)}.section-head :is(h2,h3,h4,p){margin:0}.panel{margin-bottom:var(--space-6)}.panel+.panel{padding-top:var(--space-6);border-top:1px solid var(--line)}.dashboard-columns>.panel+.panel{padding-top:0;border-top:0}.notice{position:relative;margin:var(--space-4) 0;padding:var(--space-3) var(--space-4) var(--space-3) var(--space-7);color:var(--ink-soft);font-size:var(--text-sm);line-height:var(--leading-snug);border-radius:var(--radius-md);background:var(--card);border:1px solid var(--line)}.notice:before{content:"";position:absolute;top:.87rem;left:.95rem;width:1.1rem;height:1.1rem;background:var(--accent);-webkit-mask:var(--icon-info) center / contain no-repeat;mask:var(--icon-info) center / contain no-repeat}.notice.error{color:var(--danger-ink);background:var(--danger-soft);border-color:var(--danger-line)}.notice.error:before{background:var(--danger);-webkit-mask-image:var(--icon-alert);mask-image:var(--icon-alert)}.notice.good{color:var(--good-ink);background:var(--good-soft);border-color:var(--good-line)}details.notice{padding-left:var(--space-4)}details.notice:before{display:none}details.notice>summary{font-weight:var(--weight-semibold)}.notice.good:before{background:var(--good);-webkit-mask-image:var(--icon-check);mask-image:var(--icon-check)}.loading{display:flex;align-items:center;gap:var(--space-2);margin:0;color:var(--muted)}.load-failed{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2) var(--space-4)}.load-failed p{margin:0}.spinner,.loading:before,.studio-loading:before{content:"";width:1rem;height:1rem;flex:none;border:2px solid var(--accent-soft-strong);border-top-color:var(--accent);border-radius:var(--radius-full);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes loading-pulse{50%{opacity:.3}}.loading,.skeleton,.studio-loading,.auth-loading{animation:loading-wait 0s .3s backwards}@keyframes loading-wait{0%{visibility:hidden}}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}:where(input:not([type=checkbox],[type=radio],[type=file],[type=range]),select,textarea){padding:var(--space-2) var(--space-3);color:var(--ink);font-size:var(--text-sm);font-weight:var(--weight-regular);border:1px solid var(--control-border);border-radius:var(--radius-md);background-color:var(--card);box-shadow:var(--shadow-sm);transition:border-color var(--duration-fast) var(--ease-out)}:where(input:not([type=checkbox],[type=radio],[type=file],[type=range]),select){min-height:40px}:where(textarea){line-height:var(--leading-normal);resize:vertical}:where(input:not([type=checkbox],[type=radio],[type=file],[type=range]),select,textarea):active:not(:disabled){border-color:var(--control-border-hover)}@media (hover: hover) and (pointer: fine){:where(input:not([type=checkbox],[type=radio],[type=file],[type=range]),select,textarea):hover:not(:disabled){border-color:var(--control-border-hover)}}:where(input:not([type=checkbox],[type=radio],[type=file],[type=range]),select,textarea):focus-visible{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}:is(input,select,textarea)[aria-invalid=true]{border-color:var(--danger);box-shadow:inset 0 0 0 1px var(--danger)}select:not([multiple],[size]){-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:var(--space-6);background-image:var(--icon-select);background-repeat:no-repeat;background-position:right .6rem center;background-size:1rem;cursor:pointer}input[type=checkbox],input[type=radio]{width:1.125rem;height:1.125rem;flex:none;margin:0;accent-color:var(--accent);cursor:pointer}input[type=checkbox].switch{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:relative;width:2.5rem;height:1.5rem;border:1px solid transparent;border-radius:var(--radius-full);background:var(--control-border);transition:background-color var(--duration-fast) var(--ease-out)}input[type=checkbox].switch:before{content:"";position:absolute;top:2px;left:2px;width:calc(1.5rem - 6px);height:calc(1.5rem - 6px);border-radius:50%;background:var(--card);transition:transform var(--move-fast) var(--ease-out)}input[type=checkbox].switch:checked{background:var(--accent)}input[type=checkbox].switch:checked:before{background:var(--on-accent);transform:translate(1rem)}input[type=checkbox].switch[aria-busy=true]{opacity:.5;cursor:progress}:where(button,input,select,textarea):disabled,.btn.disabled{opacity:.5;cursor:not-allowed}:where(button,select)[aria-busy=true]{opacity:.5;cursor:progress}.field-label,:where(label:not(:has(input:is([type=checkbox],[type=radio],[type=file])))),:where(legend){color:var(--ink-soft);font-size:var(--text-sm);font-weight:var(--weight-semibold);line-height:var(--leading-snug)}:where(label:not(:has(input:is([type=checkbox],[type=radio],[type=file])))){display:block}:where(label) :where(input:not([type=checkbox],[type=radio],[type=file],[type=range]),select,textarea){display:block;width:100%;min-width:0;margin-top:var(--space-2)}:where(label,legend,.field-label) :where(small,.muted,.field-hint){color:var(--muted);font-weight:var(--weight-regular)}:where(label:has(input:is([type=checkbox],[type=radio]))){min-height:1.5rem;display:flex;align-items:center;gap:var(--space-2);color:var(--ink);font-size:var(--text-sm);cursor:pointer}:where(fieldset){min-width:0;margin:0;padding:0;border:0}:where(legend){margin-bottom:var(--space-2);padding:0}@media not (pointer: coarse){.followup-controls :is(input,select){min-height:32px;padding-block:var(--space-1)}}.auth-card :is(input,select){min-height:44px;font-size:var(--text-md)}@keyframes overlay-enter{0%{opacity:0}}@keyframes dialog-enter{0%{opacity:0;transform:translateY(8px) scale(.98)}}@keyframes menu-enter{0%{opacity:0;transform:scale(.97)}}dialog{color:var(--ink)}dialog[open]{animation:dialog-enter var(--duration-slow) var(--ease-out)}dialog::backdrop,.nav-overlay{background:var(--backdrop)}dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:overlay-enter var(--duration) var(--ease-out)}.confirm-dialog{width:min(26rem,calc(100vw - 2rem));padding:var(--space-5) min(var(--space-5),7.5vw);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--card);box-shadow:var(--shadow-lg)}.confirm-dialog h2{margin:0}.confirm-dialog p{margin:var(--space-2) 0 0;color:var(--ink-soft)}.confirm-dialog .action-row{margin-top:var(--space-5)}.confirm-dialog h2+label,.name-dialog-theme{margin-top:var(--space-4)}.name-dialog-theme{display:grid;justify-items:start;gap:var(--space-1)}.toast-region{position:fixed;right:calc(1rem + env(safe-area-inset-right,0px));bottom:calc(1rem + env(safe-area-inset-bottom,0px));z-index:var(--z-toast);display:flex;flex-direction:column-reverse;align-items:flex-end;gap:var(--space-2);max-width:min(28rem,calc(100vw - 2rem - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px)))}.toast{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-2) var(--space-2) var(--space-4);color:var(--on-navy);border-radius:var(--radius-md);background:var(--brand-navy-deep);box-shadow:var(--shadow-md);font-size:var(--text-sm);transition:opacity var(--duration-slow) var(--ease-out),transform var(--move-slow) var(--ease-out)}@starting-style{.toast:not(.arrived){opacity:0;transform:translateY(100%)}}.toast>span{min-width:0;overflow-wrap:anywhere}.toast-action{flex:none;min-height:32px;padding:0 var(--space-3);color:var(--brand-mint);border:0;border-radius:var(--radius-sm);background:none;font:inherit;font-weight:var(--weight-semibold);cursor:pointer}.toast-close{width:2rem;height:2rem;flex:none;display:grid;place-items:center;padding:0;color:var(--on-navy-soft);border:0;border-radius:var(--radius-sm);background:none;cursor:pointer}.toast-action:active,.toast-close:active{background:color-mix(in srgb,var(--on-navy-tint) 10%,transparent)}@media (hover: hover) and (pointer: fine){.toast-action:hover,.toast-close:hover{background:color-mix(in srgb,var(--on-navy-tint) 10%,transparent)}}.toast :focus-visible{outline-color:var(--brand-mint)}@media screen{[data-theme=dark] .toast{background:var(--surface-muted);box-shadow:var(--shadow-md),inset 0 0 0 1px var(--line-strong)}}.history-panel{display:grid;gap:var(--space-3);margin:0 0 var(--space-4)}.history-step h2{margin:0 0 var(--space-1)}.history-step p{max-width:720px;margin:0 0 var(--space-3)}.saved-assessments{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--card)}.saved-assessments>summary{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-2);font-weight:var(--weight-semibold);padding:var(--space-3) var(--space-4)}.saved-assessments>summary:before{margin-right:0}.saved-assessments-body{padding:0 var(--space-4) var(--space-2);border-top:1px solid var(--line)}.saved-class-list{display:grid;grid-template-columns:fit-content(16rem) minmax(0,1fr);column-gap:var(--space-3);max-height:22rem;overflow-y:auto;margin:0;padding:0;list-style:none}.saved-class-list>li{display:grid;grid-column:1 / -1;grid-template-columns:subgrid;align-items:baseline;padding:var(--space-3) 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.saved-class-list>li:last-child{border-bottom:0}.saved-cycle-list{display:flex;flex-wrap:wrap;gap:var(--space-2);margin:0;padding:0;list-style:none}.action-title{font-weight:var(--weight-semibold);font-size:var(--text-md)}.auth-shell{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-5);padding:var(--space-7) min(var(--space-4),5vw);background:radial-gradient(56rem 28rem at 50% -8%,var(--accent-soft-strong),transparent 70%),var(--bg)}.auth-brand{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--ink);font-size:var(--text-md);letter-spacing:var(--tracking-snug)}.auth-brand b{font-weight:var(--weight-bold)}.auth-card{width:min(100%,420px);padding:var(--space-6) min(var(--space-6),10vw);overflow-wrap:break-word;background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.auth-card h1{margin-bottom:var(--space-5);text-align:center}.auth-intro{margin:calc(var(--space-3) * -1) 0 var(--space-5);color:var(--muted);font-size:var(--text-sm);text-align:center}.auth-intro .code{overflow-wrap:anywhere;-webkit-box-decoration-break:clone;box-decoration-break:clone}.auth-card>.notice{margin:0 0 var(--space-4)}.auth-form{display:flex;flex-direction:column;gap:var(--space-4)}.auth-form .btn{min-height:44px;margin-top:var(--space-1)}.auth-form>.notice{margin:0}.auth-form>.field-hint{margin-top:calc(var(--space-2) * -1)}.auth-checked{margin:0;color:var(--muted);font-size:var(--text-sm);text-align:center}.auth-switch{margin:var(--space-5) 0 0;color:var(--muted);font-size:var(--text-sm);text-align:center}.auth-switch .linklike{font-weight:var(--weight-semibold)}.auth-actions{display:flex;justify-content:center;gap:var(--space-2);margin-top:var(--space-5)}.auth-loading{display:inline-flex;align-items:center;gap:var(--space-2);margin:0;color:var(--muted);font-size:var(--text-sm)}.field-hint{display:block;margin:var(--space-1) 0 0;color:var(--muted);font-size:var(--text-sm);font-weight:var(--weight-regular);line-height:var(--leading-snug)}.password-input{position:relative;margin-top:var(--space-2)}.password-input input{display:block;width:100%;padding-right:calc(var(--space-3) + 2rem)}.password-input .icon-button{position:absolute;top:0;bottom:0;right:var(--space-1);margin-block:auto}.field-stack>:is(input,select,textarea){display:block;width:100%;margin-top:var(--space-2)}.field-stack>.field-hint{margin-bottom:0}.field-error{display:block;margin-top:var(--space-1);color:var(--danger);font-size:var(--text-sm);font-weight:var(--weight-semibold)}.code-input{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:var(--tracking-caps)}.code{padding:var(--space-1) var(--space-2);color:var(--accent);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--text-sm);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-caps);background:var(--accent-soft);border-radius:var(--radius-sm)}.legal-links{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--space-2);color:var(--muted);font-size:var(--text-xs)}.legal-links a{min-height:24px;display:inline-flex;align-items:center;color:inherit;text-decoration:none}.legal-links a:active{color:var(--accent);text-decoration:underline}@media (hover: hover) and (pointer: fine){.legal-links a:hover{color:var(--accent);text-decoration:underline}}.sidebar-legal-links{justify-content:flex-start;padding:0 var(--space-3);color:var(--on-navy-muted);font-size:var(--text-xs)}.sidebar-legal-links a:active{color:var(--on-navy)}@media (hover: hover) and (pointer: fine){.sidebar-legal-links a:hover{color:var(--on-navy)}}.legal-shell{width:min(100% - 2rem,860px);min-height:100dvh;margin:0 auto;padding:var(--space-5) 0 var(--space-7)}.legal-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-6)}.legal-brand{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--ink);text-decoration:none}.legal-brand:active{color:var(--ink)}@media (hover: hover) and (pointer: fine){.legal-brand:hover{color:var(--ink)}}.legal-brand>span:last-child{display:flex;flex-direction:column;line-height:var(--leading-tight)}.legal-brand b{font-size:var(--text-md);font-weight:var(--weight-bold);letter-spacing:var(--tracking-snug)}.legal-document{padding:clamp(var(--space-5),5vw,var(--space-7));background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.legal-eyebrow{margin:0 0 var(--space-2);color:var(--accent);font-size:var(--text-xs);font-weight:var(--weight-bold);letter-spacing:var(--tracking-caps);text-transform:uppercase}.legal-document>h1{font-size:clamp(var(--text-xl),5vw,var(--text-2xl));letter-spacing:var(--tracking-tight)}.legal-updated{margin:var(--space-2) 0 var(--space-6);color:var(--muted);font-size:var(--text-sm)}.legal-draft-note{margin-bottom:var(--space-7);padding:var(--space-4) var(--space-4);color:var(--warn-ink);border:1px solid var(--warn-line);border-radius:var(--radius-md);background:var(--warn-soft);font-size:var(--text-sm)}.legal-draft-note strong{display:block;margin-bottom:var(--space-1)}.legal-copy{color:var(--ink-soft);line-height:var(--leading-normal)}.legal-copy section+section{margin-top:var(--space-6);padding-top:var(--space-6);border-top:1px solid var(--line)}.legal-copy h2{margin-bottom:var(--space-2);color:var(--ink)}.legal-copy p{margin:var(--space-2) 0 0}.legal-copy ul{margin:var(--space-3) 0 0;padding-left:var(--space-5)}.legal-copy li+li{margin-top:var(--space-1)}.legal-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-5) 0 0;color:var(--muted);font-size:var(--text-xs)}.followups{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.followup{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4);align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-subtle)}.followup.done .followup-main{color:var(--muted)}.followup-main{min-width:12rem;flex:1}.followup-controls{display:flex;gap:var(--space-2);align-items:end;flex-wrap:wrap}.followup-controls input[type=text]{width:8rem}.followup-controls select,.followup-filters select{max-width:14rem}.access-requests{margin-bottom:var(--space-5)}.access-requests h2{margin:0 0 var(--space-1)}.request-list{margin:0;padding:0;list-style:none}.request-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) 0}.request-row+.request-row{border-top:1px solid var(--line)}.request-row:last-child{padding-bottom:0}.request-facts{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-1);margin:var(--space-1) 0 0;font-size:var(--text-sm)}.request-facts>div{display:flex;flex-wrap:wrap;gap:var(--space-2)}.request-facts dt{width:5.5rem;max-width:100%;color:var(--muted)}.request-facts dd{margin:0;overflow-wrap:anywhere}.request-actions{max-width:100%;margin-left:auto;display:flex;justify-content:flex-end;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.request-actions select{width:11rem;max-width:100%}.declined-requests{margin-top:var(--space-5)}.person-name{display:flex;align-items:flex-start;gap:var(--space-3);min-width:0}.request-row .person-name{overflow-wrap:anywhere}.person-name>span:last-child{display:flex;flex-direction:column;min-width:0}.person-name small{color:var(--muted);font-size:var(--text-xs);font-weight:var(--weight-regular);overflow-wrap:anywhere}.people-toolbar{justify-content:space-between;margin-bottom:var(--space-4)}.people-toolbar .directory-search{flex:0 1 24rem}.people-table :is(th,td){vertical-align:middle}.people-table-action{width:1%;text-align:right}.people-table tr.is-editing>*{border-bottom-color:transparent}.people-table .person-edit-row>td{padding:0 0 var(--space-4)}.person-edit{display:grid;gap:var(--space-4)}.person-edit-fields{display:grid;grid-template-columns:2fr 1fr 1fr;gap:var(--space-3)}.person-edit-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2)}.person-edit-actions .action-row{margin-left:auto}.data-import-preview{margin-top:var(--space-4)}.data-import-preview>:is(h3,dl):first-child,.data-import-preview>div:first-child:empty+:is(h3,dl){margin-top:0}.import-outcome:focus{outline:none}.import-result{display:grid;gap:var(--space-4);margin-bottom:var(--space-4)}.import-result-summary{display:flex;align-items:flex-start;gap:var(--space-2);margin:0;font-weight:var(--weight-semibold)}.import-result-summary svg{flex:none;margin-top:.1em;color:var(--good)}.import-result-left-out{display:grid;gap:var(--space-2);margin:var(--space-3) 0 0;font-size:var(--text-sm)}.import-result-left-out dt{color:var(--muted)}.import-result-left-out dd{margin:0;overflow-wrap:anywhere}.data-import-preview dl{display:flex;flex-wrap:wrap;gap:var(--space-3) var(--space-6);margin:0 0 var(--space-4)}.data-import-preview dt{color:var(--muted);font-size:var(--text-sm)}.data-import-preview dd{margin:0;overflow-wrap:anywhere}.data-import-field{max-width:20rem;margin-bottom:var(--space-4)}.data-import-preview h3{margin:var(--space-4) 0 var(--space-2)}.data-import-rosters{margin:0;padding:0;list-style:none;overflow-wrap:anywhere}.data-import-rosters details>ul{columns:12rem auto;column-gap:var(--space-5);margin:var(--space-1) 0 var(--space-3);padding-left:var(--space-5);list-style:none;color:var(--ink-soft);font-size:var(--text-sm)}.data-import-rosters details>ul>li{break-inside:avoid;padding-block:.125rem}.data-import-maximums{display:grid;gap:var(--space-3);margin:var(--space-3) 0 0;padding:0;list-style:none}.data-import-maximums .data-import-field{margin-bottom:var(--space-1)}.data-import-template{display:inline-flex;align-items:center;gap:var(--space-1);margin-top:var(--space-3);font-weight:var(--weight-semibold)}.data-import-assessment{display:flex;flex-wrap:wrap;gap:var(--space-4);margin:var(--space-5) 0 0}.data-import-assessment .data-import-field{margin-bottom:0}.data-import-assessment .data-import-field:first-of-type{flex:1 1 14rem}.data-import-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-4)}.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-5)}.panel-heading h2,.panel-heading p{margin:0}.panel-heading p{margin-top:var(--space-1)}.group-list{margin:0;padding:0;list-style:none}.confirm-dialog .one-time-password{margin-top:var(--space-4);font-size:var(--text-lg);-webkit-user-select:all;user-select:all}.confirm-dialog .notice{margin-top:var(--space-3)}.group-picker .chip{margin:0 var(--space-2) var(--space-2) 0}.person-chips{display:flex;flex-wrap:wrap;gap:var(--space-2);margin:var(--space-3) 0 0;padding:0;list-style:none}.person-chips .chip[aria-busy=true]{opacity:.5}.add-person{width:auto;min-width:min(12rem,100%);max-width:100%;margin-top:var(--space-3)}.staff-signup{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3) var(--space-5);min-height:calc(40px + 2 * var(--space-4) + 2px);margin-bottom:var(--space-5)}.staff-signup>label{gap:var(--space-3);font-weight:var(--weight-semibold)}.staff-signup-code{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.staff-signup-code .code{min-width:0;overflow-wrap:anywhere;min-height:40px;display:inline-flex;align-items:center;padding-inline:var(--space-3);-webkit-user-select:all;user-select:all}.staff-signup .notice{flex-basis:100%;margin:0}.add-staff{margin-bottom:var(--space-4)}.archive-toggle{width:fit-content;margin-bottom:var(--space-4);color:var(--muted)}.create-group-form{max-width:32rem;margin-bottom:var(--space-5)}.create-group-form>label{margin-bottom:var(--space-2)}.create-group-form>div,.rename-group-form{display:flex;gap:var(--space-2)}.create-group-form input,.rename-group-form input{flex:1;min-width:0}.create-group-form .notice{margin:var(--space-2) 0 0}.group-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(20rem,100%),1fr));align-items:start;gap:var(--space-3)}.group-card{min-width:0;padding:var(--space-3) var(--space-4);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-subtle)}.group-card.archived .group-card-head strong{color:var(--muted)}.group-card .notice{margin:var(--space-3) 0 0}.group-card-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--space-1) var(--space-3)}.group-card-head>div:first-child{min-width:0;display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-3)}.group-card-head strong{min-width:0;overflow-wrap:anywhere;font-size:var(--text-md);font-weight:var(--weight-semibold);line-height:var(--leading-snug)}.group-card-head .rename-group-form{flex:1;flex-wrap:wrap;justify-content:flex-end}.group-card-head .rename-group-form input{flex-basis:100%}.group-actions{display:flex;flex:none;gap:var(--space-3)}.group-card-head>:is(.group-actions,.text-button){margin-left:auto}.group-members-none{margin:var(--space-2) 0 0;color:var(--muted);font-size:var(--text-sm)}@media print{body{background:var(--paper)}.no-print{display:none!important}.app-frame{display:block}.app-content{max-width:none;padding:0}body.printing-review-brief *{visibility:hidden}body.printing-review-brief .review-brief-output,body.printing-review-brief .review-brief-output *{visibility:visible}body.printing-review-brief .review-brief-output{position:absolute;top:0;right:0;bottom:0;left:0;display:block;margin:0;padding:0;color:var(--paper-ink)}body.printing-review-brief .review-brief-document{max-width:none;margin:0;padding:0;color:var(--paper-ink);border:0;box-shadow:none}body.printing-review-brief .review-brief-confirmation,body.printing-review-brief .review-brief-label small,body.printing-review-brief .review-brief-output>.notice,body.printing-review-brief .review-brief-output>button{display:none}body.printing-review-brief *:not(:has(.review-brief-output),.review-brief-output,.review-brief-output *){display:none}body.printing-review-brief .review-brief-field textarea{display:none}body.printing-review-brief .review-brief-print{display:block}}@media (max-width: 1024px){.app-frame{display:block}.assistant-frame{--assistant-height: calc(100dvh - var(--mobile-bar-height) - var(--space-5) * 2 - env(safe-area-inset-bottom, 0px))}.mobile-bar{position:sticky;top:0;z-index:var(--z-sticky);min-height:var(--mobile-bar-height);display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) var(--space-4);color:var(--ink);border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--bg) 86%,transparent);-webkit-backdrop-filter:saturate(1.4) blur(14px);backdrop-filter:saturate(1.4) blur(14px)}.mobile-brand small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-sidebar{position:fixed;top:0;bottom:0;left:0;z-index:var(--z-drawer);width:calc(min(86vw,296px) + env(safe-area-inset-left,0px));height:100dvh;padding-left:calc(var(--space-3) + env(safe-area-inset-left,0px));transform:translate(-105%);visibility:hidden;box-shadow:var(--shadow-lg);transition:transform var(--move-slow) var(--ease-out),visibility 0s linear var(--move-slow)}html:has(.app-sidebar.open){overflow:hidden}.app-sidebar.open{transform:translate(0);visibility:visible;transition-delay:0s}.app-sidebar .sidebar-close{display:inline-grid}.nav-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-overlay);display:block;padding:0;border:0;cursor:default;opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--duration-slow) var(--ease-out),visibility 0s linear var(--duration-slow)}.nav-overlay.open{opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s}.app-content{max-width:none;padding:var(--space-5) var(--space-5) calc(var(--space-7) * 1.5)}}@media (min-width: 1025px) and (max-width: 1279px){.app-content{padding-inline:var(--space-5)}}@media (max-width: 640px){.app-content{padding-inline:var(--space-4)}.topbar{align-items:flex-start;flex-direction:column}.topbar-actions{width:100%;flex-wrap:wrap}.topbar-actions .btn{flex:1;text-align:center}.person-edit-fields{grid-template-columns:minmax(0,1fr)}.people-toolbar .directory-search{flex-basis:100%}.request-actions select{flex:1 0 100%}.legal-shell{width:min(100% - 2rem,860px);padding-top:var(--space-3)}.legal-header{margin-bottom:var(--space-3)}.legal-footer{justify-content:center}}.student-index{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.student-index>li+li{border-top:1px solid var(--line)}.student-index-row{width:100%;display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-3);color:var(--ink);text-align:left;border:0;border-radius:var(--radius-md);background:transparent;cursor:pointer;transition:background-color var(--duration-fast) var(--ease-out);text-decoration:none}.student-index-row:active:not(:disabled){color:var(--ink);background:var(--surface-subtle)}@media (hover: hover) and (pointer: fine){.student-index-row:hover:not(:disabled){color:var(--ink);background:var(--surface-subtle)}}.student-index-row:focus-visible{outline-offset:-2px}.student-index-name{font-weight:var(--weight-semibold)}.student-profile .panel-heading{flex-wrap:wrap;align-items:center}.student-identity :is(h1,h2){margin:var(--space-2) 0 var(--space-1);font-size:var(--text-xl);letter-spacing:var(--tracking-tight)}.student-identity p{margin:0;color:var(--muted)}.student-identity :is(h1,h2,p),.class-detail-intro h1{overflow-wrap:anywhere}.student-identity .case-summary{max-width:75ch;margin-top:var(--space-3);color:var(--ink-soft);line-height:var(--leading-normal);white-space:pre-wrap}.student-followups{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.student-followups li{display:flex;justify-content:space-between;gap:var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid var(--line)}.note-form{display:grid;gap:var(--space-2);margin-bottom:var(--space-4)}.note-form .btn{align-self:flex-start}.student-edit{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:flex-end;margin-top:var(--space-4);padding:var(--space-4);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-subtle)}.student-edit>label{flex:1 1 14rem;max-width:24rem}.student-edit>.notice{flex-basis:100%;margin:0}.student-edit-footer{flex-basis:100%;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3)}.student-edit-footer>.action-row{margin-left:auto}.ai-summary{margin-top:var(--space-5);padding:0 0 0 var(--space-4);border-left:2px solid var(--accent)}.ai-summary-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.ai-summary-head h2{margin:0}.ai-summary p{margin:var(--space-2) 0 0;line-height:var(--leading-normal)}.case-index{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.case-index-row{width:100%;display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-3) var(--space-4);color:var(--ink);text-align:left;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--card);cursor:pointer;transition:border-color var(--duration-fast) var(--ease-out);text-decoration:none}.case-index-row:active:not(:disabled){color:var(--ink);border-color:var(--accent-line);box-shadow:var(--shadow-md)}@media (hover: hover) and (pointer: fine){.case-index-row:hover:not(:disabled){color:var(--ink);border-color:var(--accent-line);box-shadow:var(--shadow-md)}}.case-index-main{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.badge.tier-confirmed{color:var(--info)}.badge.tier-suggested{color:var(--warn)}.badge.restricted{color:var(--danger)}.case-controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--space-4);margin:var(--space-5) 0}.case-control{padding:var(--space-4);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface-subtle)}.case-control{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-3)}.case-control>label{width:100%}.case-control>label .pill{margin-left:var(--space-2)}.case-control>p{margin:0}.case-outcome{margin:var(--space-5) 0}.case-outcome form{display:grid;gap:var(--space-3)}.case-outcome input[type=date]{width:fit-content}.case-progress{padding:var(--space-5) 0;border-bottom:1px solid var(--line)}.case-progress h3{margin-top:0}.case-progress p{max-width:720px;margin:0 0 var(--space-2)}.case-progress-class h4{margin:var(--space-4) 0 var(--space-2)}.review-brief-tool{margin:var(--space-6) 0 0;padding:var(--space-5) 0 0;border-top:1px solid var(--line)}.review-brief-tool h3{display:flex;align-items:center;gap:var(--space-2);margin:0 0 var(--space-1)}.review-brief-tool h3 svg{color:var(--accent)}.review-brief-controls{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-4);margin-top:var(--space-4)}.review-brief-output{display:block;margin-top:var(--space-5)}.review-brief-document{max-width:58rem;margin:0 auto;padding:var(--space-7) var(--space-7);color:var(--paper-ink);border:1px solid var(--paper-line);border-radius:var(--radius-sm);background:var(--paper-warm);box-shadow:var(--shadow-md)}@media (max-width: 640px){.review-brief-document{padding:var(--space-5) var(--space-4)}}.review-brief-document header{padding-bottom:var(--space-5);border-bottom:2px solid var(--paper-rule)}.review-brief-document header>span{color:var(--muted);font-size:var(--text-xs);font-weight:var(--weight-bold);letter-spacing:var(--tracking-caps);text-transform:uppercase}.review-brief-field{display:block;padding:var(--space-4) 0;border-bottom:1px solid var(--paper-line)}.review-brief-document header .review-brief-field{padding:var(--space-2) 0 var(--space-1);border-bottom:0}.review-brief-label{display:flex;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-2);color:var(--paper-heading);font-size:var(--text-xs);font-weight:var(--weight-semibold)}.review-brief-label small{color:var(--muted);font-weight:var(--weight-regular);font-variant-numeric:tabular-nums}.review-brief-field textarea{width:calc(100% + var(--space-2) * 2);min-height:0;margin:0 calc(var(--space-2) * -1);padding:var(--space-2);color:var(--paper-ink);font:var(--text-md) / var(--leading-normal) ui-serif,Georgia,serif;border-color:transparent;background:transparent;box-shadow:none;resize:none;overflow:hidden}.review-brief-field textarea:active{border-color:var(--paper-line)}@media (hover: hover) and (pointer: fine){.review-brief-field textarea:hover{border-color:var(--paper-line)}}.review-brief-print{display:none;color:var(--paper-ink);font:var(--text-md) / var(--leading-normal) ui-serif,Georgia,serif;white-space:pre-wrap;overflow-wrap:anywhere;unicode-bidi:plaintext}.review-brief-title :is(textarea,.review-brief-print){font-size:var(--text-xl);font-weight:var(--weight-bold);line-height:var(--leading-tight);letter-spacing:var(--tracking-snug)}.review-brief-document header p{margin:0;color:var(--muted);font-size:var(--text-sm)}.review-brief-confirmation{max-width:58rem;align-items:flex-start;margin:var(--space-4) auto;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--surface-subtle)}.review-brief-confirmation input{margin-top:var(--space-1)}.review-brief-output>button{display:flex;margin-left:auto}.case-timeline{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.case-timeline li{position:relative;display:flex;flex-direction:column;gap:var(--space-1);padding:0 0 var(--space-4) var(--space-5);font-size:var(--text-sm)}.case-timeline li:before{content:"";position:absolute;top:.45rem;left:0;width:8px;height:8px;border-radius:var(--radius-full);background:var(--card);box-shadow:0 0 0 2px var(--chart-muted)}.case-timeline li:not(:last-child):after{content:"";position:absolute;top:1.05rem;bottom:.15rem;left:3px;width:2px;border-radius:var(--radius-sm);background:var(--line)}.case-timeline li:first-child:before{box-shadow:0 0 0 2px var(--accent)}.new-case-panel{margin:var(--space-4) 0 var(--space-5);padding:var(--space-4) var(--space-5);border:1px solid var(--accent-line);border-radius:var(--radius-lg);background:var(--surface-subtle)}.new-case-panel h2{margin:0 0 var(--space-3)}.new-case-panel>p{margin:0 0 var(--space-3)}.new-case-field{margin-top:var(--space-3)}.new-case-row{display:flex;flex-wrap:wrap;gap:var(--space-4);align-items:flex-end}.new-case-row .new-case-field{flex:1 1 200px}.new-case-check{margin-bottom:var(--space-2)}.new-case-panel .action-row{margin-top:var(--space-4)}.case-action-form{display:grid;grid-template-columns:minmax(0,2fr) minmax(10rem,1fr) auto auto;gap:var(--space-3);align-items:end;margin:0 0 var(--space-4);padding:var(--space-4);border-radius:var(--radius-md);background:var(--surface-subtle)}.case-action-form>.btn{justify-self:start}.case-action-form>label:has(.field-error){align-self:start}.meeting-workspace{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-5)}.meeting-list-section h3,.meeting-past summary{margin:0 0 var(--space-3);font-size:var(--text-md);font-weight:var(--weight-bold)}.meeting-selected-students summary{width:fit-content;min-height:44px;padding-block:var(--space-3);color:var(--muted);font-size:var(--text-sm)}.meeting-past summary{width:fit-content;min-height:44px;padding-block:var(--space-3)}.meeting-list-section h3 span,.meeting-past summary span{font-weight:var(--weight-regular);font-variant-numeric:tabular-nums}.meeting-card:has(.meeting-card-open:active){border-color:var(--accent-line);box-shadow:var(--shadow-md)}@media (hover: hover) and (pointer: fine){.meeting-card:has(.meeting-card-open:hover){border-color:var(--accent-line);box-shadow:var(--shadow-md)}}.meeting-detail-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2) var(--space-4)}.meeting-detail-header h2,.meeting-detail-header p{margin:0}.meeting-detail-header h2[tabindex="-1"]{outline:none}.meeting-attendee-picker>p{grid-column:1 / -1;margin:var(--space-3) 0 0}.new-case-panel .citation-list{margin-top:var(--space-3)}.meeting-invitation{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4) var(--space-4);color:var(--accent-hover);border-radius:var(--radius-lg);background:var(--accent-soft);border:1px solid var(--accent-line)}.meeting-invitation>svg{flex:none;margin-top:var(--space-1);color:var(--accent)}.meeting-invitation p{margin:var(--space-1) 0 0;font-size:var(--text-sm)}.meeting-list{list-style:none;display:grid;gap:var(--space-2);margin:0;padding:0}.meeting-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-4) var(--space-3) var(--space-3);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--card);transition:border-color var(--duration-fast) var(--ease-out);box-shadow:var(--shadow-sm)}.meeting-card-open{min-width:0;display:grid;grid-template-columns:13.5rem minmax(0,1fr);align-items:stretch;gap:var(--space-4);padding:0;color:inherit;font:inherit;text-align:left;border:0;border-radius:var(--radius-md);background:transparent;cursor:pointer;text-decoration:none}.meeting-card-open:active{color:inherit}@media (hover: hover) and (pointer: fine){.meeting-card-open:hover{color:inherit}}.meeting-date-block{display:grid;grid-template-columns:3.1rem minmax(0,1fr);align-content:center;gap:var(--space-1) var(--space-3);padding:var(--space-1);color:var(--ink);border-radius:var(--radius-md);background:transparent}.meeting-date-block b{font-size:var(--text-sm);font-weight:var(--weight-semibold)}.meeting-date-block span{font-size:var(--text-xs)}.meeting-calendar-stamp{display:flex;flex-direction:column;align-items:center;overflow:hidden;border-radius:var(--radius-md);background:var(--card);box-shadow:var(--ring-accent)}.meeting-calendar-stamp small{width:100%;padding:var(--space-1) var(--space-1);color:var(--on-accent);text-align:center;font-size:var(--text-xs);font-weight:var(--weight-bold);letter-spacing:var(--tracking-caps);text-transform:uppercase;background:var(--accent)}.meeting-calendar-stamp strong{padding:var(--space-1) var(--space-1) var(--space-1);font-size:var(--text-lg);font-weight:var(--weight-bold);line-height:var(--leading-snug);letter-spacing:var(--tracking-tight);font-variant-numeric:tabular-nums}.meeting-calendar-stamp .meeting-calendar-year{margin-top:calc(-1 * var(--space-1));padding:0 var(--space-1) var(--space-1);color:var(--muted);font-weight:var(--weight-semibold);line-height:var(--leading-snug);font-variant-numeric:tabular-nums}.is-draft .meeting-calendar-stamp{display:grid;min-height:3.4rem;place-items:center;color:var(--warn);background:var(--warn-soft);box-shadow:inset 0 0 0 1px var(--warn-line)}.meeting-date-copy{display:flex;flex-direction:column;justify-content:center;gap:var(--space-1)}.meeting-date-copy>span{color:var(--muted)}.meeting-card-main{min-width:0;display:flex;flex-direction:column;justify-content:center;gap:var(--space-1)}.meeting-card-title{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);font-weight:var(--weight-bold)}.badge.meeting-scheduled{color:var(--info)}.badge.meeting-completed{color:var(--good)}.badge.meeting-draft{color:var(--warn)}.badge.meeting-cancelled{color:var(--muted)}.meeting-plan-drafts ul{display:grid;gap:var(--space-1);margin:0;padding:0;list-style:none}.meeting-plan-drafts li{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-3);min-height:2.25rem}.meeting-plan-drafts li>span{color:var(--muted);font-size:var(--text-sm)}.meeting-plan-drafts .plan-draft-ready>span{color:var(--good)}.meeting-plan-drafts .plan-draft-failed>span{color:var(--danger)}.meeting-choice-list>label{min-height:48px;display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-2) var(--space-2);border-bottom:1px solid var(--line);border-radius:var(--radius-sm);cursor:pointer;transition:background-color var(--duration-fast) var(--ease-out)}.meeting-choice-list>label:active{background:var(--surface-subtle)}@media (hover: hover) and (pointer: fine){.meeting-choice-list>label:hover{background:var(--surface-subtle)}}.meeting-choice-list>label:last-child{border-bottom:0}.meeting-choice-list input{margin-top:var(--space-1)}.meeting-choice-list label>span{min-width:0;display:flex;flex-direction:column;gap:var(--space-1)}.meeting-choice-list b{max-width:100%;font-weight:var(--weight-semibold);line-height:var(--leading-snug);overflow-wrap:anywhere}.meeting-choice-list small{color:var(--ink-soft);font-size:var(--text-sm)}.meeting-attendee-picker{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(15rem,100%),1fr));column-gap:var(--space-4)}.meeting-attendee-picker>legend{grid-column:1 / -1}.meeting-attendee-picker>label:last-child{border-bottom:1px solid var(--line)}.meeting-schedule-fields{display:grid;grid-template-columns:minmax(0,1fr) 10rem;gap:var(--space-3)}.meeting-detail{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-4)}.meeting-detail-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--space-4);padding:0 0 var(--space-5);color:var(--ink);border-bottom:1px solid var(--line)}.meeting-detail-header p{margin-top:var(--space-1)}.meeting-detail-icon{width:2.75rem;height:2.75rem;display:grid;place-items:center;color:var(--accent);border-radius:var(--radius-lg);background:var(--accent-soft);box-shadow:var(--ring-accent)}.meeting-detail-header .muted{color:var(--muted)}.meeting-detail-section{padding:var(--space-5) 0 0;border-top:1px solid var(--line)}.meeting-detail-section>h3,.meeting-detail-section .section-head h3{margin:0}.meeting-detail-section .section-head p{margin:var(--space-1) 0 0}.meeting-agenda-copy{max-width:80ch;margin:var(--space-2) 0 0;white-space:pre-wrap}.meeting-student-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3);margin-top:var(--space-4)}.meeting-student-card{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);background:var(--surface-subtle)}.meeting-student-card>div{min-width:0;display:flex;flex-direction:column;gap:var(--space-1);overflow-wrap:anywhere}.meeting-student-card>.btn{flex-shrink:0}@media (max-width: 1024px){.meeting-student-grid{grid-template-columns:minmax(0,1fr)}}.meeting-attendee-list{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3);margin:var(--space-4) 0 0;padding:0}.meeting-attendee-list li{min-width:0;display:flex;align-items:flex-start;gap:var(--space-2)}.meeting-attendee-list li>span:last-child{min-width:0;display:flex;flex-direction:column}.meeting-attendee-list b{font-size:var(--text-sm);font-weight:var(--weight-semibold);line-height:var(--leading-snug)}.meeting-attendee-list small{color:var(--muted);font-size:var(--text-xs)}.meeting-note-form{display:grid;grid-template-columns:12rem minmax(0,1fr) auto;align-items:end;gap:var(--space-3);margin-top:var(--space-4);padding:var(--space-4);border-radius:var(--radius-md);background:var(--surface-subtle)}.meeting-notes-list{list-style:none;display:grid;gap:var(--space-3);margin:var(--space-4) 0 0;padding:0}.meeting-notes-list li{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--surface-subtle)}.meeting-notes-list p{margin:var(--space-1) 0 0;white-space:pre-wrap}@media (max-width: 1024px){.case-action-form{grid-template-columns:minmax(0,1fr);align-items:stretch}}.meeting-agenda-document{padding:var(--space-5) var(--space-6);border-color:var(--line);background:var(--card)}.meeting-agenda-document .meeting-agenda-copy{font-family:inherit;font-size:var(--text-md);font-weight:var(--weight-regular);line-height:var(--leading-normal)}.meeting-edit-form{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:var(--space-4);padding:var(--space-5);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--card);box-shadow:var(--shadow-sm)}.meeting-edit-form>h3{margin:0}.meeting-edit-agenda textarea{min-height:18rem}.review-queue,.student-plans-stage{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-4)}.case-summary,.student-plan-reason,.case-followups .student-followups li>span:first-child,.followup-main .action-title,.meeting-agenda-copy,.meeting-notes-list p,.review-notes p,.review-smart-summary p,.review-suggestions p{unicode-bidi:plaintext}.student-plan-index .guidance-text>span,.case-followups .student-followups .guidance-text>span{white-space:nowrap}.review-queue,.student-plans-stage,.support-case,.meeting-workspace,.meeting-detail,.followups{overflow-wrap:anywhere}:is(.review-queue,.student-plans-stage,.support-case,.meeting-workspace,.meeting-detail,.followups) :is(.btn,.chip,.badge,.text-button){overflow-wrap:normal}.review-queue-toolbar,.student-plans-toolbar,.followup-filters{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--space-3)}.student-plans-toolbar{justify-content:space-between}.followup-filters{margin-bottom:var(--space-4)}.review-queue-toolbar input[type=search],.student-plans-toolbar input[type=search]{min-width:min(14rem,100%)}.review-filters-toggle{display:none}.review-selection-bar{position:sticky;bottom:calc(var(--space-4) + env(safe-area-inset-bottom,0px));z-index:2;display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-4);padding:var(--space-3) var(--space-3) var(--space-3) var(--space-5);border:1px solid var(--accent-line);border-radius:var(--radius-lg);background:var(--card);box-shadow:var(--shadow-lg);font-variant-numeric:tabular-nums}.review-selection-bar>.btn{margin-left:auto}body:has(.review-selection-bar) .toast-region{bottom:calc(var(--space-4) + 4.5rem)}.review-student-list,.student-plan-index{display:grid;gap:var(--space-2);padding:0;margin:0;list-style:none}.review-student{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--card);transition:border-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out);box-shadow:var(--shadow-sm)}.review-student:has(.review-student-select input:checked){border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.review-student-main{min-width:0;padding:var(--space-4) var(--space-5) var(--space-2)}.review-student-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin:0 0 var(--space-3)}.review-note-form{display:grid;gap:var(--space-3);margin:0 0 var(--space-3)}.review-student-main>.new-case-panel{margin-top:0}.review-student-title,.student-plan-title{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2)}.review-student-title h4{margin:0;font-size:var(--text-md);font-weight:var(--weight-bold)}.review-queue-filters{display:flex;flex-wrap:wrap;gap:var(--space-3)}.review-queue-filters select{max-width:14rem}@media (max-width: 640px){.review-queue-toolbar>label{flex:1 1 10rem}.review-queue-toolbar input[type=search]{min-width:0}.review-filters-toggle{display:inline-flex}.review-queue-filters{display:none;flex-basis:100%}.review-queue-filters.open{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.review-selection-bar{bottom:var(--space-2);gap:var(--space-2);padding:var(--space-2) var(--space-2) var(--space-2) var(--space-3);font-size:var(--text-sm)}}.review-subject-group{display:grid;gap:var(--space-2)}.review-subject-group>h3,.review-planned-group>summary{margin:var(--space-2) 0 0;font-size:var(--text-md);font-weight:var(--weight-bold)}.review-planned-group>.review-student-list{margin-top:var(--space-2)}.review-student-main>.muted.small{margin:var(--space-2) 0 0}.badge.review-priority.urgent{color:var(--danger)}.badge.review-priority.recommended{color:var(--warn)}.badge.review-priority.monitor{color:var(--info)}.review-selection-reason{max-width:920px;margin:var(--space-2) 0 var(--space-3);color:var(--ink-soft)}.review-also-below{max-width:920px;margin:calc(var(--space-1) * -1) 0 var(--space-3)}.area-pattern-list{display:grid;gap:var(--space-2);max-width:920px;padding:0;margin:0 0 var(--space-2);list-style:none;font-size:var(--text-sm);line-height:var(--leading-snug)}.area-pattern-list li{display:grid;gap:var(--space-1);overflow-wrap:anywhere}.area-pattern-list li>span{color:var(--muted)}.area-pattern-results{color:var(--ink);font-variant-numeric:tabular-nums}.review-student-details{container:review-evidence / inline-size;border-top:1px solid var(--line)}.review-student-details[open]{padding-bottom:var(--space-4)}.review-student-details summary{display:flex;align-items:center;gap:var(--space-2);width:fit-content;min-height:44px;padding:var(--space-2) 0;color:var(--ink-soft);font-size:var(--text-sm);font-weight:var(--weight-semibold)}.review-student-details summary:active{color:var(--accent)}@media (hover: hover) and (pointer: fine){.review-student-details summary:hover{color:var(--accent)}}.review-dossier{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-6);padding:var(--space-2) 0 var(--space-1)}.review-dossier h4{margin:0 0 var(--space-3);color:var(--muted);font-size:var(--text-xs);font-weight:var(--weight-bold);letter-spacing:var(--tracking-caps);text-transform:uppercase}.review-smart-summary{display:grid;gap:var(--space-2);max-width:74ch;padding-left:var(--space-4);color:var(--ink-soft);font-size:var(--text-sm);line-height:var(--leading-normal);border-left:2px solid var(--accent)}.review-smart-summary h4{margin-bottom:var(--space-1)}.review-smart-summary>div{display:grid;gap:var(--space-2)}.review-smart-summary>div.clamped{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3}.review-smart-summary p{margin:0}.review-smart-summary .text-button{justify-self:start}.skeleton{display:grid;gap:var(--space-4)}.skeleton-lines{display:grid;gap:var(--space-2)}.skeleton-lines span{position:relative;height:.75rem;overflow:hidden;border-radius:var(--radius-sm);background:var(--line)}.skeleton-lines span:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent,var(--surface-subtle),transparent);transform:translate(-100%);animation:skeleton-sweep 1.4s linear infinite}.skeleton-lines span:last-child{width:60%}@keyframes skeleton-sweep{to{transform:translate(100%)}}.review-dossier-lead{display:grid;align-content:start;gap:var(--space-5);min-width:0}.review-suggestions{max-width:74ch;font-size:var(--text-sm);line-height:var(--leading-snug)}.review-suggestions ol{display:grid;gap:var(--space-3);margin:0 0 var(--space-3);padding:0;list-style:none}.review-suggestions p{margin:0;color:var(--ink-soft)}.review-suggestions .review-suggestion-title{color:var(--ink);font-weight:var(--weight-semibold)}.review-suggestions .review-suggestion-meta,.review-suggestions .review-suggestions-status{color:var(--muted);font-size:var(--text-xs)}.review-suggestion-why>summary{width:fit-content;color:var(--accent);font-weight:var(--weight-semibold)}.review-suggestion-why[open]>summary{margin-bottom:var(--space-2)}.review-dossier-rail{display:grid;align-content:start;gap:var(--space-5);min-width:0;font-size:var(--text-sm);line-height:var(--leading-snug)}.review-rail-empty{margin:0;color:var(--muted)}.review-notes{display:grid;gap:var(--space-3);margin:0;padding:0;list-style:none}.review-note-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3)}.review-note-head b{font-weight:var(--weight-semibold)}.review-note-head b:first-letter{text-transform:uppercase}.review-note-head time{color:var(--muted);font-size:var(--text-xs);font-variant-numeric:tabular-nums;white-space:nowrap}.review-notes p{margin:var(--space-1) 0 0;color:var(--ink-soft)}.review-context{display:grid;gap:var(--space-4);margin:0}.review-context dt{color:var(--muted);font-size:var(--text-xs);font-weight:var(--weight-semibold)}.review-context dd{margin:var(--space-1) 0 0}.review-context dd small{display:block;color:var(--muted);font-size:var(--text-xs);font-variant-numeric:tabular-nums}.review-context-score{display:flex;justify-content:space-between;gap:var(--space-3)}.review-context-score b{font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums}.review-grades{container:review-grades / inline-size;display:grid;grid-template-columns:minmax(0,1fr);align-content:start;gap:var(--space-5);min-width:0}.review-grades>h4{margin-bottom:calc(var(--space-2) * -1)}.review-class>header{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-4);padding-bottom:var(--space-2);border-bottom:1px solid var(--line-strong)}.review-class h5{min-width:0;margin:0;font-size:var(--text-md);font-weight:var(--weight-bold)}.review-class-average{color:var(--muted);font-size:var(--text-xs);white-space:nowrap}.review-class-average b{margin-left:var(--space-1);color:var(--ink);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums}.review-flags{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-1);margin:var(--space-3) 0 var(--space-1);padding:0;list-style:none;font-size:var(--text-sm)}.review-flags li{position:relative;display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-1) var(--space-3);padding-left:var(--space-4)}.review-flags li:before{content:"";position:absolute;top:.5em;left:.1rem;width:6px;height:6px;border-radius:var(--radius-full);background:var(--chart-urgent)}.review-flags strong{min-width:0;font-weight:var(--weight-semibold)}.review-flag-results{font-variant-numeric:tabular-nums}.review-flag-pattern{color:var(--ink-soft);font-size:var(--text-md)}.review-sparkline{align-self:center;overflow:visible}.review-sparkline polyline{stroke:var(--muted);stroke-width:1.5;stroke-linejoin:round}.review-sparkline circle{fill:var(--chart-urgent)}.review-assessments{margin:0;padding:0;list-style:none}.review-assessments>li{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-2);padding:var(--space-3) 0;border-bottom:1px solid var(--line)}.review-assessments>li:last-child{border-bottom:0}.review-assessment-name{display:grid;gap:var(--space-1);min-width:0;overflow-wrap:anywhere}.review-assessment-name strong{font-size:var(--text-sm);font-weight:var(--weight-semibold)}.review-assessment-name small{color:var(--muted);font-size:var(--text-xs);font-variant-numeric:tabular-nums}.review-results{display:grid;align-content:center;gap:var(--space-2);margin:0;padding:0;list-style:none}.review-results li{display:grid;grid-template-columns:minmax(3rem,1fr) auto;grid-template-areas:"meter value";align-items:center;column-gap:var(--space-3)}.review-results li:has(.review-result-label){grid-template-areas:"label label" "meter value"}.review-result-label{grid-area:label;min-width:0;color:var(--ink-soft);font-size:var(--text-sm);overflow-wrap:anywhere}.review-meter{grid-area:meter;position:relative;height:6px;border-radius:var(--radius-full);background:var(--line-strong)}.review-meter-fill{position:absolute;inset:0 auto 0 0;border-radius:inherit;background:var(--chart-muted-hover)}.review-results li.below .review-meter-fill{background:var(--chart-urgent)}.review-meter-target{position:absolute;top:-3px;bottom:-3px;width:2px;margin-left:calc(var(--space-1) * -1);border-radius:var(--radius-sm);background:var(--ink-soft)}.review-result-value{grid-area:value;min-width:3.4rem;font-size:var(--text-sm);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.review-rubric{font-size:var(--text-sm)}.review-rubric>summary{padding:var(--space-2) 0;color:var(--ink-soft);font-weight:var(--weight-semibold)}.review-rubric>summary:active{color:var(--accent)}@media (hover: hover) and (pointer: fine){.review-rubric>summary:hover{color:var(--accent)}}.review-rubric-criterion{margin:var(--space-1) 0 var(--space-4)}.review-rubric h6{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-1) var(--space-2);margin:0 0 var(--space-2)}.review-rubric h6 span{color:var(--muted);font-size:var(--text-xs);font-weight:var(--weight-regular)}.review-rubric ol{display:grid;gap:var(--space-1);margin:0;padding:0;list-style:none}.review-rubric ol li{display:grid;grid-template-columns:1.25rem minmax(0,1fr);gap:var(--space-2);color:var(--ink-soft);line-height:var(--leading-snug);font-size:var(--text-md)}.review-rubric ol li b{font-variant-numeric:tabular-nums;text-align:right}.review-rubric ol li.expected,.review-rubric ol li.latest{color:var(--ink)}.review-rubric em{margin-left:var(--space-2);color:var(--good);font-size:var(--text-xs);font-style:normal;font-weight:var(--weight-bold);white-space:nowrap}.review-rubric em.latest{color:var(--danger)}@container review-grades (min-width: 30rem){.review-assessments>li{grid-template-columns:minmax(9rem,1fr) minmax(0,1.55fr);column-gap:var(--space-5)}.review-results li:has(.review-result-label){grid-template-columns:minmax(0,1.2fr) minmax(3rem,1fr) auto;grid-template-areas:"label meter value"}}@container review-evidence (min-width: 30rem) and (max-width: 47.99rem){.review-dossier-rail{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--space-5)}}@container review-evidence (min-width: 48rem){.review-dossier{grid-template-columns:minmax(0,1fr) 15rem;grid-template-areas:"summary rail" "grades rail";column-gap:var(--space-6)}.review-dossier.without-summary{grid-template-areas:"grades rail"}.review-dossier-lead{grid-area:summary}.review-grades{grid-area:grades}.review-dossier-rail{grid-area:rail;padding-left:var(--space-5);border-left:1px solid var(--line)}}.student-plan-index .case-index-row{align-items:flex-start;gap:var(--space-2);padding:var(--space-4) var(--space-5);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.student-plan-index .case-index-main{display:grid;gap:var(--space-2);width:100%}.student-plan-reason{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;color:var(--ink-soft);font-size:var(--text-sm);line-height:var(--leading-normal)}.case-recommendations{margin-top:var(--space-5);padding:var(--space-5) 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.case-recommendations h3{margin:0}.case-recommendations .section-head{align-items:center;margin-bottom:var(--space-2)}.plan-steps-editor ol{padding-left:var(--space-5)}.plan-steps-editor li{padding-left:var(--space-1)}.plan-steps-editor li>textarea{width:calc(100% - 7.5rem);min-height:40px;margin-right:var(--space-2);vertical-align:top;resize:none;overflow:hidden}.plan-steps-editor li>.icon-button{vertical-align:top;margin-top:var(--space-1)}@media (max-width: 640px){.plan-steps-editor li>textarea{width:100%;margin-right:0}}.plan-steps-editor .action-row{margin-top:var(--space-3)}.action-row-spacer{flex:1}.case-followups,.case-history{padding:var(--space-5) 0;border-bottom:1px solid var(--line)}.case-history{border-bottom:0}.case-followups .student-followups li{flex-wrap:wrap}.support-case>.panel-heading{flex-wrap:wrap}.support-case>.panel-heading>.btn{flex:none}.case-followups h3,.case-history h3{margin:0 0 var(--space-3)}.case-recommendations p{margin-top:0}.case-recommendations ol{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-2);margin-bottom:0;padding-left:var(--space-5)}.case-recommendations li::marker{color:var(--accent);font-weight:var(--weight-bold)}.case-research{padding:var(--space-3) 0;border-bottom:1px solid var(--line)}.case-research>summary{min-height:44px;align-items:center;font-weight:var(--weight-semibold)}.case-research>summary .muted{font-weight:var(--weight-regular)}.case-research[open]>summary{margin-bottom:var(--space-2)}.case-research-method-title{display:flex;align-items:flex-start;gap:var(--space-3)}.case-research-method h4{margin-top:0}.case-research-methods{display:grid;gap:var(--space-4);margin-top:var(--space-4)}.case-research-method{padding-left:var(--space-4);border-left:2px solid var(--accent)}.case-research-method-title{justify-content:space-between}.case-research-method h4{margin-bottom:var(--space-2);font-size:var(--text-md)}.case-research-method dl{display:grid;gap:var(--space-3);margin:0 0 var(--space-3)}.case-research-method dt{font-size:var(--text-sm);font-weight:var(--weight-semibold)}.case-research-method dd{margin:var(--space-1) 0 0;color:var(--ink-soft)}.badge.research-fit-strong{color:var(--good)}.badge.research-fit-partial{color:var(--warn)}.badge.plan-meeting_scheduled{color:var(--info)}.badge.plan-decisions_needed,.badge.plan-review_due{color:var(--warn)}.badge.plan-support_active{color:var(--good)}.progress-review{padding:var(--space-4) var(--space-5);border:1px solid var(--warn-line);border-radius:var(--radius-lg);background:var(--warn-soft)}.progress-review h3{margin:0 0 var(--space-1)}.meeting-preparation-form{display:grid;gap:var(--space-4);padding:var(--space-5);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--card)}.meeting-preparation-form h3,.meeting-preparation-form p{margin:0}.meeting-preparation-form h3+p{margin-top:var(--space-2)}.meeting-preparation-form h3[tabindex="-1"]{outline:none;scroll-margin-top:5rem}.meeting-preparation-form fieldset,.meeting-edit-form:not(.meeting-wrap-up) fieldset{padding:var(--space-4);border:1px solid var(--line);border-radius:var(--radius-md)}.meeting-preparation-form legend,.meeting-edit-form:not(.meeting-wrap-up) legend{margin-bottom:0;padding:0 var(--space-1)}.meeting-step-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:var(--space-3)}.meeting-step-actions>a:first-child{margin-right:auto}.meeting-topic-choices{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4);margin-bottom:var(--space-2)}.meeting-topic-choices label{min-height:44px}.meeting-brief-head{align-items:center;min-height:40px}.meeting-brief-head>div:empty{display:none}.meeting-brief-head>.btn{margin-left:auto}.meeting-brief-field textarea{min-height:22rem}.meeting-field>.muted{font-variant-numeric:tabular-nums}.meeting-draft-preview{padding:var(--space-4);border:1px solid var(--line-strong);border-radius:var(--radius-md)}.meeting-draft-preview h4{margin:0 0 var(--space-2)}.meeting-draft-preview pre{max-height:28rem;overflow:auto;white-space:pre-wrap;font:inherit;font-size:var(--text-sm)}@media (max-width: 1024px){.meeting-preparation-form,.meeting-edit-form{padding:var(--space-4)}.meeting-preparation-form .meeting-schedule-fields{grid-template-columns:minmax(0,1fr)}}.meeting-wrap-up{max-width:780px}.meeting-wrap-up textarea{min-height:5rem}.meeting-outcome-summary h3{margin-top:0}.badge.meeting-postponed{color:var(--muted)}@media (max-width: 1024px){.meeting-card,.meeting-card-open,.meeting-edit-form,.meeting-note-form,.meeting-attendee-list{grid-template-columns:minmax(0,1fr)}.meeting-card{gap:var(--space-2);padding:var(--space-3)}.meeting-card-open{gap:var(--space-2)}.meeting-card>.btn{justify-self:start}.meeting-date-block{padding:var(--space-2)}.meeting-detail-header{grid-template-columns:minmax(0,1fr) auto}.meeting-detail-icon{display:none}.meeting-student-card{flex-wrap:wrap}.meeting-agenda-document{padding:var(--space-4)}.meeting-schedule-fields{grid-template-columns:minmax(0,1fr)}}@media (prefers-reduced-motion: reduce){:root{--move-fast: 0s;--move: 0s;--move-slow: 0s}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}dialog[open],dialog::backdrop,.assistant-history-menu{animation-name:overlay-enter!important;animation-duration:var(--duration)!important}.spinner,.loading:before,.studio-loading:before{animation:loading-pulse 1.2s ease-in-out infinite!important}.assistant-message.streaming .assistant-message-copy:after,.ai-summary.streaming .ai-stream-copy:after{animation-duration:.9s!important;animation-iteration-count:infinite!important}.stream-word{animation-duration:var(--duration-slow)!important}}@media (forced-colors: active){.assistant-thinking{color:CanvasText;background:none}.tab{border-bottom-color:Canvas}.tab[aria-current=page]{border-bottom-color:Highlight}.segmented{border:1px solid CanvasText}.segmented :is(button[aria-pressed=true],input:checked+span),.chip:is([aria-pressed=true],:has(input:checked)),.chip-action[aria-pressed=true],.nav-item.active,.steps [aria-current=step] b,.review-student:has(.review-student-select input:checked),.study-library-list button[aria-current=true],.student-exam-options label:has(input:checked){outline:2px solid Highlight;outline-offset:-2px}:focus-visible{outline-color:Highlight}summary:before,.notice:before,.badge:before,.review-flags li:before,.class-review-fill,.school-kpi-bar-fill,.review-meter-fill,.review-meter-target,.trajectory-point{forced-color-adjust:none;background:CanvasText}.school-kpi-interactive-bars button[aria-pressed=true] .school-kpi-bar-fill{background:Highlight}.review-bar-segment,.legend-dot{forced-color-adjust:none}.review-meter,.review-bar,.class-review-track,.steps b{border:1px solid CanvasText}.trajectory-line,.trajectory-grid,.trajectory-expectation,.trajectory-intervention{stroke:CanvasText}.skill-chart svg text{fill:CanvasText}}.directory-toolbar{display:flex;flex-wrap:wrap;align-items:end;gap:var(--space-3)}.directory-toolbar>label{min-width:140px}.directory-toolbar .directory-search{flex:1;min-width:min(250px,100%)}.directory-search>span{position:relative;display:flex;align-items:center;margin-top:var(--space-2)}.directory-search svg{position:absolute;left:12px;color:var(--faint);pointer-events:none}.directory-search input{margin-top:0;padding-left:var(--space-6)}.directory-search input::-webkit-search-cancel-button{cursor:pointer}.directory-results{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);min-height:52px;color:var(--muted);font-size:var(--text-sm);font-variant-numeric:tabular-nums}@media (max-width: 1024px){.directory-results{scroll-margin-top:var(--mobile-bar-height)}}.class-directory :is(th,td){padding-block:var(--space-3);vertical-align:middle}:is(.class-directory,.class-roster)>*>tr>:first-child{padding-left:var(--space-3)}:is(.class-directory,.class-roster)>*>tr>:last-child{padding-right:var(--space-3)}.class-directory :is(th,td):not(:first-child){width:8.5rem}.class-directory :is(th,td).class-directory-open{width:2rem;color:var(--faint)}.class-directory-row:active .class-directory-open{color:var(--accent)}@media (hover: hover) and (pointer: fine){.class-directory-row:hover .class-directory-open{color:var(--accent)}}.class-directory-row{position:relative;transition:background-color var(--duration-fast) var(--ease-out)}.class-directory-row:active{background:var(--surface-subtle)}@media (hover: hover) and (pointer: fine){.class-directory-row:hover{background:var(--surface-subtle)}}.class-directory-row a{color:var(--ink);text-decoration:none}.class-directory-row a:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0}.class-directory-row a:focus-visible{outline:none}.class-directory-row a:focus-visible:after{outline:2px solid var(--accent);outline-offset:-2px;border-radius:var(--radius-md)}.class-directory-row:active a{color:var(--accent)}@media (hover: hover) and (pointer: fine){.class-directory-row:hover a{color:var(--accent)}}.class-directory th[scope=row]{overflow-wrap:anywhere}@media (max-width: 640px){.class-directory,.class-directory>tbody,.class-directory>tbody>tr,.class-directory>tbody>tr>:is(th,td){display:block}.class-directory>thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.class-directory>tbody>tr:not(.class-directory-grade){display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-2) var(--space-3);padding:var(--space-3);border-bottom:1px solid var(--line)}.class-directory>tbody>tr:not(.class-directory-grade)>:is(th,td){width:auto;padding:0;border:0}.class-directory>tbody>tr>th[scope=row]{flex:0 0 calc(100% - 2.5rem);min-width:0;font-size:var(--text-md)}.class-directory>tbody>tr>td.class-directory-open{align-self:center}.class-directory.numeric>tbody>tr>td[data-label]{order:1;flex:1 1 28%;min-width:0;text-align:left}.class-directory>tbody>tr>td[data-label]:before{content:attr(data-label);display:block;color:var(--muted);font-size:var(--text-xs);font-weight:var(--weight-semibold)}}.class-directory-grade th{padding-top:var(--space-5);color:var(--ink-soft);font-size:var(--text-xs);border-bottom-color:var(--line-strong)}.pager{display:flex;align-items:center;justify-content:center;gap:var(--space-4);margin-top:var(--space-5);color:var(--muted);font-size:var(--text-sm);font-variant-numeric:tabular-nums}.badge.urgent{color:var(--danger)}.badge.recommended{color:var(--warn)}.badge.monitor{color:var(--info)}.badge.clear,.badge.unknown{color:var(--muted)}.student-directory .student-index-row{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-3)}.student-directory-identity{flex:1;display:grid;gap:var(--space-1);text-align:left;min-width:0;overflow-wrap:anywhere}.student-directory .badge{flex:none}.student-directory:focus{outline:none}.school-dashboard{display:grid;gap:var(--space-5)}.dashboard-metrics{display:grid;grid-template-columns:repeat(3,1fr)}.dashboard-metrics>div{display:grid;align-content:start;gap:var(--space-2);padding:0 var(--space-5)}.dashboard-metrics>div+div{border-left:1px solid var(--line)}.dashboard-metrics>div>span{color:var(--ink-soft);font-size:var(--text-sm);font-weight:var(--weight-semibold)}.dashboard-metrics strong{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);font-size:var(--text-2xl);font-weight:var(--weight-bold);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);font-variant-numeric:tabular-nums}.dashboard-metrics small{color:var(--ink-soft);font-size:var(--text-sm);font-weight:var(--weight-regular);letter-spacing:normal}.dashboard-metrics strong small{padding:0;font-size:var(--text-xs);font-weight:var(--weight-semibold)}.dashboard-columns{display:grid;grid-template-columns:1.4fr 1fr;gap:var(--space-6)}.school-dashboard .panel{margin:0}.dashboard-section-heading{display:flex;align-items:start;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-5)}.dashboard-section-heading h2{margin:0 0 var(--space-1)}.dashboard-section-heading p{margin:0}.dashboard-section-heading .link-arrow{flex:none;margin-top:var(--space-1)}.test-only-review{margin-bottom:var(--space-5)}.test-only-review h2{margin:0 0 var(--space-1)}.test-review-list{margin:0;padding:0;list-style:none}.test-review-student{padding:var(--space-4) 0;border-bottom:1px solid var(--line)}.test-review-title{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-3)}.test-review-title h3{margin:0}.test-review-sections{display:grid;gap:var(--space-2);margin:var(--space-3) 0 0 var(--space-7);padding:0;list-style:none}.test-review-sections li{display:grid;grid-template-columns:minmax(9rem,12rem) 8.5rem 5.5rem minmax(0,1fr);gap:var(--space-1) var(--space-3);align-items:center;font-size:var(--text-sm)}.test-review-practice{grid-column:4;grid-row:1;justify-self:end}.test-review-sections strong{font-weight:var(--weight-semibold)}.test-review-score{color:var(--muted);font-variant-numeric:tabular-nums}.test-review-weakest{grid-column:1 / -1;color:var(--muted)}@media (max-width: 1024px){.test-review-sections{margin-left:0}.test-review-sections li{display:flex;flex-wrap:wrap}.test-review-sections strong{flex:1 1 auto}.test-review-score,.test-review-weakest{flex-basis:100%}}.legend-dot.urgent{background:var(--chart-urgent)}.legend-dot.recommended{background:var(--chart-recommended)}.legend-dot.monitor{background:var(--chart-monitor)}.legend-dot.clear{background:var(--chart-clear)}.legend-dot.unknown{background:repeating-linear-gradient(135deg,var(--chart-unknown) 0 4px,var(--chart-unknown-stripe) 4px 6px)}.review-legend{list-style:none;padding:0;margin:var(--space-5) 0;display:grid;gap:var(--space-1)}.review-legend li{display:grid;grid-template-columns:10px 1fr 36px 44px;gap:var(--space-3);align-items:center;padding:var(--space-2) 0;font-size:var(--text-sm)}.review-legend li+li{border-top:1px solid var(--line)}.legend-dot{width:10px;height:10px;border-radius:var(--radius-sm)}.review-legend strong,.review-legend small{text-align:right;font-variant-numeric:tabular-nums}.review-legend strong{font-weight:var(--weight-semibold)}.review-legend small{color:var(--muted);font-size:var(--text-xs)}.review-breakdown{margin:0;color:var(--ink-soft);font-size:var(--text-sm)}.school-dashboard .dashboard-next{display:grid;align-content:start;gap:var(--space-2)}.dashboard-next h2{margin:0 0 var(--space-2)}.dashboard-next p{margin:0;color:var(--ink-soft);font-size:var(--text-sm);line-height:var(--leading-normal)}.dashboard-next .dashboard-next-area{color:var(--ink);font-size:var(--text-lg);font-weight:var(--weight-bold);line-height:var(--leading-tight);letter-spacing:var(--tracking-snug)}.dashboard-columns:has(>:only-child){grid-template-columns:minmax(0,1fr)}.skill-area-list{padding:0;margin:var(--space-2) 0 var(--space-4);list-style:none;border-top:1px solid var(--line)}.skill-area-list>li{border-bottom:1px solid var(--line)}.skill-area summary{display:grid;grid-template-columns:18px minmax(0,1.4fr) minmax(0,1fr) minmax(0,1.2fr);align-items:baseline;gap:var(--space-3);min-height:44px;padding:var(--space-3) 0;font-size:var(--text-sm)}.skill-area>summary:before{align-self:center;margin-right:0}.skill-area-name{font-weight:var(--weight-semibold);overflow-wrap:anywhere}.skill-area-share strong{font-variant-numeric:tabular-nums}.skill-area-meta{color:var(--muted);font-size:var(--text-sm)}.skill-area-body{display:grid;gap:var(--space-4);padding:0 0 var(--space-4) var(--space-6)}.skill-area-body p{margin:0}.skill-area-class h4{margin:0 0 var(--space-2)}.skill-area-students{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,13rem),1fr));gap:var(--space-1) var(--space-5);padding:0;margin:0;list-style:none;font-size:var(--text-sm)}.skill-area-students li{display:flex;justify-content:space-between;gap:var(--space-3)}.skill-area-students li>:first-child{min-width:0;overflow-wrap:anywhere}.skill-area-students li>.muted{flex:none;white-space:nowrap}@media (max-width: 1024px){.dashboard-columns{grid-template-columns:minmax(0,1fr)}}@media (max-width: 640px){.directory-toolbar>label{flex:1;min-width:130px}.directory-toolbar .directory-search{flex-basis:100%}.student-directory .student-index-row{flex-direction:column;align-items:flex-start;gap:var(--space-1)}.dashboard-section-heading{flex-direction:column;gap:var(--space-1);margin-bottom:var(--space-4)}.skill-area summary{grid-template-columns:18px minmax(0,1fr)}.skill-area-share,.skill-area-meta{grid-column:2}.skill-area-body{padding-left:0}}.department-options .section-head{align-items:center;margin-bottom:var(--space-2)}.department-options>p{margin:0}.department-options ol{display:grid;gap:var(--space-4);max-width:820px;padding-left:var(--space-5);margin:0;font-size:var(--text-sm);line-height:var(--leading-snug)}.department-options ol>li::marker{font-weight:var(--weight-semibold)}.department-options li p{margin:var(--space-1) 0 0}.department-option-meta{color:var(--muted)}.department-options li ul{margin:var(--space-2) 0;padding-left:var(--space-4);list-style:disc}.department-options li ul li+li{margin-top:var(--space-1)}.department-options dl{margin:0;color:var(--ink-soft)}.department-options dl>div+div{margin-top:var(--space-1)}.department-options :is(dt,dd){display:inline;margin:0}.department-options dt{margin-right:var(--space-1);color:var(--ink);font-weight:var(--weight-semibold)}.report-options{margin-bottom:var(--space-5)}.report-options>p{margin:0 0 var(--space-2);overflow-wrap:anywhere}.department-report .data-table>tbody>tr>td[data-label=Follow-ups]{overflow-wrap:anywhere}@media (max-width: 640px){.department-report .data-table.stacked>tbody>tr>th{overflow-wrap:anywhere}.department-report .data-table.stacked>tbody>tr>td[data-label]{grid-template-columns:minmax(7rem,2fr) minmax(0,3fr);overflow-wrap:anywhere}}.department-report{display:grid;min-width:0;grid-template-columns:minmax(0,1fr);gap:var(--space-6);max-width:1080px}.report-scope h2{margin:0 0 var(--space-1)}.report-scope p{margin:0}.report-filters{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-4)}.report-section{min-width:0}.assessment-evidence{margin:var(--space-5) 0;overflow-wrap:anywhere}.assessment-evidence>ul{padding-left:var(--space-4)}.assessment-evidence>ul>li{margin-bottom:var(--space-4)}.assessment-evidence p{margin:var(--space-1) 0}.assessment-evidence summary{padding:var(--space-2) 0}.department-support>.section-head{align-items:center}.department-support>.loading,.department-support>.muted{margin:var(--space-2) 0 0}.department-support-form{display:grid;gap:var(--space-4);max-width:42rem;min-width:0;margin-top:var(--space-3)}.department-support-form textarea{min-height:6rem;resize:vertical}.department-support-form fieldset{padding:var(--space-3);border:1px solid var(--line);border-radius:var(--radius-md)}.department-support-form fieldset p{margin:0}.department-support-form legend{margin-bottom:0;padding:0 var(--space-1)}.department-support-dates{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,10rem),1fr));gap:var(--space-3)}.department-support-form fieldset label{align-items:flex-start;overflow-wrap:anywhere}.department-support-form fieldset label>input{margin-top:.2em}.department-support-plan{margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--line);overflow-wrap:anywhere}.department-support-plan .section-head{align-items:center}.department-support-plan p{max-width:760px;margin:var(--space-2) 0 0}.department-support-plan>.btn{margin-top:var(--space-3)}.department-review-notes{display:grid;gap:var(--space-2);max-width:760px;margin:var(--space-3) 0 0;padding:0 0 0 var(--space-4);list-style:none;border-left:2px solid var(--line-strong)}.department-review-notes li{display:grid;gap:var(--space-1);font-size:var(--text-sm);white-space:pre-wrap}.department-review-notes strong{color:var(--ink-soft);font-size:var(--text-xs)}.report-section h3{margin:0 0 var(--space-2)}.report-section>p{margin:0 0 var(--space-3)}.report-list{display:grid;gap:var(--space-2);padding:0;margin:0;list-style:none;font-size:var(--text-sm)}.report-list li{display:grid;gap:var(--space-1)}.report-review-group+.report-review-group{margin-top:var(--space-5)}.report-review-group h4{margin:0 0 var(--space-2)}.report-review-group h4 span{margin-left:var(--space-1);font-weight:var(--weight-regular);font-variant-numeric:tabular-nums}@media print{.department-report{max-width:none;color:var(--paper-ink)}.department-report :is(h3,h4){break-after:avoid}.department-report :is(tr,.report-list>li){break-inside:avoid}.table-scroll{overflow:visible}}.review-bar-chart{margin:var(--space-2) 0 var(--space-5)}.review-bar{display:flex;gap:var(--space-1);height:14px;overflow:hidden;border-radius:var(--radius-full);background:var(--line-strong)}.review-bar-segment{min-width:4px}.review-bar-segment.urgent{background:var(--chart-urgent)}.review-bar-segment.recommended{background:var(--chart-recommended)}.review-bar-segment.monitor{background:var(--chart-monitor)}.review-bar-segment.clear{background:var(--chart-clear)}.review-bar-segment.unknown{background:repeating-linear-gradient(135deg,var(--chart-unknown) 0 4px,var(--chart-unknown-stripe) 4px 6px)}.school-dashboard>*,.dashboard-columns>*,.class-review-chart{min-width:0}.class-chart-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--space-2) var(--space-3);margin-bottom:var(--space-3)}.class-review-table :is(th,td){vertical-align:middle;white-space:nowrap}.class-review-table :is(th,td):nth-child(n+3){text-align:right}.class-review-table th[scope=row] a{display:inline-block;width:max-content;max-width:min(24rem,34vw);white-space:normal;overflow-wrap:anywhere;vertical-align:middle}.class-review-table .class-review-bar{width:100%;min-width:5rem}@media (max-width: 640px){.class-review-table,.class-review-table :is(thead,tbody){display:block}.class-review-table tr{display:grid;grid-template-columns:minmax(0,1fr) 5rem 2.75rem;align-items:center;border-bottom:1px solid var(--line)}.class-review-table thead tr{border-bottom-color:var(--line-strong)}.class-review-table :is(th,td){border-bottom:0}.class-review-table tr>:first-child{grid-column:1 / -1;padding-bottom:0}.class-review-table th[scope=row] a{width:auto;max-width:100%}.class-review-table .class-review-bar{width:auto;min-width:0;padding-left:0}.class-review-table td[colspan]{grid-column:span 2}}.class-review-track{display:block;height:.75rem;overflow:hidden;border-radius:var(--radius-sm);background:var(--surface-muted)}.class-review-fill{display:block;height:100%;border-radius:var(--radius-sm);background:var(--chart-muted-hover)}.class-review-chart>.text-button{margin-top:var(--space-3)}.assistant-roster{margin:0;padding:0;list-style:none;max-height:24rem;overflow-y:auto;overflow-wrap:anywhere}.assistant-roster li{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-1) var(--space-4);padding:var(--space-2) 0;border-top:1px solid var(--line)}.assistant-roster li>div:first-child{flex:1 1 16rem;min-width:0}.assistant-roster strong{font-weight:var(--weight-semibold)}.assistant-roster li>div:first-child>span{margin-left:var(--space-2);color:var(--muted);font-size:var(--text-xs)}.assistant-roster p{margin:var(--space-1) 0 0;color:var(--ink-soft);font-size:var(--text-md);line-height:var(--leading-snug)}.assistant-failure{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2) var(--space-4);padding-block:var(--space-2)}.assistant-failure p{margin:0}.assistant-roster-list{display:grid;max-height:28rem;overflow-y:auto;gap:var(--space-2);margin:0;padding:0;list-style:none}.assistant-student-card{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2) var(--space-4);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--surface-subtle);overflow-wrap:anywhere}.assistant-student-card>div{min-width:0}.assistant-student-card strong{display:block;font-weight:var(--weight-semibold)}.assistant-student-card p{margin:var(--space-1) 0 0;color:var(--ink-soft);font-size:var(--text-md);line-height:var(--leading-snug)}.assistant-student-reference{display:block;margin-bottom:var(--space-1);color:var(--muted);font-size:var(--text-xs);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums}.assistant-student-reference:first-letter{text-transform:uppercase}.assistant-selection{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center;justify-content:space-between;width:min(760px,100%);align-self:center;padding:var(--space-2) var(--space-2) var(--space-2) var(--space-4);color:var(--ink-soft);font-size:var(--text-sm);border-radius:var(--radius-md);background:var(--accent-soft);box-shadow:var(--ring-accent)}.assistant-selection>span{min-width:0;overflow-wrap:anywhere}.class-detail{display:grid;gap:var(--space-5)}.class-detail-intro h1{margin:var(--space-2) 0 var(--space-1)}.class-detail-stats{display:grid;grid-template-columns:repeat(4,1fr);margin:0;padding:0}.class-detail-stats>div{padding:0 var(--space-5);border-left:1px solid var(--line)}.class-detail-stats>div:first-child{border-left:0}.class-detail-stats dt{color:var(--ink-soft);font-size:var(--text-sm);font-weight:var(--weight-semibold)}.class-detail-stats dd{margin:var(--space-2) 0 0;font-size:var(--text-xl);font-weight:var(--weight-bold);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);font-variant-numeric:tabular-nums}.class-roster-heading{margin:0 0 var(--space-4)}.class-roster>tbody>tr>:is(th,td){padding-block:var(--space-3);vertical-align:middle;overflow-wrap:anywhere}.class-roster>thead th:first-child{width:22%}.class-roster>tbody>tr>th,.class-roster .badge{white-space:nowrap}.class-roster>tbody>tr>th>:is(a,span){display:inline-block;width:max-content;max-width:min(22rem,22vw);white-space:normal;overflow-wrap:anywhere;vertical-align:middle}.class-roster-results .data-table :is(th,td):not(:first-child){overflow-wrap:normal}.class-roster-results .data-table td:nth-child(2){white-space:nowrap}.class-roster>thead th:nth-child(4),.class-roster td.class-roster-average{text-align:right}.class-roster td.class-roster-average{font-weight:var(--weight-semibold)}.class-roster td.class-roster-toggle{width:1%;white-space:nowrap;text-align:right}.class-roster>tbody>tr.open>:is(th,td){border-bottom-color:transparent;background:var(--surface-subtle)}.class-roster>tbody>.class-roster-results>td{padding:0 var(--space-3) var(--space-4);background:var(--surface-subtle)}@media (max-width: 640px){.class-roster.stacked>tbody>tr:not(.class-roster-results){display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center}.class-roster.stacked>tbody>tr>th{grid-area:1 / 1;margin-bottom:0;white-space:normal}.class-roster.stacked>tbody>tr>th>:is(a,span){width:auto;max-width:100%}.class-roster.stacked>tbody>tr>td[data-label]{grid-template-columns:minmax(7rem,2fr) minmax(0,3fr);overflow-wrap:anywhere}.class-roster.stacked>tbody>tr>td:not(.class-roster-toggle){grid-column:1 / -1}.class-roster.stacked>tbody>tr>td.class-roster-average{text-align:left}.class-roster.stacked>tbody>tr>td.class-roster-toggle{grid-area:1 / 2;width:auto}.class-roster.stacked>tbody>tr.open{border-bottom:0;background:var(--surface-subtle)}.class-roster.stacked>tbody>.class-roster-results{padding-top:0;background:var(--surface-subtle)}.class-roster.stacked>tbody>:is(tr.open,.class-roster-results){padding-inline:var(--space-3);margin-inline:calc(-1 * var(--space-3))}}.profile-class-evidence{display:grid;gap:var(--space-3)}.profile-class-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--card);box-shadow:var(--shadow-sm);overflow:hidden}.profile-class-card>summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-2) var(--space-4);padding:var(--space-4) var(--space-5);transition:background-color var(--duration-fast) var(--ease-out)}.profile-class-card>summary:active{background:var(--surface-subtle)}@media (hover: hover) and (pointer: fine){.profile-class-card>summary:hover{background:var(--surface-subtle)}}.profile-class-card summary:focus-visible{outline-offset:-3px;border-radius:var(--radius-lg)}.profile-class-title{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2)}.profile-class-title>strong{font-size:var(--text-md);font-weight:var(--weight-semibold)}.profile-class-average{display:flex;flex-direction:column;text-align:right;gap:var(--space-1)}.profile-class-average small{color:var(--muted);font-size:var(--text-xs)}.profile-class-average strong{font-size:var(--text-xl);font-weight:var(--weight-bold);letter-spacing:var(--tracking-tight);font-variant-numeric:tabular-nums}.profile-class-focus{grid-column:1 / -1;color:var(--ink-soft);font-size:var(--text-sm);line-height:var(--leading-normal)}.profile-class-toggle{grid-column:1 / -1;display:inline-flex;align-items:center;gap:var(--space-1);width:fit-content;color:var(--accent);font-size:var(--text-sm);font-weight:var(--weight-semibold)}.profile-class-body{padding:0 var(--space-5) var(--space-5)}.profile-area-patterns{margin:var(--space-1) 0 var(--space-4)}.profile-skill-list{list-style:none;margin:0 0 var(--space-4);padding:0}.profile-skill-list li{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-5);padding:var(--space-3) 0;border-top:1px solid var(--line);font-size:var(--text-sm)}.profile-skill-list li>span{min-width:0;overflow-wrap:anywhere}.profile-skill-list li strong{white-space:nowrap;font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums}.profile-source-evidence>summary{width:fit-content;padding:var(--space-2) 0;color:var(--muted);font-size:var(--text-sm);font-weight:var(--weight-semibold)}.profile-source-item{padding:var(--space-2) 0;overflow-wrap:anywhere}.profile-source-item h4{margin:var(--space-2) 0}.profile-source-item dl{margin:0;font-size:var(--text-sm)}.profile-source-item dl>div{display:flex;justify-content:space-between;gap:var(--space-4);padding:var(--space-2) 0;border-bottom:1px solid var(--line)}.profile-source-item dd{margin:0;white-space:nowrap;font-variant-numeric:tabular-nums}.school-kpi-controls{display:flex;gap:var(--space-2);align-items:end;flex-wrap:wrap}.school-kpi-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-4);margin:var(--space-5) 0}.school-kpi-card dt{margin:0 0 var(--space-2);color:var(--ink-soft);font-size:var(--text-sm);font-weight:var(--weight-semibold)}.school-kpi-card dd{margin:0}.school-kpi-card strong{display:block;color:var(--ink);font-size:clamp(var(--text-xl),2.4vw,var(--text-2xl));font-weight:var(--weight-bold);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);font-variant-numeric:tabular-nums}.school-kpi-card p{margin:var(--space-2) 0 0;color:var(--ink-soft);font-size:var(--text-sm);line-height:var(--leading-normal)}.school-kpi-card .link-arrow{margin-top:var(--space-1)}.school-kpi-chart{margin:var(--space-6) 0 var(--space-5)}.school-kpi-chart h2{margin:0 0 var(--space-1)}.school-kpi-chart-heading p{margin:0}@media (max-width: 640px){.school-kpi-controls{width:100%}}.teacher-assistant-layout{width:100%}.assistant-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2)}.assistant-history{position:relative;color:var(--muted);font-size:var(--text-sm)}.assistant-history summary{min-height:32px;display:flex;align-items:center;padding:var(--space-2) var(--space-3);font-weight:var(--weight-semibold);border-radius:var(--radius-md);transition:color var(--duration-fast) var(--ease-out),background-color var(--duration-fast) var(--ease-out)}.assistant-history[open] summary,.assistant-history summary:active{color:var(--ink);background:var(--surface-muted)}@media (hover: hover) and (pointer: fine){.assistant-history summary:hover{color:var(--ink);background:var(--surface-muted)}}.assistant-history-menu{position:absolute;top:calc(100% + 6px);left:0;z-index:var(--z-raised);width:min(21rem,calc(100vw - 3rem));max-height:min(22.5rem,60dvh);overflow:auto;padding:var(--space-2);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--card);box-shadow:var(--shadow-md);transform-origin:top left;animation:menu-enter var(--duration) var(--ease-out);overscroll-behavior:contain}.assistant-history-menu p{margin:var(--space-2);color:var(--muted);font-size:var(--text-sm)}.assistant-history-menu>.btn{margin:var(--space-2) var(--space-2) var(--space-1)}.history-chat{display:block;width:100%;padding:var(--space-2) var(--space-3);color:var(--ink);font-size:var(--text-sm);text-align:left;overflow-wrap:anywhere;border:0;border-radius:var(--radius-md);background:transparent;cursor:pointer;transition:background-color var(--duration-fast) var(--ease-out)}.history-chat:active:not(:disabled){background:var(--surface-muted)}@media (hover: hover) and (pointer: fine){.history-chat:hover:not(:disabled){background:var(--surface-muted)}}.teacher-assistant .assistant-empty{width:min(680px,100%)}.teacher-assistant .assistant-starters{align-self:center}.teacher-assistant .assistant-message{max-width:800px;width:100%;margin-inline:auto}.teacher-assistant.is-empty .assistant-thread{flex:none;margin-top:auto;padding:var(--space-4) 0 var(--space-2);overflow:visible}.teacher-assistant.is-empty>.assistant-starters{margin:0 0 auto}@media (max-width: 640px){.assistant-frame .app-sidebar:not(.open){box-shadow:none}.assistant-workspace{height:auto;min-height:var(--assistant-height);--frame-pad: var(--space-3)}.assistant-thread{overflow:visible;padding-inline:0}.teacher-assistant .assistant-composer{padding:var(--space-2)}}.school-kpi-chart-heading{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--space-4)}.school-kpi-chart-scroll{overflow-x:auto;margin-top:var(--space-4);overscroll-behavior-x:contain}.school-kpi-interactive-bars,.school-kpi-axis{min-width:max-content}.school-kpi-interactive-bars{display:flex;height:190px;gap:var(--space-1);border-bottom:1px solid var(--line-strong);background:repeating-linear-gradient(to top,transparent 0,transparent 46px,var(--line) 47px,transparent 48px)}.school-kpi-interactive-bars button{display:flex;flex-direction:column;justify-content:flex-end;align-items:stretch;flex:1;min-width:1.5rem;height:100%;padding:var(--space-4) var(--space-1) 0;border:0;border-radius:var(--radius-sm) var(--radius-sm) 0 0;background:transparent;cursor:pointer;transition:background-color var(--duration-fast) var(--ease-out)}.school-kpi-axis{display:flex;gap:var(--space-1);padding:var(--space-2) 0;color:var(--muted);font-size:var(--text-xs);font-variant-numeric:tabular-nums}.school-kpi-axis span{flex:1;min-width:1.5rem;width:0;white-space:nowrap}.school-kpi-chart-scroll.weekly :is(.school-kpi-interactive-bars button,.school-kpi-axis span){min-width:3.25rem}.school-kpi-interactive-bars button:active:not(:disabled){background:var(--accent-soft)}@media (hover: hover) and (pointer: fine){.school-kpi-interactive-bars button:hover:not(:disabled){background:var(--accent-soft)}}.school-kpi-bar-fill{display:block;width:100%;min-height:3px;border-radius:var(--radius-sm);background:var(--chart-muted);pointer-events:none;transition:background-color var(--duration-fast) var(--ease-out)}.school-kpi-interactive-bars button.is-active .school-kpi-bar-fill,.school-kpi-interactive-bars button[aria-pressed=true] .school-kpi-bar-fill{background:var(--accent)}.school-kpi-interactive-bars button:focus-visible{outline-offset:-2px}.school-kpi-bar-value{margin-bottom:2px;color:var(--muted);font-size:var(--text-xs);line-height:1;text-align:center;font-variant-numeric:tabular-nums;pointer-events:none}.school-kpi-inspector{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-4);min-height:76px;margin:var(--space-4) 0;padding:var(--space-4);color:var(--muted);font-size:var(--text-sm);border-radius:var(--radius-md);background:var(--surface-subtle);box-shadow:var(--ring)}.school-kpi-inspector>div{display:grid;gap:var(--space-1);margin-right:auto}.school-kpi-inspector strong{color:var(--ink);font-size:var(--text-lg);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums}.school-kpi-more{margin-top:var(--space-5);padding:var(--space-4) var(--space-5);border:1px solid var(--line);border-radius:var(--radius-lg)}.school-kpi-more summary{font-weight:var(--weight-semibold)}.school-kpi-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4);margin:var(--space-4) 0 0}.school-kpi-detail-grid .school-kpi-card{padding:var(--space-4);border-radius:var(--radius-md);background:var(--surface-subtle)}.school-kpi-detail-grid .school-kpi-card strong{font-size:var(--text-xl)}.school-kpi-ai-topics p{color:var(--muted);font-size:var(--text-sm);line-height:var(--leading-normal)}.school-kpi-ai{margin-top:var(--space-5);padding:var(--space-5) 0 0;border-top:1px solid var(--line)}.school-kpi-ai h2{margin:var(--space-2) 0 var(--space-2)}.school-kpi-ai>p{margin:0;color:var(--ink-soft);font-size:var(--text-sm)}.school-kpi-ai>p+p{margin-top:var(--space-1)}.school-kpi-ai-topics{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(20rem,100%),1fr));gap:var(--space-5);margin:var(--space-5) 0 0}.school-kpi-ai-topics article{max-width:44rem}.school-kpi-ai-topics h3{margin:0}.school-kpi-ai-topics details summary{color:var(--accent);font-size:var(--text-sm);font-weight:var(--weight-semibold)}.school-kpi-ai-topics ul{margin:var(--space-2) 0 0;padding-left:var(--space-4);color:var(--ink-soft);font-size:var(--text-md)}@media (max-width: 1024px){.school-kpi-detail-grid{grid-template-columns:minmax(0,1fr)}}.school-kpi-analysis{margin-bottom:var(--space-5)}.school-kpi-analysis p{margin:0 0 var(--space-4);color:var(--muted);font-size:var(--text-sm)}.school-kpi-analysis-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:var(--space-5);margin:0 0 var(--space-4)}.school-kpi-analysis-stats dt{color:var(--ink-soft);font-size:var(--text-sm);font-weight:var(--weight-semibold)}.school-kpi-analysis-stats dd{margin:var(--space-1) 0 0;color:var(--ink);font-size:var(--text-md);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums}.school-kpi-analysis-stats dd.school-kpi-stat-note{color:var(--muted);font-size:var(--text-sm);font-weight:var(--weight-regular)}.school-kpi-day-breakdown{display:grid;grid-template-columns:repeat(auto-fit,minmax(84px,1fr));gap:var(--space-2)}.school-kpi-day-breakdown button{min-height:44px;display:grid;gap:var(--space-1);padding:var(--space-3);color:var(--ink);text-align:left;border:1px solid var(--control-border);border-radius:var(--radius-md);background:var(--card);cursor:pointer;transition:border-color var(--duration-fast) var(--ease-out),background-color var(--duration-fast) var(--ease-out)}.school-kpi-day-breakdown button:active:not(:disabled){border-color:var(--control-border-hover);background:var(--surface-subtle)}@media (hover: hover) and (pointer: fine){.school-kpi-day-breakdown button:hover:not(:disabled){border-color:var(--control-border-hover);background:var(--surface-subtle)}}.school-kpi-day-breakdown strong{font-size:var(--text-lg);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums}.school-kpi-day-breakdown span{color:var(--muted);font-size:var(--text-xs)}.school-kpi-event-breakdown{list-style:none;margin:0 0 var(--space-4);padding:0}.school-kpi-event-breakdown li{display:flex;justify-content:space-between;gap:var(--space-4);padding:var(--space-2) 0;border-bottom:1px solid var(--line);font-size:var(--text-sm)}.school-kpi-event-breakdown li strong{color:var(--ink);font-variant-numeric:tabular-nums}@media (pointer: coarse){.school-kpi-interactive-bars button,.school-kpi-axis span{min-width:44px}}.teaching-material-form{width:min(760px,100%);margin:auto;text-align:left;padding:var(--space-5);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--card);box-shadow:var(--shadow-sm)}.teaching-material-form>h2{margin:var(--space-2) 0 var(--space-5)}.teaching-material-fields{display:grid;gap:var(--space-4)}.teaching-material-fields>p{margin:0}.teaching-material-fields>.btn{justify-self:start}.teaching-material-form>.action-row{margin-top:var(--space-4)}.student-combobox-field{position:relative;margin-top:var(--space-2)}.student-combobox-field input{display:block;width:100%}.student-combobox-field .icon-button{position:absolute;top:0;bottom:0;right:var(--space-1);margin-block:auto}.student-combobox-options{position:absolute;top:calc(100% + var(--space-1));left:0;right:0;z-index:var(--z-dropdown);max-height:min(18rem,40dvh);overflow-y:auto;overscroll-behavior:contain;padding:var(--space-1);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--card);box-shadow:var(--shadow-md)}.student-combobox-options [role=option]{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:0 var(--space-3);padding:var(--space-2) var(--space-3);color:var(--ink);font-size:var(--text-sm);border-radius:var(--radius-sm);cursor:pointer}.student-combobox-options [role=option] strong{font-weight:var(--weight-semibold)}.student-combobox-options [role=option] span{color:var(--muted)}.student-combobox-options [role=option]:active{background:var(--surface-subtle)}@media (hover: hover) and (pointer: fine){.student-combobox-options [role=option]:hover{background:var(--surface-subtle)}}.student-combobox-options [role=option][aria-selected=true]{background:var(--accent-soft)}.student-combobox-options p{margin:0;padding:var(--space-2) var(--space-3);color:var(--muted);font-size:var(--text-sm)}.assistant-response-tools{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin-top:var(--space-1)}.assistant-response-tools p{margin:0}.material-document-card{display:flex;align-items:center;gap:var(--space-4);width:100%;padding:var(--space-4) var(--space-4);color:var(--ink);text-align:left;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--card);cursor:pointer;white-space:normal;transition:border-color var(--duration-fast) var(--ease-out);box-shadow:var(--shadow-sm)}.material-document-card:active:not(:disabled){border-color:var(--accent-line);box-shadow:var(--shadow-md)}@media (hover: hover) and (pointer: fine){.material-document-card:hover:not(:disabled){border-color:var(--accent-line);box-shadow:var(--shadow-md)}}.material-document-card>span:not(.material-document-icon){flex:1}.material-document-card>svg{color:var(--accent)}.material-document-icon{width:44px;height:44px;display:grid;place-items:center;flex:none;color:var(--accent);border-radius:var(--radius-md);background:var(--accent-soft)}.material-document-card strong,.material-document-card small{display:block}.material-document-card small{margin-top:var(--space-1);color:var(--muted);font-size:var(--text-sm)}.material-request{font-size:var(--text-sm)}.material-request p{white-space:pre-wrap}.material-studio{width:min(1440px,calc(100vw - 48px));height:calc(100dvh - 48px);max-width:none;max-height:none;padding:0;color:var(--ink);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--card);box-shadow:var(--shadow-lg);overflow:hidden}.material-studio[open]{display:flex;flex-direction:column}.material-studio-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--line)}.material-studio-header>div{display:flex;align-items:center;gap:var(--space-3)}.material-studio-icon{width:36px;height:36px;display:grid;place-items:center;flex:none;color:var(--accent);border-radius:var(--radius-md);background:var(--accent-soft)}.material-studio-header h2{margin:0;font-size:var(--text-md)}.material-studio-header span{color:var(--muted);font-size:var(--text-xs)}.material-studio-body{display:grid;grid-template-columns:330px minmax(0,1fr);min-height:0;flex:1;overscroll-behavior:contain}.material-studio-controls{padding:var(--space-5);overflow:auto;border-right:1px solid var(--line);overscroll-behavior:contain}.material-studio-controls .teaching-material-form{padding:0;border:0;box-shadow:none}.material-studio-controls h3{margin:var(--space-3) 0 var(--space-2);font-size:var(--text-lg);line-height:var(--leading-snug);letter-spacing:var(--tracking-tight)}.material-studio-controls p{color:var(--ink-soft);font-size:var(--text-md);line-height:var(--leading-normal)}.material-studio-controls>form label{margin:var(--space-5) 0 var(--space-2)}.material-studio-controls>form textarea{display:block;width:100%;margin-bottom:var(--space-3)}.studio-revision-ideas{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-5)}.material-preview{min-width:0;display:flex;flex-direction:column;overflow:hidden;background:var(--surface-muted)}.material-preview-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--line);background:var(--card)}.material-page-scroll{position:relative;flex:1;min-height:0;overflow:auto;padding:var(--space-6);overscroll-behavior:contain}.material-pdf-pages{display:grid;gap:var(--space-5);max-width:740px;margin:0 auto}.material-pdf-pages[hidden],.material-preview[hidden]{display:none}.material-pdf-pages canvas{width:100%;height:auto;background:var(--paper);box-shadow:var(--shadow-md)}.studio-empty-overlay{max-width:700px;min-height:480px;margin:auto;padding:calc(var(--space-7) * 2) var(--space-6);display:grid;place-content:center;justify-items:center;border-radius:var(--radius-sm);background:var(--paper);box-shadow:var(--shadow-md)}.material-preview-footer{display:flex;justify-content:space-between;flex-wrap:wrap;gap:var(--space-2);padding:var(--space-2) var(--space-5);color:var(--muted);font-size:var(--text-xs);border-top:1px solid var(--line);background:var(--card)}.material-text-view{margin:0 auto;max-width:740px;padding:var(--space-6);font-family:inherit;font-size:var(--text-sm);line-height:var(--leading-normal);white-space:pre-wrap;overflow-wrap:anywhere;background:var(--paper);color:var(--paper-ink);box-shadow:var(--shadow-md)}.studio-loading{position:fixed;top:50%;left:50%;z-index:var(--z-overlay);display:flex;align-items:center;gap:var(--space-2);padding:var(--space-4) var(--space-5);color:var(--ink-soft);font-size:var(--text-sm);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--card);box-shadow:var(--shadow-md);transform:translate(-50%,-50%)}@media (max-width: 1024px){.material-studio{width:calc(100vw - 1rem - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px));height:calc(100dvh - 1rem)}.material-studio-body{display:flex;flex-direction:column;overflow:auto}.material-studio-controls{overflow:visible;padding:var(--space-4);border-right:0}.material-preview{flex-shrink:0;min-height:65dvh;overflow:visible}.material-page-scroll{overflow:visible;padding:var(--space-4)}.material-preview-toolbar{padding:var(--space-2)}}.material-studio-body.is-planning{display:block;overflow:auto;background:var(--surface-subtle)}.material-studio-body.is-planning .material-studio-controls{max-width:780px;margin:auto;padding:var(--space-6);border:0}.material-studio-body.is-planning .material-preview{display:none}.material-studio-body.is-planning .material-studio-controls p{font-size:var(--text-md)}.material-studio-body.is-planning .teaching-material-form{max-width:none;padding:var(--space-6);border:1px solid var(--line);background:var(--card);box-shadow:var(--shadow-sm)}@media (max-width: 640px){.material-studio-body.is-planning .material-studio-controls{padding:var(--space-3)}.material-studio-body.is-planning .teaching-material-form{padding:var(--space-4)}}.studio-student-courses{padding:var(--space-1) 0 var(--space-2)}.studio-bank-focus{display:grid;gap:var(--space-3)}.studio-student-courses>strong{color:var(--ink);font-size:var(--text-sm)}.studio-student-courses ul{margin:var(--space-2) 0;padding-left:var(--space-5);list-style:disc}.studio-student-courses li{padding:var(--space-1) 0;font-size:var(--text-md);line-height:var(--leading-snug)}.material-studio-controls .studio-student-courses p{margin:0;font-size:var(--text-md)}@media (pointer: coarse){:where(input:not([type=checkbox],[type=radio],[type=file],[type=range]),select),:where(label:has(input:is([type=checkbox],[type=radio]))),.search-control{min-height:44px}:where(input:not([type=checkbox],[type=radio],[type=file],[type=range]),select,textarea),.search-control input,.assistant-composer textarea{font-size:var(--text-md)}.btn,.text-button,.linklike,.link-arrow,.chip,.segmented :is(button,label>span),.nav-item,.history-chat,.toast-action,.legal-links a{min-height:44px}.icon-button,.chip-action,.toast-close,.assistant-composer-actions>:is(.assistant-send,.assistant-stop,.assistant-clear){min-width:44px;min-height:44px}.assistant-mention-trigger{min-height:44px}summary{padding-block:var(--space-3)}}.student-profile{max-width:1120px;margin:0 auto;padding:var(--space-4)}.student-profile>.panel-heading{display:flex;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-5)}.student-profile>.tabs{margin:var(--space-5) 0 var(--space-6)}.student-profile .ai-summary{margin-top:0}.student-profile .ai-outlook{margin-top:var(--space-3)}.student-identity .badge{margin-left:var(--space-2);vertical-align:middle}.student-strands{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:var(--space-5) var(--space-7)}.student-strands :is(caption,th[scope=row]){overflow-wrap:anywhere}@media (max-width: 640px){.student-strands .data-table,.student-strands :is(caption,thead,tbody){display:block}.student-strands tr{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1fr) minmax(0,1.2fr);overflow-wrap:anywhere;border-bottom:1px solid var(--line)}.student-strands thead tr{border-bottom-color:var(--line-strong)}.student-strands :is(th,td){border-bottom:0}.student-strands tr>:first-child{grid-column:1 / -1;padding-bottom:0}.student-strands tr>:nth-child(2){padding-left:0}}.strand-status.below{color:var(--warn);font-weight:var(--weight-semibold)}.strand-status.strong{color:var(--good);font-weight:var(--weight-semibold)}.student-strands-empty{margin:0}.ai-summary-unavailable{display:flex;align-items:center;gap:var(--space-3);margin:0}.student-overview{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,300px);gap:var(--space-7);align-items:start}.student-overview-main,.student-overview-side{display:grid;gap:var(--space-6);align-content:start;min-width:0}.student-overview-side{padding-left:var(--space-6);border-left:1px solid var(--line)}.student-section h2{margin:0 0 var(--space-3)}.student-rows{list-style:none;margin:0;padding:0}.student-rows>li{display:grid;grid-template-columns:minmax(0,1fr) auto 72px;gap:var(--space-4);align-items:center;padding:var(--space-3) var(--space-1);border-top:1px solid var(--line)}.student-rows>li:last-child{border-bottom:1px solid var(--line)}.student-row-label{display:grid;gap:var(--space-1);min-width:0}.student-row-label>*{min-width:0;overflow-wrap:anywhere}.student-row-label strong{font-weight:var(--weight-semibold)}.student-row-label small{color:var(--muted);font-size:var(--text-xs);line-height:var(--leading-snug)}.student-rows>li.student-test-domain{padding:var(--space-2) var(--space-1) var(--space-2) var(--space-5);border-top:0;font-size:var(--text-sm)}.student-test+.student-test{margin-top:var(--space-5)}.student-test-title{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-1) var(--space-2);margin:0 0 var(--space-2)}.student-test-title span{color:var(--muted);font-size:var(--text-sm)}.student-section .note-callout{margin-top:var(--space-4)}.student-overview-side .student-followups li{flex-direction:column;align-items:flex-start;gap:var(--space-1);padding-bottom:var(--space-3);border-bottom:1px solid var(--line)}.student-overview-side .student-followups li:last-child{border-bottom:0}.student-overview-side .student-followups li>*{min-width:0;overflow-wrap:anywhere}@media (max-width: 1200px){.student-overview{grid-template-columns:minmax(0,1fr)}.student-overview-side{padding-left:0;border-left:0}}@media (max-width: 1024px){.student-rows>li{grid-template-columns:minmax(0,1fr) auto;gap:var(--space-2) var(--space-3)}.student-row-label{grid-column:1 / -1}}.student-evidence-details{margin-block:var(--space-5)}.student-evidence-details>summary{padding-block:var(--space-2);font-weight:var(--weight-semibold)}.student-row-score{text-align:right;font-variant-numeric:tabular-nums}.student-row-score small{display:block;margin-bottom:var(--space-1);color:var(--muted);font-size:var(--text-xs)}.student-row-score strong{font-weight:var(--weight-semibold)}@media (max-width: 640px){.student-profile{padding:0}}.note-callout{display:flex;align-items:flex-start;gap:var(--space-2);width:fit-content;max-width:100%;margin-block:var(--space-3);padding:var(--space-2) var(--space-3);border:1px solid var(--accent-soft-strong);border-radius:var(--radius-md);background:var(--accent-soft);color:var(--ink);font-size:var(--text-sm);font-weight:var(--weight-semibold);line-height:var(--leading-snug)}.note-callout>svg{flex:none;margin-top:var(--space-1);color:var(--accent)}.note-callout p{margin:0;min-width:0;color:inherit;font:inherit}.learning-history{margin-block:var(--space-5) var(--space-6);min-width:0}.learning-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--space-2)}.skill-chart-group{margin-top:var(--space-5)}.skill-chart-group:first-of-type{margin-top:var(--space-4)}.skill-chart-group h2{margin:0 0 var(--space-4)}.skill-chart-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr));gap:var(--space-6) var(--space-5)}.skill-chart{display:grid;grid-template-rows:subgrid;grid-row:span 3;row-gap:var(--space-1);margin:0;min-width:0}.skill-chart-heading{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-3);font-size:var(--text-sm)}.skill-chart-rubric{margin:var(--space-1) 0 0;color:var(--muted);font-size:var(--text-xs)}.skill-chart-title{font-weight:var(--weight-semibold);overflow-wrap:anywhere}.skill-chart-latest{display:inline-flex;align-items:baseline;gap:var(--space-2);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums;white-space:nowrap}.skill-chart-key{display:flex;flex-wrap:wrap;gap:var(--space-1) var(--space-4);margin:var(--space-1) 0 0;color:var(--muted);font-size:var(--text-xs)}.chart-key{display:inline-flex;align-items:center;gap:var(--space-2)}.chart-key:before{content:"";flex:none;width:1rem;border-top:1px dashed var(--chart-expectation)}.chart-key.follow-up:before{width:0;height:.75rem;border-top:0;border-left:1px dashed var(--chart-intervention)}.skill-chart-results>summary{width:fit-content;color:var(--muted);font-size:var(--text-xs);font-weight:var(--weight-semibold)}.skill-chart-results ol{list-style:none;margin:var(--space-1) 0 0;padding:0;font-size:var(--text-sm)}.skill-chart-results li{display:grid;grid-template-columns:4.5rem minmax(0,1fr) auto;gap:var(--space-2);padding:var(--space-1) 0;border-top:1px solid var(--line);overflow-wrap:anywhere}.skill-chart-results time{color:var(--muted)}.skill-chart-results strong{font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums}.skill-chart svg{width:100%;height:auto;display:block;align-self:end}.skill-chart svg text{fill:var(--muted);font-size:var(--text-xs)}.trajectory-grid{stroke:var(--chart-grid);stroke-width:1}.trajectory-expectation{stroke:var(--chart-expectation);stroke-dasharray:5 4}.trajectory-intervention{stroke:var(--chart-intervention);stroke-dasharray:3 3}.trajectory-line{fill:none;stroke:var(--chart-line);stroke-width:2}.trajectory-point{fill:var(--chart-line);stroke:transparent;stroke-width:16}.learning-history .note-form{margin-top:var(--space-4)}.learning-history .note-callout{margin-block:var(--space-4)}.journal-filters{display:flex;flex-wrap:wrap;gap:var(--space-4);margin-block:var(--space-5)}.journal-filters label{flex:1 1 200px;min-width:0}.journal-panel{margin-top:var(--space-4)}.journal-panel .journal-filters{margin:0;padding:0 0 var(--space-4);border-bottom:1px solid var(--line)}.journal-panel .directory-toolbar{padding-bottom:var(--space-4);border-bottom:1px solid var(--line)}.journal-panel>p,.journal-panel>.btn{margin:var(--space-4) 0}.learning-journal{margin:0;list-style:none;padding:0}.learning-journal>li{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--line);overflow-wrap:anywhere}.learning-journal>li:focus-visible{outline-offset:-2px}.learning-journal>li:last-child{border-bottom:0}.journal-scores{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,17rem),1fr));gap:0 var(--space-6);margin:var(--space-2) 0 0;padding:0;list-style:none;font-size:var(--text-sm)}.journal-scores li{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-3);padding:var(--space-1) 0;border-bottom:1px solid var(--line)}.journal-score{display:inline-flex;align-items:baseline;gap:var(--space-2);flex:none;font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums}.learning-journal p{white-space:pre-wrap;margin:var(--space-2) 0 0}.activity-day h2{margin:0;padding:var(--space-2) var(--space-5);border-bottom:1px solid var(--line);color:var(--ink-soft);font-size:var(--text-sm);font-weight:var(--weight-semibold);letter-spacing:0;background:var(--surface-subtle)}.activity-entry{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-4)}.activity-entry time{flex:none;color:var(--muted);font-size:var(--text-xs)}.activity-log .learning-journal p.activity-subject{margin-top:var(--space-1);color:var(--ink-soft);white-space:normal}.activity-log .learning-journal p.activity-change{margin-top:var(--space-1);color:var(--muted);font-size:var(--text-sm);white-space:normal}.activity-classes{margin-top:var(--space-1);color:var(--ink-soft);font-size:var(--text-sm)}.activity-classes summary{width:fit-content}.activity-classes ul{margin:0;padding:0 0 0 calc(1em + var(--space-2));list-style:none}.learning-journal .activity-classes li{padding:var(--space-1) 0;border:0}.activity-classes li span{color:var(--muted)}.journal-filters .loading{align-self:end;min-height:40px;margin:0;animation:none}.journal-meta{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4);font-size:var(--text-xs);color:var(--muted);margin-bottom:var(--space-2)}@media (max-width: 640px){.learning-actions>.btn{flex:1 1 auto}.saved-class-list{display:block}.saved-class-list>li{grid-template-columns:1fr;gap:var(--space-2)}.journal-filters{flex-direction:column}.journal-filters label{flex:initial;width:100%}}.guidance-text{color:var(--ink-soft);font-size:var(--text-md);line-height:var(--leading-normal)}.practice-figure{max-width:34rem;margin:var(--space-3) 0}.practice-figure svg{display:block;width:100%;height:auto;border:1px solid var(--line);border-radius:var(--radius-md);font:13px/1 Arial,sans-serif;fill:var(--paper-ink)}.practice-figure-geometry{max-width:26rem}.practice-figure-table{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}.practice-figure figcaption{margin-bottom:var(--space-2);font-weight:var(--weight-semibold)}.practice-figure .figure-point,.practice-figure .figure-plot-label{font-size:var(--text-sm);font-style:italic}.practice-figure .figure-grid{stroke:var(--paper-grid);stroke-width:1}.practice-figure .figure-axis{stroke:var(--paper-ink);stroke-width:1.4}.figure-error{color:var(--muted)}.practice-figure .figure-tick{paint-order:stroke;stroke:var(--paper);stroke-width:3px;stroke-linejoin:round}@media (max-width: 640px){:is(.dashboard-metrics,.class-detail-stats,.school-kpi-grid){grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-4) var(--space-3);padding:0}.class-detail-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-metrics>div,.dashboard-metrics>div+div,.class-detail-stats>div{padding:0;border:0}.dashboard-metrics strong,.class-detail-stats dd,.school-kpi-grid .school-kpi-card strong{font-size:var(--text-lg)}.dashboard-metrics>div>span,.class-detail-stats dt,.school-kpi-grid .school-kpi-card dt{font-size:var(--text-xs)}.school-kpi-grid .school-kpi-card :is(p,.link-arrow){font-size:var(--text-xs)}.data-table.stacked,.data-table.stacked>tbody,.data-table.stacked>tbody>tr,.data-table.stacked>tbody>tr>:is(th,td){display:block}.data-table.stacked>thead{display:block;position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.data-table.stacked>tbody>tr{padding:var(--space-3) 0;border-bottom:1px solid var(--line)}.data-table.stacked>tbody>tr>:is(th,td){padding:0;border:0;overflow-wrap:anywhere}.data-table.stacked>tbody>tr>th{margin-bottom:var(--space-1);font-size:var(--text-md)}.data-table.stacked>tbody>tr>td[data-label]{display:grid;grid-template-columns:minmax(7rem,2fr) minmax(0,3fr);gap:var(--space-3);padding:var(--space-1) 0}.data-table.stacked>tbody>tr>td[data-label]:before{content:attr(data-label);color:var(--muted);font-size:var(--text-xs);font-weight:var(--weight-semibold)}.people-table.stacked tbody tr:not(.person-edit-row){display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start}.people-table.stacked tbody th{margin-bottom:var(--space-1)}.people-table.stacked .people-table-action{grid-area:1 / 2;width:auto}.people-table.stacked td[data-label]{grid-column:1 / -1}.people-table.stacked tr.is-editing{border-bottom:0}.people-table.stacked .person-edit-row{padding-top:0}.tabs{gap:var(--space-4)}}
