@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{text-indent:0;text-rendering:auto;font:1.21em/1.2 KaTeX_Main,Times New Roman,serif;position:relative}.katex *{border-color:currentColor;-ms-high-contrast-adjust:none!important}.katex .katex-version:after{content:"0.18.1"}.katex .katex-mathml{clip-path:inset(50%);border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.katex .katex-html>.katex-newline{display:block}.katex .katex-base{white-space:nowrap;width:min-content;position:relative}.katex .katex-base,.katex .katex-strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;table-layout:fixed;display:inline-table}.katex .vlist-r{display:table-row}.katex .vlist{vertical-align:bottom;display:table-cell;position:relative}.katex .vlist>span{height:0;display:block;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{width:0;overflow:hidden}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{vertical-align:bottom;width:2px;min-width:2px;font-size:1px;display:table-cell}.katex .katex-vbox{flex-direction:column;align-items:baseline;display:inline-flex}.katex .katex-thinbox{flex-direction:row;width:0;max-width:0;display:inline-flex}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;width:100%;display:inline-block}.katex .katex-hdashline,.katex .katex-hline,.katex .katex-overline .overline-line,.katex .katex-rule,.katex .katex-underline .underline-line,.katex .mfrac .frac-line{min-height:1px}.katex .mspace{display:inline-block}.katex .katex-smash{line-height:0;display:inline}.katex .clap,.katex .llap,.katex .rlap{width:0;position:relative}.katex .clap>.katex-inner,.katex .llap>.katex-inner,.katex .rlap>.katex-inner{position:absolute}.katex .clap>.katex-fix,.katex .llap>.katex-fix,.katex .rlap>.katex-fix{display:inline-block}.katex .llap>.katex-inner{right:0}.katex .clap>.katex-inner,.katex .rlap>.katex-inner{left:0}.katex .clap>.katex-inner>span{margin-left:-50%;margin-right:50%}.katex .katex-rule{border:0 solid;display:inline-block;position:relative}.katex .katex-hline,.katex .katex-overline .overline-line,.katex .katex-underline .underline-line{border-bottom-style:solid;width:100%;display:inline-block}.katex .katex-hdashline{border-bottom-style:dashed;width:100%;display:inline-block}.katex .sqrt>.katex-root{margin-left:.277778em;margin-right:-.555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .katex-sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .katex-sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .katex-sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .katex-sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .katex-sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .katex-sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .katex-sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .katex-sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .katex-sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .katex-sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .katex-sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .katex-sizing.reset-size2.size1{font-size:.833333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .katex-sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .katex-sizing.reset-size2.size3{font-size:1.16667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .katex-sizing.reset-size2.size4{font-size:1.33333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .katex-sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .katex-sizing.reset-size2.size6{font-size:1.66667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .katex-sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .katex-sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .katex-sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .katex-sizing.reset-size2.size10{font-size:3.45667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .katex-sizing.reset-size2.size11{font-size:4.14667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .katex-sizing.reset-size3.size1{font-size:.714286em}.katex .fontsize-ensurer.reset-size3.size2,.katex .katex-sizing.reset-size3.size2{font-size:.857143em}.katex .fontsize-ensurer.reset-size3.size3,.katex .katex-sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .katex-sizing.reset-size3.size4{font-size:1.14286em}.katex .fontsize-ensurer.reset-size3.size5,.katex .katex-sizing.reset-size3.size5{font-size:1.28571em}.katex .fontsize-ensurer.reset-size3.size6,.katex .katex-sizing.reset-size3.size6{font-size:1.42857em}.katex .fontsize-ensurer.reset-size3.size7,.katex .katex-sizing.reset-size3.size7{font-size:1.71429em}.katex .fontsize-ensurer.reset-size3.size8,.katex .katex-sizing.reset-size3.size8{font-size:2.05714em}.katex .fontsize-ensurer.reset-size3.size9,.katex .katex-sizing.reset-size3.size9{font-size:2.46857em}.katex .fontsize-ensurer.reset-size3.size10,.katex .katex-sizing.reset-size3.size10{font-size:2.96286em}.katex .fontsize-ensurer.reset-size3.size11,.katex .katex-sizing.reset-size3.size11{font-size:3.55429em}.katex .fontsize-ensurer.reset-size4.size1,.katex .katex-sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .katex-sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .katex-sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .katex-sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .katex-sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .katex-sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .katex-sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .katex-sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .katex-sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .katex-sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .katex-sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .katex-sizing.reset-size5.size1{font-size:.555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .katex-sizing.reset-size5.size2{font-size:.666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .katex-sizing.reset-size5.size3{font-size:.777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .katex-sizing.reset-size5.size4{font-size:.888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .katex-sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .katex-sizing.reset-size5.size6{font-size:1.11111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .katex-sizing.reset-size5.size7{font-size:1.33333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .katex-sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .katex-sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .katex-sizing.reset-size5.size10{font-size:2.30444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .katex-sizing.reset-size5.size11{font-size:2.76444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .katex-sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .katex-sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .katex-sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .katex-sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .katex-sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .katex-sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .katex-sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .katex-sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .katex-sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .katex-sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .katex-sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .katex-sizing.reset-size7.size1{font-size:.416667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .katex-sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .katex-sizing.reset-size7.size3{font-size:.583333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .katex-sizing.reset-size7.size4{font-size:.666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .katex-sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .katex-sizing.reset-size7.size6{font-size:.833333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .katex-sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .katex-sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .katex-sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .katex-sizing.reset-size7.size10{font-size:1.72833em}.katex .fontsize-ensurer.reset-size7.size11,.katex .katex-sizing.reset-size7.size11{font-size:2.07333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .katex-sizing.reset-size8.size1{font-size:.347222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .katex-sizing.reset-size8.size2{font-size:.416667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .katex-sizing.reset-size8.size3{font-size:.486111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .katex-sizing.reset-size8.size4{font-size:.555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .katex-sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .katex-sizing.reset-size8.size6{font-size:.694444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .katex-sizing.reset-size8.size7{font-size:.833333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .katex-sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .katex-sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .katex-sizing.reset-size8.size10{font-size:1.44028em}.katex .fontsize-ensurer.reset-size8.size11,.katex .katex-sizing.reset-size8.size11{font-size:1.72778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .katex-sizing.reset-size9.size1{font-size:.289352em}.katex .fontsize-ensurer.reset-size9.size2,.katex .katex-sizing.reset-size9.size2{font-size:.347222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .katex-sizing.reset-size9.size3{font-size:.405093em}.katex .fontsize-ensurer.reset-size9.size4,.katex .katex-sizing.reset-size9.size4{font-size:.462963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .katex-sizing.reset-size9.size5{font-size:.520833em}.katex .fontsize-ensurer.reset-size9.size6,.katex .katex-sizing.reset-size9.size6{font-size:.578704em}.katex .fontsize-ensurer.reset-size9.size7,.katex .katex-sizing.reset-size9.size7{font-size:.694444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .katex-sizing.reset-size9.size8{font-size:.833333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .katex-sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .katex-sizing.reset-size9.size10{font-size:1.20023em}.katex .fontsize-ensurer.reset-size9.size11,.katex .katex-sizing.reset-size9.size11{font-size:1.43981em}.katex .fontsize-ensurer.reset-size10.size1,.katex .katex-sizing.reset-size10.size1{font-size:.24108em}.katex .fontsize-ensurer.reset-size10.size2,.katex .katex-sizing.reset-size10.size2{font-size:.289296em}.katex .fontsize-ensurer.reset-size10.size3,.katex .katex-sizing.reset-size10.size3{font-size:.337512em}.katex .fontsize-ensurer.reset-size10.size4,.katex .katex-sizing.reset-size10.size4{font-size:.385728em}.katex .fontsize-ensurer.reset-size10.size5,.katex .katex-sizing.reset-size10.size5{font-size:.433944em}.katex .fontsize-ensurer.reset-size10.size6,.katex .katex-sizing.reset-size10.size6{font-size:.48216em}.katex .fontsize-ensurer.reset-size10.size7,.katex .katex-sizing.reset-size10.size7{font-size:.578592em}.katex .fontsize-ensurer.reset-size10.size8,.katex .katex-sizing.reset-size10.size8{font-size:.694311em}.katex .fontsize-ensurer.reset-size10.size9,.katex .katex-sizing.reset-size10.size9{font-size:.833173em}.katex .fontsize-ensurer.reset-size10.size10,.katex .katex-sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .katex-sizing.reset-size10.size11{font-size:1.19961em}.katex .fontsize-ensurer.reset-size11.size1,.katex .katex-sizing.reset-size11.size1{font-size:.200965em}.katex .fontsize-ensurer.reset-size11.size2,.katex .katex-sizing.reset-size11.size2{font-size:.241158em}.katex .fontsize-ensurer.reset-size11.size3,.katex .katex-sizing.reset-size11.size3{font-size:.281351em}.katex .fontsize-ensurer.reset-size11.size4,.katex .katex-sizing.reset-size11.size4{font-size:.321543em}.katex .fontsize-ensurer.reset-size11.size5,.katex .katex-sizing.reset-size11.size5{font-size:.361736em}.katex .fontsize-ensurer.reset-size11.size6,.katex .katex-sizing.reset-size11.size6{font-size:.401929em}.katex .fontsize-ensurer.reset-size11.size7,.katex .katex-sizing.reset-size11.size7{font-size:.482315em}.katex .fontsize-ensurer.reset-size11.size8,.katex .katex-sizing.reset-size11.size8{font-size:.578778em}.katex .fontsize-ensurer.reset-size11.size9,.katex .katex-sizing.reset-size11.size9{font-size:.694534em}.katex .fontsize-ensurer.reset-size11.size10,.katex .katex-sizing.reset-size11.size10{font-size:.833601em}.katex .fontsize-ensurer.reset-size11.size11,.katex .katex-sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{width:.12em;display:inline-block}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .katex-accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .katex-accent .accent-body{position:relative}.katex .katex-accent .accent-body:not(.accent-full){width:0}.katex .katex-overlay{display:block}.katex .mtable .vertical-separator{min-width:1px;display:inline-block}.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;height:inherit;width:100%;display:block;position:absolute}.katex svg path{stroke:none}.katex svg{fill-rule:nonzero;fill-opacity:1;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1}.katex img{border-style:none;min-width:0;max-width:none;min-height:0;max-height:none}.katex .katex-stretchy{width:100%;display:block;position:relative;overflow:hidden}.katex .katex-stretchy:after,.katex .katex-stretchy:before{content:""}.katex .hide-tail{width:100%;position:relative;overflow:hidden}.katex .halfarrow-left{width:50.2%;position:absolute;left:0;overflow:hidden}.katex .halfarrow-right{width:50.2%;position:absolute;right:0;overflow:hidden}.katex .brace-left{width:25.1%;position:absolute;left:0;overflow:hidden}.katex .brace-center{width:50%;position:absolute;left:25%;overflow:hidden}.katex .brace-right{width:25.1%;position:absolute;right:0;overflow:hidden}.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{box-sizing:border-box;border:.04em solid}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .katex-sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{box-sizing:border-box;border-top:.049em solid;border-right:.049em solid;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{text-align:left;display:inline-block;position:absolute;right:calc(50% + .3em)}.katex .cd-label-right{text-align:right;display:inline-block;position:absolute;left:calc(50% + .3em)}.katex-display{text-align:center;margin:1em 0;display:block}.katex-display>.katex{text-align:center;white-space:nowrap;display:block}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.katex-tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.katex-tag{left:0;right:auto}.katex-display.fleqn>.katex{text-align:left;padding-left:2em}body{counter-reset:katexEqnNo mmlEqnNo}@font-face{font-family:SUIT Variable;font-style:normal;font-weight:100 900;font-display:swap;src:url(https://cdn.jsdelivr.net/gh/sunn-us/SUIT@2.0.1/fonts/variable/woff2/SUIT-Variable.woff2)format("woff2-variations")}:root{color:oklch(24% .02 265);font-synthesis:none;text-rendering:optimizelegibility;--ink:oklch(24% .02 265);--muted:oklch(51% .018 265);--line:oklch(88.5% .012 85);--surface:oklch(98.8% .008 85);--surface-muted:oklch(95.4% .014 85);--accent:oklch(49% .13 264);--accent-dark:oklch(38% .11 264);--accent-soft:oklch(94% .026 264);--success:oklch(56% .11 155);--warning:oklch(67% .13 77);--danger:oklch(55% .15 25);--radius-sm:2px;--radius-md:4px;--radius-lg:6px;--shadow:none;--text-body:1rem;--text-form-value:17px;--text-field-prompt:16px;--text-helper:14px;--text-tab:12px;--text-dense-grid:12px;--text-metadata:13px;--control-height:44px;--control-face-height:38px;--control-radius:6px;background:oklch(97.6% .012 85);font-family:SUIT Variable,SUIT,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{font-size:17px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.app-icon{stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle;flex:none;display:inline-block}.app-icon-16{width:16px;height:16px}.app-icon-20{width:20px;height:20px}.app-icon-24{width:24px;height:24px}.app-icon-forward{transform:rotate(180deg)}.app-icon-down{transform:rotate(-90deg)}body{min-width:320px;min-height:100vh;font-size:var(--text-body);letter-spacing:-.015em;margin:0;line-height:1.52}button,input,select,textarea{font:inherit}button{cursor:pointer;min-height:44px}button:disabled{cursor:not-allowed;opacity:.42}h1,h2,h3{letter-spacing:-.025em}h1,h2,h3,p{margin-top:0}h2{letter-spacing:-.035em;margin-bottom:10px;font-size:1.5rem;line-height:1.18}h3{letter-spacing:-.025em}.app{min-height:100vh;padding-bottom:84px}.app-main{width:min(100% - 28px,1120px);margin-inline:auto}.topbar h1{letter-spacing:-.035em;margin:2px 0 0;font-size:1.3rem}.brand-mark{color:oklch(98% .01 273);background:var(--accent-dark);width:42px;height:42px;box-shadow:none;border-radius:0;place-items:center;font-weight:900;display:grid}.eyebrow{color:var(--accent);letter-spacing:.09em;text-transform:uppercase;font-size:.7rem;font-weight:850}.app-main{min-height:72vh}.screen-stack{gap:18px;display:grid}.daily-brief,.planner-header,.library-header,.race-summary,.section-heading{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.daily-brief{align-items:center;padding:18px 2px}.daily-brief h2{max-width:18ch;margin-top:6px}.daily-brief p,.planner-header p,.race-summary p{max-width:60ch;color:var(--muted);margin-bottom:0;line-height:1.6}.progress-ring{--progress:0deg;background:conic-gradient(var(--accent) var(--progress), var(--line) 0);border-radius:50%;flex:0 0 68px;place-items:center;width:68px;height:68px;display:grid}.progress-ring:before{background:var(--surface);content:"";border-radius:50%;grid-area:1/1;width:52px;height:52px}.progress-ring span{z-index:1;grid-area:1/1;font-size:.78rem;font-weight:850}.quest-meta,.quest-footer,.planner-actions,.screen-actions,.row-actions,.rating-actions{align-items:center;gap:10px;display:flex}.quest-meta{z-index:1;color:oklch(76% .02 268);justify-content:space-between;font-size:.78rem;font-weight:700;position:relative}.quest-type,.status-pill{border-radius:999px;align-items:center;min-height:28px;padding-inline:10px;font-size:.7rem;font-weight:850;display:inline-flex}.quest-boss{color:oklch(87% .12 72);background:oklch(69% .16 77/.16)}.subject-label{z-index:1;color:oklch(76% .02 268);margin:28px 0 8px;font-size:.8rem;font-weight:800;position:relative}.quest-reason{z-index:1;color:oklch(76% .02 268);position:relative}.quest-footer{z-index:1;justify-content:space-between;margin-top:28px;position:relative}.quest-footer>div{align-items:center;gap:8px;display:flex}.primary-button,.secondary-button,.primary-action,.icon-button,.row-actions button,.text-button{border-radius:var(--radius-sm);border:0;font-weight:800}.primary-button,.primary-action{color:oklch(98% .01 273);background:var(--accent);padding:0 18px}.primary-button,.secondary-button,.row-actions button,.material-back,.quest-reason{align-items:center;gap:6px;display:inline-flex}.primary-action{justify-content:center;align-items:center;gap:6px;display:inline-flex}.secondary-button{color:var(--accent-dark);background:var(--accent-soft);padding:0 16px}.text-button,.row-actions button{color:var(--muted);background:0 0;padding-inline:10px}.text-button.danger{color:var(--danger)}.screen-actions{align-items:stretch}.empty-state{border-radius:var(--radius-lg);text-align:center;background:var(--surface);border:1px dashed oklch(80% .025 268);padding:42px 24px}.empty-state.compact{padding:28px 20px}.empty-state p,.empty-copy{max-width:48ch;color:var(--muted);margin:0 auto;line-height:1.55}.empty-symbol{color:var(--accent);margin-bottom:12px;font-size:2rem;display:block}.rating-panel,.inline-sheet,.timetable-editor,.subject-progress,.mock-section{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);padding:24px;box-shadow:0 8px 24px oklch(24% .025 268/.04)}.review-feedback{border-radius:var(--radius-md);color:oklch(39% .12 155);background:oklch(94% .045 155);justify-content:space-between;gap:12px;margin:0;padding:14px 16px;display:flex}.review-feedback span{color:oklch(47% .06 155);font-size:.82rem}.day-review-result{color:var(--accent-dark);background:var(--accent-soft);border-radius:2px;padding:9px 13px;font-size:.8rem}.phase-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);padding:22px}.phase-card>h2{margin-bottom:16px}.phase-plan-list{gap:0;display:grid}.phase-plan-list>div{border-bottom:1px solid var(--line);grid-template-columns:58px 1fr auto;align-items:center;gap:10px;padding:12px 2px;display:grid}.phase-plan-list>div:last-child{border-bottom:0}.phase-plan-list time,.phase-plan-list span,.phase-card p{color:var(--muted);font-size:.78rem}.phase-between,.phase-ended{grid-template-columns:1fr 1fr;gap:18px;display:grid}.phase-between>div+div,.phase-ended>div+div{border-left:1px solid var(--line);padding-left:18px}.phase-between h2,.phase-ended h2{margin-bottom:6px;font-size:1.15rem}.phase-card p{margin:0}.class-ended-prompt,.session-capture-sheet,.past-due-actions{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);padding:22px}.class-ended-prompt{border-color:color-mix(in oklab, var(--accent) 30%, var(--line));justify-content:space-between;align-items:center;gap:20px;display:flex}.class-ended-prompt h2,.session-capture-sheet h2,.past-due-actions h2{margin-bottom:6px}.class-ended-prompt p,.session-capture-sheet header p{color:var(--muted);margin:0;font-size:.8rem}.class-prompt-actions,.compact-actions,.capture-footer{align-items:center;gap:8px;display:flex}.class-prompt-actions button,.compact-actions button{min-height:44px}.session-capture-sheet>header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.session-capture-sheet form{gap:16px;display:grid}.session-capture-sheet textarea{resize:vertical;min-height:74px}.progress-suggestion{border-radius:var(--radius-sm);color:var(--accent-dark);background:var(--accent-soft);justify-content:space-between;align-items:end;gap:12px;margin:0;padding:10px 12px;font-size:.78rem;font-weight:750;display:flex}.progress-suggestion label{min-width:150px;color:var(--text)}.capture-more{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-block:12px}.capture-more summary{min-height:44px;color:var(--muted);cursor:pointer;align-content:center;font-weight:750}.capture-more[open] summary{margin-bottom:12px}.capture-footer{flex-wrap:wrap}.capture-footer>label:first-child{min-width:150px}.current-fixed-block>strong{color:var(--accent-dark);margin-top:14px;font-size:.82rem;display:block}.past-due-actions>div{gap:8px;margin-top:14px;display:grid}.past-due-actions article{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.past-due-actions article span{color:var(--muted);margin-top:3px;font-size:.74rem;display:block}.rating-panel p{color:var(--muted)}.rating-actions{grid-template-columns:repeat(3,1fr);display:grid}.rating{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-muted);font-weight:850}.rating-hard{color:var(--danger)}.rating-normal{color:oklch(51% .14 77)}.rating-easy{color:oklch(45% .13 155)}.queue-section,.library-list,.timeline{gap:2px;display:grid}.queue-row,.library-row,.block-row,.trend-row,.subject-progress-row{border-bottom:1px solid var(--line);align-items:center;gap:14px;padding:16px 4px;display:grid}.queue-row{grid-template-columns:36px 1fr}.queue-index{color:var(--accent);font-variant-numeric:tabular-nums;font-weight:900}.queue-row strong,.queue-row span,.block-row strong,.block-row span,.trend-row strong,.trend-row span{display:block}.queue-row div span,.block-row div span,.trend-row div span{color:var(--muted);margin-top:5px;font-size:.82rem}.form-grid{grid-template-columns:1fr 1fr;gap:14px;margin-top:18px;display:grid}.form-grid label{color:var(--muted);gap:7px;font-size:.78rem;font-weight:800;display:grid}.form-grid input,.form-grid select,.library-header select{border:1px solid var(--line);border-radius:var(--radius-sm);min-width:0;min-height:46px;color:var(--ink);background:var(--surface);padding:0 12px}.span-2{grid-column:1/-1}.input-suffix{position:relative}.input-suffix input{width:100%;padding-right:42px}.input-suffix span{position:absolute;top:50%;right:14px;transform:translateY(-50%)}.form-error{color:var(--danger);margin:0;font-size:.82rem}.icon-button{width:44px;color:var(--muted);background:var(--surface-muted);padding:0;font-size:1.35rem}.planner-layout{gap:22px;display:grid}.timetable-overview{min-width:0}.timetable-groups{gap:28px;display:grid}.timetable-group{min-width:0}.timetable-group-heading{justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:10px;padding-inline:2px;display:flex}.timetable-group-heading h3{margin:0;font-size:1rem}.timetable-group-heading span{color:var(--muted);font-size:.7rem;font-weight:700}.planner-header{padding:8px 2px}.week-table-wrap{border:1px solid var(--line);background:var(--surface);scrollbar-width:thin;border-radius:18px;overflow-x:auto}.week-table{--period-height:46px;--time-column-width:70px;table-layout:fixed;border-spacing:0;width:100%}.week-table .time-column{width:var(--time-column-width)}.week-table-5{min-width:760px}.week-table-2{min-width:420px}.week-table th,.week-table td{border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.week-table tr:last-child th,.week-table tr:last-child td{border-bottom:0}.week-table thead th:last-child,.week-table td:last-child,.week-table .meal-row th:last-child{border-right:0}.week-table thead th{height:54px;color:var(--muted);background:var(--surface-muted);text-align:center;padding:8px;font-size:.78rem}.week-table thead th small{color:var(--accent);margin-top:2px;font-size:.62rem;display:block}.week-table tbody th{z-index:2;width:var(--time-column-width);color:var(--muted);background:var(--surface);font-variant-numeric:tabular-nums;text-align:center;padding:6px;font-size:.7rem;position:sticky;left:0}.week-table td{height:var(--period-height);vertical-align:top;padding:0}.week-table tbody tr:not(.meal-row){height:var(--period-height)}.week-table td.has-block{position:relative}.week-empty-add{width:100%;min-height:var(--period-height);color:color-mix(in oklab, var(--muted) 58%, transparent);opacity:.45;background:0 0;border:0;border-radius:0;place-items:center;padding:0;font-size:1rem;transition:color .14s,background .14s,opacity .14s;display:grid}.week-empty-add:hover,.week-empty-add:focus-visible{color:var(--accent);background:color-mix(in oklab, var(--accent) 6%, transparent);opacity:1}.week-empty-add:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.week-table .is-today,.week-table th[aria-current=date]{background:color-mix(in oklab, var(--accent) 7%, var(--surface))}.week-block{width:100%;height:100%;min-height:0;color:var(--text);background:var(--surface-muted);box-shadow:inset 0 3px var(--block-color,var(--muted));text-align:left;border:0;border-radius:0;padding:7px 8px 5px;transition:filter .16s,box-shadow .16s;display:block;position:absolute;inset:0;overflow:hidden}.week-block:hover{filter:saturate(1.08)brightness(.99)}.week-block:active{filter:brightness(.96)}.week-block:focus-visible{z-index:1;outline:3px solid var(--accent);outline-offset:-3px;position:relative}.week-block strong{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.7rem;line-height:1.25;display:-webkit-box;overflow:hidden}.week-block span{color:var(--muted);font-variant-numeric:tabular-nums;margin-top:3px;font-size:.62rem;display:block}.week-block-subject-study{background:color-mix(in oklab, var(--block-color,var(--accent)) 14%, var(--surface))}.week-block-free-study{--block-color:var(--success);background:color-mix(in oklab, var(--success) 12%, var(--surface))}.week-block-agenda{--block-color:var(--accent);background:color-mix(in oklab, var(--accent) 8%, var(--surface))}.week-block-meal,.week-block-break{--block-color:var(--warning);background:color-mix(in oklab, var(--warning) 13%, var(--surface))}.week-block-class{--block-color:color-mix(in oklab, var(--muted) 70%, var(--accent));background:color-mix(in oklab, var(--muted) 8%, var(--surface))}.timetable-cell-editor{border:1px solid var(--line);background:var(--surface);border-radius:14px;gap:12px;padding:16px;display:grid;box-shadow:0 12px 28px oklch(34% .03 273/.1)}.inline-editor-fields{grid-template-columns:repeat(5,minmax(110px,1fr));gap:10px;display:grid}.inline-editor-fields label{color:var(--muted);gap:6px;font-size:.72rem;font-weight:750;display:grid}.inline-editor-actions{justify-content:flex-end;gap:8px;display:flex}.inline-editor-actions .danger{margin-right:auto}.week-table .meal-row th{height:34px;color:var(--muted);background:color-mix(in oklab, var(--muted) 7%, var(--surface));letter-spacing:.015em;text-align:center;padding:7px 12px;font-size:.7rem;font-weight:750;position:static}.two-day-agenda{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.day-agenda{border:1px solid var(--line);background:var(--surface);border-radius:18px;min-width:0;padding:18px}.week-table thead th:first-child,.week-table tbody tr:not(.meal-row)>th{box-shadow:inset -1px 0 var(--line);border-right:0}.day-agenda>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding-bottom:12px;display:flex}.day-agenda>header div{align-items:baseline;gap:8px;display:flex}.day-agenda>header span{font-size:1.05rem;font-weight:850}.day-agenda>header time,.day-agenda>header>strong{color:var(--muted);font-size:.72rem}.timeline-row{grid-template-columns:48px 12px 1fr;gap:10px;padding:14px 0;display:grid}.timeline-row time{color:var(--muted);font-variant-numeric:tabular-nums;padding-top:3px;font-size:.78rem;font-weight:800}.timeline-marker{width:10px;height:10px;box-shadow:0 0 0 5px var(--surface);border-radius:50%;margin-top:5px}.timeline-content{border-bottom:1px solid var(--line);min-width:0;padding:0 0 20px 4px}.timeline-title{justify-content:space-between;gap:14px;display:flex}.timeline-title span{color:var(--muted);font-size:.74rem;font-weight:750}.timeline-title h3,.library-row h3{margin:3px 0;font-size:1rem}.timeline-content>p,.library-row p{color:var(--muted);margin:7px 0 10px;font-size:.82rem}.status-draft{color:oklch(48% .14 77);background:oklch(94% .05 77)}.status-approved{color:oklch(42% .13 155);background:oklch(94% .05 155)}.row-actions{flex-wrap:wrap}.row-actions button{background:var(--surface-muted);min-height:36px;padding-inline:9px;font-size:.74rem}.weekly-list{margin-top:18px}.block-row{grid-template-columns:8px 1fr auto}.block-kind{background:var(--muted);border-radius:999px;width:8px;height:34px}.block-subject-study{background:var(--accent)}.block-free-study{background:var(--success)}.block-meal,.block-break{background:var(--warning)}.library-header{align-items:end;padding:8px 2px}.library-header select{min-width:132px}.library-row{grid-template-columns:10px 1fr auto}.subject-dot{border-radius:50%;width:10px;height:10px}.library-meta{color:var(--muted);gap:8px;font-size:.72rem;font-weight:750;display:flex}.race-summary{align-items:end;padding:24px 2px}.race-summary h2{margin-top:6px;font-size:2.2rem}.xp-block{text-align:right;min-width:130px}.xp-block>span{font-weight:900}.xp-track,.subject-track{background:var(--line);border-radius:999px;height:8px;margin-top:8px;overflow:hidden}.xp-track span,.subject-track span{border-radius:inherit;background:var(--accent);height:100%;display:block}.stat-strip{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);grid-template-columns:repeat(2,1fr);display:grid;overflow:hidden}.stat-strip div{border-bottom:1px solid var(--line);gap:6px;padding:18px;display:grid}.stat-strip div:nth-child(odd){border-right:1px solid var(--line)}.stat-strip span{color:var(--muted);font-size:.73rem;font-weight:750}.stat-strip strong{font-size:1.2rem}.subject-progress-row{grid-template-columns:48px 1fr 52px}.subject-progress-row>span,.subject-progress-row>strong{font-size:.78rem;font-weight:850}.subject-progress-row>strong{text-align:right}.mock-section{margin-top:4px}.trend-list{margin-top:14px}.trend-row{grid-template-columns:auto 1fr}.trend-alert{background:oklch(94% .045 25);border-radius:999px;align-items:center;min-height:28px;padding:0 9px;font-weight:850;color:var(--danger)!important;font-size:.7rem!important;display:inline-flex!important}button:focus-visible,input:focus-visible,select:focus-visible{outline-offset:2px;outline:3px solid oklch(70% .14 273)}@media (width>=768px){.timetable-editor{position:sticky;top:24px}.week-table-5{min-width:680px}.stat-strip{grid-template-columns:repeat(4,1fr)}.stat-strip div{border-right:1px solid var(--line);border-bottom:0}.stat-strip div:last-child{border-right:0}}@media (width<=520px){.two-day-agenda{grid-template-columns:1fr}.week-table{min-width:initial}.week-table-5{min-width:720px}.week-table-2{min-width:390px}.inline-editor-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.planner-header,.library-header,.race-summary,.section-heading{flex-direction:column;align-items:stretch}.planner-actions{grid-template-columns:1fr 1fr;display:grid}.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.screen-actions{flex-direction:column}.phase-between,.phase-ended{grid-template-columns:1fr}.phase-between>div+div,.phase-ended>div+div{border-top:1px solid var(--line);border-left:0;padding-top:16px;padding-left:0}.phase-plan-list>div{grid-template-columns:52px 1fr}.phase-plan-list span{display:none}.class-ended-prompt,.class-prompt-actions,.past-due-actions article,.capture-footer{flex-direction:column;align-items:stretch}.class-prompt-actions{grid-template-columns:1fr 1fr;width:100%;display:grid}.class-prompt-actions .text-button{grid-column:1/-1}.compact-actions{grid-template-columns:1fr 1fr;display:grid}}.planning-console{--console-paper:oklch(98.2% .012 82);--console-paper-strong:oklch(96.5% .018 82);--console-line:oklch(87.5% .018 78);--console-mint:oklch(94.5% .04 157);min-width:0;color:var(--ink);background:var(--console-paper);border:1px solid var(--console-line);border-radius:0}.planning-console-toolbar{z-index:8;border-bottom:1px solid var(--console-line);background:oklch(98.2% .012 82/.97);padding:8px 10px;position:sticky;top:0}.console-title-row,.console-tab-row,.subject-board-tools,.weekly-backlog>header,.subject-task-group>header{justify-content:space-between;align-items:center;gap:12px;display:flex}.console-title-row h2,.subject-board-tools h3,.weekly-backlog h3{margin:2px 0 0}.console-title-row h2{font-size:1.05rem}.console-editor-button,.console-plan-actions button,.backlog-place-button,.plan-icon-action{border:1px solid var(--console-line);min-height:44px;color:var(--ink);background:var(--surface);border-radius:4px;justify-content:center;align-items:center;gap:6px;padding:0 11px;font-size:.74rem;font-weight:780;display:inline-flex}.console-tab-row{align-items:stretch;margin-top:12px}.console-tabs,.console-date-nav,.console-plan-actions,.subject-group-tabs,.detailed-subject-tabs{align-items:center;gap:4px;display:flex}.console-tabs{border:1px solid var(--console-line);background:var(--console-paper-strong);border-radius:4px;padding:3px}.console-tabs button,.subject-group-tabs button,.detailed-subject-tabs button{min-height:44px;color:var(--muted);background:0 0;border:0;border-radius:3px;padding:0 13px;font-size:.76rem;font-weight:820}.console-tabs button.is-active,.subject-group-tabs button.is-active,.detailed-subject-tabs button.is-active{color:var(--accent-dark);background:var(--surface);box-shadow:inset 0 0 0 1px color-mix(in oklab, var(--accent) 30%, var(--console-line))}.console-date-nav{min-width:210px}.console-date-nav>button{border:1px solid var(--console-line);min-width:44px;min-height:44px;color:var(--ink);background:0 0;border-radius:3px;padding:0}.console-date-nav .console-current-date{flex:1;place-content:center;min-width:122px;font-size:.78rem;font-weight:850;display:grid}.console-current-date small{color:var(--muted);font-size:.6rem;font-weight:700}.console-plan-actions{justify-content:flex-end;margin-left:auto}.planning-console-body{min-width:0;padding:14px}.fixed-timetable-settings{border-bottom:1px solid var(--console-line);background:var(--surface);gap:18px;padding:14px;display:grid}.daily-console-grid{gap:12px;min-width:0;display:grid}.daily-subject-rail{scrollbar-width:thin;gap:4px;min-width:0;display:flex;overflow-x:auto}.daily-subject-rail button{border:1px solid var(--console-line);min-width:96px;min-height:44px;color:var(--muted);background:0 0;border-radius:3px;flex:none;justify-content:space-between;align-items:center;gap:10px;padding:6px 9px;font-size:.72rem;display:flex}.daily-subject-rail button.is-active{color:var(--accent-dark);background:var(--accent-soft);border-color:color-mix(in oklab, var(--accent) 40%, var(--console-line))}.daily-subject-rail button>span,.daily-subject-rail button>strong{align-items:center;gap:5px;display:flex}.daily-subject-rail i,.plan-subject-dot,.detailed-subject-tabs button>span,.backlog-subject-group h4>span,.subject-task-group>header div>span{background:var(--subject-color,var(--plan-subject,var(--accent)));border-radius:50%;flex:none;width:7px;height:7px}.day-schedule{border-top:1px solid var(--console-line);min-width:0}.day-schedule-block{border-right:1px solid var(--console-line);border-bottom:1px solid var(--console-line);border-left:1px solid var(--console-line);background:var(--surface)}.day-schedule-block>header{background:color-mix(in oklab, var(--subject-color) 5%, var(--surface));grid-template-columns:52px 28px minmax(0,1fr) auto;align-items:center;min-height:46px;padding:5px 8px;display:grid}.day-schedule-block>header>time{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.68rem}.day-block-icon{color:var(--subject-color)}.day-schedule-block>header>div{min-width:0}.day-schedule-block>header strong,.day-schedule-block>header span{display:block}.day-schedule-block>header strong{text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;overflow:hidden}.day-schedule-block>header div span,.day-block-capacity{color:var(--muted);font-size:.62rem}.day-schedule-block-class>header,.day-schedule-block-meal>header,.day-schedule-block-break>header{background:var(--console-paper-strong)}.day-block-plans{border-top:1px solid var(--console-line);background:var(--console-mint);gap:5px;padding:5px 5px 6px 88px;display:grid}.quiet-plan-add{border:1px dashed color-mix(in oklab, var(--success) 42%, var(--console-line));min-height:44px;color:var(--muted);background:0 0;border-radius:3px;justify-content:center;align-items:center;gap:5px;padding:4px 10px;font-size:.7rem;font-weight:750;display:inline-flex}.study-plan-card{border:0;border-bottom:1px solid var(--console-line);background:0 0;border-radius:0;min-width:0;padding:5px 0}.study-plan-card[draggable=true]{cursor:grab}.study-plan-card[draggable=true]:active{cursor:grabbing}.study-plan-card.is-selected{outline:2px solid var(--accent);outline-offset:-2px;background:var(--accent-soft)}.study-plan-card.is-completed{opacity:.68}.study-plan-card-head{grid-template-columns:44px minmax(0,1fr) auto;align-items:start;gap:7px;display:grid}.plan-select-control{border:1px solid var(--console-line);width:44px;min-height:44px;color:var(--muted);background:var(--surface);border-radius:2px;place-items:center;padding:0;display:grid}.plan-select-control[aria-pressed=true]{color:var(--accent-dark);background:var(--accent-soft);border-color:var(--accent-dark)}.plan-card-copy{min-width:0}.plan-card-copy>strong{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.78rem;line-height:1.35;display:-webkit-box;overflow:hidden}.plan-card-kicker{color:var(--muted);align-items:center;gap:5px;margin-bottom:2px;font-size:.62rem;font-weight:760;display:flex}.plan-card-kicker span:last-child{margin-left:auto}.plan-state{color:var(--muted);white-space:nowrap;background:0 0;border:0;border-radius:0;padding:3px 0;font-size:.58rem;font-weight:800}.plan-state-completed{color:oklch(42% .12 155);background:0 0}.plan-source-content,.plan-reason{margin:5px 0 0 51px;font-size:.68rem;line-height:1.45}.plan-source-content{color:var(--ink)}.plan-reason{color:var(--muted)}.study-plan-card.is-compact{padding:5px}.study-plan-card.is-compact .study-plan-card-head{grid-template-columns:44px minmax(0,1fr);gap:5px}.study-plan-card.is-compact .plan-select-control{width:44px;min-height:44px}.study-plan-card.is-compact .plan-state{display:none}.study-plan-card.is-compact .plan-card-copy>strong{-webkit-line-clamp:3;font-size:.66rem}.study-plan-card.is-compact .plan-reason{margin-left:49px;font-size:.58rem}.study-plan-card.is-compact .plan-source-content{-webkit-line-clamp:1;-webkit-box-orient:vertical;margin-left:49px;font-size:.58rem;display:-webkit-box;overflow:hidden}.plan-card-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:5px;margin-top:7px;margin-left:51px;display:flex}.study-plan-card.is-compact .plan-card-actions{margin-left:0}.plan-icon-action{min-height:44px;padding:0 9px}.plan-icon-action.is-complete{color:oklch(38% .11 155);background:var(--console-mint)}.move-period-select{border:1px solid var(--console-line);min-height:44px;color:var(--muted);background:var(--surface);border-radius:3px;align-items:center;gap:5px;padding-left:8px;display:inline-flex;position:relative}.move-period-select select{min-width:98px;min-height:42px;color:var(--ink);background:0 0;border:0;padding:0 7px;font-size:.68rem}.study-plan-card .inline-plan-result{border-radius:3px;margin-top:8px}.weekly-console-layout{gap:12px;min-width:0;display:grid}.weekly-grid-area,.weekly-plan-group{min-width:0}.placement-mode-banner,.placement-feedback{border:1px solid color-mix(in oklab, var(--accent) 32%, var(--console-line));min-height:44px;color:var(--accent-dark);background:var(--accent-soft);border-radius:3px;align-items:center;gap:8px;margin-bottom:8px;padding:7px 9px;font-size:.72rem;display:flex}.placement-feedback.is-partial{color:oklch(42% .11 155);border-color:color-mix(in oklab, var(--success) 38%, var(--console-line));background:var(--console-mint)}.placement-mode-banner .text-button{min-height:44px}.daily-placement-feedback{grid-column:1/-1;margin-bottom:0}.placement-mode-banner span{flex:1}.placement-feedback{color:var(--danger);border-color:color-mix(in oklab, var(--danger) 32%, var(--console-line));background:color-mix(in oklab, var(--danger) 6%, var(--surface));justify-content:space-between}.placement-feedback button{min-height:44px;color:inherit;background:var(--surface);border:1px solid;border-radius:3px}.weekly-plan-group+.weekly-plan-group{margin-top:14px}.weekly-plan-group-heading{border-bottom:1px solid var(--console-line);background:var(--console-paper);justify-content:space-between;align-items:baseline;min-height:36px;padding:4px 7px;display:flex}.weekly-plan-group-heading h3{margin:0;font-size:.86rem}.weekly-plan-group-heading span{color:var(--muted);font-size:.64rem}.weekly-plan-scroller{border:1px solid var(--console-line);background:var(--surface);overscroll-behavior-x:contain;scrollbar-width:thin;border-radius:0;max-width:100%;overflow:auto}.weekly-plan-table{--weekly-time-width:54px;table-layout:fixed;border-spacing:0;width:100%}.weekly-plan-table-5{min-width:840px}.weekly-plan-table-2{min-width:410px}.weekly-time-column{width:var(--weekly-time-width)}.weekly-plan-table tr:last-child th,.weekly-plan-table tr:last-child td{border-bottom:0}.weekly-plan-table thead th{height:42px;color:var(--muted);background:var(--console-paper-strong);text-align:center;padding:4px;font-size:.68rem}.weekly-plan-table thead small{margin-top:1px;font-size:.56rem;display:block}.weekly-plan-table tbody>tr:not(.weekly-meal-row)>th{z-index:2;width:var(--weekly-time-width);color:var(--muted);background:var(--surface);font-variant-numeric:tabular-nums;text-align:center;box-shadow:inset -1px 0 var(--console-line);border-right:0;padding:5px 3px;font-size:.6rem;position:sticky;left:0}.weekly-plan-table thead th:first-child{box-shadow:inset -1px 0 var(--console-line);border-right:0}.weekly-plan-table td{vertical-align:top;min-height:70px;padding:0}.weekly-meal-row th{height:30px;color:var(--muted);background:var(--console-paper-strong);text-align:center;padding:4px 8px;font-size:.64rem}.weekly-meal-row .app-icon{margin-right:5px}.weekly-plan-cell{background:var(--surface);min-height:70px;padding:0}.weekly-plan-cell>header{border-bottom:1px solid var(--console-line);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:5px;min-height:31px;margin:0;padding:4px 5px;display:flex}.cell-place-target{border:1px solid var(--accent);width:100%;min-height:44px;color:var(--accent-dark);background:var(--accent-soft);border-radius:2px;justify-content:center;align-items:center;gap:3px;padding:3px;font-size:.6rem;font-weight:800;display:inline-flex}.weekly-plan-cell>header strong{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.62rem;line-height:1.25;display:-webkit-box;overflow:hidden}.weekly-plan-cell>header span,.fixed-block-label{color:var(--muted);white-space:nowrap;font-size:.55rem}.reserved-plan-label{border:1px solid var(--console-line);min-height:44px;color:var(--muted);background:var(--console-paper-strong);border-radius:3px;align-items:center;gap:6px;padding:7px 9px;font-size:.66rem;font-weight:750;display:flex}.reserved-plan-label.is-compact{min-height:36px;padding:4px 6px;font-size:.56rem}.weekly-plan-cell.is-compatible{outline:2px solid var(--accent);outline-offset:-3px;cursor:pointer}.weekly-plan-cell.is-split-target{outline-color:var(--warning);background:color-mix(in oklab, var(--warning) 6%, var(--surface))}.weekly-plan-cell.is-disabled{color:var(--muted);background:var(--console-paper-strong);opacity:.52}.cell-validation{color:var(--muted);background:var(--surface);border-radius:2px;margin:0 0 4px;padding:3px 4px;font-size:.54rem;line-height:1.35}.cell-validation-invalid{color:var(--danger)}.cell-validation-split{color:oklch(43% .1 77)}.weekly-plan-target-valid,.weekly-plan-target-split{outline:2px solid var(--accent);outline-offset:1px;border-radius:0}.weekly-plan-target-split{outline-color:var(--warning)}.weekly-plan-target-invalid{opacity:.58}.weekly-cell-plans{gap:0;padding:0 5px 4px;display:grid}.weekly-cell-plans .quiet-plan-add{width:100%;min-height:44px}.fixed-block-label{align-items:center;gap:4px;display:inline-flex}.weekly-backlog{border:1px solid var(--console-line);background:var(--surface);border-radius:3px;min-width:0;padding:10px}.weekly-backlog>header{border-bottom:1px solid var(--console-line);padding-bottom:8px}.weekly-backlog>header>strong{width:30px;height:30px;color:var(--surface);background:var(--accent-dark);border-radius:50%;place-items:center;font-size:.72rem;display:grid}.backlog-subject-group{margin-top:12px}.backlog-subject-group h4{align-items:center;gap:6px;margin:0 0 5px;font-size:.72rem;display:flex}.backlog-subject-group h4 small{color:var(--muted);margin-left:auto}.backlog-subject-group .study-plan-card+.study-plan-card{margin-top:4px}.backlog-place-button{min-height:44px;color:var(--accent-dark);background:var(--accent-soft);padding:0 8px}.console-empty,.subject-empty-explanation{color:var(--muted);background:var(--console-paper-strong);margin:0;padding:14px;font-size:.72rem;line-height:1.55}.subject-task-board{min-width:0}.subject-board-tools{border-bottom:1px solid var(--console-line);align-items:flex-start;padding-bottom:12px}.subject-board-tools p{max-width:56ch;color:var(--muted);margin:4px 0 0;font-size:.72rem}.subject-group-tabs,.detailed-subject-tabs{scrollbar-width:thin;min-width:0;margin-top:8px;overflow-x:auto}.subject-group-tabs button,.detailed-subject-tabs button{border:1px solid #0000;flex:none;align-items:center;gap:6px;display:inline-flex}.subject-group-tabs button span{min-width:20px;color:var(--muted);background:var(--console-paper-strong);border-radius:8px;padding:2px 5px;font-size:.6rem}.detailed-subject-tabs button>span{background:var(--subject-color)}.subject-task-groups{gap:10px;margin-top:12px;display:grid}.subject-task-group{border:1px solid var(--console-line);background:var(--surface);border-radius:3px}.subject-task-group>header{border-bottom:1px solid var(--console-line);min-height:44px;padding:7px 10px}.subject-task-group>header div{align-items:center;gap:7px;display:flex}.subject-task-group h4{margin:0;font-size:.78rem}.subject-task-group>header>strong{color:var(--muted);font-size:.64rem}.subject-task-list{gap:5px;padding:5px;display:grid}.subject-task-row{min-width:0}.task-placement-summary{flex-wrap:wrap;align-items:center;gap:5px;width:100%;display:flex}.task-placement-summary>span{color:var(--muted);align-items:center;gap:4px;font-size:.66rem;font-weight:750;display:inline-flex}.task-placement-summary .backlog-place-button{margin-left:auto}.task-placement-picker select{border:1px solid var(--console-line);max-width:170px;min-height:44px;color:var(--ink);background:var(--surface);border-radius:3px;padding:0 7px;font-size:.64rem}.task-content-list{color:var(--muted);gap:3px;margin:0;padding:5px 10px 7px 64px;font-size:.66rem;line-height:1.45;display:grid}@media (width>=768px){.daily-console-grid{grid-template-columns:172px minmax(0,1fr)}.daily-subject-rail{flex-direction:column;align-content:start;overflow:visible}.daily-subject-rail button{width:100%}.weekly-console-layout{grid-template-columns:minmax(0,1fr) 240px;align-items:start}.weekly-backlog{max-height:calc(100vh - 164px);position:sticky;top:142px;overflow-y:auto}.subject-task-groups{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}}@media (width<=900px){.console-tab-row{flex-wrap:wrap}.console-plan-actions{order:3;width:100%}}@media (width<=600px){.planning-console{border-left:0;border-right:0;border-radius:0;max-width:100%}.planning-console-toolbar,.planning-console-body{padding:9px}.console-title-row,.subject-board-tools{flex-direction:column;align-items:stretch}.console-editor-button{width:100%}.console-tabs{order:1;width:100%}.console-tabs button{flex:1}.console-date-nav{order:2;width:100%}.console-plan-actions{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.console-plan-actions button{min-width:0;padding:4px;line-height:1.15}.day-block-plans{padding-left:5px}.day-schedule-block>header{grid-template-columns:46px 24px minmax(0,1fr) auto;padding-inline:5px}.day-block-capacity{white-space:normal;text-align:right;max-width:48px}.plan-card-actions,.study-plan-card.is-compact .plan-card-actions{margin-left:0}.task-content-list{padding-left:28px}.weekly-plan-table-5{min-width:760px}.weekly-backlog{max-height:none}}:root{color:#232426;--ink:#232426;--muted:#6d6f73;--line:#deddd7;--surface:#fffefa;--surface-muted:#f0eee8;--accent:#4b4fce;--accent-dark:#3539aa;--accent-soft:#efeffd;--success:#4d9a78;--warning:#b88345;--danger:#bd5a53;--radius-sm:4px;--radius-md:6px;--radius-lg:12px;--shadow:0 18px 46px #47463a17;background:#f7f5ef;font-family:SUIT Variable,SUIT,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}html{scroll-behavior:smooth}body{background:#f7f5ef}button{transition:transform .18s,background-color .18s,border-color .18s,color .18s}button:hover{transform:translateY(-1px)}button:active{transform:translateY(1px)scale(.99)}button:focus-visible,summary:focus-visible,[data-primary-study-card]:focus-visible{outline-offset:2px;outline:3px solid #4b4fce59}.app{padding-bottom:92px}@media (width>=768px){.app{padding-bottom:92px;padding-left:0}}.topbar{align-items:center;gap:12px;min-height:92px;padding:18px 4px 14px;display:flex}.today-heading h1{color:var(--ink);letter-spacing:-.045em;text-wrap:balance;margin:0;font-size:clamp(1.35rem,4vw,1.8rem);line-height:1.08}.today-heading p{color:var(--muted);margin:9px 0 0;font-size:.92rem}.header-tools{align-items:center;gap:8px;margin-left:auto;display:flex}.sync-button{border:1px solid color-mix(in srgb, var(--line) 82%, transparent);background:color-mix(in srgb, var(--surface) 88%, transparent);min-height:38px;color:var(--muted);letter-spacing:-.025em;white-space:nowrap;border-radius:5px;align-items:center;gap:6px;padding:0 10px;font-size:.7rem;font-weight:720;display:inline-flex;box-shadow:inset 0 1px #ffffffb8,0 2px 7px #2d302e12}.sync-button[data-status=synced]{color:var(--ink)}.sync-button[data-status=error]{border-color:color-mix(in srgb, #b55345 42%, var(--line));color:#9b4137}.sync-button[data-status=connecting] .app-icon{animation:.9s linear infinite sync-button-spin}@keyframes sync-button-spin{to{transform:rotate(360deg)}}@media (width<=420px){.sync-button span{display:none}.sync-button{justify-content:center;width:38px;padding:0}}@media (prefers-reduced-motion:reduce){.sync-button[data-status=connecting] .app-icon{animation:none}}.learning-data-section{border-top:1px solid var(--line);min-width:0;margin-top:32px;padding-top:24px}.learning-data-section>header{margin-bottom:16px}.learning-data-section>header p,.learning-data-section>header h2{margin:0}.learning-data-section>header p{color:var(--muted);font-size:var(--text-helper);font-weight:750}.learning-data-section>header h2{margin-top:3px;font-family:Iowan Old Style,Noto Serif KR,Nanum Myeongjo,Georgia,serif;font-size:1.25rem}.weakness-pattern-map,.weakness-selection,.session-evidence-chain{min-width:0}.weakness-map-filters{flex-wrap:wrap;gap:12px;display:flex}.weakness-map-filters label{color:var(--muted);font-size:var(--text-helper);flex:180px;gap:4px;font-weight:750;display:grid}.weakness-map-filters select{border:1px solid var(--line);width:100%;min-height:44px;color:var(--ink);background:var(--surface-muted);font:inherit;border-radius:4px;padding-inline:12px}.weakness-scroll-hint,.weakness-map-empty,.evidence-empty,.evidence-orphan-note{color:var(--muted);font-size:var(--text-helper);margin:14px 0 8px}.weakness-map-scroll{border:1px solid var(--line);background:color-mix(in oklab, var(--surface) 88%, transparent);overscroll-behavior-x:contain;max-width:100%;overflow-x:auto}.weakness-map-scroll table{border-spacing:0;table-layout:fixed;width:100%;min-width:780px}.weakness-map-scroll th,.weakness-map-scroll td{border-right:1px solid var(--line);border-bottom:1px solid var(--line);text-align:center;padding:0}.weakness-map-scroll tr:last-child>*{border-bottom:0}.weakness-map-scroll tr>:last-child{border-right:0}.weakness-map-scroll thead th{height:38px;color:var(--muted);background:var(--surface-muted);font-size:.68rem;font-weight:760}.weakness-map-scroll thead th:first-child,.weakness-map-scroll tbody th{width:144px}.weakness-map-scroll tbody th{background:var(--surface);text-align:left;padding:8px}.weakness-map-scroll tbody th strong,.weakness-map-scroll tbody th span{display:block}.weakness-map-scroll tbody th strong{font-size:.76rem}.weakness-map-scroll tbody th span{color:var(--muted);margin-top:2px;font-size:.62rem}.weakness-map-scroll td button{width:100%;min-height:52px;color:var(--ink);font-variant-numeric:tabular-nums;background:0 0;border:0;border-radius:0;place-content:center;padding:4px;font-size:.72rem;display:grid}.weakness-map-scroll td button small{color:var(--muted);font-size:.56rem;display:block}.weakness-map-scroll td button.is-selected{color:var(--accent-dark);background:var(--accent-soft);box-shadow:inset 0 0 0 2px var(--accent-dark)}.weakness-map-scroll:focus-visible,.weakness-map-scroll td button:focus-visible,.weakness-ranked-list button:focus-visible,.weakness-source-list button:focus-visible,.weakness-bundle-link:focus-visible,.session-evidence-chain button:focus-visible,.records-route [data-record-session]:focus-visible,.records-route [data-record-mock]:focus-visible,.records-route [data-record-plan]:focus-visible,.records-route .journal-date:focus-visible{outline:2px solid var(--accent-dark);outline-offset:2px}.weakness-ranked-list{display:none}.weakness-selection{border-top:1px solid var(--line);margin-top:18px;padding-top:16px}.weakness-selection>header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 16px;display:flex}.weakness-selection>header div,.weakness-selection>header span{align-items:baseline;gap:8px;display:flex}.weakness-selection>header p{color:var(--muted);font-size:var(--text-helper);margin:0}.weakness-source-list,.session-evidence-chain ol,.weakness-ranked-list{margin:12px 0 0;padding:0;list-style:none}.weakness-source-list li,.session-evidence-chain li{border-bottom:1px solid var(--line);min-height:52px;font-size:var(--text-helper);grid-template-columns:minmax(110px,auto) minmax(0,1fr) auto auto;align-items:center;gap:6px 12px;padding:8px 0;display:grid}.weakness-source-list li>span,.session-evidence-chain li>span,.session-evidence-chain time{color:var(--muted)}.weakness-source-list button,.weakness-bundle-link,.session-evidence-chain button{border:1px solid var(--line);min-height:44px;color:var(--accent-dark);font:inherit;background:0 0;border-radius:4px;padding:0 12px;font-weight:750}.weakness-bundle-link{margin-top:12px}.session-evidence-chain{margin-top:22px}.session-evidence-chain h4{margin:0;font-size:.9rem}.session-evidence-chain li{grid-template-columns:minmax(132px,auto) minmax(0,1fr) repeat(3,auto)}@media (width<=760px){.learning-data-section{margin-top:24px}.weakness-map-scroll table{min-width:690px}.weakness-map-scroll thead th:first-child,.weakness-map-scroll tbody th{z-index:1;width:126px;box-shadow:inset -1px 0 var(--line);position:sticky;left:0}.weakness-ranked-list{gap:0;display:grid}.weakness-ranked-list button{border:0;border-bottom:1px solid var(--line);width:100%;min-height:44px;color:var(--ink);text-align:left;background:0 0;justify-content:space-between;align-items:center;gap:12px;padding:7px 0;display:flex}.weakness-ranked-list span{color:var(--muted);font-size:var(--text-helper)}.weakness-source-list li,.session-evidence-chain li{grid-template-columns:minmax(0,1fr) auto}.weakness-source-list li>button,.session-evidence-chain li>button{grid-column:1/-1;width:100%}}@media (prefers-reduced-motion:reduce){.weakness-pattern-map *,.session-evidence-chain *{scroll-behavior:auto;transition:none}}.focus-score{white-space:nowrap;background:0 0;border:1px solid #969a96;border-radius:3px;align-items:center;gap:6px;min-height:44px;padding:0 14px;font-size:.82rem;font-weight:750;display:inline-flex}.focus-score>.app-icon{color:#d16a42}.demo-menu{position:relative}.demo-menu summary{border:1px solid var(--line);cursor:pointer;border-radius:0;place-items:center;width:44px;height:44px;font-weight:900;list-style:none;display:grid}.demo-menu summary::-webkit-details-marker{display:none}.demo-menu .demo-actions{z-index:10;border:1px solid var(--line);background:var(--surface);width:140px;box-shadow:none;border-radius:0;padding:6px;display:grid;position:absolute;top:48px;right:0}.demo-actions button{width:100%;min-height:44px;color:var(--muted);text-align:left;background:0 0;border:0;border-radius:0;justify-content:flex-start;padding:0 10px;font-size:.78rem;font-weight:750}.screen-stack{gap:14px}.today-progress-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:0 0;border-radius:0;grid-template-columns:minmax(110px,auto) 1fr;align-items:center;gap:12px 18px;padding:10px 2px;display:grid}.today-progress-strip>div:first-child{gap:2px;display:grid}.today-progress-strip span{color:#587069;font-size:.72rem}.today-progress-track{background:var(--line);border-radius:0;height:4px;overflow:hidden}.today-progress-track>span{background:var(--success);border-radius:0;height:100%;display:block}.today-progress-strip .progress-ring{display:none}.current-quest{border:0;border-top:2px solid var(--ink);border-bottom:1px solid var(--line);color:var(--ink);box-shadow:none;background:0 0;border-radius:0;padding:18px 4px 16px;overflow:visible}.quest-meta{color:var(--muted)}.quest-type{min-height:auto;color:var(--accent-dark);letter-spacing:.08em;text-transform:uppercase;background:0 0;padding:0}.quest-edit{font-size:.72rem;font-weight:750}.quest-subject-row{align-items:center;gap:13px;margin-top:20px;display:flex}.quest-subject-icon{width:34px;height:42px;color:var(--accent-dark);background:0 0;border-radius:0;flex:0 0 34px;place-items:center;display:grid}.current-quest .subject-label{color:var(--ink);margin:0 0 3px;font-size:.86rem}.quest-time{color:var(--accent-dark);font-variant-numeric:tabular-nums;font-size:.76rem}.current-quest h2{max-width:none;color:var(--ink);margin:20px 0 12px;font-size:clamp(1.25rem,4.5vw,1.65rem)}.quest-checklist{border-top:1px dashed #d7d5e3;border-bottom:1px dashed #d7d5e3;padding-block:5px 9px;display:grid}.quest-checklist button{min-height:44px;color:var(--ink);text-align:left;background:0 0;border:0;align-items:center;gap:10px;padding:5px 0;display:flex}.quest-checklist button>span{color:#fff;border:1.5px solid #74777b;border-radius:2px;flex:0 0 24px;place-items:center;width:24px;height:24px;font-size:.72rem;display:grid}.quest-checklist button.checked{color:var(--muted);text-decoration:line-through}.quest-checklist button.checked>span{border-color:var(--success);background:var(--success)}.quest-footer{align-items:flex-end;margin-top:16px}.quest-footer .quest-reason{max-width:45%;color:var(--accent-dark);margin:0;font-size:.76rem;line-height:1.45}.quest-footer>div{margin-left:auto}.current-quest .text-button{color:var(--muted)}.current-quest .primary-button{color:#fff;background:var(--accent);min-width:126px}.class-ended-prompt{box-shadow:none;background:#f5f2e8;border-color:#ded8c3;border-radius:0;padding:15px 16px}.class-ended-prompt .eyebrow{color:#7c765e}.class-ended-prompt h2{margin-top:3px;font-size:1rem}.class-ended-prompt p{max-width:44ch}.class-prompt-actions{flex-wrap:wrap;justify-content:flex-end}.class-prompt-actions .primary-button{background:#4d9074}.class-prompt-actions .secondary-button{color:#4c625a;background:#e1ebe6}.screen-actions{justify-content:flex-end}.today-timeline-section{margin-top:12px;padding-bottom:10px}.today-timeline-section>header{justify-content:space-between;align-items:end;gap:16px;margin-bottom:6px;padding:0 4px;display:flex}.today-timeline-section h2{margin:3px 0 0;font-size:1.3rem}.today-timeline-row{border-bottom:1px solid #deddd7c2;grid-template-columns:54px 6px 30px minmax(0,1fr) auto auto;align-items:center;gap:10px;min-height:70px;padding:8px 4px;display:grid;position:relative}.today-timeline-row:last-child{border-bottom:0}.today-timeline-row time{color:var(--ink);font-variant-numeric:tabular-nums;font-size:.78rem;font-weight:650}.timeline-node{z-index:1;color:#fff;background:#d0d1cf;border:0;border-radius:0;place-items:center;width:4px;height:28px;font-size:.52rem;display:grid;position:relative}.timeline-node:before{display:none}.timeline-icon{width:28px;height:42px;color:var(--accent-dark);background:0 0;border-radius:0;place-items:center;font-size:.78rem;font-weight:800;display:grid}.timeline-icon.is-fixed{color:#777974;background:0 0}.timeline-copy strong{font-size:.9rem}.timeline-status{min-height:28px;color:var(--muted);white-space:nowrap;background:0 0;border-radius:0;align-content:center;padding:0;font-size:.68rem;font-weight:750}button.timeline-status{border:0}.today-timeline-row.is-current{border-top:1px solid var(--accent);border-right:0;border-bottom:1px solid var(--accent);background:var(--accent-soft);border-left:0;border-radius:0;margin:0;padding-inline:4px 8px}.today-timeline-row.is-current time,.today-timeline-row.is-current .timeline-copy strong{color:var(--accent-dark)}.today-timeline-row.is-current .timeline-node{background:var(--accent);box-shadow:none}.today-timeline-row.is-current .timeline-status{color:var(--accent-dark);background:0 0}.today-timeline-row.is-completed .timeline-node{border-color:var(--success);background:var(--success)}.today-timeline-row.is-completed .timeline-icon{color:#3f8467;background:#e1efe8}.today-timeline-row.is-completed .timeline-status{color:#3f8467;background:0 0}.timeline-status.needs-action{color:#9a5937;background:0 0}.timeline-inline-trigger{border:1px solid var(--line);min-height:44px;color:var(--ink);background:var(--surface);border-radius:3px;padding:0 9px;font-size:.7rem;font-weight:780}.session-record-backdrop{z-index:40;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#2122206b;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.session-record-dialog{border-top:3px solid var(--ink);background:var(--surface);width:min(100%,680px);max-height:min(88dvh,820px);overflow:auto;box-shadow:0 18px 60px #23242133}.session-record-dialog .session-capture-sheet{box-shadow:none;border:0;border-radius:0;padding:22px}.timeline-inline-entry{grid-column:1/-1;padding:8px 0 4px 64px}.timeline-inline-entry .session-capture-sheet,.timeline-inline-entry .inline-plan-result{box-shadow:none;border-radius:0}.timeline-day-review-row{border-top:2px solid var(--ink)}.timeline-day-review-row .timeline-node{background:var(--ink)}.timeline-day-review-actions,.timeline-saved-review{justify-content:flex-end;align-items:center;gap:5px;display:flex}.timeline-day-review-actions button{border:1px solid var(--line);min-height:44px;color:var(--muted);background:0 0;border-radius:2px;padding:0 8px;font-size:.66rem;font-weight:760}.tabbar{z-index:10;width:min(100%,920px);min-height:76px;padding:7px max(10px, env(safe-area-inset-right)) calc(7px + env(safe-area-inset-bottom)) max(10px, env(safe-area-inset-left));background:var(--surface);box-shadow:none;border-top:1px solid #dad9d3eb;grid-template-columns:repeat(4,1fr);align-content:normal;gap:3px;display:grid;position:fixed;inset:auto auto 0 50%;transform:translate(-50%)}.tabbar button{color:#737570;background:0 0;border:0;border-radius:0;align-content:center;justify-items:center;gap:2px;min-height:44px;font-size:.7rem;font-weight:800;display:grid}.tabbar button.active{color:var(--accent);border-top:1px solid var(--accent)}.nav-symbol{font-size:1.1rem}@media (width<=560px){.topbar,.app-main{width:min(100% - 28px,920px)}.topbar{min-height:84px;padding-block:14px 10px}.today-heading h1{font-size:1.27rem}.today-heading p{font-size:.82rem}.focus-score{padding-inline:10px;font-size:.74rem}.current-quest{padding:16px 2px 14px}.quest-footer{align-items:stretch;display:grid}.quest-footer .quest-reason{max-width:none}.quest-footer>div{justify-content:flex-end;width:100%;margin:6px 0 0}.class-ended-prompt{display:grid}.class-prompt-actions{justify-content:stretch}.class-prompt-actions button{flex:1;padding-inline:8px;font-size:.73rem}.today-timeline-row{grid-template-columns:46px 4px 26px minmax(0,1fr) auto;gap:7px;min-height:66px}.today-timeline-row>.timeline-status{grid-column:5}.today-timeline-row>.timeline-inline-trigger{grid-column:4/-1;justify-self:end}.timeline-icon{width:26px;height:36px}.timeline-inline-entry{padding-left:0}.timeline-day-review-actions,.timeline-saved-review{flex-wrap:wrap;grid-column:4/-1}.timeline-status{padding-inline:7px}.session-record-backdrop{align-items:end;padding:0}.session-record-dialog{border-top-width:2px;width:100%;max-height:92dvh}.session-record-dialog .session-capture-sheet{padding:18px 16px calc(20px + env(safe-area-inset-bottom))}}@media (width>=800px){.screen-stack{gap:18px}.current-quest{padding:22px 4px 18px}.quest-checklist{grid-template-columns:repeat(3,1fr);gap:14px;padding-block:14px}.quest-checklist button{align-items:flex-start}.today-timeline-row{grid-template-columns:68px 6px 30px minmax(0,1fr) auto auto;padding-inline:8px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.library-tabs{border-bottom:1px solid var(--line);gap:4px;display:flex;overflow-x:auto}.library-tabs button{min-width:72px;min-height:46px;color:var(--muted);background:0 0;border:0;border-bottom:2px solid #0000;font-weight:800}.library-tabs button[aria-selected=true]{color:var(--ink);border-bottom-color:var(--accent)}.material-layout{gap:22px;display:grid}.material-list{min-width:0}.material-detail{min-width:0;display:none}.material-layout.show-detail .material-list{display:none}.material-layout.show-detail .material-detail{display:block}.material-tools{grid-template-columns:1fr auto;gap:8px;display:grid}.material-search{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);align-items:center;gap:8px;min-height:46px;padding:0 12px;display:flex}.material-search input{background:0 0;border:0;outline:0;width:100%}.subject-filters{gap:7px;padding:12px 0;display:flex;overflow-x:auto}.subject-filters button{white-space:nowrap;border:1px solid var(--line);min-height:38px;color:var(--muted);background:0 0;border-radius:99px;padding:0 13px}.subject-filters button.active{color:var(--surface);border-color:var(--ink);background:var(--ink)}.material-count{color:var(--muted);margin-bottom:8px;font-size:.75rem;font-weight:800}.series-list{border-top:1px solid var(--line)}.book-row,.series-row{text-align:left;border:0;border-bottom:1px solid var(--line);background:0 0;grid-template-columns:auto 1fr auto;align-items:center;gap:11px;width:100%;min-height:62px;padding:9px 7px;display:grid}.series-row{grid-template-columns:1fr auto auto}.book-row>span:nth-child(2),.series-row>span:first-child{gap:3px;min-width:0;display:grid}.book-row strong,.series-row strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.book-row small,.series-row small,.series-row em,.volume-list small{color:var(--muted);font-size:.72rem;font-style:normal}.book-row.selected,.volume-list button.selected{color:var(--accent-dark);background:var(--accent-soft)}.volume-list{border-bottom:1px solid var(--line);padding:4px 0 6px 22px}.volume-list button{border-radius:var(--radius-sm);background:0 0;border:0;justify-content:space-between;align-items:center;width:100%;min-height:44px;padding:0 12px;display:flex}.book-detail,.material-editor{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);padding:20px}.book-detail>header{align-items:center;gap:14px;display:flex}.book-detail>header>div:nth-child(2){flex:1;min-width:0}.book-detail header h2{margin:5px 0 2px}.book-detail header p{color:var(--muted);margin:0;font-size:.8rem}.book-cover{border:1px solid var(--line);width:52px;height:68px;color:var(--accent);background:var(--accent-soft);border-radius:8px 13px 13px 8px;flex:none;place-items:center;display:grid}.book-progress-copy{justify-content:space-between;margin:22px 0 8px;font-size:.82rem;display:flex}.book-progress-copy span{color:var(--muted)}.book-progress{background:var(--line);border-radius:9px;height:6px;overflow:hidden}.book-progress span{background:var(--accent);height:100%;display:block}.book-next{border:1px solid color-mix(in oklch, var(--accent) 35%, var(--line));border-radius:var(--radius-sm);background:var(--accent-soft);gap:13px;margin-top:20px;padding:15px;display:grid}.book-next div{gap:3px;display:grid}.book-next small{color:var(--muted)}.book-next strong{font-size:1.3rem}.book-section{margin-top:22px}.book-section h3{margin-bottom:8px}.book-section>p{color:var(--muted);font-size:.82rem}.material-line{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;min-height:44px;font-size:.8rem;display:flex}.material-line small{color:var(--muted)}.material-line.sub{padding-left:12px}.material-back{margin-bottom:8px}.material-editor{gap:14px;display:grid}.material-editor>header{gap:3px;display:grid}.material-editor>header span{color:var(--muted);font-size:.75rem}.material-editor textarea{border:1px solid var(--line);border-radius:var(--radius-sm);resize:vertical;min-height:100px;padding:10px 12px}.material-editor footer{justify-content:flex-end;gap:8px;display:flex}.session-composer{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);gap:18px;padding:20px;display:grid}.session-composer>header{justify-content:space-between;align-items:start;gap:16px;display:flex}.session-composer h2{margin-top:4px}.session-composer textarea{border:1px solid var(--line);border-radius:var(--radius-sm);resize:vertical;min-height:92px;padding:10px 12px}.progress-setup{border:1px solid color-mix(in oklch, var(--accent) 35%, var(--line));border-radius:var(--radius-sm);background:var(--accent-soft);gap:10px;padding:15px;display:grid}.progress-setup p{color:var(--muted);margin:0;font-size:.8rem}.check-field{align-self:end;align-items:center;gap:8px;min-height:44px;flex-direction:row!important;display:flex!important}.check-field input{width:18px;height:18px}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.mock-library-layout{align-items:start;gap:22px;display:grid}.mock-editor-transaction{border:0;min-width:0;margin:0;padding:0}.material-mock-editor,.material-mock-detail,.mock-history{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);gap:16px;padding:20px;display:grid}.material-mock-editor>header h2,.material-mock-detail h2,.mock-history h2{margin-top:4px}.material-mock-editor>header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.wrong-answer-editor{border-top:1px solid var(--line);gap:12px;padding-top:16px;display:grid}.compact-heading p{color:var(--muted);margin:3px 0 0;font-size:.78rem}.wrong-answer-chips{flex-wrap:wrap;gap:6px;display:flex}.wrong-answer-chips span{color:var(--accent-dark);background:var(--accent-soft);border-radius:99px;padding:6px 9px;font-size:.72rem;font-weight:800}.wrong-answer-chips button{color:inherit;background:0 0;border:0;place-items:center;margin-left:5px;display:inline-grid}.mock-detail-actions{align-items:start;gap:10px;display:flex}.mock-history-tabs{gap:7px;display:flex;overflow-x:auto}.mock-history-tabs button{text-align:left;border:1px solid var(--line);border-radius:var(--radius-sm);background:0 0;gap:3px;min-width:150px;padding:10px 12px;display:grid}.mock-history-tabs button.active{border-color:var(--accent);background:var(--accent-soft)}.mock-history-tabs span{color:var(--muted);font-size:.72rem}.material-mock-detail>header{justify-content:space-between;align-items:start;gap:16px;display:flex}.material-mock-detail header p{color:var(--muted);margin:3px 0 0;font-size:.78rem}.mock-score{color:var(--accent-dark);font-size:2rem}.mock-score small{color:var(--muted);margin-left:2px;font-size:.75rem}.mock-warning{border-radius:var(--radius-sm);color:#8a4b16;background:#fff3df;margin:0;padding:10px 12px;font-size:.8rem;font-weight:700}.mock-question-list{gap:8px;display:grid}.mock-question{border-top:1px solid var(--line);gap:7px;padding:12px 0;display:grid}.mock-question-head,.mock-question-actions{justify-content:space-between;align-items:center;gap:10px;display:flex}.mock-question-head span,.mock-question p{color:var(--muted);margin:0;font-size:.76rem}.mock-question-actions select{max-width:130px}@media (width>=760px){.material-layout{grid-template-columns:minmax(290px,5fr) minmax(390px,7fr);align-items:start}.material-layout .material-list,.material-layout.show-detail .material-list{display:block}.material-layout .material-detail,.material-layout.show-detail .material-detail{max-height:calc(100dvh - 40px);display:block;position:sticky;top:20px;overflow:auto}.material-back{display:none}.book-next{grid-template-columns:1fr auto;align-items:center}.mock-library-layout{grid-template-columns:minmax(330px,5fr) minmax(390px,7fr)}.mock-history{max-height:calc(100dvh - 40px);position:sticky;top:20px;overflow:auto}.mock-history-tabs{display:grid;overflow:visible}.mock-history-tabs button{width:100%}}@media (width<=520px){.material-tools{grid-template-columns:1fr}.material-tools .secondary-button{width:100%}.form-grid.three{grid-template-columns:1fr}}.current-quest.is-result-entry{align-content:center;min-height:286px;display:grid}.current-quest-empty{min-height:220px}.current-quest-empty>div:last-child{justify-items:start;gap:10px;margin-top:24px;display:grid}.current-quest-empty h2,.current-quest-empty p{margin:0}.current-quest-empty p{max-width:44ch;color:var(--muted);line-height:1.55}.inline-plan-result{grid-template-columns:minmax(0,1fr) auto;gap:18px 20px;width:100%;display:grid}.inline-result-copy{align-items:flex-start;gap:12px;display:flex}.inline-result-copy>span{width:38px;height:38px;color:var(--surface);background:var(--success);border-radius:50%;flex:0 0 38px;place-items:center;display:grid}.inline-result-copy strong{font-size:1.08rem;display:block}.inline-result-copy p{color:var(--muted);margin:5px 0 0;font-size:.78rem;line-height:1.5}.inline-result-actions{grid-template-columns:repeat(3,minmax(76px,1fr));gap:7px;display:grid}.inline-result-actions .rating{min-height:44px;padding-inline:11px}.inline-result-cancel{grid-column:1/-1;justify-self:end}.inline-plan-result.is-compact{grid-template-columns:minmax(150px,1fr) auto auto;align-items:center;gap:10px}.inline-plan-result.is-compact .inline-result-copy>span{width:32px;height:32px;color:var(--surface);flex-basis:32px;margin:0;display:grid}.inline-plan-result.is-compact .inline-result-copy strong{font-size:.9rem}.inline-plan-result.is-compact .inline-result-copy p{display:none}.inline-plan-result.is-compact .inline-result-actions{grid-template-columns:repeat(3,minmax(66px,1fr))}.inline-plan-result.is-compact .inline-result-cancel{grid-column:auto}.class-ended-prompt{align-items:flex-end;padding:14px 16px}.class-ended-prompt>.primary-button{background:#4d9074;flex:none;align-self:flex-end}.past-due-actions{background:0 0;border:0;padding:0}.past-due-actions>div{gap:7px;margin:0}.past-due-actions article{border:1px solid var(--line);background:var(--surface);border-radius:12px;min-height:68px;padding:10px 12px}.past-due-actions article.is-result-entry{min-height:82px}.past-due-actions article>.secondary-button{flex:none}.result-missing-label{font-weight:800;color:#9a5937!important;margin:0 0 4px!important;font-size:.68rem!important}@media (width<=560px){.current-quest.is-result-entry{min-height:310px}.inline-plan-result,.inline-plan-result.is-compact{grid-template-columns:1fr;gap:12px}.inline-result-actions,.inline-plan-result.is-compact .inline-result-actions{grid-template-columns:repeat(3,minmax(0,1fr))}.inline-result-cancel,.inline-plan-result.is-compact .inline-result-cancel{grid-column:1;justify-self:end}.class-ended-prompt{grid-template-columns:minmax(0,1fr) auto;align-items:end}.class-ended-prompt>.primary-button{width:auto;padding-inline:14px}.past-due-actions article{gap:10px}.past-due-actions article.is-result-entry{display:block}}@media (width<=412px){.quest-meta{gap:8px}.inline-result-actions .rating{padding-inline:6px;font-size:.78rem}.class-ended-prompt{gap:10px;padding:13px 14px}.class-ended-prompt p{font-size:.74rem}.past-due-actions article>.secondary-button{padding-inline:12px;font-size:.74rem}}.operations-layout{grid-template-columns:minmax(250px,.78fr) minmax(680px,2.5fr) minmax(290px,.92fr);align-items:start;gap:0;padding:0;display:grid}.operations-layout>*{min-width:0}.subject-week-panel,.operations-timetable,.operations-month{border:0;border-right:1px solid var(--console-line);background:var(--surface);border-radius:0}.operations-month{border-right:0}.subject-week-panel,.operations-month{scrollbar-width:thin;max-height:calc(100vh - 104px);position:sticky;top:84px;overflow-y:auto}.operations-panel-heading,.operations-range-toolbar,.records-section-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.operations-panel-heading,.operations-range-toolbar{border-bottom:1px solid var(--console-line);background:var(--console-paper);min-height:58px;padding:8px 10px}.operations-panel-heading h3,.operations-range-toolbar h3,.records-section-heading h4{margin:1px 0 0;font-size:.82rem}.operations-panel-heading>span{color:var(--muted);font-size:.62rem;font-weight:780}.operations-timetable .weekly-console-layout{display:block}.operations-timetable .weekly-plan-group-heading{padding:8px 8px 5px}.operations-timetable .weekly-plan-group+.weekly-plan-group{border-top:1px solid var(--console-line);margin-top:0}.operations-timetable .weekly-plan-scroller{border-left:0;border-right:0;border-radius:0}.operations-timetable .weekly-plan-table-5{min-width:720px}.operations-range-toolbar .console-date-nav{min-width:176px}.operations-range-toolbar .console-date-nav>button{background:var(--surface)}.subject-week-group+.subject-week-group{border-top:1px solid var(--console-line)}.subject-week-toggle{width:100%;color:var(--ink);background:var(--surface);text-align:left;border:0;grid-template-columns:minmax(0,1fr) auto 20px;align-items:center;padding:4px 8px;display:grid}.subject-week-toggle small{color:var(--muted);font-size:.56rem}.subject-week-toggle .app-icon{transition:transform .18s cubic-bezier(.22,1,.36,1);transform:rotate(-90deg)}.subject-week-toggle .app-icon.is-open{transform:rotate(90deg)}.subject-week-content{background:var(--console-paper);gap:0;padding:0;display:grid}.month-jump-button{min-height:44px;color:var(--accent-dark);background:0 0;border:0;justify-self:end;align-items:center;gap:3px;padding:0 7px;font-size:.62rem;font-weight:780;display:inline-flex}.subject-week-item{border:0;border-top:1px solid var(--console-line);background:0 0}.week-task-row{grid-template-columns:44px minmax(0,1fr);align-items:stretch;display:grid}.week-task-grip{border:0;border-right:1px solid var(--console-line);min-height:48px;color:var(--muted);cursor:grab;background:0 0;border-radius:0;place-items:center;padding:0;display:grid}.week-task-grip:active{cursor:grabbing}.week-task-copy{min-height:48px;color:var(--ink);text-align:left;background:0 0;border:0;border-radius:0;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:7px;padding:5px 8px;display:grid}.week-task-check{background:var(--subject-color);width:7px;height:22px}.week-task-copy>span:nth-child(2){gap:2px;min-width:0;display:grid}.week-task-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;overflow:hidden}.week-task-copy small,.week-task-copy b{color:var(--muted);font-size:.56rem;font-weight:700}.week-item-facts{border-top:1px solid var(--console-line);grid-template-columns:1.3fr .8fr .8fr;margin:0;display:grid}.week-item-facts>div{gap:1px;padding:5px;display:grid}.week-item-facts>div+div{border-left:1px solid var(--console-line)}.week-item-facts dt,.week-item-facts dd{margin:0;font-size:.55rem}.week-item-facts dt{color:var(--muted)}.week-item-facts dd{color:var(--ink);font-weight:760}.compact-range-nav{gap:3px;display:flex}.compact-range-nav button,.records-section-heading button{border:1px solid var(--console-line);min-height:44px;color:var(--muted);background:var(--surface);border-radius:3px;justify-content:center;align-items:center;gap:3px;padding:0 7px;font-size:.6rem;font-weight:760;display:inline-flex}.monthly-records-panel{border:0}.selected-study-inspector{background:var(--surface);min-width:0}.inspector-source-line{border-bottom:1px solid var(--console-line);color:var(--muted);justify-content:space-between;gap:8px;padding:8px 10px;font-size:.62rem;display:flex}.inspector-source-line strong{color:var(--accent-dark)}.inspector-form{gap:0;display:grid}.inspector-form>label{border-bottom:1px solid var(--console-line);grid-template-columns:86px minmax(0,1fr);align-items:center;min-height:48px;display:grid}.inspector-form>label>span:first-child{border-right:1px solid var(--console-line);color:var(--muted);background:var(--console-paper);align-content:center;align-self:stretch;padding:7px 9px;font-size:.6rem;font-weight:780}.inspector-form input,.inspector-form select{width:100%;min-width:0;min-height:46px;color:var(--ink);background:0 0;border:0;border-radius:0;padding:0 8px;font-size:.68rem}.inspector-minute-input{grid-template-columns:1fr auto;align-items:center;display:grid}.inspector-minute-input b{color:var(--muted);padding-right:8px;font-size:.62rem}.inspector-save-button,.inspector-lock-button{border:1px solid var(--accent-dark);min-height:44px;color:var(--surface);background:var(--accent-dark);border-radius:3px;justify-content:center;align-items:center;gap:6px;margin:8px;font-size:.7rem;font-weight:800;display:inline-flex}.inspector-move-section{border-top:1px solid var(--console-line);border-bottom:1px solid var(--console-line);display:grid}.inspector-move-section>header{background:var(--console-paper);justify-content:space-between;align-items:center;min-height:44px;padding:5px 9px;display:flex}.inspector-move-section h4,.inspector-move-section p{margin:0;font-size:.68rem}.inspector-move-section>header span,.inspector-move-section p{color:var(--muted)}.inspector-move-section>label{border-top:1px solid var(--console-line);grid-template-columns:58px minmax(0,1fr);align-items:center;min-height:44px;display:grid}.inspector-move-section>label>span{border-right:1px solid var(--console-line);color:var(--muted);align-content:center;align-self:stretch;padding:6px 8px;font-size:.6rem;font-weight:780}.inspector-move-section input,.inspector-move-section select{width:100%;min-width:0;min-height:44px;color:var(--ink);background:0 0;border:0;border-radius:0;padding:0 8px;font-size:.64rem}.inspector-move-section>button{border:1px solid var(--accent-dark);min-height:44px;color:var(--surface);background:var(--accent-dark);border-radius:2px;margin:7px 8px;font-size:.68rem;font-weight:800}.inspector-move-section>p{padding:7px 9px 0}.inspector-move-section .inspector-placement-message{color:var(--accent-dark)}.inspector-lock-button{width:calc(100% - 16px);color:var(--ink);border-color:var(--console-line);background:var(--surface)}.inspector-placement-section{border-top:1px solid var(--console-line)}.inspector-placement-section>header{background:var(--console-paper);justify-content:space-between;align-items:center;min-height:44px;padding:5px 9px;display:flex}.inspector-placement-section h4,.inspector-placement-section p{margin:0;font-size:.68rem}.inspector-placement-section>header span,.inspector-placement-section p{color:var(--muted)}.inspector-placement-section>p{padding:10px}.inspector-placement-section>div{border-top:1px solid var(--console-line);grid-template-columns:minmax(0,1fr) auto;gap:3px 8px;min-height:44px;padding:6px 9px;font-size:.62rem;display:grid}.inspector-placement-section>div.is-current{background:var(--accent-soft)}.inspector-placement-section small{color:var(--danger);grid-column:1/-1}.inspector-followup-note{border-top:1px solid var(--console-line);color:var(--muted);gap:6px;margin:0;padding:10px;font-size:.62rem;line-height:1.5;display:flex}.inspector-delete-button{border:0;border-top:1px solid var(--console-line);width:calc(100% - 16px);min-height:44px;color:var(--danger);background:0 0;border-radius:0;margin:0 8px 8px;font-size:.66rem;font-weight:780}.monthly-records-panel>.operations-panel-heading{background:var(--surface);min-height:52px}.monthly-subject-filter{border-bottom:1px solid var(--console-line);color:var(--muted);gap:4px;padding:8px;font-size:.6rem;font-weight:780;display:grid}.monthly-subject-filter select{border:1px solid var(--console-line);width:100%;min-height:44px;color:var(--ink);background:var(--surface);border-radius:3px;padding:0 8px;font-size:.68rem}.records-summary{border-top:1px solid var(--console-line)}.records-section-heading{min-height:44px}.records-section-heading>strong{color:var(--accent-dark);font-size:.72rem}.monthly-plan-row,.record-summary-row{border-top:1px solid var(--console-line);align-items:center;gap:7px;min-height:44px;padding:5px 2px;display:grid}.monthly-plan-row{grid-template-columns:5px minmax(0,1fr)}.monthly-plan-select{min-height:44px;color:var(--ink);text-align:left;background:0 0;border:0;border-radius:0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:0;display:grid}.monthly-plan-select>span{gap:1px;min-width:0;display:grid}.monthly-plan-select>span:last-child{color:var(--accent-dark);grid-auto-flow:column;align-items:center;gap:3px;font-size:.58rem;font-weight:780;display:inline-flex}.monthly-plan-row>span{border-radius:2px;width:5px;height:20px}.monthly-plan-row div,.record-summary-row span{gap:1px;min-width:0;display:grid}.monthly-plan-row strong,.record-summary-row strong{text-overflow:ellipsis;white-space:nowrap;font-size:.66rem;overflow:hidden}.monthly-plan-row small,.record-summary-row small,.monthly-plan-row b{color:var(--muted);font-size:.56rem}.record-summary-row{grid-template-columns:20px minmax(0,1fr)}.plan-select-control[draggable=true]{cursor:grab;touch-action:manipulation}.plan-select-control[draggable=true]:active{cursor:grabbing}@media (width<=1180px){.operations-layout{grid-template-columns:minmax(220px,.8fr) minmax(650px,2.3fr) minmax(270px,.9fr);overflow-x:auto}}@media (width<=760px){.app-main:has(.planning-console){width:100%}.operations-layout{flex-direction:column;gap:9px;display:flex;overflow-x:clip}.subject-week-panel,.operations-timetable,.operations-month{width:100%;max-height:none;position:static}.operations-timetable{order:1}.subject-week-panel{order:2}.operations-month{order:3}.operations-range-toolbar{flex-direction:column;align-items:stretch}.operations-range-toolbar .console-date-nav{width:100%}.operations-range-toolbar.is-month{flex-direction:row;align-items:center}.planning-console-toolbar .console-title-row{gap:8px}.planning-console-toolbar .console-plan-actions{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;margin:0;display:grid}}:root{--app-canvas:oklch(98% .008 85);--ink:oklch(27% .012 78);--muted:oklch(57% .012 78);--line:oklch(91.8% .009 83);--surface:oklch(99.2% .006 85);--surface-muted:oklch(97% .01 85);--accent:oklch(54% .11 158);--accent-dark:oklch(42% .085 158);--accent-soft:oklch(94.5% .035 158);--success:oklch(61% .105 158);--planner-mint:oklch(95.2% .04 158/.88);--planner-yellow:oklch(94.5% .07 92/.88);--planner-pink:oklch(93% .055 8/.82);--planner-blue:oklch(93.2% .04 235/.84);--planner-lilac:oklch(92.5% .05 295/.82);--paper-rule:oklch(94% .008 83);--radius-sm:3px;--radius-md:5px;--radius-lg:7px;--shadow:none}html,body,#root{background:var(--app-canvas);min-height:100%}.app{min-height:100dvh;padding-top:env(safe-area-inset-top);background:var(--app-canvas);padding-bottom:76px}.topbar{border-bottom:1px solid var(--line);min-height:66px;padding:10px 3px 8px}.topbar,.app-main{width:min(100% - 28px,1040px)}.app-main:has(.planning-console){width:min(100% - 22px,1540px)}.today-heading h1,.topbar h1{letter-spacing:-.025em;font-size:1.08rem;font-weight:760}.focus-score{border-color:var(--line);min-height:38px;color:var(--muted);border-radius:5px;padding:0 10px;font-size:.7rem}.demo-menu summary{border-color:var(--line);border-radius:5px;width:38px;height:38px;min-height:38px}.eyebrow{display:none}.planning-console{--console-paper:oklch(98% .009 85);--console-paper-strong:oklch(96.7% .012 85);--console-line:oklch(92% .009 83);--console-mint:var(--planner-mint);background:0 0;border:0}.planning-console-toolbar{background:0 0;border:0;padding:8px 2px;position:static}.console-title-row h2{font-size:.96rem;font-weight:760}.console-plan-actions{gap:3px}.console-editor-button,.console-plan-actions button{border-color:var(--line);min-height:38px;color:var(--muted);background:var(--surface-muted);border-radius:5px;padding:0 9px;font-size:.66rem;font-weight:700}.operations-layout{border:1px solid var(--line);background:var(--surface);border-radius:7px;grid-template-columns:minmax(230px,.82fr) minmax(620px,2.25fr) minmax(270px,.95fr);overflow:hidden}.subject-week-panel,.operations-timetable,.operations-month{border-color:var(--line);background:var(--surface)}.operations-panel-heading,.operations-range-toolbar{border-bottom-color:var(--line);background:0 0;min-height:48px;padding:6px 9px}.operations-panel-heading h3,.operations-range-toolbar h3{font-size:.78rem;font-weight:760}.console-date-nav{gap:2px;min-width:154px}.console-date-nav>button,.compact-range-nav button,.records-section-heading button{border-color:var(--line);background:0 0;border-radius:4px;min-width:38px;min-height:38px}.console-date-nav .console-current-date{min-width:82px;font-size:.7rem}.console-current-date small{display:none}.subject-week-group+.subject-week-group{border-top-color:var(--line)}.subject-week-toggle{background:0 0;min-height:46px;padding:3px 9px}.subject-week-toggle>span{font-size:.72rem;font-weight:760}.subject-week-toggle small{font-size:.56rem}.subject-week-content{background:0 0}.month-jump-button{min-height:34px;color:var(--muted);padding-right:10px;font-size:.58rem}.console-empty{background:0 0;padding:12px 10px;font-size:.64rem}.subject-week-item{border-top-color:var(--paper-rule)}.subject-week-item.is-selected{background:var(--planner-blue);border-left:0}.week-task-row{grid-template-columns:34px minmax(0,1fr)}.week-task-grip{border-right:0;min-height:44px}.week-task-copy{min-height:44px;padding:4px 8px 4px 2px}.week-task-check{background:0 0;border:1px solid oklch(63% .01 83);border-radius:2px;width:13px;height:13px}.week-task-copy strong{font-size:.67rem;font-weight:680}.week-task-copy small,.week-task-copy b{font-size:.54rem}.week-task-copy small,.week-item-facts{display:none}.operations-timetable .weekly-plan-group-heading{background:0 0;border-bottom:0;min-height:30px;padding:5px 8px 3px}.weekly-plan-group-heading h3{font-size:.7rem;font-weight:740}.weekly-plan-group-heading span{display:none}.operations-timetable .weekly-plan-group+.weekly-plan-group{border-top-color:var(--line)}.operations-timetable .weekly-plan-scroller{background:0 0;border:0;border-radius:0}.weekly-plan-table th,.weekly-plan-table td{border-right:0;border-bottom:1px solid var(--paper-rule)}.weekly-plan-table thead th{border-bottom:1px solid var(--line);background:0 0;height:36px;padding:3px;font-size:.62rem;font-weight:650}.weekly-plan-table tbody>tr:not(.weekly-meal-row)>th,.weekly-plan-table thead th:first-child{box-shadow:none;background:0 0;border-right:0}.weekly-plan-table tbody>tr:not(.weekly-meal-row)>th{font-size:.56rem;font-weight:580}.weekly-plan-table td{min-height:62px}.weekly-plan-cell{background:0 0;min-height:62px}.weekly-plan-cell.is-eligible{background:0 0}.weekly-plan-cell>header{border:0;min-height:25px;padding:3px 5px 1px}.weekly-plan-cell>header strong{font-size:.58rem;font-weight:700}.weekly-plan-cell>header span{font-size:.5rem}.weekly-cell-plans{gap:2px;padding:1px 4px 4px}.weekly-cell-plans .study-plan-card{background:color-mix(in oklab, var(--plan-subject) 16%, var(--surface));border:0;border-radius:3px;margin:0;padding:4px 5px}.weekly-cell-plans .study-plan-card-head{grid-template-columns:24px minmax(0,1fr);gap:3px}.weekly-cell-plans .plan-select-control{background:0 0;border:0;width:24px;min-height:30px}.weekly-cell-plans .plan-card-kicker,.weekly-cell-plans .plan-reason,.weekly-cell-plans .plan-source-content{display:none}.weekly-cell-plans .plan-card-copy>strong{-webkit-line-clamp:2;font-size:.58rem;font-weight:650}.weekly-cell-plans .quiet-plan-add{color:oklch(70% .008 83);background:0 0;border:0;min-height:34px;font-size:.55rem}.weekly-meal-row th{background:var(--planner-yellow);border:0;height:27px;font-size:.58rem;font-weight:620}.fixed-block-label{color:var(--muted);padding:1px 5px 4px;font-size:.52rem}.fixed-block-label .app-icon{display:none}.weekly-empty-cell{background:0 0;min-height:62px}.monthly-records-panel>.operations-panel-heading,.monthly-subject-filter,.records-summary,.selected-study-inspector,.inspector-placement-section,.inspector-move-section{border-color:var(--line);background:0 0}.monthly-plan-list,.records-summary{padding:5px 8px}.monthly-plan-row,.record-summary-row{border-top-color:var(--paper-rule)}.monthly-plan-row.is-selected{background:var(--planner-lilac);border-left:0}.inspector-followup-note{border-color:var(--line);padding:7px 9px;font-size:.58rem}.today-progress-strip{border-top:0;border-bottom-color:var(--line);padding:8px 2px}.today-progress-strip strong{font-size:.76rem}.today-progress-track{background:var(--line);height:3px}.current-quest{background:var(--planner-mint);border:0;border-radius:5px;padding:15px 16px 14px}.quest-type{color:var(--accent-dark);letter-spacing:.04em;font-size:.62rem}.quest-edit{color:var(--muted);font-size:.6rem}.quest-subject-row{gap:9px;margin-top:11px}.quest-subject-icon{flex-basis:26px;width:26px;height:30px}.current-quest h2{margin:11px 0 8px;font-size:1.08rem;font-weight:760}.quest-reason,.plan-reason,.class-ended-prompt p{display:none}.quest-footer{margin-top:9px}.current-quest .primary-button{border-radius:4px;min-width:104px}.today-timeline-section{margin-top:5px}.today-timeline-section>header{margin-bottom:0;padding:5px 2px}.today-timeline-section h2{margin:0;font-size:.9rem;font-weight:760}.today-timeline-row{border-bottom-color:var(--paper-rule);grid-template-columns:46px 25px minmax(0,1fr) auto auto;gap:7px;min-height:58px;padding:5px 2px}.today-timeline-row time{font-size:.65rem;font-weight:600}.timeline-node{display:none}.timeline-icon{width:25px;height:32px}.timeline-copy strong{font-size:.77rem;font-weight:680}.timeline-copy span{margin-top:2px;font-size:.6rem}.timeline-status{font-size:.58rem}.today-timeline-row.is-current{background:var(--planner-blue);border:0;border-radius:3px;padding-inline:5px}.timeline-inline-trigger{border-color:var(--line);background:0 0;min-height:36px;font-size:.6rem}.class-ended-prompt{background:var(--planner-yellow);border:0;border-radius:4px;padding:10px 12px}.screen-actions{justify-content:flex-start;gap:6px}.screen-actions>*{flex:none}.screen-actions .primary-action,.screen-actions .secondary-button{border:1px solid var(--line);width:auto;min-height:40px;color:var(--muted);background:0 0;border-radius:4px;padding:0 11px;font-size:.66rem;font-weight:680}.screen-actions:has(.inline-sheet){display:block}.screen-actions .inline-sheet{width:100%}.tabbar{border-top-color:var(--line);background:color-mix(in oklab, var(--surface) 96%, transparent);min-height:66px;padding-top:5px}.tabbar button{font-size:12px;font-weight:680}.tabbar button.active{border-top-color:var(--accent);color:var(--accent-dark)}@media (width<=760px){html{font-size:19px}.topbar,.app-main{width:min(100% - 22px,1040px)}.app-main:has(.planning-console){width:100%}.operations-layout{border-left:0;border-right:0;border-radius:0}.operations-timetable{border-bottom:1px solid var(--line);order:1}.subject-week-panel{border-bottom:1px solid var(--line);order:2}.operations-month{order:3}.planning-console-toolbar{padding-inline:11px}.planning-console-toolbar .console-plan-actions{grid-template-columns:repeat(4,1fr)}.console-editor-button,.console-plan-actions button{padding-inline:5px}.today-timeline-row{grid-template-columns:42px 23px minmax(0,1fr) auto}.today-timeline-row>.timeline-status{grid-column:4}.today-timeline-row>.timeline-inline-trigger{grid-column:3/-1}.screen-actions{flex-direction:row;align-items:center;display:flex}}@media (width>=1025px){.app{padding-top:58px;padding-bottom:24px}.tabbar{border-top:0;border-bottom:1px solid var(--line);grid-template-columns:repeat(4,minmax(120px,190px));justify-content:start;width:min(100% - 22px,1540px);min-height:54px;padding:5px 8px;top:0;bottom:auto}.tabbar button{grid-auto-flow:column;justify-content:center;gap:6px}.tabbar button.active{border-top:0;border-bottom:2px solid var(--accent)}.app:has(.planning-console)>.topbar{display:none}}.flow-form,.flow-form-prompts,.form-summary{gap:20px;display:grid}.flow-form-transaction-surface{display:contents}.flow-form-progress{align-items:center;gap:12px;display:flex}.flow-form-progress-rail{background:var(--line);border-radius:999px;flex:1;height:5px;overflow:hidden}.flow-form-progress-rail>span{width:var(--flow-progress);border-radius:inherit;background:var(--accent-dark);height:100%;transition:width .18s cubic-bezier(.25,1,.5,1);display:block}.flow-form-progress-copy,.form-summary-row dt{color:var(--muted);font-size:var(--text-metadata);font-weight:700}.flow-form-error-summary{border:1px solid color-mix(in srgb, var(--danger) 40%, var(--line));color:var(--danger);background:color-mix(in srgb, var(--danger) 7%, var(--surface));font-size:var(--text-helper);border-radius:14px;padding:12px 14px}.flow-form-actions,.form-summary-save{background:var(--surface);justify-content:flex-end;gap:10px;padding-block:12px;display:flex;position:sticky;bottom:0}.flow-form-actions button,.form-summary-save button{min-height:var(--control-height);border-radius:var(--control-radius);padding-inline:18px}.flow-prompt{border:0;min-width:0;margin:0;padding:0}.flow-prompt>legend{color:var(--ink);font-size:var(--text-field-prompt);margin-bottom:6px;padding:0;font-weight:700}.flow-prompt-helper,.flow-prompt-error{font-size:var(--text-helper);margin:0 0 10px;line-height:1.5}.flow-prompt-helper{color:var(--muted)}.flow-prompt-error{color:var(--danger);margin:8px 0 0}.flow-prompt-control{font-size:var(--text-form-value)}.flow-prompt-completed,.form-summary-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 14px;padding-block:12px;display:grid}.flow-prompt-completed h3,.flow-prompt-completed p,.form-summary-row dt,.form-summary-row dd{margin:0}.flow-prompt-completed h3{color:var(--muted);font-size:var(--text-helper)}.flow-prompt-completed p,.form-summary-row dd{color:var(--ink);font-size:var(--text-form-value)}.flow-prompt-completed>div{gap:5px;display:grid}.flow-prompt-edit,.form-summary-edit{border:1px solid var(--line);min-width:52px;color:var(--accent-dark);font-size:var(--text-helper);background:0 0;border-radius:14px;padding-inline:10px}.form-summary h2{margin:0;font-size:21px}.form-summary-rows{margin:0}.form-summary-row{grid-template-columns:minmax(80px,.35fr) minmax(0,1fr) auto}.choice-chips,.date-choice-shortcuts,.time-duration-presets{flex-wrap:wrap;gap:8px;display:flex}.choice-chip,.search-choice-option{min-height:var(--control-height);border-radius:var(--control-radius)}.choice-chip,.date-choice-shortcuts button,.time-duration-presets button{border:1px solid var(--line);color:var(--ink);background:color-mix(in srgb, var(--surface) 88%, var(--accent-soft));font-size:var(--text-form-value);padding:8px 16px;transition:transform .18s cubic-bezier(.25,1,.5,1),border-color .18s,background-color .18s}.choice-chip{text-align:left;align-content:center;gap:2px;display:grid}.choice-chip small,.search-choice-option small{color:var(--muted);font-size:var(--text-helper)}.choice-chip[aria-checked=true],.date-choice-shortcuts button[aria-pressed=true],.time-duration-presets button[aria-pressed=true]{border-color:var(--accent-dark);color:var(--accent-dark);background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent-dark)}.choice-chip:active,.date-choice-shortcuts button:active,.time-duration-presets button:active,.search-choice-option:active{transform:translateY(1px)scale(.985)}.search-choice-backdrop{z-index:50;background:color-mix(in srgb, var(--ink) 28%, transparent);place-items:end center;padding:18px;display:grid;position:fixed;inset:0}.search-choice-sheet{border:1px solid var(--line);background:var(--surface);width:min(620px,100%);max-height:min(78dvh,720px);box-shadow:0 18px 52px color-mix(in srgb, var(--ink) 16%, transparent);border-radius:20px;gap:14px;padding:20px;transition:transform .2s cubic-bezier(.25,1,.5,1),opacity .18s;display:grid;overflow:hidden}.search-choice-sheet>header{justify-content:space-between;align-items:center;gap:16px;display:flex}.search-choice-sheet h2{margin:0;font-size:21px}.search-choice-close{min-width:52px;color:var(--muted);background:0 0;border:0}.search-choice-search,.native-input-fallback input,.time-range-native input,.amount-choice-value,.amount-choice-value input{min-height:var(--control-height);border-radius:var(--control-radius);font-size:var(--text-form-value)}.search-choice-search,.native-input-fallback input,.time-range-native input{border:1px solid var(--line);width:100%;color:var(--ink);background:var(--surface-muted);padding-inline:15px}.search-choice-list{gap:6px;display:grid;overflow-y:auto}.search-choice-option{width:100%;color:var(--ink);text-align:left;background:0 0;border:1px solid #0000;gap:3px;padding:9px 14px;display:grid}.search-choice-option[aria-selected=true]{border-color:var(--accent-dark);background:var(--accent-soft)}.search-choice-option:hover{background:var(--surface-muted)}.search-choice-empty{min-height:96px;color:var(--muted);font-size:var(--text-helper);text-align:center;align-content:center;margin:0}.date-choice,.time-range-choice,.amount-choice{border:0;gap:12px;min-width:0;margin:0;padding:0;display:grid}.date-choice>legend,.time-range-choice>legend,.amount-choice>legend{color:var(--ink);font-size:var(--text-field-prompt);padding:0;font-weight:700}.date-choice-shortcuts button,.time-duration-presets button{min-height:var(--control-height);border-radius:var(--control-radius)}.native-input-fallback,.time-range-native label,.amount-choice-stepper>label,.amount-choice-range{color:var(--muted);font-size:var(--text-helper);gap:6px;display:grid}.time-range-summary{color:var(--ink);font-variant-numeric:tabular-nums;font-size:20px;font-weight:700}.time-range-native{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:end;gap:8px;display:grid}.time-range-native>span{min-height:var(--control-height);align-content:center}.amount-choice-stepper{grid-template-columns:var(--control-height) minmax(90px, 1fr) var(--control-height);align-items:end;gap:8px;display:grid}.amount-choice-stepper>button{width:var(--control-height);min-height:var(--control-height);border:1px solid var(--line);border-radius:var(--control-radius);color:var(--accent-dark);background:var(--surface-muted);padding:0;font-size:22px}.amount-choice-value{border:1px solid var(--line);background:var(--surface-muted);align-items:center;display:flex}.amount-choice-value input{width:100%;min-width:0;color:var(--ink);text-align:right;background:0 0;border:0;padding-inline:14px 4px}.amount-choice-value>span{color:var(--muted);font-size:var(--text-helper);padding-right:14px}.amount-choice-range input{width:100%;min-height:44px;accent-color:var(--accent-dark)}.status-scale{grid-template-columns:repeat(auto-fit,minmax(112px,1fr));display:grid}.selected-study-inspector .inspector-source-line{font-size:var(--text-helper);padding:10px 12px;line-height:1.45}.inspector-summary{border-bottom:1px solid var(--line);gap:14px;padding:16px 12px;display:grid}.inspector-summary dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px;margin:0;display:grid}.inspector-summary dl>div{gap:3px;min-width:0;display:grid}.inspector-summary dt{color:var(--muted);font-size:var(--text-helper);font-weight:700}.inspector-summary dd{overflow-wrap:anywhere;color:var(--ink);font-size:var(--text-form-value);margin:0;font-weight:700}.inspector-edit-button,.inspector-more-button{min-height:44px}.inspector-save-status,.inspector-placement-message{color:var(--accent-dark);font-size:var(--text-helper);margin:0}.selected-study-inspector .inspector-form{border-bottom:1px solid var(--line);gap:20px;padding:18px 12px}.selected-study-inspector .inspector-edit-surface>.inspector-text-field,.selected-study-inspector .inspector-secondary-fields>.inspector-text-field{border:0;grid-template-columns:minmax(0,1fr);gap:6px;min-height:auto;display:grid}.inspector-edit-surface{border:0;gap:20px;min-width:0;margin:0;padding:0;display:grid}.selected-study-inspector .inspector-text-field>span,.inspector-fieldset>legend{color:var(--ink);font-size:var(--text-field-prompt);background:0 0;border:0;padding:0;font-weight:700}.selected-study-inspector .inspector-form input{min-height:var(--control-height);border:1px solid var(--line);border-radius:var(--control-radius);background:var(--surface-muted);font-size:var(--text-form-value);padding-inline:14px}.inspector-fieldset{border:0;gap:10px;margin:0;padding:0;display:grid}.inspector-date-grid,.inspector-secondary-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px;display:grid}.inspector-date-grid>:last-child{grid-column:1/-1}.inspector-form-actions{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:8px;display:grid}.selected-study-inspector .inspector-form-actions>button{min-height:44px}.selected-study-inspector .inspector-save-button{min-height:var(--control-height);border-radius:var(--control-radius);font-size:var(--text-form-value);margin:0;padding-inline:16px}.selected-study-inspector .inspector-move-section>header{background:0 0;gap:12px;min-height:64px;padding:10px 12px}.selected-study-inspector .inspector-move-section>header .secondary-button{min-height:44px}.inspector-move-section>header>div{gap:3px;display:grid}.selected-study-inspector .inspector-move-section h4{font-size:var(--text-field-prompt)}.selected-study-inspector .inspector-move-section>header span,.selected-study-inspector .inspector-move-section p{font-size:var(--text-helper)}.inspector-move-editor{border-top:1px solid var(--line);gap:18px;padding:16px 12px;display:grid}.inspector-move-editor>button{min-height:var(--control-height);border:1px solid var(--accent-dark);border-radius:var(--control-radius);color:var(--surface);background:var(--accent-dark);font-size:var(--text-form-value);font-weight:800}.inspector-save-error{color:var(--danger);font-size:var(--text-helper);margin:0;line-height:1.5}.inspector-placement-section h4,.inspector-placement-section p,.inspector-placement-section>header span,.inspector-placement-section>div,.inspector-placement-section small,.inspector-followup-note{font-size:var(--text-helper)}.monthly-subject-filter{font-size:var(--text-helper);gap:8px;padding:12px 8px}.monthly-subject-filter-controls{gap:8px;display:grid}.monthly-subject-chips{gap:6px}.monthly-subject-chips .choice-chip{min-height:44px;font-size:var(--text-helper);padding:7px 11px}.monthly-subject-more{justify-self:start;min-height:44px}.monthly-records-panel .records-section-heading,.monthly-records-panel .records-section-heading h4,.monthly-records-panel .records-section-heading>strong,.monthly-records-panel .records-section-heading button,.monthly-records-panel .console-empty,.monthly-records-panel .monthly-plan-select>span:last-child,.monthly-records-panel .monthly-plan-row strong,.monthly-records-panel .monthly-plan-row small,.monthly-records-panel .monthly-plan-row b,.monthly-records-panel .record-summary-row,.monthly-records-panel .record-summary-row strong,.monthly-records-panel .record-summary-row small{font-size:var(--text-helper)}.selected-study-inspector .operations-panel-heading h3{font-size:var(--text-form-value)}.selected-study-inspector .inspector-placement-section h4,.selected-study-inspector .inspector-placement-section p,.selected-study-inspector .inspector-placement-section>header span,.selected-study-inspector .inspector-placement-section>div,.selected-study-inspector .inspector-placement-section small,.selected-study-inspector .inspector-followup-note,.selected-study-inspector .inspector-delete-button{font-size:var(--text-helper)}.selected-study-inspector .inspector-move-editor>button,.selected-study-inspector .inspector-delete-button{min-height:var(--control-height)}.monthly-records-panel .operations-panel-heading h3{font-size:var(--text-helper)}.monthly-records-panel .records-section-heading button{min-height:var(--control-height)}.quick-add-flow,.schedule-draft-flow{margin-top:18px}.quick-add-flow .subject-choice-row,.session-composer .subject-choice-row,.schedule-draft-flow .subject-choice-row{flex-wrap:wrap;align-items:flex-start;gap:8px;display:flex}.quick-add-flow .subject-choice-row>.choice-chips,.session-composer .subject-choice-row>.choice-chips,.schedule-draft-flow .subject-choice-row>.choice-chips{flex:360px}.quick-add-flow .subject-choice-row>button,.session-composer .subject-choice-row>button,.schedule-draft-flow .subject-choice-row>button{min-height:var(--control-height);white-space:nowrap}.editorial-field,.quick-add-timing,.session-schedule-controls,.session-progress-controls,.session-outcome-controls,.schedule-draft-schedule-controls,.schedule-draft-name{gap:12px;display:grid}.editorial-field{color:var(--muted);font-size:var(--text-helper)}.editorial-field input,.editorial-field textarea{width:100%;min-height:var(--control-height);border:1px solid var(--line);border-radius:var(--control-radius);color:var(--ink);background:var(--surface-muted);font:inherit;font-size:var(--text-form-value);padding:11px 14px}.editorial-field textarea{resize:vertical;min-height:112px}.quick-add-timing,.session-schedule-controls,.schedule-draft-schedule-controls{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.session-progress-controls{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));align-items:start}.session-outcome-controls>.editorial-field,.schedule-draft-schedule-controls>.date-choice,.schedule-draft-time-adjustments{grid-column:1/-1}.session-composer>.flow-form-transaction-surface>.flow-form-prompts,.schedule-draft-flow>.flow-form-transaction-surface>.flow-form-prompts{min-height:0}.schedule-draft-flow>.flow-form-transaction-surface>.flow-form-prompts>p{margin:0}.schedule-draft-time-adjustments button,.schedule-draft-name button{min-height:44px}.schedule-draft-flow{min-height:0;overflow:hidden}.schedule-draft-flow>.flow-form-transaction-surface>.flow-form-prompts{padding-right:4px;overflow-y:auto}.schedule-draft-time-adjustments{gap:8px;display:flex}.schedule-draft-time-adjustments button,.schedule-draft-name button{border:1px solid var(--line);border-radius:var(--control-radius);color:var(--accent-dark);background:var(--surface-muted);padding-inline:14px}.schedule-draft-name strong{font-size:var(--text-form-value)}.dense-grid-label,.calendar-number,.timetable-number{font-size:var(--text-dense-grid)}.metadata-label{font-size:var(--text-metadata)}.compact-tab,.app .tabbar button{font-size:var(--text-tab)}.planner-bundle-focus{border:1px solid var(--accent-dark);border-radius:var(--control-radius);background:var(--surface-muted);gap:4px;min-height:44px;padding:10px 12px;display:grid}.planner-bundle-focus>span{color:var(--muted);font-size:var(--text-helper)}.planner-bundle-focus:focus-visible{outline:3px solid var(--focus);outline-offset:3px}@media (width<=760px){:root{--text-body:17px;--text-form-value:17px}.search-choice-backdrop{padding:0}.search-choice-sheet{border-bottom:0;border-left:0;border-right:0;border-radius:20px 20px 0 0;width:100%;max-height:88dvh}.quick-add-timing,.session-schedule-controls,.schedule-draft-schedule-controls{grid-template-columns:minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){.choice-chip,.date-choice-shortcuts button,.time-duration-presets button,.search-choice-option,.search-choice-sheet,.flow-form-progress-rail>span{transition:none}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--paper:#f4efe5;--sheet:#fffdf8f5;--sheet-muted:#f7f3ebeb;--ink:#2c2a26;--muted:#6f6a61;--line:#ded7c9;--sage:#718171;--sage-dark:#526354;--sage-soft:#e7ece5;--rose:#ead8d5;--rose-line:#d7b9b4;--focus-ring:#4e6b59;--font-heading:"SUIT Variable", SUIT, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-body:"SUIT Variable", SUIT, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--space-1:8px;--space-2:16px;--space-3:24px;--space-4:32px;--target-size:44px;--control-face-height:38px;--action-primary-bg:var(--sage-dark);--action-secondary-bg:color-mix(in srgb, var(--sheet-muted) 90%, var(--paper));--action-quiet-bg:transparent;--action-danger:#985652;--action-focus-ring:var(--focus-ring);--surface:var(--sheet);--surface-muted:var(--sheet-muted);--accent:var(--sage);--accent-dark:var(--sage-dark);--accent-soft:var(--sage-soft);--success:var(--sage-dark);--planner-mint:var(--sage-soft);--planner-yellow:var(--sheet-muted);--planner-pink:var(--rose);--planner-blue:var(--sheet-muted);--planner-lilac:var(--sheet-muted);--paper-rule:#ebe5da;--shadow:0 10px 28px #47403412;--acrylic-surface:color-mix(in srgb, var(--sheet) 91%, var(--sage-soft));--acrylic-surface-strong:color-mix(in srgb, var(--sheet) 84%, var(--sage-soft));--acrylic-border:color-mix(in srgb, var(--sage) 18%, var(--line));--acrylic-depth:0 9px 22px #3c433b13}html{background:var(--paper);min-width:320px;min-height:100%}body{min-height:100dvh;color:var(--ink);background:var(--paper);font-family:var(--font-body);line-height:1.55}#root{min-height:100dvh}h1,h2,.route-title{font-family:var(--font-heading);text-wrap:balance;font-weight:700}button,[role=button],summary,input,select{min-height:var(--target-size)}button,summary{-webkit-tap-highlight-color:transparent}:where(button,input,select,textarea,summary,a,[tabindex]):focus-visible{outline:3px solid color-mix(in srgb, var(--focus-ring) 56%, transparent);outline-offset:3px}.app-action{--action-face-height:var(--control-face-height);isolation:isolate;min-height:var(--target-size);border-radius:var(--control-radius,6px);color:var(--ink);font:720 .82rem/1 var(--font-body);letter-spacing:-.018em;background:0 0;border:0;justify-content:center;align-items:center;gap:7px;padding:0 14px;display:inline-flex;position:relative}.app-action:before{z-index:-1;inset:calc((var(--target-size) - var(--action-face-height)) / 2) 0;border:1px solid color-mix(in srgb, var(--ink) 12%, transparent);border-radius:var(--control-radius,6px);background:var(--action-secondary-bg);content:"";position:absolute;box-shadow:inset 0 1px #ffffff7a,0 2px 7px #39363014}.app-action--primary{color:var(--paper)}.app-action--primary:before{border-color:color-mix(in srgb, var(--action-primary-bg) 76%, black);background:var(--action-primary-bg);box-shadow:inset 0 1px #ffffff38,0 3px 9px #303c3229}.app-action--quiet:before,.app-action--icon:before{background:var(--action-quiet-bg);box-shadow:none;border-color:#0000}.app-action--danger{color:var(--action-danger)}.app-action--danger:before{border-color:color-mix(in srgb, var(--action-danger) 24%, transparent);background:color-mix(in srgb, var(--action-danger) 8%, var(--sheet))}.app-action--compact{--action-face-height:34px;padding-inline:11px;font-size:.76rem}.app-action--editor{--action-face-height:40px;padding-inline:16px;font-size:.88rem}.app-action--icon{width:var(--target-size);padding:0}.app-action:focus-visible{outline-color:color-mix(in srgb, var(--action-focus-ring) 58%, transparent)}.app-action:disabled:before{box-shadow:none}.segmented-choice{border:1px solid color-mix(in srgb, var(--ink) 9%, transparent);background:color-mix(in srgb, var(--sheet-muted) 76%, transparent);border-radius:8px;gap:4px;min-width:0;padding:3px;display:flex}.segmented-choice__option{min-width:0;min-height:var(--target-size);color:var(--muted);font:680 .78rem/1.15 var(--font-body);background:0 0;border:0;border-radius:5px;flex:1;padding:5px 10px}.segmented-choice__option[aria-checked=true]{color:var(--ink);background:color-mix(in srgb, var(--sheet) 94%, var(--sage-soft));box-shadow:inset 0 1px #ffffffa3,0 2px 7px #3a373017}.checklist-mark-control{min-height:var(--target-size);color:var(--muted);font:680 .75rem/1 var(--font-body);background:0 0;border:0;justify-content:center;align-items:center;gap:7px;padding:0 5px;display:inline-flex}.checklist-mark-control__symbol{background:color-mix(in srgb, currentColor 7%, transparent);border:1.5px solid;border-radius:4px;place-items:center;width:24px;height:24px;font-size:.85rem;font-weight:820;display:grid}.checklist-mark-control.is-done{color:var(--sage-dark)}.checklist-mark-control.is-partial{color:#8a6b40}.checklist-mark-control.is-skipped{color:var(--action-danger)}.inline-notice{border-inline-start:3px solid var(--sage);color:var(--ink);background:color-mix(in srgb, var(--sage-soft) 52%, transparent);font:650 .76rem/1.4 var(--font-body);border-radius:4px;margin:0;padding:8px 10px}.inline-notice--error,.inline-notice--warning{border-inline-start-color:var(--action-danger);color:color-mix(in srgb, var(--action-danger) 82%, var(--ink));background:color-mix(in srgb, var(--action-danger) 7%, transparent)}.inline-notice--success{border-inline-start-color:var(--sage-dark)}.undo-toast{align-items:center;gap:12px;min-height:44px;display:flex}.undo-toast>span{flex:1;min-width:0}.undo-toast>button{min-height:var(--target-size);border:1px solid color-mix(in srgb, currentColor 24%, transparent);color:inherit;font:760 .76rem/1 var(--font-body);background:#ffffff1a;border-radius:5px;padding:0 10px}.app{min-height:100dvh;padding:env(safe-area-inset-top) 0 calc(104px + env(safe-area-inset-bottom));background:var(--paper)}.topbar,.app-main{width:min(100% - 32px,1120px);margin-inline:auto}.topbar{min-height:64px;padding:var(--space-1) 0;border-bottom:1px solid var(--line);align-items:center;display:flex}.today-heading h1,.topbar h1{color:var(--ink);letter-spacing:-.025em;margin:0;font-size:clamp(1.16rem,3vw,1.42rem);line-height:1.2}.header-tools{margin-left:auto}.app:has(.timetable-route)>.topbar{display:none}.demo-menu summary{width:var(--target-size);height:var(--target-size);border:1px solid var(--line);color:var(--muted);background:var(--sheet);border-radius:4px}.demo-menu .demo-actions{top:calc(var(--target-size) + 4px);border-color:var(--line);background:var(--sheet);box-shadow:var(--shadow)}.app-main{min-height:calc(100dvh - 148px);padding-block:var(--space-3) var(--space-4)}.app-main:has(.timetable-route){width:min(100%,1260px);padding:0 24px 70px}.route-screen{gap:var(--space-3);display:grid}.route-header{padding:0 0 var(--space-2);border-bottom:1px solid var(--line)}.route-title{letter-spacing:-.04em;margin:0;font-size:clamp(1.72rem,4vw,2.35rem);line-height:1.08}.records-summary-adapter,.materials-route>.screen-stack{min-width:0}.tabbar{z-index:10;top:auto;right:auto;bottom:calc(12px + env(safe-area-inset-bottom));isolation:isolate;touch-action:pan-y;background:0 0;border:1px solid #0000;border-radius:999px;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;width:min(100% - 24px,560px);min-height:64px;padding:6px;display:grid;position:fixed;left:50%;overflow:visible;transform:translate(-50%)}.tabbar-indicator{z-index:0;width:calc(25% - 6px);transform:translateX(calc(var(--indicator-x) + var(--indicator-gap) + var(--tab-drag-offset,0px)));will-change:transform;transition:transform .38s cubic-bezier(.16,1,.3,1);position:absolute;top:6px;bottom:6px;left:6px}.tabbar[data-dragging=true]{cursor:grabbing}.tabbar[data-dragging=true] .tabbar-indicator{transition:none}.tabbar[data-dragging=true] .tabbar-indicator:before{transform:scaleX(var(--tab-liquid-stretch,1)) scaleY(.96) skewX(var(--tab-liquid-lean,0deg));transform-origin:var(--tab-liquid-origin,center);border-radius:999px;animation:none}.tabbar[data-dragging=true] .tabbar-indicator:after{transform:translateX(clamp(-8px, calc(var(--tab-drag-offset,0px) * .08), 8px)) skewX(calc(-9deg + var(--tab-liquid-lean,0deg)))}.tabbar-indicator:before{border:1px solid color-mix(in srgb, var(--sage) 24%, transparent);background:color-mix(in srgb, var(--sage-soft) 26%, transparent);box-shadow:inset 0 1.5px 0 #ffffffd1, inset 1px 0 0 #ffffff5c, inset -1px -1px 0 color-mix(in srgb, var(--sage) 14%, transparent), 0 5px 16px #44524414;content:"";transform-origin:50%;-webkit-backdrop-filter:blur(11px)saturate(148%)contrast(1.055)brightness(1.035);backdrop-filter:blur(11px)saturate(148%)contrast(1.055)brightness(1.035);border-radius:999px;position:absolute;inset:-4px}.tabbar-indicator:after{content:"";opacity:.7;pointer-events:none;background:linear-gradient(105deg,#0000 3%,#ffffff8f 38%,#ffffff29 65%,#0000 94%);border-radius:999px;height:34%;transition:transform .42s cubic-bezier(.16,1,.3,1);position:absolute;inset:3px 10px auto;transform:skew(-9deg)}.tabbar[data-animated=true][data-active-index="0"] .tabbar-indicator:before{animation:.38s cubic-bezier(.16,1,.3,1) tabbar-gel-0}.tabbar[data-animated=true][data-active-index="1"] .tabbar-indicator:before{animation:.38s cubic-bezier(.16,1,.3,1) tabbar-gel-1}.tabbar[data-animated=true][data-active-index="2"] .tabbar-indicator:before{animation:.38s cubic-bezier(.16,1,.3,1) tabbar-gel-2}.tabbar[data-animated=true][data-active-index="3"] .tabbar-indicator:before{animation:.38s cubic-bezier(.16,1,.3,1) tabbar-gel-3}@keyframes tabbar-gel-0{35%{transform:scaleX(1.12)scaleY(.96)}72%{transform:scaleX(.97)scaleY(1.03)}}@keyframes tabbar-gel-1{35%{transform:scaleX(1.12)scaleY(.96)}72%{transform:scaleX(.97)scaleY(1.03)}}@keyframes tabbar-gel-2{35%{transform:scaleX(1.12)scaleY(.96)}72%{transform:scaleX(.97)scaleY(1.03)}}@keyframes tabbar-gel-3{35%{transform:scaleX(1.12)scaleY(.96)}72%{transform:scaleX(.97)scaleY(1.03)}}.tabbar:before{z-index:-1;border:1px solid color-mix(in srgb, var(--sheet) 54%, var(--line));background:linear-gradient(155deg, #ffffff3d, transparent 46%, color-mix(in srgb, var(--sage-soft) 22%, transparent));content:"";pointer-events:none;transform:translate3d(var(--tabbar-drift,0px), var(--tabbar-drift-y,0px), 0) scaleX(var(--tabbar-stretch,1)) scaleY(var(--tabbar-scale-y,1)) rotate(var(--tabbar-roll,0deg));-webkit-backdrop-filter:blur(22px)saturate(138%);backdrop-filter:blur(22px)saturate(138%);will-change:transform;border-radius:999px;transition:transform .44s cubic-bezier(.16,1,.3,1);position:absolute;inset:0;box-shadow:0 18px 50px #36332d29,0 3px 12px #36332d14,inset 0 1px #ffffffb8}.tabbar[data-dragging=true]:before{transition-duration:.11s;transition-timing-function:cubic-bezier(.22,.8,.36,1)}.tabbar:after{z-index:3;border:1px solid color-mix(in srgb, var(--sheet) 58%, var(--line));box-shadow:inset 0 1px 0 #ffffffb3, inset 0 -1px 0 color-mix(in srgb, var(--sage) 9%, transparent);content:"";pointer-events:none;transform:translate3d(var(--tabbar-drift,0px), var(--tabbar-drift-y,0px), 0) scaleX(var(--tabbar-stretch,1)) scaleY(var(--tabbar-scale-y,1)) rotate(var(--tabbar-roll,0deg));will-change:transform;border-radius:999px;transition:transform .44s cubic-bezier(.16,1,.3,1);position:absolute;inset:0}.tabbar[data-dragging=true]:after{transition-duration:.11s;transition-timing-function:cubic-bezier(.22,.8,.36,1)}.tabbar button{z-index:1;min-height:var(--target-size);padding:3px var(--space-1) 2px;color:var(--muted);background:0 0;border:1px solid #0000;border-radius:17px;grid-auto-flow:row;place-content:center stretch;justify-items:center;gap:2px;font-size:.7rem;font-weight:650;transition:color .16s,background-color .16s,transform .16s;display:grid;position:relative}.tabbar button.active,.tabbar button[aria-current=page]{color:var(--sage-dark);box-shadow:none;background:0 0;border-color:#0000}.tabbar button .nav-symbol,.tabbar button:not(.active){transition:color .18s cubic-bezier(.25,1,.5,1),transform .18s cubic-bezier(.25,1,.5,1),opacity .18s cubic-bezier(.25,1,.5,1)}.tabbar button.active .nav-symbol{animation:.3s cubic-bezier(.16,1,.3,1) tab-icon-settle}@keyframes tab-icon-settle{45%{transform:scale(1.08)translateY(-1px)}72%{transform:scale(.98)}}@media (hover:hover){.tabbar button:not(.active):hover,.demo-menu summary:hover{color:var(--sage-dark);background:var(--sage-soft)}.tabbar button:not(.active):hover{transform:translateY(-1px)}}@media (width<=560px){.topbar,.app-main{width:min(100% - 24px,1120px)}.app-main:has(.timetable-route){width:100%}.app:has(.timetable-route)>.topbar{width:calc(100% - 24px)}.app-main{padding-block:var(--space-2) var(--space-3)}.route-screen:not(.timetable-route){gap:var(--space-2)}.timetable-route>.route-header{margin-inline:12px}}.reference-week-panel>.weekly-paper-board{margin:0;overflow:visible}.reference-week-panel .weekly-plan-scroller{border-radius:7px;max-height:none}.fixed-schedule-entry-wrap{height:100%;min-height:68px;display:grid;position:relative}.fixed-schedule-entry-wrap .fixed-schedule-entry{height:100%;padding-inline-end:42px}.weekly-fixed-check,.weekly-plan-check{z-index:3;width:44px;min-width:44px;padding:0}.weekly-fixed-check{position:absolute;inset-block-start:0;inset-inline-end:0}.weekly-fixed-check .checklist-mark-control__symbol,.weekly-plan-check .checklist-mark-control__symbol{border-color:color-mix(in srgb, var(--schedule-subject,var(--sage-dark)) 72%, var(--ink));background:color-mix(in srgb, var(--schedule-subject,var(--sage-dark)) 12%, transparent);width:19px;height:19px;font-size:.68rem}.resident-plan-target{grid-template-columns:minmax(0,1fr) 44px;align-items:stretch;display:grid}.resident-plan-target .study-plan-card{min-width:0}.resident-plan-target.st-done,.fixed-schedule-entry-wrap.st-done{opacity:.52}.resident-plan-target.st-partial,.fixed-schedule-entry-wrap.st-partial{opacity:.74}.resident-plan-target.st-skipped,.fixed-schedule-entry-wrap.st-skipped{opacity:.36}.reference-week-loose-schedule{border-top:1px solid color-mix(in srgb, var(--ink) 11%, transparent);gap:6px;padding-top:10px;display:grid}.reference-week-loose-schedule>header{color:var(--muted);justify-content:space-between;align-items:center;font-size:12px;display:flex}@media (width<=1024px){.reference-week-panel>.weekly-paper-board{width:100vw;margin-inline-start:calc(50% - 50vw)}}.progress-input,.work-result-editor{gap:9px;min-width:0;display:grid}.progress-input{border:0;margin:0;padding:0}.progress-input>legend{color:var(--ink);padding:0;font-size:14px;font-weight:720}.progress-input__unit-picker{gap:7px;min-width:0;display:grid}.progress-input__unit-picker .segmented-choice{overscroll-behavior-inline:contain;scrollbar-width:none;max-width:100%;overflow-x:auto}.progress-input__unit-picker .segmented-choice::-webkit-scrollbar{display:none}.progress-input__unit-picker .segmented-choice__option{flex:none;min-width:58px}.progress-input__locked-unit,.progress-input__limit,.work-result-editor__hint{color:var(--muted);margin:0;font-size:13px}.progress-input__value{border:1px solid color-mix(in srgb, var(--ink) 10%, var(--line));background:color-mix(in srgb, var(--sheet-muted) 76%, transparent);border-radius:6px;grid-template-columns:minmax(0,1fr) auto;align-items:center;min-height:44px;display:grid;overflow:hidden;box-shadow:inset 0 1px #ffffff7a}.progress-input__value input,.progress-input__custom-unit{width:100%;min-width:0;min-height:44px;color:var(--ink);font:700 16px/1.2 var(--font-body);font-variant-numeric:tabular-nums;background:0 0;border:0;border-radius:0;padding:7px 11px}.progress-input__custom-unit{border-bottom:1px solid var(--line)}.progress-input__value>span:last-child{color:var(--muted);padding-inline:11px;font-size:14px;font-weight:680}.progress-input__summary{border-top:1px dotted color-mix(in srgb, var(--ink) 20%, transparent);flex-wrap:wrap;gap:4px 13px;margin:0;padding-top:8px;display:flex}.progress-input__summary div,.progress-input__summary dd{margin:0}.progress-input__summary dd{color:var(--muted);font-variant-numeric:tabular-nums;font-size:13px}.work-result-editor__marks{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.work-result-editor__summary{border-inline-start:3px solid var(--sage);min-height:38px;color:var(--ink);background:color-mix(in srgb, var(--sage-soft) 54%, transparent);font-variant-numeric:tabular-nums;align-content:center;padding:7px 10px;font-size:14px}.work-result-editor__summary.is-partial{background:#ead8ad57;border-inline-start-color:#a48652}.work-result-editor__summary.is-skipped{background:color-mix(in srgb, var(--rose) 42%, transparent);border-inline-start-color:#9c6763}.planner-target-ledger{color:var(--muted);font-variant-numeric:tabular-nums;margin-top:5px;font-size:.63rem;display:block}.planner-modal .progress-input__value input,.planner-modal .progress-input__custom-unit{min-height:44px;font:700 16px/1.2 var(--font-body);background:0 0;border:0;border-radius:0;padding:7px 11px}@media (width<=420px){.work-result-editor__marks .segmented-choice__option{padding-inline:5px;font-size:.7rem}}.planner-modal .subject-wheel-field{gap:5px;min-width:0;display:grid}.planner-modal .subject-wheel-label{color:var(--muted);letter-spacing:-.025em;font-size:14px;font-weight:700}.planner-modal .subject-wheel-shell{border-block:1px solid color-mix(in srgb, var(--line) 66%, transparent);background:color-mix(in srgb, var(--sheet-muted) 46%, transparent);min-width:0;position:relative;overflow:hidden}.planner-modal .subject-wheel-shell:before,.planner-modal .subject-wheel-shell:after{z-index:2;content:"";pointer-events:none;width:18%;position:absolute;top:0;bottom:0}.planner-modal .subject-wheel-shell:before{background:linear-gradient(90deg, var(--sheet) 8%, transparent);left:0}.planner-modal .subject-wheel-shell:after{background:linear-gradient(270deg, var(--sheet) 8%, transparent);right:0}.planner-modal .subject-wheel-center{z-index:1;border-block:1px solid color-mix(in srgb, var(--ink) 18%, transparent);background:color-mix(in srgb, var(--sheet) 58%, transparent);pointer-events:none;width:96px;position:absolute;top:4px;bottom:4px;left:50%;transform:translate(-50%)}.planner-modal .subject-wheel{z-index:1;overscroll-behavior-inline:contain;scrollbar-width:none;scroll-snap-type:x mandatory;touch-action:pan-x;align-items:stretch;min-width:0;height:46px;display:flex;position:relative;overflow:auto hidden}.planner-modal .subject-wheel::-webkit-scrollbar{display:none}.planner-modal .subject-wheel-spacer{flex:0 0 calc(50% - 48px)}.planner-modal .subject-wheel-option{min-width:96px;min-height:40px;box-shadow:none;color:color-mix(in srgb, var(--muted) 76%, transparent);letter-spacing:-.035em;opacity:.54;scroll-snap-align:center;scroll-snap-stop:always;background:0 0;border:0;border-radius:0;flex:0 0 96px;justify-content:center;align-items:center;gap:6px;padding:0 9px;font-size:.86rem;font-weight:600;transition:color .18s cubic-bezier(.16,1,.3,1),opacity .18s cubic-bezier(.16,1,.3,1),transform .18s cubic-bezier(.16,1,.3,1);display:inline-flex}.planner-modal .subject-wheel-option[aria-selected=true]{color:var(--ink);opacity:1;font-weight:800;transform:scale(1.035)}.planner-modal .subject-wheel-option:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-3px}.planner-modal .subject-wheel-dot{width:7px;height:7px;box-shadow:0 0 0 2px color-mix(in srgb, currentColor 9%, transparent);border-radius:50%;flex:0 0 7px}.planner-workspace-route .chk-row.is-fixed>.chk-cycle{flex:0 0 32px;min-width:32px;min-height:40px}.planner-modal-backdrop{animation:.14s ease-out planner-backdrop-in}.planner-modal{transform-origin:bottom;animation:.21s cubic-bezier(.16,1,.3,1) planner-modal-in}.planner-workspace-panel:not([hidden]){animation:.18s cubic-bezier(.25,1,.5,1) planner-panel-in}.planner-daily-feedback{animation:.19s cubic-bezier(.16,1,.3,1) planner-feedback-in}:is(.primary-button,.secondary-button,.primary-action){transition:transform .13s cubic-bezier(.25,1,.5,1),box-shadow .16s cubic-bezier(.25,1,.5,1),background-color .16s ease-out,border-color .16s ease-out}.planner-workspace-route :is(.chk-row,.chk-box,.daily-grid-overlay){transition:opacity .18s cubic-bezier(.25,1,.5,1),background-color .18s ease-out,border-color .18s ease-out,transform .15s cubic-bezier(.25,1,.5,1)}.planner-workspace-route .chk-cycle:active .chk-box{transform:scale(.82)}.planner-workspace-route .chk-row:is(.st-done,.st-partial,.st-skipped) .chk-box{animation:.18s cubic-bezier(.16,1,.3,1) checklist-mark-set}.planner-workspace-route .daily-grid-overlay[data-mark]{animation:.18s cubic-bezier(.25,1,.5,1) timetable-mark-set}@keyframes planner-backdrop-in{0%{opacity:0}}@keyframes planner-modal-in{0%{opacity:0;transform:translateY(8px)scale(.985)}}@keyframes planner-panel-in{0%{opacity:.55;transform:translateY(5px)}}@keyframes planner-feedback-in{0%{opacity:0;transform:translateY(7px)scale(.985)}}@keyframes checklist-mark-set{45%{transform:scale(.84)}}@keyframes timetable-mark-set{0%{opacity:.18;transform:scaleY(.94)}}@media (prefers-reduced-motion:reduce){.planner-modal-backdrop,.planner-modal,.planner-workspace-panel:not([hidden]),.planner-daily-feedback,.planner-workspace-route .chk-box,.planner-workspace-route .daily-grid-overlay,.tabbar-indicator,.tabbar-indicator:before,.tabbar button,.tabbar button .nav-symbol{transition-duration:.01ms!important;animation:none!important}.tabbar[data-dragging=true] .tabbar-indicator:before,.tabbar[data-dragging=true] .tabbar-indicator:after,.tabbar:before{transform:none!important}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:is(.secondary-button,.plan-icon-action,.timeline-row-actions button,.timeline-day-review-actions button,.timetable-week-nav button,.timetable-primary-actions button:not(.primary-button),.material-add-trigger,.text-button):active{background:color-mix(in srgb, var(--sage-soft) 24%, transparent);box-shadow:inset 0 1px 2px color-mix(in srgb, var(--sage) 10%, transparent)}.weekly-plan-scroller{border-top:1px solid color-mix(in srgb, var(--sage) 18%, var(--line));border-bottom:1px solid color-mix(in srgb, var(--sage) 18%, var(--line));background:color-mix(in srgb, var(--sheet) 48%, transparent);border-radius:14px;overflow:auto}.weekly-plan-cell.is-fixed-cell{align-content:stretch;height:100%;padding:0;position:absolute;inset:0}.weekly-plan-table td:has(.weekly-plan-cell.is-fixed-cell){position:relative}.class-sheet-save-area .primary-button{border-color:var(--sage-dark);color:var(--sheet);background:var(--sage-dark);box-shadow:none}:is(.study-plan-card,.today-current-status,.class-session-sheet,.plan-move-sheet,.blank-fill-sheet,.challenge-manager,.material-picker-panel){border:1px solid var(--acrylic-border);background:var(--acrylic-surface);box-shadow:var(--acrylic-depth), inset 0 1px 0 #ffffffc7, inset 0 -2px 0 color-mix(in srgb, var(--sage) 8%, transparent)}:is(.secondary-button,.plan-icon-action,.timeline-row-actions button,.timeline-day-review-actions button,.timetable-week-nav button,.timetable-primary-actions button:not(.primary-button),.material-add-trigger,.text-button){border:1px solid var(--acrylic-border);color:var(--ink);background:var(--acrylic-surface-strong);box-shadow:0 4px 10px #3c433b0f, inset 0 1px 0 #ffffffd1, inset 0 -2px 0 color-mix(in srgb, var(--sage) 10%, transparent);transition:transform .15s cubic-bezier(.25,1,.5,1),box-shadow .15s cubic-bezier(.25,1,.5,1),background-color .15s}:is(.secondary-button,.plan-icon-action,.timeline-row-actions button,.timeline-day-review-actions button,.timetable-week-nav button,.timetable-primary-actions button:not(.primary-button),.material-add-trigger,.text-button):active{box-shadow:0 2px 5px #3c433b0d, inset 0 1px 2px color-mix(in srgb, var(--sage) 14%, transparent);transform:translateY(1px)}.primary-button{border:1px solid color-mix(in srgb, var(--sage-dark) 82%, var(--line));background:color-mix(in srgb, var(--sage-dark) 91%, var(--sheet));box-shadow:0 6px 13px #36463824,inset 0 1px #ffffff47,inset 0 -2px #2631272e}.today-current-status{align-content:space-between;gap:var(--space-2);border-top:2px solid var(--ink);border-bottom:1px solid var(--line);min-height:218px;color:var(--ink);background:var(--sheet);box-shadow:none;padding:clamp(20px,4vw,34px);display:grid}.today-current-status.is-study{background:var(--sage-soft)}.today-current-status.is-class{background:var(--rose)}.today-current-status.is-meal,.today-current-status.is-break,.today-current-status.is-agenda,.today-current-status.is-empty{background:var(--sheet-muted)}.today-current-status-header,.today-current-actions{justify-content:space-between;align-items:center;gap:var(--space-1);display:flex}.today-current-label{color:var(--ink);letter-spacing:.02em;font-size:.84rem;font-weight:800}.today-current-kind,.timeline-kind-label{border:1px solid var(--line);min-height:26px;color:var(--muted);background:color-mix(in srgb, var(--sheet) 82%, transparent);white-space:nowrap;border-radius:2px;place-items:center;padding-inline:8px;font-size:.68rem;font-weight:750;display:inline-grid}.today-current-status.is-class .today-current-kind,.today-timeline-row.is-class .timeline-kind-label{border-color:var(--rose-line);color:#6e4e4a;background:color-mix(in srgb, var(--rose) 78%, var(--sheet))}.today-current-status.is-study .today-current-kind,.today-timeline-row:is(.is-homework,.is-learning-signal,.is-challenge) .timeline-kind-label{border-color:color-mix(in srgb, var(--sage) 40%, var(--line));color:var(--sage-dark);background:color-mix(in srgb, var(--sage-soft) 80%, var(--sheet))}.today-current-copy h2{letter-spacing:-.045em;text-wrap:balance;max-width:24ch;margin:0;font-size:clamp(1.7rem,6vw,2.65rem);line-height:1.12}.today-current-schedule-edit{color:inherit;font:inherit;letter-spacing:inherit;text-align:left;background:0 0;border:0;border-radius:2px;padding:0}.today-current-schedule-edit:hover{color:var(--accent)}.today-current-schedule-edit:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.today-current-copy p{color:var(--muted);font-variant-numeric:tabular-nums;margin:10px 0 0;font-size:.86rem}.today-current-checklist{border-top:1px solid color-mix(in srgb, var(--sage) 28%, var(--line));display:grid}.today-current-checklist button{border:0;border-bottom:1px solid color-mix(in srgb, var(--sage) 20%, var(--line));color:var(--ink);text-align:left;background:0 0;align-items:center;gap:10px;padding:5px 0;display:flex}.today-current-checklist button>span{border:1px solid var(--sage);width:22px;height:22px;color:var(--sheet);background:0 0;border-radius:2px;flex:0 0 22px;place-items:center;display:grid}.today-current-checklist button.is-checked{color:var(--muted);text-decoration:line-through}.today-current-checklist button.is-checked>span{background:var(--sage)}.today-current-actions{justify-content:flex-end}.today-current-actions .primary-button{min-width:108px;color:var(--sheet);background:var(--sage-dark)}.today-result-entry{padding:var(--space-2) 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.today-timeline-section{padding:0 0 var(--space-2);margin:0}.today-timeline-section>header{justify-content:space-between;align-items:baseline;gap:var(--space-2);border-bottom:2px solid var(--ink);margin:0;padding:0 2px 10px;display:flex}.today-timeline-section>header h2{margin:0;font-size:clamp(1.22rem,3vw,1.48rem)}.today-timeline-section>header>span{color:var(--muted);font-size:.72rem}.today-timeline{display:grid}.today-timeline-empty{padding:var(--space-3) 2px;border-bottom:1px solid var(--line);color:var(--muted);margin:0;font-size:.82rem}.today-timeline-row{border-bottom:1px solid var(--paper-rule);background:0 0;grid-template-columns:58px 66px minmax(0,1fr) auto auto;align-items:center;gap:12px;min-height:72px;padding:9px 6px;display:grid}.today-timeline-row.is-class{background:color-mix(in srgb, var(--rose) 42%, transparent)}.today-timeline-row.is-current:not(.is-class){background:color-mix(in srgb, var(--sage-soft) 72%, transparent)}.today-timeline-row>time{color:var(--ink);font-variant-numeric:tabular-nums;font-size:.76rem;font-weight:700}.timeline-copy{min-width:0}.timeline-copy strong,.timeline-copy span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.timeline-copy strong{color:var(--ink);font-size:.88rem;font-weight:720}.timeline-copy span{color:var(--muted);font-variant-numeric:tabular-nums;margin-top:3px;font-size:.7rem}.timeline-status{min-height:auto;color:var(--muted);white-space:nowrap;background:0 0;padding:0;font-size:.68rem;font-weight:700}.today-timeline-row.is-current .timeline-status,.today-timeline-row.is-completed .timeline-status{color:var(--sage-dark)}.timeline-row-actions,.timeline-day-review-actions,.timeline-saved-review{justify-content:flex-end;align-items:center;gap:4px;display:flex}.timeline-row-actions button,.timeline-day-review-actions button,.timeline-inline-trigger{min-height:var(--target-size);border:1px solid var(--line);color:var(--ink);background:var(--sheet);border-radius:2px;padding:0 9px;font-size:.68rem;font-weight:720}.timeline-day-review-row{border-top:1px solid var(--ink);background:var(--sheet-muted)}@media (width<=640px){.today-current-status{min-height:194px;padding:20px 18px}.today-current-copy h2{font-size:clamp(1.55rem,8vw,2.05rem)}.today-timeline-row{grid-template-columns:44px 56px minmax(0,1fr) auto;gap:7px;min-height:68px;padding-inline:3px}.today-timeline-row>.timeline-status{grid-column:4}.timeline-row-actions,.today-timeline-row>.timeline-inline-trigger,.timeline-day-review-actions,.timeline-saved-review{grid-column:3/-1;justify-self:end}.timeline-kind-label{padding-inline:6px;font-size:.62rem}}.planner-workspace-route .daily-grid-overlay{border-color:color-mix(in srgb, var(--entry-color) 34%, transparent);background:color-mix(in srgb, var(--entry-color) 16%, transparent);box-shadow:inset 1px 0 color-mix(in srgb, var(--entry-color) 86%, #25262b);padding:1px 3px}.planner-workspace-route .swatches{gap:8px;display:flex}.planner-workspace-route .swatches .choice-chip span{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.planner-workspace-route .swatches .choice-chip[aria-checked=true]{box-shadow:0 0 0 2px var(--ink), inset 0 0 0 2px #ffffffc2}.class-sheet-backdrop{z-index:40;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#2122206b;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.class-sheet-dialog{width:min(720px,100vw - 32px);max-height:min(88dvh,860px);overflow:hidden}.class-session-sheet{border:1px solid var(--line);width:100%;max-height:min(88dvh,860px);color:var(--ink);background:var(--sheet);border-radius:10px;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 24px 64px #47403429}.class-sheet-dialog .class-session-sheet{width:100%;box-shadow:none;border:0}.timetable-groups>.class-session-sheet{z-index:12;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.class-sheet-header{justify-content:space-between;align-items:flex-start;gap:var(--space-2);border-bottom:1px solid var(--ink);background:0 0;padding:17px 24px 14px;display:flex}.class-sheet-header span{color:var(--sage-dark);letter-spacing:.04em;margin-bottom:3px;font-size:.72rem;font-weight:800;display:block}.class-sheet-header h2{font-family:var(--font-heading);letter-spacing:-.035em;margin:0;font-size:clamp(1.22rem,2.5vw,1.55rem);line-height:1.15}.class-sheet-header p{color:var(--muted);font-variant-numeric:tabular-nums;margin:6px 0 0;font-size:.76rem}.class-session-sheet>.class-sheet-scroll-region{flex-direction:column;flex:1;min-height:0;display:flex}.class-sheet-scroll-region{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex:1;min-height:0;overflow-y:auto}.schedule-painter,.schedule-draft-details{width:100%;max-height:min(88dvh,860px);padding-bottom:calc(var(--space-2) + env(safe-area-inset-bottom));border:1px solid var(--line);color:var(--ink);background:var(--sheet);border-radius:10px;flex-direction:column;display:flex;overflow:hidden}.schedule-painter>header,.schedule-draft-details>header{justify-content:space-between;align-items:center;gap:var(--space-2);min-height:60px;padding:var(--space-1) var(--space-2);border-bottom:1px solid var(--line);display:flex}.schedule-painter>header h2,.schedule-draft-details>header h2{font-family:var(--font-heading);margin:0;font-size:1.22rem}.schedule-painter>header button,.schedule-draft-details>header button{min-width:44px;min-height:44px;padding-inline:var(--space-1);border:1px solid var(--line);color:var(--muted);background:0 0;border-radius:4px}.schedule-painter-days{padding:var(--space-1) var(--space-2);border-bottom:1px solid var(--line);overscroll-behavior-x:contain;grid-template-columns:repeat(7,minmax(44px,1fr));gap:4px;display:grid;overflow-x:auto}.schedule-painter-days button{border:1px solid var(--line);min-width:44px;min-height:44px;color:var(--muted);background:0 0;border-radius:4px;padding:0;font-weight:720;transition:color .18s,background-color .18s,border-color .18s}.schedule-painter-days button[aria-pressed=true]{border-color:var(--sage);color:var(--sage-dark);background:var(--sage-soft)}.schedule-painter-context{padding:var(--space-1) var(--space-2);border-bottom:1px solid var(--line);color:var(--muted);gap:3px;font-size:.72rem;display:grid}.schedule-painter-context:empty{display:none}.schedule-painter-timeline{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex:1;min-height:220px;overflow-y:auto}.schedule-painter-timeline button{width:100%;min-height:44px;padding:0 var(--space-2);border:0;border-bottom:1px solid var(--paper-rule);color:var(--muted);font-variant-numeric:tabular-nums;text-align:left;touch-action:pan-y;background:0 0;border-radius:0;font-size:.72rem;transition:color .18s,background-color .18s;display:block}.schedule-painter-timeline button:nth-child(3n){border-bottom:1px solid var(--line)}.schedule-painter-timeline button[aria-pressed=true]{color:var(--sage-dark);background:var(--sage-soft);touch-action:none}.schedule-painter>[role=alert],.schedule-draft-details>[role=alert]{min-height:24px;padding:4px var(--space-2) 0;color:var(--danger);margin:0;font-size:.72rem}.schedule-draft-details{gap:var(--space-1);padding-top:20px;padding-right:var(--space-2);padding-left:var(--space-2);overscroll-behavior:contain;-webkit-overflow-scrolling:touch;overflow-y:auto}.schedule-draft-details>header{margin-right:calc(var(--space-2) * -1);margin-left:calc(var(--space-2) * -1)}.schedule-draft-details>header span{margin:0}.schedule-draft-details>header span,.schedule-draft-kinds legend,.schedule-draft-details>label,.schedule-draft-name>span{color:var(--muted);font-size:.72rem;font-weight:720}.schedule-draft-kinds{border:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;margin:0;padding:0;display:grid}.schedule-draft-kinds legend{margin-bottom:4px}.schedule-draft-kinds label{border:1px solid var(--line);min-height:44px;color:var(--muted);cursor:pointer;background:0 0;border-radius:4px;justify-content:center;align-items:center;gap:5px;padding:4px 7px;transition:color .18s,background-color .18s,border-color .18s;display:flex}.schedule-draft-kinds label:has(input:checked){border-color:var(--sage);color:var(--sage-dark);background:var(--sage-soft)}.schedule-draft-details>label{gap:4px;display:grid}.schedule-draft-details>label select,.schedule-draft-name input{width:100%;min-height:44px;padding-inline:var(--space-1);border:1px solid var(--line);color:var(--ink);background:var(--sheet);border-radius:4px}.schedule-draft-name{padding-block:var(--space-1);border-top:1px solid var(--paper-rule);border-bottom:1px solid var(--paper-rule);gap:4px;display:grid}.schedule-draft-name button,.schedule-draft-name label{min-height:44px}.schedule-draft-name button{padding-inline:var(--space-1);border:1px solid var(--line);color:var(--muted);background:0 0;border-radius:4px;justify-self:start}.schedule-draft-name label{color:var(--muted);gap:4px;font-size:.72rem;display:grid}.schedule-draft-time{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:4px;display:grid}.schedule-draft-time button{min-height:44px;padding-inline:var(--space-1);border:1px solid var(--line);color:var(--sage-dark);background:0 0;border-radius:4px;transition:color .18s,background-color .18s,border-color .18s}.schedule-draft-details>p{color:var(--muted);margin:0;font-size:.78rem}.schedule-draft-details>button{border-radius:4px;min-height:44px}:is(.schedule-painter button,.schedule-draft-details button,.schedule-draft-details input,.schedule-draft-details select,.schedule-draft-kinds label):focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}@media (width<=760px){.schedule-draft-details{padding-top:16px}}@media (width<=640px){.schedule-painter,.schedule-draft-details{border-bottom:0;border-left:0;border-right:0;border-radius:20px 20px 0 0;max-height:92dvh}.schedule-painter-days{padding-inline:var(--space-1)}.schedule-draft-kinds{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){:is(.schedule-painter button,.schedule-draft-details button,.schedule-draft-kinds label){transition:none}}.class-sheet-scroll-region>form{flex:none;overflow:visible}.class-sheet-section{border-bottom:1px solid var(--line);background:0 0;padding:20px 24px 22px}.class-sheet-section>.material-usage-fields{margin:-4px 0}.class-sheet-section-heading{justify-content:space-between;align-items:center;gap:var(--space-1);margin-bottom:14px;display:flex}.class-sheet-section-heading h3{color:var(--ink);letter-spacing:-.01em;margin:0;font-size:.84rem;font-weight:780}.class-sheet-section-heading>span{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.7rem}.class-sheet-lock-note{color:var(--muted);margin:12px 0 0;font-size:.7rem;line-height:1.45}.class-sheet-grid,.material-progress-fields,.material-create-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.class-sheet-grid .span-2,.material-create-grid .span-2{grid-column:1/-1}.class-sheet-grid label,.material-progress-fields label,.material-create-grid label,.material-search-field,.legacy-material-select,.class-sheet-record-fields>label{min-width:0;color:var(--muted);gap:6px;font-size:.7rem;font-weight:720;display:grid}.class-session-sheet :is(input,select,textarea){width:100%;min-height:var(--target-size);border:1px solid var(--line);color:var(--ink);background:color-mix(in srgb, var(--sheet) 44%, transparent);font:inherit;border-radius:4px}.class-session-sheet :is(input,select){padding:0 11px}.class-session-sheet textarea{background:0 0;background-image:repeating-linear-gradient(to bottom, transparent 0, transparent 29px, color-mix(in srgb, var(--line) 80%, transparent) 30px);resize:vertical;border-width:0 0 1px;border-radius:0;min-height:76px;padding:9px 0 8px;line-height:30px}.class-session-sheet textarea:focus{border-bottom-color:var(--sage-dark);outline:none}.class-session-sheet input[type=checkbox]{appearance:none;border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:999px;width:34px;min-width:34px;height:20px;min-height:20px;padding:2px}.class-session-sheet input[type=checkbox]:after{background:var(--muted);content:"";border-radius:50%;width:14px;height:14px;transition:transform .14s,background-color .14s;display:block}.class-session-sheet input[type=checkbox]:checked{border-color:var(--sage-dark);background:color-mix(in srgb, var(--sage-soft) 72%, transparent)}.class-session-sheet input[type=checkbox]:checked:after{background:var(--sage-dark);transform:translate(14px)}.class-session-sheet input[type=checkbox]:focus-visible{box-shadow:0 0 0 2px color-mix(in srgb, var(--sage-dark) 44%, transparent);outline:none}.class-session-sheet input[type=checkbox]:disabled{cursor:not-allowed;opacity:.48}.class-sheet-difficulty{border:0;min-width:0;padding:0}.class-sheet-difficulty legend{color:var(--muted);margin-bottom:6px;font-size:.7rem;font-weight:720}.class-sheet-difficulty [role=radiogroup]{border-bottom:1px solid var(--line);display:flex}.class-sheet-difficulty label{cursor:pointer;flex:1;position:relative}.class-sheet-difficulty input{opacity:0;position:absolute}.class-sheet-difficulty span{min-height:36px;color:var(--muted);place-items:center;font-size:.72rem;display:grid}.class-sheet-difficulty input:checked+span{color:var(--sage-dark);box-shadow:inset 0 -2px 0 var(--sage-dark)}.class-sheet-difficulty input:focus-visible+span{outline:2px solid color-mix(in srgb, var(--sage-dark) 48%, transparent);outline-offset:-2px}.class-session-sheet label:focus-within{color:var(--sage-dark)}.class-sheet-record-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.class-sheet-record-fields>.class-sheet-section-heading,.class-sheet-record-fields>.class-sheet-more{grid-column:1/-1}.class-sheet-more{border-top:1px solid var(--line)}.class-sheet-more summary{color:var(--sage-dark);cursor:pointer;align-items:center;font-size:.76rem;font-weight:760;display:flex}.class-sheet-more[open] summary{margin-bottom:14px}.material-usage-list{display:grid}.material-usage-row{border-top:1px solid var(--paper-rule);gap:12px;padding:15px 0 17px;display:grid}.material-usage-row:first-child{border-top-color:var(--line)}.material-usage-title{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;display:grid}.material-usage-title strong{text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;overflow:hidden}.material-kind-label{border:1px solid var(--line);min-height:25px;color:var(--sage-dark);background:var(--sage-soft);border-radius:2px;place-items:center;padding-inline:7px;font-size:.64rem;font-weight:780;display:inline-grid}.material-no-progress{color:var(--muted);font-size:.72rem}.material-record-actions,.material-picker-actions,.material-mismatch-confirm>div,.class-sheet-footer,.class-sheet-footer-secondary,.class-sheet-save-area{align-items:center;gap:8px;display:flex}.material-record-actions{flex-wrap:wrap;justify-content:space-between}.material-add-trigger{border:0;border-bottom:1px solid color-mix(in srgb, var(--sage) 58%, var(--line));min-height:28px;color:var(--sage-dark);background:0 0;border-radius:0;margin:0;padding:0 5px;font-weight:760}.material-usage-heading-actions{align-items:center;gap:8px;display:flex}.material-picker{border-top:2px solid var(--sage);background:var(--sheet-muted);gap:12px;margin-top:8px;padding:16px;display:grid}.material-other-subjects{justify-self:start}.material-picker-results{border-top:1px solid var(--line);display:grid}.material-picker-results>button{border:0;border-bottom:1px solid var(--line);color:var(--ink);text-align:left;background:0 0;border-radius:0;grid-template-columns:68px minmax(0,1fr);align-items:center;gap:8px;padding:7px 9px;display:grid}.material-picker-results>button>span{color:var(--muted);font-size:.66rem}.material-picker-results>button>strong{font-size:.78rem}.material-picker-actions{justify-content:flex-end}.material-mismatch-confirm,.class-sheet-inline-error{border:1px solid var(--rose-line);color:#684d49;background:color-mix(in srgb, var(--rose) 58%, var(--sheet));padding:12px 14px}.material-mismatch-confirm p,.class-sheet-inline-error p{margin:0 0 9px;font-size:.75rem}.class-sheet-footer{border-top:1px solid var(--line);min-height:68px;box-shadow:none;background:0 0;flex:none;justify-content:space-between;padding:10px 24px}.class-sheet-save-area{justify-content:flex-end}.class-sheet-save-area .form-error{text-align:right;max-width:280px;margin:0}.class-sheet-save-area .primary-button{border-color:var(--sage-dark);color:var(--sheet);background:var(--sage-dark)}.class-sheet-secondary-action,.material-add-trigger,.class-session-sheet .secondary-button,.mock-inline-step .text-button{border:0;border-bottom:1px solid color-mix(in srgb, var(--sage) 48%, var(--line));min-height:32px;color:var(--sage-dark);box-shadow:none;font:inherit;background:0 0;border-radius:0;padding:0 6px;font-size:.72rem;font-weight:760}.class-sheet-secondary-action:disabled,.material-add-trigger:disabled,.class-session-sheet .secondary-button:disabled,.mock-inline-step .text-button:disabled{color:var(--muted);cursor:not-allowed;opacity:.58}.class-sheet-secondary-action:focus-visible,.material-add-trigger:focus-visible,.class-session-sheet .secondary-button:focus-visible,.mock-inline-step .text-button:focus-visible{border-bottom-color:var(--sage-dark);box-shadow:inset 0 -2px 0 var(--sage-dark);outline:none}@media (hover:hover){.class-sheet-secondary-action:not(:disabled):hover,.material-add-trigger:not(:disabled):hover,.class-session-sheet .secondary-button:not(:disabled):hover,.mock-inline-step .text-button:not(:disabled):hover{color:var(--sage-dark);background:color-mix(in srgb, var(--sage-soft) 44%, transparent)}}.class-sheet-secondary-action:not(:disabled):active,.material-add-trigger:not(:disabled):active,.class-session-sheet .secondary-button:not(:disabled):active,.mock-inline-step .text-button:not(:disabled):active{background:color-mix(in srgb, var(--sage) 14%, transparent);box-shadow:inset 0 -1px 0 var(--sage-dark)}.class-session-sheet .form-error{color:#8a4742;font-size:.72rem;font-weight:720}.mock-inline-step{flex:1;min-height:0;padding:22px 24px}.mock-inline-step .material-mock-editor{box-shadow:none;background:0 0;border:0;padding:0}@media (hover:hover){.material-add-trigger:hover,.material-picker-results>button:hover{color:var(--sage-dark);background:var(--sage-soft)}}@media (width<=640px){.class-sheet-backdrop{align-items:end;padding:0}.class-sheet-dialog,.class-session-sheet{border-bottom:0;border-left:0;border-right:0;border-radius:20px 20px 0 0;width:100%;max-height:92dvh}.class-sheet-dialog{width:100%}.timetable-groups>.class-session-sheet{top:auto;bottom:0;left:0;transform:none}.class-sheet-header{padding:18px 16px 14px}.class-sheet-section{padding:18px 16px 20px}.class-sheet-grid,.material-create-grid,.class-sheet-record-fields{grid-template-columns:1fr}.class-sheet-grid .span-2,.material-create-grid .span-2,.class-sheet-record-fields>.class-sheet-section-heading,.class-sheet-record-fields>.class-sheet-more{grid-column:1}.class-sheet-time-grid,.material-progress-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.class-sheet-footer{padding:10px 16px calc(10px + env(safe-area-inset-bottom))}.class-sheet-save-area .form-error{max-width:150px}}.timetable-route{min-width:0}.timetable-screen{background:#fbfaf7;border:1px solid #e1ddd6;border-radius:19px;gap:0;min-width:0;display:grid;overflow:hidden;box-shadow:0 12px 25px #39322a14}.timetable-app-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:22px 20px 16px;display:flex}.timetable-app-head small{color:var(--sage-dark);font-size:.72rem;font-weight:700}.timetable-app-head h1{font:700 27px/1.2 var(--font-heading);letter-spacing:-.04em;margin:4px 0 0}.timetable-toolbar,.timetable-range,.timetable-week-nav,.timetable-primary-actions{align-items:center;display:flex}.timetable-toolbar{justify-content:space-between;gap:18px;padding:18px 16px 12px}.timetable-range{flex:1;justify-content:space-between;gap:14px;min-width:0}.timetable-range .section-label{color:var(--muted);letter-spacing:.08em;margin:0 0 8px;font-size:.68rem;font-weight:700}.timetable-range strong{font-size:.86rem}.timetable-week-nav,.timetable-primary-actions{gap:6px}.timetable-week-nav button,.timetable-primary-actions button,.plan-move-actions button,.challenge-manager button,.challenge-form-actions button{min-height:var(--target-size);border:1px solid var(--line);color:var(--ink);background:var(--sheet);font:inherit;border-radius:4px;padding:0 12px;font-size:.76rem;font-weight:740}.timetable-week-nav button:first-child,.timetable-week-nav button:last-child{width:var(--target-size);padding:0}.timetable-primary-actions .primary-button,.plan-move-actions .primary-button,.challenge-form-actions .primary-button,.blank-fill-action{border-color:var(--sage-dark);color:var(--sheet);background:var(--sage-dark)}.fixed-timetable-settings{border:1px solid var(--line);background:var(--sheet-muted);margin:0 16px 12px;padding:14px 16px}.fixed-timetable-settings .timetable-editor{box-shadow:none;background:0 0;border:0;padding:0}.weekly-paper-board{border:1px solid var(--line);background:var(--sheet);min-width:0;box-shadow:none;border-radius:0;margin:0 16px 90px;position:relative;overflow:hidden}.weekly-plan-scroller{overscroll-behavior:contain;scrollbar-gutter:stable;touch-action:pan-x pan-y;max-height:calc(100dvh - 238px);overflow:auto}.weekly-plan-table{--weekly-row-height:68px;border-collapse:separate;border-spacing:0;table-layout:fixed;width:100%;min-width:1060px;color:var(--ink);background:var(--sheet)}.weekly-plan-table tbody>tr:not(.weekly-meal-row){height:var(--weekly-row-height)}.weekly-plan-table .weekly-time-column{width:40px}.weekly-plan-table th,.weekly-plan-table td{border-right:1px solid var(--paper-rule);border-bottom:1px solid var(--paper-rule);vertical-align:top;padding:0}.weekly-plan-table th:last-child,.weekly-plan-table td:last-child{border-right:0}.weekly-plan-table thead th{z-index:5;height:48px;color:var(--ink);background:color-mix(in srgb, var(--sheet-muted) 78%, var(--sheet));text-align:center;padding:6px;font-size:.76rem;font-weight:780;position:sticky;top:0}.weekly-plan-table thead th:first-child{z-index:7;left:0}.weekly-plan-table thead th[aria-current=date]{color:var(--sage-dark);background:var(--sage-soft)}.weekly-plan-table thead small{color:var(--muted);font-variant-numeric:tabular-nums;margin-top:2px;font-size:.62rem;font-weight:650;display:block}.weekly-plan-table tbody>tr>th[scope=row]{z-index:4;width:40px;color:var(--muted);background:color-mix(in srgb, var(--sheet-muted) 70%, var(--sheet));font-variant-numeric:tabular-nums;text-align:center;padding:8px 4px;font-size:.66rem;font-weight:700;position:sticky;left:0}.weekly-empty-cell,.weekly-plan-cell{touch-action:pan-x pan-y;min-height:67px}.weekly-plan-cell:has(.study-plan-card) .study-cell-heading{display:none}.weekly-empty-cell{background:var(--sheet)}.weekly-plan-empty-add{width:100%;color:color-mix(in srgb, var(--muted) 55%, transparent);opacity:.42;border:0;border-radius:0;place-items:center;padding:0;font-size:1rem;display:grid}.weekly-plan-empty-add:hover,.weekly-plan-empty-add:focus-visible{color:var(--accent);background:color-mix(in srgb, var(--accent) 6%, var(--sheet));opacity:1}.weekly-plan-empty-add:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.weekly-plan-cell{background:var(--sheet);align-content:start;gap:2px;padding:6px;transition:background-color .18s cubic-bezier(.22,1,.36,1),opacity .18s cubic-bezier(.22,1,.36,1);display:grid;position:relative}.study-cell-heading{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:6px;min-height:25px;display:grid}.study-cell-heading strong{text-overflow:ellipsis;white-space:nowrap;font-size:.7rem;font-weight:760;overflow:hidden}.study-cell-heading>span:last-child{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.6rem}.schedule-kind-label,.plan-kind-label{border:1px solid color-mix(in srgb, var(--sage) 38%, var(--line));min-height:22px;color:var(--sage-dark);background:color-mix(in srgb, var(--sage-soft) 74%, var(--sheet));white-space:nowrap;border-radius:2px;place-items:center;padding:0 6px;font-size:.59rem;font-weight:800;display:inline-grid}.weekly-cell-plans{gap:5px;display:grid}.empty-slot-label{min-height:44px;color:color-mix(in srgb, var(--muted) 66%, transparent);place-items:center;font-size:.63rem;display:grid}.weekly-paper-board .study-plan-card{border:1px solid color-mix(in srgb, var(--sage) 34%, var(--line));min-width:0;color:var(--ink);background:var(--sage-soft);box-shadow:none;cursor:grab;touch-action:pan-x pan-y;-webkit-user-select:none;user-select:none;border-radius:7px;padding:9px;transition:transform .19s cubic-bezier(.22,1,.36,1),box-shadow .19s cubic-bezier(.22,1,.36,1),opacity .16s ease-out;position:relative}.weekly-paper-board .study-plan-card.is-touch-movable{touch-action:none}.weekly-paper-board .study-plan-card.is-challenge{border-style:dashed;border-color:var(--sage);background:color-mix(in srgb, var(--sage-soft) 35%, var(--sheet))}.weekly-paper-board .study-plan-card.is-learning-signal{background:color-mix(in srgb, var(--sage-soft) 62%, var(--sheet))}.weekly-paper-board .study-plan-card-head{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:7px;display:grid}.weekly-paper-board .plan-kind-label{min-height:0;color:var(--sage-dark);background:0 0;border:0;align-self:start;padding:2px 0}.weekly-paper-board .plan-state,.weekly-paper-board .plan-card-actions{display:none}.weekly-paper-board .plan-card-kicker{color:var(--muted);justify-content:space-between;gap:5px;margin-bottom:2px;font-size:.57rem;font-weight:650;display:flex}.weekly-paper-board .plan-open-control{width:100%;min-height:44px;color:var(--ink);font:inherit;text-align:left;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;border-radius:0;padding:0;font-size:.72rem;font-weight:780;overflow:hidden}.weekly-paper-board .study-plan-card.is-lifted{z-index:12;cursor:grabbing;transform:translateY(-5px)rotate(-1.2deg)scale(1.035);box-shadow:0 15px 26px #3f4b3e33}.weekly-paper-board .study-plan-card.is-origin{opacity:.48}.weekly-plan-cell.is-valid-target{background:color-mix(in srgb, var(--sage-soft) 82%, var(--sheet));box-shadow:none;outline:1.5px dashed var(--sage-dark);outline-offset:-7px}.weekly-plan-cell.is-muted-target{opacity:.48;background:var(--sheet-muted)}.drop-target-label{z-index:2;color:var(--sage-dark);pointer-events:none;place-items:end center;padding-bottom:5px;font-size:.61rem;font-weight:800;display:grid;position:absolute;inset:5px}.fixed-schedule-entry{border:1px solid var(--line);width:100%;min-height:68px;color:var(--ink);background:var(--sheet-muted);font:inherit;text-align:left;border-radius:5px;align-content:start;justify-items:start;gap:4px;padding:9px;display:grid}.fixed-schedule-entry:disabled{color:var(--ink);opacity:1}.fixed-schedule-entry.is-class{background:color-mix(in srgb, var(--schedule-subject) 9%, var(--paper));height:100%;box-shadow:inset 0 3px 0 color-mix(in srgb, var(--schedule-subject) 30%, transparent);border:0;border-radius:0}.fixed-schedule-entry.is-class .schedule-kind-label{border-color:color-mix(in srgb, var(--schedule-subject) 22%, var(--line));color:var(--ink);background:color-mix(in srgb, var(--schedule-subject) 9%, var(--paper));display:none}.fixed-schedule-entry.is-class small{display:none}.fixed-schedule-entry strong,.fixed-schedule-entry small{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.fixed-schedule-entry strong{font-size:.72rem}.fixed-schedule-entry small{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.58rem}.weekly-meal-row th{height:44px;color:var(--muted);background:var(--sheet-muted);text-align:left;padding:8px 12px;font-size:.68rem;font-weight:700}.weekly-meal-row .schedule-kind-label{margin-right:8px}.planner-inline-feedback{border-bottom:1px solid var(--rose-line);color:#744d48;background:color-mix(in srgb, var(--rose) 58%, var(--sheet));margin:0;padding:9px 12px;font-size:.72rem;font-weight:720}.planner-toast{z-index:50;right:22px;bottom:calc(82px + env(safe-area-inset-bottom));border:1px solid color-mix(in srgb, var(--ink) 80%, var(--line));max-width:min(440px,100vw - 32px);min-height:48px;color:var(--sheet);background:var(--ink);border-radius:5px;align-items:center;gap:10px;padding:6px 8px 6px 14px;font-size:.72rem;display:flex;position:fixed;box-shadow:0 14px 32px #28252033}.planner-toast>span{min-width:0}.planner-toast button{min-height:44px;color:color-mix(in srgb, var(--sage-soft) 90%, var(--sheet));font:inherit;white-space:nowrap;background:0 0;border:0;padding:0 8px;font-size:.7rem;font-weight:800}.blank-fill-sheet,.plan-move-sheet,.fixed-block-sheet{border:1px solid var(--line);width:min(100%,620px);max-height:min(88dvh,760px);color:var(--ink);background:var(--sheet);border-radius:9px;overflow:auto;box-shadow:0 24px 64px #47403429}.resident-plan-target{border-radius:6px;position:relative}.resident-plan-target.is-valid-target{box-shadow:0 0 0 2px var(--sage)}.weekly-plan-cell.is-valid-target .resident-plan-target.is-valid-target{box-shadow:none}.plan-move-form,.fixed-block-sheet form{gap:16px;padding:20px;display:grid}.plan-move-form label,.fixed-block-sheet label{color:var(--muted);gap:7px;font-size:.72rem;font-weight:750;display:grid}.plan-move-form select,.fixed-block-sheet input{min-height:44px}.fixed-block-sheet{border:1px solid var(--line);background:var(--sheet);width:min(100%,520px);max-height:min(88dvh,720px);overflow:auto}.fixed-block-sheet>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;padding:20px;display:flex}.fixed-block-actions{justify-content:flex-end;gap:8px;display:flex}.fixed-block-error{color:#764744;margin:0;font-size:.74rem;font-weight:700}.plan-move-actions button,.fixed-block-actions button{min-height:44px}.blank-fill-sheet>header,.plan-move-sheet>header{border-bottom:2px solid var(--ink);justify-content:space-between;align-items:flex-start;gap:16px;padding:20px 22px 16px;display:flex}.blank-fill-sheet>header>button,.plan-move-sheet>header>button{width:var(--target-size);color:var(--muted);background:0 0;border:0;padding:0}.blank-fill-sheet>header span,.plan-move-sheet>header span{color:var(--sage-dark);font-size:.68rem;font-weight:800}.blank-fill-sheet>header h2,.plan-move-sheet>header h2{letter-spacing:-.04em;margin:2px 0 0;font-size:1.55rem}.blank-fill-sheet>header p,.plan-move-sheet>header p{color:var(--muted);margin:5px 0 0;font-size:.72rem}.blank-fill-body{gap:18px;padding:20px 22px 24px;display:grid}.blank-fill-action{border-radius:4px;width:100%;min-height:48px;font-weight:800}.challenge-manager{border-top:1px solid var(--line)}.challenge-manager>header{justify-content:space-between;align-items:center;gap:12px;padding:13px 0 9px;display:flex}.challenge-manager h3{margin:0;font-size:.86rem}.challenge-manager ul{margin:0;padding:0;list-style:none}.challenge-manager li{border-top:1px solid var(--paper-rule);grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:6px;min-height:58px;display:grid}.challenge-manager li>div{min-width:0;display:grid}.challenge-manager li strong,.challenge-manager li span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.challenge-manager li strong{font-size:.77rem}.challenge-manager li span,.blank-fill-empty{color:var(--muted);font-size:.66rem}.challenge-form{border-top:2px solid var(--sage);grid-template-columns:2fr 1fr 1fr;gap:12px;padding-top:16px;display:grid}.challenge-form label{color:var(--muted);gap:5px;font-size:.68rem;font-weight:720;display:grid}.challenge-form :is(input,select,textarea){width:100%;min-height:var(--target-size);border:1px solid var(--line);color:var(--ink);background:var(--sheet);font:inherit;border-radius:4px;padding:8px 10px}.challenge-checklist-field,.challenge-form-actions{grid-column:1/-1}.challenge-form textarea{resize:vertical;min-height:72px}.challenge-form-actions,.plan-move-actions{justify-content:flex-end;gap:7px;display:flex}.plan-move-actions{padding:18px 22px 22px}@media (hover:hover){.timetable-week-nav button:hover,.timetable-primary-actions button:not(.primary-button):hover,.challenge-manager button:hover,.plan-move-actions button:not(.primary-button):hover{border-color:color-mix(in srgb, var(--sage) 50%, var(--line));background:var(--sage-soft)}.weekly-paper-board .study-plan-card[draggable=true]:hover{transform:translateY(-2px);box-shadow:0 8px 16px #3f4b3e1a}}@media (width<=760px){.timetable-toolbar{align-items:flex-start;padding-inline:12px}.timetable-range{gap:7px;display:grid}.timetable-range h2{font-size:1.34rem}.timetable-week-nav button{min-height:44px}.timetable-primary-actions{align-self:stretch}.timetable-primary-actions button{min-height:44px;padding-inline:10px}.weekly-plan-scroller{--mobile-day-width:clamp(104px, calc((100vw - 44px) / 3), 128px);overscroll-behavior-inline:contain;width:100vw;max-height:calc(100dvh - 258px);margin-left:calc(50% - 50vw)}.weekly-plan-table{--weekly-row-height:68px;width:max-content;min-width:100%}.weekly-plan-table .weekly-time-column,.weekly-plan-table tbody>tr>th[scope=row]{width:44px}.weekly-plan-table thead th:not(:first-child),.weekly-plan-table tbody td{width:var(--mobile-day-width);min-width:var(--mobile-day-width)}.weekly-plan-table thead th:first-child,.weekly-plan-table tbody>tr>th[scope=row]{left:0}.weekly-plan-table .weekly-empty-cell,.weekly-plan-table .weekly-plan-cell{background:0 0;min-height:68px}.schedule-kind-label,.plan-kind-label{display:none}.blank-fill-sheet,.plan-move-sheet{border-bottom:0;border-left:0;border-right:0;border-radius:13px 13px 0 0;width:100%;max-height:92dvh}.challenge-form{grid-template-columns:1fr 1fr}.challenge-form label:first-child,.challenge-checklist-field,.challenge-form-actions{grid-column:1/-1}.planner-toast{right:12px;bottom:calc(78px + env(safe-area-inset-bottom));max-width:none;left:12px}}@media (width<=440px){.timetable-toolbar{grid-template-columns:minmax(0,1fr) auto;display:grid}.timetable-range h2{font-size:1.2rem}.timetable-primary-actions button:first-child{color:#0000;white-space:nowrap;width:44px;padding:0;overflow:hidden}.timetable-primary-actions button:first-child:before{content:"+";color:var(--ink);font-size:1.15rem}.blank-fill-body,.blank-fill-sheet>header,.plan-move-sheet>header,.plan-move-actions{padding-left:16px;padding-right:16px}}@media (prefers-reduced-motion:reduce){.weekly-paper-board .study-plan-card,.weekly-plan-cell{transition:none}.weekly-paper-board .study-plan-card.is-lifted{transform:none}}:is(.secondary-button,.plan-icon-action,.timeline-row-actions button,.timeline-day-review-actions button,.timetable-week-nav button,.timetable-primary-actions button:not(.primary-button),.material-add-trigger,.text-button){border-color:color-mix(in srgb, var(--sage) 22%, transparent);box-shadow:none;background:0 0}.timetable-screen{box-shadow:none;background:0 0;border:0;border-radius:0;gap:8px;overflow:visible}.timetable-app-head{border-bottom-color:color-mix(in srgb, var(--sage) 18%, var(--line));padding:8px 4px 14px}.timetable-toolbar{padding:8px 4px 12px}.weekly-paper-board{background:0 0;border:0;margin-left:0;margin-right:0;overflow:visible}.weekly-plan-scroller{border-top:1px solid color-mix(in srgb, var(--sage) 18%, var(--line));border-bottom:1px solid color-mix(in srgb, var(--sage) 18%, var(--line));background:color-mix(in srgb, var(--sheet) 48%, transparent);border-radius:14px}.weekly-plan-table{background:0 0}.weekly-plan-table thead th,.weekly-plan-table tbody>tr>th[scope=row]{background:color-mix(in srgb, var(--sheet) 90%, var(--sage-soft))}.weekly-plan-cell{background:color-mix(in srgb, var(--sheet) 36%, transparent)}:is(.study-plan-card,.class-session-sheet,.plan-move-sheet,.blank-fill-sheet){border-color:var(--acrylic-border);background:var(--acrylic-surface);box-shadow:var(--acrylic-depth), inset 0 1px 0 #ffffffc2, inset 0 -2px 0 color-mix(in srgb, var(--sage) 8%, transparent)}@media (width<=1024px){.weekly-plan-scroller{--mobile-day-width:clamp(104px, calc((100vw - 44px) / 3), 128px);overscroll-behavior-x:contain;overscroll-behavior-y:auto;scrollbar-gutter:auto;-webkit-overflow-scrolling:touch;background:0 0;border-radius:0;width:100vw;max-width:none;max-height:none;margin-left:calc(50% - 50vw);overflow:auto clip}.weekly-plan-table{--weekly-row-height:44px;width:max-content;min-width:100%}.weekly-plan-table .weekly-time-column,.weekly-plan-table tbody>tr>th[scope=row]{width:44px}.weekly-plan-table thead th:not(:first-child),.weekly-plan-table tbody td{width:var(--mobile-day-width);min-width:var(--mobile-day-width)}.weekly-plan-table .weekly-empty-cell,.weekly-plan-table .weekly-plan-cell{background:0 0;min-height:44px}.fixed-schedule-entry.is-class{min-height:44px}.weekly-plan-cell.is-study-cell .empty-slot-label{display:none}}.planner-workspace-route{gap:16px;min-width:0}.planner-reference-head{border-bottom:1px solid var(--line);align-items:center;gap:12px;min-height:58px;padding:8px 4px 10px;display:flex}.planner-reference-head>div{gap:1px;display:grid}.planner-reference-head span{color:var(--sage-dark);letter-spacing:.08em;font-size:.61rem;font-weight:800}.planner-reference-head strong{font:700 1.08rem/1.2 var(--font-heading)}.planner-menu-button{border:1px solid var(--line);width:44px;min-height:44px;color:var(--ink);background:var(--sheet-muted);border-radius:10px;place-items:center;padding:0;font-size:1rem;display:grid}.planner-sidebar-backdrop{z-index:20;background:#2c2a2640;border:0;border-radius:0;min-height:100dvh;padding:0;position:fixed;inset:0}.planner-subject-sidebar{z-index:30;width:290px;max-width:85vw;padding:calc(18px + env(safe-area-inset-top)) 14px calc(100px + env(safe-area-inset-bottom));color:var(--ink);background:var(--paper);overscroll-behavior:contain;position:fixed;top:0;bottom:0;left:0;overflow-y:auto;box-shadow:2px 0 18px #2c2a261f}.planner-sidebar-head{align-items:center;gap:10px;margin:2px 0 14px;display:flex}.planner-sidebar-head h2{font:700 20px/1.25 var(--font-heading);letter-spacing:-.03em;flex:1;margin:0}.planner-sidebar-head button,.planner-subject-sidebar .mini-x{width:44px;min-height:44px;color:var(--muted);background:0 0;border:0;place-items:center;padding:0;font-size:1rem;display:grid}.planner-subject-sidebar .stats-box{border:1px solid var(--line);background:var(--sheet);border-radius:12px;margin-bottom:14px;padding:14px}.planner-subject-sidebar .stats-box h3{font:800 .76rem/1.3 var(--font-body);margin:0 0 12px}.planner-subject-sidebar .stats-box h3 small{color:var(--muted);font-size:.62rem;font-weight:600}.planner-subject-sidebar .stats-legend{gap:7px;display:grid}.planner-subject-sidebar .stats-row{align-items:center;gap:7px;min-height:28px;font-size:.69rem;display:flex}.planner-subject-sidebar .stats-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.planner-subject-sidebar .stats-val{color:var(--muted);white-space:nowrap;font-size:.64rem}.planner-subject-sidebar .dot{border-radius:50%;flex:0 0 10px;width:10px;height:10px}.planner-subject-sidebar .week-nav{background:var(--sheet-muted);border-radius:10px;align-items:center;gap:8px;margin:2px 0 14px;padding:4px;display:flex}.planner-subject-sidebar .week-nav .nav-btn{border:1px solid var(--line);width:44px;min-height:44px;color:var(--ink);background:var(--sheet);border-radius:8px;flex:0 0 44px;place-items:center;padding:0;font-size:1rem;display:grid}.planner-subject-sidebar .week-nav-label{text-align:center;flex:1;min-width:0;font-size:.68rem;font-weight:760}.planner-subject-card{border:1px solid var(--line);background:var(--sheet);border-radius:12px;margin-bottom:10px;padding:10px 12px;box-shadow:0 1px 4px #2c2a260d}.planner-subject-card .subject-head{align-items:center;gap:8px;min-height:44px;display:flex}.planner-subject-card .subject-name{min-width:0;font:750 .78rem/1.35 var(--font-body);text-overflow:ellipsis;white-space:nowrap;flex:1;margin:0;overflow:hidden}.planner-archive-status{border:1px solid var(--line);min-height:24px;color:var(--muted);background:var(--sheet-muted);white-space:nowrap;border-radius:999px;flex:none;place-items:center;padding:0 7px;font-size:.6rem;font-weight:760;display:inline-grid}.planner-target-remaining{color:var(--muted);margin-top:2px;font-size:.63rem;font-weight:700;display:block}.planner-subject-sidebar .item-row{border-top:1px solid var(--line);margin-top:8px;padding-top:8px}.planner-subject-sidebar .item-top{justify-content:space-between;align-items:center;gap:6px;min-height:28px;display:flex}.planner-subject-sidebar .item-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.72rem;font-weight:560;overflow:hidden}.planner-subject-sidebar .item-num{color:var(--muted);white-space:nowrap;font-size:.64rem}.planner-subject-sidebar .bar-track{background:var(--sheet-muted);border-radius:5px;height:6px;margin-top:5px;overflow:hidden}.planner-subject-sidebar .bar-fill{border-radius:5px;height:100%;transition:width .25s ease-out;display:block}.planner-subject-sidebar .item-actions{justify-content:flex-end;gap:2px;margin-top:2px;display:flex}.planner-subject-sidebar .item-actions button,.planner-subject-sidebar .add-link{min-height:44px;color:var(--sage-dark);background:0 0;border:0;padding:0 8px;font-size:.66rem;font-weight:760}.planner-subject-sidebar .add-link{text-align:left;width:100%}.planner-empty-note{color:var(--muted);margin:0;padding:3px 0 5px;font-size:.67rem}.planner-subject-sidebar .archive-toggle{border:1px dashed var(--line);width:100%;min-height:44px;color:var(--muted);background:var(--sheet-muted);font:740 .68rem/1.35 var(--font-body);text-align:left;border-radius:12px;margin-bottom:10px;padding:8px 12px}.planner-subject-sidebar .import-box{border:1px solid var(--line);border-radius:12px;margin-bottom:10px;padding:8px}.planner-subject-sidebar .import-row{border-bottom:1px solid var(--line);align-items:center;gap:7px;min-height:52px;display:flex}.planner-subject-sidebar .import-row:last-child{border-bottom:0}.planner-subject-sidebar .import-row span{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.7rem;overflow:hidden}.planner-subject-sidebar .import-row button{min-height:44px;color:var(--sage-dark);background:0 0;border:0;padding:0 10px;font-size:.66rem;font-weight:760}.planner-sidebar-primary{border:1px solid var(--sage-dark);width:100%;min-height:48px;color:var(--sheet);background:var(--sage-dark);font:760 .72rem/1 var(--font-body);border-radius:9px}.planner-sidebar-form{border-top:1px solid var(--line);margin-top:8px;padding-top:10px}.planner-sidebar-form .flow-form-transaction-surface,.planner-sidebar-form .flow-prompt{border:0;padding:0}.planner-sidebar-form .flow-form-actions{padding:10px 0 0}.planner-sidebar-field{gap:5px;display:grid}.planner-sidebar-field>span,.planner-sidebar-check>span{color:var(--muted);font-size:.66rem;font-weight:720}.planner-sidebar-field input{border:0;border-bottom:1px solid var(--line);width:100%;min-height:48px;color:var(--ink);font:inherit;background:0 0;border-radius:0;padding:8px 10px}.planner-sidebar-check{align-items:center;gap:9px;min-height:44px;display:flex}.planner-sidebar-check input{width:22px;min-height:22px}.planner-subject-sidebar .swatches{flex-wrap:wrap;gap:8px;display:flex}.planner-subject-sidebar .swatches .choice-chip{border-radius:50%;width:44px;min-height:44px;padding:0;font-size:.58rem;overflow:hidden}.planner-subject-sidebar .swatches .choice-chip:first-child{background:#777bb2}.planner-subject-sidebar .swatches .choice-chip:nth-child(2){background:#647db0}.planner-subject-sidebar .swatches .choice-chip:nth-child(3){background:#5c8992}.planner-subject-sidebar .swatches .choice-chip:nth-child(4){background:#718171}.planner-subject-sidebar .swatches .choice-chip:nth-child(5){background:#a9796c}.planner-subject-sidebar .swatches .choice-chip:nth-child(6){background:#9c6c82}.planner-subject-sidebar .swatches .choice-chip span{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;overflow:hidden}.planner-subject-sidebar .swatches .choice-chip[aria-checked=true]{border-color:var(--ink);box-shadow:inset 0 0 0 3px var(--paper)}.planner-undo-toast{right:auto;bottom:calc(22px + env(safe-area-inset-bottom));z-index:80;max-width:90vw;min-height:52px;color:var(--paper);background:var(--ink);border-radius:999px;align-items:center;gap:10px;padding:5px 6px 5px 16px;font-size:.68rem;display:flex;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #2c2a2640}.planner-undo-toast span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.planner-undo-toast button{min-height:44px;color:var(--paper);font:760 .66rem/1 var(--font-body);background:#ffffff24;border:0;border-radius:999px;flex:none;padding:0 12px}.planner-modal-backdrop{z-index:40;background:#2c2a264d;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.planner-modal{border:1px solid var(--line);background:var(--paper);border-radius:16px;width:min(100%,360px);max-height:min(84dvh,720px);padding:18px;overflow:auto}.planner-modal>header{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding-bottom:12px;display:flex}.planner-modal>header h2{flex:1;margin:0;font-size:1rem}.planner-modal>header button{background:0 0;border:0;width:44px;padding:0}.planner-workspace-tabs{width:100%;padding-inline:max(2px, env(safe-area-inset-left)) max(2px, env(safe-area-inset-right));overscroll-behavior-inline:contain;scrollbar-width:thin;gap:4px;display:flex;overflow-x:auto}.planner-workspace-tab{min-width:0;min-height:44px;color:var(--muted);background:0 0;border:1px solid #0000;border-radius:4px;flex:1 1 0;padding:0 14px;font-size:.72rem;font-weight:740;transition:color .16s ease-out,background-color .16s ease-out,border-color .16s ease-out}.planner-workspace-tab[aria-selected=true]{border-color:var(--line);color:var(--sage-dark);background:var(--sage-soft)}.planner-workspace-panel{min-width:0;overflow:hidden}.planner-workspace-panels{display:contents}.planner-todo-inbox{margin-top:10px}.reference-month-todo-category{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;display:grid}.reference-month-todo-category :is(select,input){border:1px solid var(--line);min-height:40px;color:var(--ink);background:color-mix(in srgb, var(--sheet) 92%, transparent);border-radius:6px}.reference-month-todo-groups{gap:8px;display:grid}.planner-todo-group{border:1px solid color-mix(in srgb, var(--ink) 16%, transparent);background:color-mix(in srgb, var(--sheet) 64%, transparent);box-shadow:0 1px 3px color-mix(in srgb, var(--ink) 5%, transparent);border-radius:8px;overflow:clip}.planner-todo-group>summary{cursor:pointer;grid-template-columns:14px minmax(0,1fr) auto 40px;align-items:center;min-height:44px;padding:0 4px 0 12px;list-style:none;display:grid}.planner-todo-group>summary::-webkit-details-marker{display:none}.planner-todo-group>summary>i{border-radius:4px;width:11px;height:11px}.planner-todo-group>summary>strong{font-size:14px;font-weight:720}.planner-todo-group>summary>span{color:var(--muted);font-size:12px}.planner-todo-group>summary>button,.planner-todo-drag{appearance:none;min-width:40px;min-height:40px;color:color-mix(in srgb, var(--muted) 62%, transparent);box-shadow:none;font:inherit;cursor:grab;background:0 0;border:0;border-radius:4px;place-items:center;margin:0;padding:0;line-height:1;display:grid}.planner-todo-group .reference-month-todo-list{border-top-color:color-mix(in srgb, var(--ink) 8%, transparent)}.planner-todo-group .reference-month-todo{grid-template-columns:44px minmax(0,1fr) 40px;min-height:48px;padding-inline:4px}.planner-todo-group-add{appearance:none;min-width:44px;min-height:40px;color:var(--muted);box-shadow:none;font:inherit;background:0 0;border:0;border-radius:4px;place-items:center;margin-left:8px;padding:0;line-height:1;display:grid}.planner-todo-inbox :is(.reference-month-todo-check,.reference-month-todo-main){appearance:none;box-shadow:none;font:inherit;background:0 0;border:0;border-radius:0;margin:0}.planner-todo-category-composer{border-top:1px solid color-mix(in srgb, var(--ink) 10%, transparent);grid-template-columns:minmax(0,1fr) auto auto;gap:6px;margin-top:8px;padding-top:8px;display:grid}.planner-todo-category-composer input{border:1px solid var(--line);background:color-mix(in srgb, var(--sheet) 78%, transparent);border-radius:6px;min-width:0;height:42px;padding-inline:10px}.planner-todo-category-composer button,.reference-month-todo-add{appearance:none;border:1px solid color-mix(in srgb, var(--ink) 10%, transparent);min-height:42px;color:var(--ink);background:color-mix(in srgb, var(--sheet) 64%, transparent);box-shadow:none;font:inherit;border-radius:6px;margin:0;padding:0 10px;font-size:12px}:is(.reference-month-head,.reference-week-panel-head,.daily-panel-head){grid-template-columns:44px minmax(0,1fr) 44px auto;align-items:center;gap:4px;min-height:48px;display:grid}:is(.reference-month-head,.reference-week-panel-head,.daily-panel-head)>button{border:1px solid color-mix(in srgb, var(--ink) 10%, transparent);width:44px;min-width:44px;height:44px;min-height:44px;color:var(--ink);background:color-mix(in srgb, var(--sheet) 78%, transparent);box-shadow:0 1px 2px color-mix(in srgb, var(--ink) 6%, transparent);border-radius:8px;padding:0}:is(.reference-month-head,.reference-week-panel-head,.daily-panel-head)>:is(h1,strong){text-align:center;font-family:var(--font-body);margin:0;font-size:14px;font-weight:720}.reference-month-todo-subjects{border:0;gap:5px;margin:0;padding:0;display:flex;overflow-x:auto}.reference-month-todo-subjects legend{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.reference-month-todo-subjects button{border-radius:6px;min-width:max-content;min-height:40px;padding-inline:12px}.reference-month-todo-subjects button[aria-pressed=true]{border-color:var(--sage-dark);color:var(--sage-dark);background:var(--sage-soft)}@media (width>=768px){.planner-reference-head{min-height:97px;padding:22px 20px 16px}.planner-workspace-route{max-width:1440px}.planner-workspace-panels{grid-template-columns:minmax(0,1fr) minmax(0,1.04fr);align-items:stretch;gap:10px;display:grid}.planner-workspace-panel,.planner-workspace-panel[hidden]{border:1px solid color-mix(in srgb, var(--ink) 12%, transparent);background:color-mix(in srgb, var(--sheet) 72%, transparent);border-radius:8px;min-height:calc(100dvh - 254px);padding:8px;display:none}#planner-panel-0{grid-area:1/2;display:block}#planner-panel-2{grid-area:1/1;display:block}.planner-workspace-panels:has(#planner-panel-1:not([hidden])) #planner-panel-1{grid-area:1/1;display:block}.planner-workspace-panels:has(#planner-panel-1:not([hidden])) #planner-panel-2{display:none}.planner-workspace-panel .weekly-paper-board,.planner-workspace-panel .reference-week-grid,.planner-workspace-panel .reference-week-grid-scroller{max-width:100%;overflow-x:auto}}.planner-daily-feedback{z-index:18;right:18px;bottom:calc(92px + env(safe-area-inset-bottom));border:1px solid var(--line);max-width:min(360px,100vw - 36px);color:var(--ink);background:var(--paper);border-radius:8px;margin:0;padding:10px 14px;font-size:.7rem;font-weight:720;position:fixed;box-shadow:0 8px 20px #2c2a261f}.planner-workspace-placeholder{align-content:start;gap:32px;min-height:min(560px,100dvh - 190px);padding:8px 4px 24px;display:grid}.planner-workspace-placeholder header{border-bottom:1px solid var(--line);padding-bottom:14px}.planner-workspace-placeholder header small{color:var(--sage-dark);font-size:.72rem;font-weight:700}.planner-workspace-placeholder h1{font:700 27px/1.2 var(--font-heading);letter-spacing:-.04em;margin:4px 0 0}.planner-workspace-empty{border-top:1px solid var(--line);border-bottom:1px solid var(--line);max-width:64ch;padding-block:24px}.planner-workspace-empty h2{margin-bottom:8px;font-size:1.15rem}.planner-workspace-empty p{color:var(--muted);margin:0}.planner-workspace-route .daily-plan-panel{gap:12px;min-width:0;padding:8px 4px 24px;display:grid}.planner-workspace-route .daily-panel-head{border-bottom:1px solid var(--line);justify-content:center;align-items:center;gap:10px;padding-bottom:10px;display:flex}.planner-workspace-route .daily-panel-head h1{text-align:center;min-width:min(260px,60vw);font:700 23px/1.2 var(--font-heading);margin:0}.planner-workspace-route .daily-panel-head button{border:1px solid var(--line);width:44px;min-height:44px;color:var(--ink);background:var(--sheet);border-radius:4px;place-items:center;padding:0;font-size:1.25rem;display:grid}.planner-workspace-route .day-add-card{border:1px solid var(--line);background:var(--sheet);border-radius:5px;padding:12px}.planner-workspace-route .day-add-head,.planner-workspace-route .day-add-modes,.planner-workspace-route .day-add-fields{align-items:end;gap:8px;display:flex}.planner-workspace-route .day-add-head{justify-content:space-between;align-items:center;margin-bottom:10px}.planner-workspace-route .day-add-head h2{font:700 .84rem/1.2 var(--font-body);margin:0}.planner-workspace-route .day-add-head p{color:var(--muted);margin:3px 0 0;font-size:.64rem}.planner-workspace-route .day-add-entry{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.planner-workspace-route .day-add-entry>button{border:1px solid var(--line);min-height:48px;color:var(--ink);background:var(--paper);text-align:left;border-radius:5px;align-items:center;gap:8px;padding:7px 10px;display:flex}.planner-workspace-route .day-add-entry>button>span{gap:1px;min-width:0;display:grid}.planner-workspace-route .day-add-entry strong{font-size:.7rem}.planner-workspace-route .day-add-entry small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.58rem;overflow:hidden}.planner-workspace-route .day-add-modes button{border:1px solid var(--line);min-height:36px;color:var(--muted);background:var(--sheet-muted);border-radius:3px;padding:6px 10px;font-size:.68rem}.planner-workspace-route .day-add-modes button[aria-pressed=true]{border-color:var(--sage);color:var(--sage-dark);background:var(--sage-soft)}.planner-workspace-route .day-add-fields{flex-wrap:wrap}.planner-workspace-route .day-add-fields label{min-width:108px;color:var(--muted);flex:120px;gap:3px;font-size:.62rem;display:grid}.planner-workspace-route .day-add-fields .day-add-title{flex-basis:180px}.planner-workspace-route .day-add-fields :is(input,select){border:1px solid var(--line);background:var(--sheet);width:100%;min-height:40px;font:inherit;border-radius:3px;font-size:.72rem}.planner-workspace-route .day-add-fields>button,.planner-workspace-route .import-from-week-btn{border:1px solid var(--sage);min-height:40px;color:var(--sheet);background:var(--sage-dark);border-radius:3px;padding:7px 12px;font-size:.7rem;font-weight:700}.planner-workspace-route .day-instruction,.planner-workspace-route .daily-range-feedback{color:var(--muted);margin:0;font-size:.66rem}.planner-workspace-route .daily-range-feedback{color:var(--sage-dark);font-weight:700}.planner-workspace-route .day-split{align-items:start;gap:10px;min-width:0;display:flex}.planner-workspace-route .day-split-left{flex:0 46%;min-width:0}.planner-workspace-route .daily-time-grid-shell{min-width:0}.planner-workspace-route .hg-compact{cursor:crosshair;touch-action:none;-webkit-user-select:none;user-select:none}.planner-workspace-route .daily-time-grid{border:1px solid color-mix(in srgb, var(--line) 72%, transparent);background:var(--sheet);border-radius:3px;overflow:hidden}.planner-workspace-route .daily-time-row{border-bottom:1px dotted color-mix(in srgb, var(--line) 76%, transparent);height:26px;display:flex;position:relative}.planner-workspace-route .daily-time-row:last-child{border-bottom:0}.planner-workspace-route .daily-time-label{border-inline-end:1px dotted color-mix(in srgb, var(--line) 76%, transparent);width:22px;color:var(--muted);background:var(--sheet-muted);font-variant-numeric:tabular-nums;white-space:nowrap;flex:0 0 22px;place-items:start end;padding:2px 3px 0 0;font-size:.5rem;font-weight:700;line-height:1.15;display:grid;overflow:hidden}.planner-workspace-route .hg-compact .daily-time-label{flex-basis:22px;width:22px}.planner-workspace-route .daily-time-columns{flex:1;min-width:0;display:flex;position:relative}.planner-workspace-route .hg-compact .daily-time-cell{border:0;border-inline-end:1px dotted color-mix(in srgb, var(--line) 62%, transparent);touch-action:inherit;background:0 0;border-radius:0;flex:1;min-width:0;height:100%;min-height:0;padding:0;transition:background-color .14s ease-out}.planner-workspace-route .daily-time-cell:nth-of-type(3n){border-inline-end-color:color-mix(in srgb, var(--line) 82%, transparent)}.planner-workspace-route .daily-time-cell.invalid{background:repeating-linear-gradient(45deg, color-mix(in srgb, var(--line) 32%, transparent), color-mix(in srgb, var(--line) 32%, transparent) 3px, transparent 3px, transparent 6px);cursor:default;pointer-events:none}.planner-workspace-route .daily-time-cell.is-occupied{background:var(--sheet-muted);cursor:not-allowed;opacity:1}.planner-workspace-route .daily-time-cell[aria-selected=true]{background:var(--sage-soft);box-shadow:inset 0 0 0 2px var(--sage)}.planner-workspace-route .daily-grid-seglayer{pointer-events:none;position:absolute;inset:0}.planner-workspace-route .daily-grid-overlay{z-index:2;border:1px solid color-mix(in srgb, var(--sage) 40%, var(--line));min-width:0;color:var(--ink);background:color-mix(in srgb, var(--sage-soft) 86%, var(--sheet));pointer-events:none;text-overflow:ellipsis;white-space:nowrap;border-radius:2px;padding:2px 4px;font-size:.52rem;font-weight:740;line-height:17px;position:absolute;top:1px;bottom:1px;overflow:hidden}.planner-workspace-route .daily-grid-overlay .daybar-label{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.planner-workspace-route .daily-time-grid-message{color:#744d48;min-height:1.4em;margin:7px 0 0;font-size:.68rem;font-weight:700}.planner-workspace-route .day-checklist{border:1px solid var(--line);background:var(--sheet);flex:54%;min-width:0;padding:4px 10px 10px}.planner-workspace-route .chk-group+.chk-group{margin-top:12px}.planner-workspace-route .chk-group-head{border-bottom:1px solid var(--line);color:var(--sage-dark);font-size:.68rem;font-family:var(--font-body);margin:0 0 4px;padding-bottom:4px}.planner-workspace-route .chk-row{border:0;border-top:1px solid var(--paper-rule);width:100%;color:var(--ink);text-align:start;background:0 0;border-radius:0;align-items:start;gap:7px;padding:7px 2px;display:flex}.planner-workspace-route .chk-cycle{min-width:0;min-height:44px;color:inherit;text-align:left;background:0 0;border:0;flex:1;align-items:center;gap:7px;padding:0;display:flex}.planner-workspace-route .chk-actions{flex:none;align-items:center;display:flex}.planner-workspace-route .chk-icon,.planner-workspace-route .chk-assign-btn{min-width:44px;min-height:44px;color:var(--muted);background:0 0;border:0;place-items:center;padding:0;display:grid}.planner-workspace-route .chk-assign-btn{width:auto;color:var(--sage-dark);padding-inline:8px;font-size:.62rem;font-weight:750}.planner-workspace-route .dot{background:var(--sage);border-radius:50%;flex:0 0 8px;width:8px;height:8px;margin-top:7px}.planner-workspace-route button.chk-row:disabled{cursor:default;opacity:1}.planner-workspace-route .chk-box{border:1px solid var(--line);width:22px;height:22px;color:var(--sage-dark);border-radius:50%;flex:0 0 22px;place-items:center;font-size:.7rem;display:grid}.planner-workspace-route .chk-main{flex:1;gap:1px;min-width:0;display:grid}.planner-workspace-route .chk-title{font-size:.7rem;font-weight:700}.planner-workspace-route .chk-time{color:var(--muted);font-size:.62rem}.planner-workspace-route .daily-plan-empty{color:var(--muted);margin:0;padding:20px 0;font-size:.72rem}.planner-workspace-route .import-from-week-btn{justify-content:center;align-items:center;gap:5px;width:100%;margin-top:10px;display:flex}.planner-workspace-route .open-week-link{width:100%;min-height:44px;color:var(--muted);background:0 0;border:0;font-size:.62rem}.planner-modal .flow-form{margin-top:12px}.planner-modal .flow-form-transaction-surface,.planner-modal .flow-prompt{background:0 0;border:0;padding:0}.planner-modal .flow-prompt-control{gap:12px;display:grid}.planner-modal .choice-sheet-trigger,.planner-modal .day-modal-title input,.planner-modal .day-memo-field textarea,.planner-modal :is(input[type=time],input[type=number]){border:1px solid var(--line);width:100%;min-height:50px;color:var(--ink);background:var(--paper);font:650 17px/1.3 var(--font-body);border-radius:7px;padding:10px 12px}.planner-modal .day-modal-title,.planner-modal .day-memo-field{color:var(--muted);gap:4px;font-size:14px;display:grid}.planner-modal :is(.flow-prompt>legend,.flow-prompt-helper,.time-range-choice>legend,.time-range-native label>span,.amount-choice>legend,.status-scale>legend){font-size:14px}.planner-modal :is(.time-range-summary,.amount-choice-value){font-size:17px}.planner-modal .day-memo-field textarea{resize:vertical;min-height:112px}.planner-modal .char-count{color:var(--muted);justify-self:end;font-size:14px}.planner-modal .import-pick-list{border-block:1px solid var(--line);max-height:min(46dvh,340px);display:grid;overflow:auto}.planner-modal .import-pick-row{border-bottom:1px dotted var(--line);min-height:52px;color:var(--ink);text-align:left;background:0 0;align-items:center;gap:9px;padding:7px 2px;display:flex}.planner-modal .import-pick-row input{width:20px;height:20px}.planner-modal .import-pick-row small{color:var(--muted);font-size:14px}.planner-workspace-route .chk-time-button{width:fit-content;min-height:44px;color:var(--muted);text-align:left;background:0 0;border:0;padding:0}.planner-workspace-route .chk-memo{color:var(--muted);font-size:.68rem}.reference-week-panel{color:var(--ink);gap:12px;font-size:15px;display:grid}.reference-week-panel-head{border-bottom:1px dotted color-mix(in srgb, var(--ink) 22%, transparent);grid-template-columns:44px 1fr 44px;align-items:center;display:grid}.reference-week-panel-head>button,.reference-week-step-toggle>button,.reference-week-fixed-editor-head>button,.reference-week-sidebar-entry{min-height:44px;color:inherit;background:0 0;border:0}.reference-week-panel-head strong{text-align:center;font-size:17px}.reference-week-step-toggle{border-bottom:1px dotted color-mix(in srgb, var(--ink) 18%, transparent);grid-template-columns:1fr 1fr;display:grid}.reference-week-step-toggle>button{color:var(--muted);font-size:14px}.reference-week-step-toggle>button[aria-pressed=true]{color:var(--ink);box-shadow:inset 0 -2px var(--sage)}.reference-week-summary{gap:7px;display:grid}.reference-week-subject{border:1px dotted color-mix(in srgb, var(--ink) 20%, transparent);background:color-mix(in srgb, var(--sheet) 94%, transparent);border-radius:10px}.reference-week-subject>header{border-bottom:1px dotted color-mix(in srgb, var(--ink) 16%, transparent);align-items:center;gap:8px;min-height:34px;padding:5px 10px;display:flex}.reference-week-empty{color:var(--muted);margin:0;padding:7px 10px;font-size:13px}.reference-week-subject>header>i,.reference-week-tools i,.reference-week-legend i{border-radius:50%;flex:none;width:9px;height:9px}.reference-week-subject>header small{color:var(--muted);margin-left:auto;font-size:14px}.reference-week-subject article{gap:5px;padding:8px 10px 10px;display:grid}.reference-week-subject article+article{border-top:1px dotted color-mix(in srgb, var(--ink) 14%, transparent)}.reference-week-subject article>div:first-child{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.reference-week-subject h3{font:600 15px/1.35 var(--font-body);margin:0}.reference-week-subject article span,.reference-week-subject article small,.reference-week-hint{color:var(--muted);font-size:14px}.reference-week-progress{background:color-mix(in srgb, var(--line) 58%, transparent);border-radius:99px;height:5px;overflow:hidden}.reference-week-progress>i{border-radius:inherit;height:100%;display:block}.reference-week-sidebar-entry{color:var(--sage-dark);justify-self:center;font-size:15px}.reference-week-fixed-editor-head{justify-content:flex-end;display:flex}.reference-week-fixed-editor-head>button{border:1px dotted color-mix(in srgb, var(--ink) 22%, transparent);border-radius:9px;padding-inline:12px;font-size:14px}.reference-week-fixed-editor{border-block:1px dotted color-mix(in srgb, var(--ink) 18%, transparent);padding-block:8px}.reference-week-tools{scrollbar-width:none;gap:6px;padding-block:2px;display:flex;overflow-x:auto}.reference-week-tool{border:1px dotted color-mix(in srgb, var(--ink) 22%, transparent);min-height:44px;color:var(--muted);background:0 0;border-radius:9px;flex:none;align-items:center;gap:6px;padding:0 11px;font-size:14px;display:inline-flex}.reference-week-tool[aria-checked=true]{border-style:solid;border-color:var(--sage);color:var(--ink);background:var(--sage-soft)}.reference-week-hint{margin:6px 0}.reference-week-scroll{overscroll-behavior-inline:contain;overflow-x:auto}.reference-week-table{border:1px dotted color-mix(in srgb, var(--ink) 20%, transparent);background:color-mix(in srgb, var(--sheet) 96%, transparent);border-radius:10px;min-width:690px}.reference-week-header{border-bottom:1px dotted color-mix(in srgb, var(--ink) 20%, transparent);grid-template-columns:36px repeat(7,minmax(82px,1fr));min-height:54px;display:grid}.reference-week-corner,.reference-week-day-head{border-inline-end:1px dotted color-mix(in srgb, var(--ink) 15%, transparent)}.reference-week-day-head{grid-template-columns:28px 1fr;align-items:center;display:grid}.reference-week-day-head button{min-height:44px;color:var(--muted);background:0 0;border:0;padding:0}.reference-week-day-head button:last-child{place-content:center;font-size:14px;display:grid}.reference-week-day-head small{color:var(--muted);font-size:12px}.reference-week-hour-row{border-bottom:1px dotted color-mix(in srgb, var(--ink) 14%, transparent);grid-template-columns:36px repeat(7,minmax(82px,1fr));display:grid;position:relative}.week-daygroup{border-inline-end:1px dotted color-mix(in srgb, var(--ink) 15%, transparent);grid-template-columns:repeat(2,minmax(0,1fr));display:grid;position:relative;overflow:hidden}.reference-week-hour-label{border-inline-end:1px dotted color-mix(in srgb, var(--ink) 18%, transparent);color:var(--muted);place-items:center;font-size:12px;display:grid}.reference-week-half-cell{border-inline-end:1px dotted color-mix(in srgb, var(--ink) 12%, transparent);background:color-mix(in srgb, var(--week-paint,transparent) 34%, transparent);touch-action:pan-y;position:relative}.reference-week-half-cell[data-painted=fixed]{background:color-mix(in srgb, var(--line) 62%, transparent)}.reference-week-half-cell.invalid{background:color-mix(in srgb, var(--line) 28%, transparent)}.week-day-seglayer{z-index:2;pointer-events:none;position:absolute;inset:2px 0;overflow:hidden}.reference-week-overlay{border-inline-start:2px solid var(--sage-dark);background:color-mix(in srgb, var(--sage-soft) 78%, transparent);min-width:3px;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;border-radius:3px;padding-inline:3px;font-size:11px;line-height:30px;position:absolute;inset-block:0;overflow:hidden}.reference-week-overlay.is-timetable{border-inline-start-color:var(--ink);background:color-mix(in srgb, var(--line) 66%, transparent)}.reference-week-legend{color:var(--muted);flex-wrap:wrap;gap:8px 14px;padding-top:6px;font-size:14px;display:flex}.reference-week-legend span{align-items:center;gap:5px;display:inline-flex}.reference-week-legend .is-fixed{border:1px solid color-mix(in srgb, var(--ink) 20%, transparent);background:var(--line)}.reference-week-todos{border-top:1px dotted color-mix(in srgb, var(--ink) 18%, transparent);gap:8px;min-width:0;padding-top:12px;display:grid}.reference-week-todos-head{justify-content:space-between;align-items:end;gap:16px;display:flex}.reference-week-todos-head small{color:var(--sage-dark);letter-spacing:.08em;font-size:11px;font-weight:760}.reference-week-todos-head h2{font:720 17px/1.25 var(--font-body);letter-spacing:-.025em;margin:1px 0 0}.reference-week-todos-head>span{color:var(--muted);font-size:12px}.reference-week-todos-scroll{border-block:1px dotted color-mix(in srgb, var(--ink) 17%, transparent);overscroll-behavior-inline:contain;scrollbar-width:thin;min-width:0;overflow-x:auto}.reference-week-todo-days{grid-template-columns:repeat(7,minmax(112px,1fr));min-width:784px;display:grid}.reference-week-todo-day{border-inline-end:1px dotted color-mix(in srgb, var(--ink) 13%, transparent);min-width:0;padding:0 5px 7px}.reference-week-todo-day:last-child{border-inline-end:0}.reference-week-todo-dayhead{width:100%;min-height:44px;color:var(--muted);background:0 0;border:0;justify-content:space-between;align-items:center;padding:0 4px;display:flex}.reference-week-todo-dayhead strong{color:var(--ink);font-size:13px}.reference-week-todo-dayhead span{font-size:12px}.reference-week-todo-list{gap:4px;display:grid}.reference-week-todo-entry{border:1px solid color-mix(in srgb, var(--week-entry-color) 25%, var(--line));background:color-mix(in srgb, var(--week-entry-color) 10%, transparent);min-width:0;box-shadow:inset 2px 0 color-mix(in srgb, var(--week-entry-color) 88%, #222);border-radius:5px;grid-template-columns:34px minmax(0,1fr);transition:opacity .15s ease-out,background-color .15s ease-out;display:grid;overflow:hidden}.reference-week-todo-check,.reference-week-todo-main{min-height:44px;color:var(--ink);background:0 0;border:0}.reference-week-todo-check{color:var(--week-entry-color);padding:0;font-size:15px;font-weight:800}.reference-week-todo-main{text-align:left;align-content:center;gap:1px;min-width:0;padding:4px 6px 4px 1px;display:grid}.reference-week-todo-main strong,.reference-week-todo-main small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.reference-week-todo-main strong{font-size:12px;font-weight:720}.reference-week-todo-main small,.reference-week-todo-empty{color:var(--muted);font-size:10px}.reference-week-todo-empty{place-items:center;min-height:44px;display:grid}.reference-week-todo-entry.st-done{opacity:.52}.reference-week-todo-entry.st-partial{opacity:.76}.reference-week-todo-entry.st-skipped{opacity:.38}@media (hover:hover){.reference-week-todo-entry:hover{background:color-mix(in srgb, var(--week-entry-color) 15%, transparent)}}@media (width>=980px){.reference-week-todo-days{min-width:0}}@media (prefers-reduced-motion:reduce){.reference-week-todo-entry{transition:none}}.review-outcome-control{border:1px solid color-mix(in srgb, var(--indigo,#5f68a8) 22%, var(--line));min-width:0;color:var(--ink);background:color-mix(in srgb, var(--sheet) 92%, transparent);font-family:var(--font-body);border-radius:6px;gap:8px;padding:8px;display:grid}.review-outcome-summary,.review-outcome-form{gap:6px;min-width:0;display:grid}.review-outcome-heading{justify-content:space-between;align-items:start;gap:8px;min-width:0;display:flex}.review-outcome-heading>div{gap:1px;min-width:0;display:grid}.review-outcome-heading :is(strong,button){color:var(--ink);font:720 13px/1.35 var(--font-body);text-align:start;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.review-outcome-title{min-height:44px;box-shadow:none;background:0 0;border:0;margin:-8px 0;padding:8px 0}.review-outcome-heading span,.review-outcome-quantity,.review-outcome-reason,.review-outcome-checklist,.review-outcome-summary small,.review-outcome-message{color:var(--muted);margin:0;font-size:11px;line-height:1.4}.review-outcome-status{flex:none;font-weight:720}.review-outcome-checklist{gap:2px;padding-inline-start:17px;display:grid}.review-outcome-open,.review-outcome-actions>button{border-radius:5px;min-height:44px}.review-outcome-open{border:1px solid color-mix(in srgb, var(--indigo,#5f68a8) 28%, var(--line));color:var(--indigo,#4f5794);font:720 12px/1 var(--font-body);background:0 0;justify-self:start;padding-inline:12px}.review-outcome-form{border-top:1px dotted color-mix(in srgb, var(--ink) 18%, transparent);padding-top:7px}.review-outcome-form fieldset{border:0;gap:5px;min-width:0;margin:0;padding:0;display:grid}.review-outcome-form legend,.review-outcome-field>span{color:var(--ink);padding:0;font-size:12px;font-weight:720}.review-outcome-segments{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;display:grid}.review-outcome-segments>button,.review-outcome-signals>button{border:1px solid var(--line);min-height:44px;color:var(--muted);font:680 12px/1.25 var(--font-body);background:0 0;border-radius:5px}.review-outcome-segments>button[aria-checked=true],.review-outcome-signals>button[aria-checked=true]{border-color:var(--indigo,#5f68a8);color:var(--ink);background:color-mix(in srgb, var(--indigo,#5f68a8) 10%, transparent)}.review-outcome-field{grid-template-columns:minmax(0,1fr) 92px;align-items:center;gap:8px;display:grid}.review-outcome-field input{border:1px solid var(--line);background:var(--sheet);border-radius:5px;width:100%;min-height:44px}.review-outcome-signals>p,.review-outcome-error{margin:0;font-size:11px}.review-outcome-signals>button{text-align:start;grid-template-columns:18px minmax(0,1fr);align-items:center;padding:5px 8px;display:grid}.review-outcome-actions{grid-template-columns:1fr 1fr;gap:6px;display:grid}.review-outcome-control :is(button,input):focus-visible,.reference-week-day-picker>button:focus-visible,.capture-review-toggle input:focus-visible{outline:2px solid var(--indigo,#5f68a8);outline-offset:2px}.capture-review-toggle{min-height:44px;color:var(--ink);align-items:center;gap:8px;margin-top:4px;font-size:13px;font-weight:680;display:inline-flex}.capture-review-toggle input{width:20px;height:20px}.reference-week-layout,.reference-week-grid-pane{min-width:0}.reference-week-companion{display:none}@media (width>=768px){.planner-workspace-panels:has(#planner-panel-1:not([hidden])){grid-template-columns:minmax(0,1fr)}.planner-workspace-panels:has(#planner-panel-1:not([hidden])) #planner-panel-0{display:none}.planner-workspace-panels:has(#planner-panel-1:not([hidden])) #planner-panel-1{grid-column:1}.reference-week-layout{grid-template-columns:minmax(140px,.7fr) minmax(0,3fr) minmax(160px,.85fr);align-items:start;gap:8px;display:grid}.reference-week-grid-pane .weekly-plan-scroller{width:100%;margin-left:0}.reference-week-companion{border:1px solid color-mix(in srgb, var(--ink) 13%, transparent);background:color-mix(in srgb, var(--sheet) 84%, transparent);border-radius:6px;gap:6px;min-width:0;padding:7px;display:grid}.reference-week-companion>header{justify-content:space-between;align-items:center;gap:6px;min-height:32px;font-size:12px;display:flex}.reference-week-companion :is(p,span){color:var(--muted);margin:0;font-size:10px}.reference-week-companion .reference-week-todo-entry{border-color:color-mix(in srgb, var(--ink) 14%, transparent);box-shadow:none;background:0 0}.reference-week-companion .reference-week-todo-entry.is-review-plan{grid-template-columns:minmax(0,1fr)}.reference-week-companion .reference-week-todo-check{min-width:44px;min-height:44px}.reference-week-day-picker{overscroll-behavior-inline:contain;grid-auto-columns:44px;grid-auto-flow:column;gap:2px;display:grid;overflow-x:auto}.reference-week-day-picker>button{min-width:44px;min-height:44px;color:var(--muted);background:0 0;border:1px solid #0000;border-radius:4px;padding:0;font-size:10px}.reference-week-day-picker>button[aria-pressed=true]{border-color:var(--indigo,#5f68a8);color:var(--ink);background:color-mix(in srgb, var(--indigo,#5f68a8) 9%, transparent)}}@media (prefers-reduced-motion:reduce){.reference-week-day-picker,.reference-week-day-picker>button{scroll-behavior:auto;transition:none}}.reference-month-panel{min-width:0;padding:4px 2px 36px}.reference-month-head{align-items:center;gap:8px;min-height:52px;margin-bottom:10px;display:flex}.reference-month-head>button{border:1px solid color-mix(in srgb, var(--line) 72%, transparent);width:44px;min-height:44px;color:var(--ink);background:var(--sheet-muted);font:760 1rem/1 var(--font-body);border-radius:9px;place-items:center;padding:0;display:grid}.reference-month-head h1{min-width:0;font:760 1.2rem/1.2 var(--font-heading);letter-spacing:-.035em;flex:1;margin:0}.reference-month-head>.reference-month-today{width:auto;color:var(--sage-dark);padding-inline:13px;font-size:.68rem}.reference-month-scroll{border-top:1px dotted color-mix(in srgb, var(--ink) 18%, transparent);border-bottom:1px dotted color-mix(in srgb, var(--ink) 18%, transparent);overscroll-behavior-inline:contain;min-width:0;overflow-x:clip}.reference-month-grid{grid-template-columns:repeat(7,minmax(0,1fr));width:100%;min-width:0;display:grid}.reference-month-range-bar{z-index:3;min-width:0;height:16px;margin:calc(34px + var(--range-lane) * 17px) 2px 0;border:1px solid color-mix(in srgb, var(--range-color) 44%, transparent);color:color-mix(in srgb, var(--range-color) 72%, var(--ink));background:color-mix(in srgb, var(--range-color) 24%, var(--paper));box-shadow:inset 0 1px color-mix(in srgb, var(--sheet) 64%, transparent);text-overflow:ellipsis;white-space:nowrap;pointer-events:none;border-radius:3px;align-self:start;padding:1px 6px 0;font-size:10px;font-weight:700;line-height:12px;overflow:hidden}.reference-month-dow{min-height:34px;color:var(--muted);text-align:center;padding:10px 4px 7px;font-size:12px;font-weight:700}.reference-month-dow:first-child{color:#9b645e}.reference-month-dow:nth-child(7){color:#596f92}.reference-month-cell{border:0;border-top:1px dotted color-mix(in srgb, var(--ink) 14%, transparent);border-inline-end:1px dotted color-mix(in srgb, var(--ink) 12%, transparent);min-width:0;min-height:92px;color:var(--ink);background:var(--paper);text-align:left;border-radius:0;align-content:start;gap:3px;padding:5px 5px 6px;font-family:inherit;display:grid;position:relative;overflow:hidden}.reference-month-cell:nth-child(7n){border-inline-end-color:#0000}.reference-month-cell.pad{background:color-mix(in srgb, var(--sheet-muted) 42%, transparent)}.reference-month-cell[aria-pressed=true]{background:color-mix(in srgb, var(--sage-soft) 48%, var(--paper));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--sage-dark) 32%, transparent)}.reference-month-daynum{border-radius:50%;place-items:center;width:28px;min-height:28px;font-size:13px;font-weight:650;display:grid}.reference-month-cell.today .reference-month-daynum{color:var(--paper);background:var(--sage-dark);font-weight:800}.reference-month-cell-activities{gap:1px;min-width:0;display:grid}.reference-month-cell.has-range .reference-month-cell-activities{padding-top:17px}.reference-month-cell-activity{grid-template-columns:6px 11px minmax(0,1fr);align-items:center;gap:3px;min-width:0;min-height:15px;font-size:11px;line-height:1.2;display:grid}.reference-month-cell-activity>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.reference-month-cell-activity b{color:var(--muted);text-align:center;font-size:9px;font-weight:800}.reference-month-activity-dot{border-radius:50%;width:6px;height:6px;display:block}.reference-month-more{color:var(--muted);justify-self:end;font-size:10px;font-weight:760}.reference-month-goals,.reference-month-evidence{border-top:1px dotted color-mix(in srgb, var(--ink) 18%, transparent);margin-top:22px;padding-top:16px}.reference-month-goals>header,.reference-month-evidence>header{align-items:end;gap:12px;margin-bottom:12px;display:flex}.reference-month-goals>header>div,.reference-month-evidence>header>div{flex:1;min-width:0}.reference-month-goals header small,.reference-month-evidence header small{color:var(--sage-dark);letter-spacing:.08em;font-size:.61rem;font-weight:800}.reference-month-goals header h2,.reference-month-evidence header h2{font:760 1rem/1.25 var(--font-heading);margin:2px 0 0}.reference-month-goals header>span,.reference-month-evidence header>strong{color:var(--muted);font-size:.68rem;font-weight:760}.reference-month-goals>.flow-prompt,.reference-month-goals>.form-summary,.reference-month-annotation-form>.flow-prompt,.reference-month-annotation-form>.form-summary{background:0 0;border:0;padding:10px 0}.reference-month-goals .flow-prompt legend,.reference-month-annotation-form .flow-prompt legend{font-size:15px}.reference-month-goals .flow-prompt-helper,.reference-month-annotation-form .flow-prompt-helper{font-size:14px}.reference-month-text-field{gap:5px;display:grid}.reference-month-text-field>span{color:var(--muted);font-size:14px;font-weight:720}.reference-month-text-field input{border:1px solid var(--line);width:100%;min-height:52px;color:var(--ink);background:var(--sheet);font:500 var(--text-form-value,17px)/1.3 var(--font-body);border-radius:12px;padding:10px 12px}.reference-month-goals .form-summary h2,.reference-month-annotation-form .form-summary h2{font-size:15px}.reference-month-goals .form-summary-save button,.reference-month-annotation-form .form-summary-save button,.reference-month-open-day{border:1px solid var(--sage-dark);min-height:48px;color:var(--paper);background:var(--sage-dark);font:760 .72rem/1 var(--font-body);border-radius:10px;padding:0 16px}.reference-month-form-actions{grid-template-columns:minmax(88px,auto) minmax(0,1fr);gap:8px;display:grid}.reference-month-goals .reference-month-form-actions>button:first-child,.reference-month-annotation-form .reference-month-form-actions>button:first-child{border-color:var(--line);color:var(--muted);background:var(--sheet-muted)}.reference-month-form-actions>button:disabled{cursor:wait;opacity:.58}.reference-month-grass-grid{grid-template-columns:repeat(auto-fill,minmax(44px,1fr));gap:5px;margin-top:12px;display:grid}.reference-month-grass-grid>button{border:1px dotted color-mix(in srgb, var(--ink) 22%, transparent);min-width:44px;min-height:44px;color:var(--muted);background:var(--sheet-muted);font:700 12px/1 var(--font-body);border-radius:7px;padding:0}.reference-month-grass-grid>button.on{color:var(--paper)}.reference-month-evidence-stats{border-top:1px dotted color-mix(in srgb, var(--ink) 16%, transparent);border-bottom:1px dotted color-mix(in srgb, var(--ink) 16%, transparent);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.reference-month-evidence-stats span{border-inline-end:1px dotted color-mix(in srgb, var(--ink) 14%, transparent);min-height:58px;color:var(--muted);text-align:center;place-content:center;gap:2px;padding:8px;font-size:.66rem;display:grid}.reference-month-evidence-stats span:last-child{border-inline-end:0}.reference-month-evidence-stats b{color:var(--ink);font-size:.88rem}.reference-month-evidence>p{color:var(--muted);margin:12px 0 0;font-size:.72rem}.reference-month-sheet-list{margin:4px 0 14px;display:grid}.reference-month-sheet-row{border-bottom:1px dotted color-mix(in srgb, var(--ink) 18%, transparent);align-items:center;min-height:58px;display:flex}.reference-month-sheet-open,.reference-month-sheet-derived{min-width:0;min-height:56px;color:var(--ink);text-align:left;background:0 0;border:0;flex:1;grid-template-columns:8px auto minmax(0,1fr);align-items:center;gap:8px;padding:5px 2px;display:grid}.reference-month-sheet-status{min-width:62px;color:var(--muted);white-space:nowrap;font-size:14px;font-weight:720}.reference-month-sheet-status[data-status=done]{color:var(--sage-dark)}.reference-month-sheet-status[data-status=skipped]{color:#8a635d}.reference-month-sheet-main{gap:2px;min-width:0;display:grid}.reference-month-sheet-main strong{text-overflow:ellipsis;white-space:nowrap;font-size:17px;font-weight:700;overflow:hidden}.reference-month-sheet-main small{color:var(--muted);font-size:14px}.reference-month-sheet-archive{width:44px;min-height:44px;color:var(--sage-dark);background:0 0;border:0;flex:0 0 44px;place-items:center;padding:0;font-size:16px;display:grid}.reference-month-empty{color:var(--muted);margin:0;padding:16px 2px;font-size:15px}.reference-month-annotation-form{border-top:1px dotted color-mix(in srgb, var(--ink) 18%, transparent);padding-top:4px}.reference-month-color-chips{gap:7px;margin-top:8px;display:flex}.reference-month-color-chips .choice-chip{flex:1;min-width:44px;min-height:44px;padding:4px;font-size:12px}.reference-month-open-day{border-color:var(--line);width:100%;color:var(--sage-dark);background:var(--sheet-muted);margin-top:10px}@media (width<=640px){.reference-month-cell{gap:1px;min-height:64px;padding:3px 2px 4px}.reference-month-daynum{width:24px;min-height:24px;font-size:12px}.reference-month-cell-activities{gap:2px;min-width:0;display:flex;overflow:hidden}.reference-month-cell-activity{flex:none;grid-template-columns:5px 8px;gap:1px;min-height:12px;font-size:9px}.reference-month-cell-activity>span{display:none}.reference-month-cell-activity .reference-month-activity-dot{width:5px;height:5px}.reference-month-cell-activity b{font-size:8px}.reference-month-more{font-size:9px;position:absolute;bottom:2px;right:3px}}@media (hover:hover){.planner-workspace-tab:hover{color:var(--sage-dark);background:var(--sheet-muted)}}@media (width<=320px){.planner-workspace-route{gap:12px}.planner-workspace-tab{padding-inline:12px}.planner-workspace-route .daily-plan-panel{margin-inline:calc(50% - 50vw);padding-inline:8px}}@media (width<=760px){.planner-workspace-route .day-split-left{flex-basis:46%;width:auto}.planner-workspace-route .day-checklist{flex-basis:54%;width:auto;padding-inline:6px}}@media (prefers-reduced-motion:reduce){.planner-workspace-tab,.planner-workspace-route .daily-time-cell{transition:none}}.reference-month-goals{width:100%;max-width:720px;box-shadow:none;background:0 0;margin-top:18px;padding-top:14px}.reference-month-goals>.flow-prompt,.reference-month-goals>.form-summary{box-shadow:none;background:0 0;gap:8px;padding-block:4px}.reference-month-goals>.form-summary>:is(h2,.form-summary-rows){display:none}.reference-month-goals .form-summary-save{background:0 0;padding:0;position:static}.reference-month-text-field input{background:color-mix(in srgb, var(--sheet) 96%, var(--paper));min-height:46px;box-shadow:none;border-radius:8px}.reference-month-todos{border-top:1px solid color-mix(in srgb, var(--ink) 12%, transparent);gap:0;padding-block:14px 4px;display:grid}.reference-month-todos>header{align-items:center;margin-bottom:6px}.reference-month-todos>header h2{min-width:0;font-family:var(--font-body);flex:1;margin:0;font-size:15px}.reference-month-todo-list{border-top:1px solid color-mix(in srgb, var(--ink) 12%, transparent);display:grid}.reference-month-todo{border:0;border-bottom:1px solid color-mix(in srgb, var(--ink) 10%, transparent);min-height:52px;box-shadow:none;background:0 0;border-radius:0;grid-template-columns:44px minmax(0,1fr);align-items:center;transition:background-color .14s ease-out,opacity .14s ease-out;display:grid;overflow:hidden}.reference-month-todo.is-legacy{grid-template-columns:44px minmax(0,1fr) 44px}.reference-month-todo.st-done{opacity:.58}.reference-month-todo.st-done .reference-month-todo-main strong{text-decoration:line-through;text-decoration-thickness:1px}.reference-month-todo.st-partial{opacity:.76}.reference-month-todo.st-skipped{opacity:.4}.reference-month-todo-check,.reference-month-todo-archive,.reference-month-todo-main{min-height:44px;box-shadow:none;background:0 0;border:0}.reference-month-todo-check{color:var(--todo-color);place-items:center;font-size:0;font-weight:800;display:grid;position:relative}.reference-month-todo-check:before{border:1.5px solid color-mix(in srgb, var(--todo-color) 74%, var(--ink));background:color-mix(in srgb, var(--todo-color) 5%, transparent);content:"";border-radius:4px;width:20px;height:20px}.reference-month-todo-check:after{color:#fff;font-size:12px;font-weight:850;line-height:1;position:absolute}.reference-month-todo-check[data-mark=done]:before{border-color:var(--todo-color);background:var(--todo-color)}.reference-month-todo-check[data-mark=done]:after{content:"✓"}.reference-month-todo-check[data-mark=partial]:after{color:var(--todo-color);content:"–"}.reference-month-todo-check[data-mark=skipped]:after{color:var(--todo-color);content:"×"}.reference-month-todo-main{text-align:start;justify-items:start;min-width:0;padding:5px 4px;display:grid}.reference-month-todo-main strong{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:14px;font-weight:720;overflow:hidden}.reference-month-todo-main small{color:var(--muted);font-size:11px}.reference-month-todo-empty{border-bottom:1px solid color-mix(in srgb, var(--ink) 10%, transparent);color:var(--muted);margin:0;padding:13px 8px;font-size:12px}.reference-month-todo-add{border:0;border-bottom:1px solid color-mix(in srgb, var(--ink) 10%, transparent);width:100%;min-height:46px;color:var(--sage-dark);box-shadow:none;text-align:start;background:0 0;border-radius:0;align-items:center;gap:8px;padding:0 8px;font-size:13px;font-weight:720;display:flex}.reference-month-todo-add span{font-size:17px;font-weight:500}.reference-month-todo-editor{border-bottom:1px solid color-mix(in srgb, var(--ink) 12%, transparent);background:color-mix(in srgb, var(--sheet-muted) 34%, transparent);gap:8px;padding:10px 8px 8px;display:grid}.reference-month-todo-editor>input{border:0;border-bottom:1px solid color-mix(in srgb, var(--sage) 45%, var(--line));min-width:0;min-height:46px;color:var(--ink);font:650 15px/1.3 var(--font-body);background:0 0;border-radius:0;padding:8px 2px}.reference-month-todo-options{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 10px;min-width:0;display:flex}.reference-month-todo-date{min-height:44px;color:var(--muted);align-items:center;gap:6px;font-size:12px;font-weight:700;display:flex}.reference-month-todo-date input{min-height:40px;color:var(--ink);font:650 13px/1 var(--font-body);background:0 0;border:0;border-radius:0;padding:0 4px}.reference-month-todo-colors{gap:0;display:flex}.reference-month-todo-colors button{width:44px;min-width:44px;height:44px;min-height:44px;box-shadow:none;background:0 0;border:0;border-radius:0;place-items:center;padding:0;display:grid;position:relative}.reference-month-todo-colors button:before{border:1px solid color-mix(in srgb, var(--todo-choice-color) 72%, var(--ink));background:var(--todo-choice-color);content:"";border-radius:4px;width:18px;height:18px}.reference-month-todo-colors button[aria-checked=true]:before{box-shadow:0 0 0 2px var(--paper), 0 0 0 3px var(--ink)}.reference-month-todo-editor-actions{justify-content:flex-end;align-items:center;gap:6px;display:flex}.reference-month-todo-editor-actions button{border:1px solid color-mix(in srgb, var(--ink) 14%, transparent);min-height:44px;color:var(--ink);box-shadow:none;font:720 12px/1 var(--font-body);background:0 0;border-radius:6px;padding:0 12px}.reference-month-todo-editor-actions button[type=submit]{border-color:var(--sage-dark);color:var(--paper);background:var(--sage-dark)}.reference-month-todo-editor-actions .reference-month-todo-delete{color:var(--action-danger);border-color:#0000;margin-inline-end:auto}.reference-month-todo-archive{width:44px;color:var(--muted);place-items:center;padding:0;font-size:14px;display:grid}.reference-month-evidence-disclosure{border-top:1px solid color-mix(in srgb, var(--ink) 11%, transparent);margin-top:16px}.reference-month-evidence-disclosure>summary{min-height:42px;color:var(--muted);cursor:pointer;padding:12px 2px;font-size:12px;font-weight:700;list-style-position:inside}@media (hover:hover){.reference-month-todo:hover{background:color-mix(in srgb, var(--todo-color) 7%, transparent)}}@media (prefers-reduced-motion:reduce){.reference-month-todo{transition:none}}@media (width<=640px){.reference-month-todo-options{align-items:start}.reference-month-todo-colors{margin-inline:-6px}}.homework-rows-editor{gap:7px;display:grid}.homework-link-line{color:var(--muted);justify-content:space-between;align-items:baseline;gap:12px;font-size:.82rem;display:flex}.homework-link-line span{color:var(--sage-dark);font-weight:750}.homework-row{grid-template-columns:minmax(0,1fr) 72px 72px 36px;align-items:center;gap:6px;display:grid}.homework-row :is(input,select){border-radius:6px;min-width:0;min-height:44px}.homework-row button,.homework-add-row{min-height:44px}@media (width<=560px){.homework-link-line{display:grid}.homework-row{grid-template-columns:minmax(0,1fr) 64px 64px 36px}}.planner-workspace-route .daily-grid-overlay{border-color:color-mix(in srgb, var(--entry-color) 34%, transparent);background:color-mix(in srgb, var(--entry-color) 16%, transparent);box-shadow:inset 1px 0 color-mix(in srgb, var(--entry-color) 86%, #25262b)}.planner-workspace-route .daily-grid-overlay.is-fixed{border-color:color-mix(in srgb, var(--entry-color) 38%, transparent);background:color-mix(in srgb, var(--entry-color) 19%, transparent)}.planner-workspace-route .daily-grid-overlay[data-mark=done]{opacity:.5}.planner-workspace-route .daily-grid-overlay[data-mark=partial]{opacity:.72}.planner-workspace-route .daily-grid-overlay[data-mark=skipped]{opacity:.3}.planner-workspace-route .daily-grid-overlay-edit{width:100%;min-height:20px;color:inherit;box-shadow:none;font:inherit;text-align:start;pointer-events:auto;background:0 0;border:0;border-radius:0;padding:0}.planner-workspace-route .chk-row:not(.chk-unscheduled .chk-row){border:1px solid color-mix(in srgb, var(--entry-color,#6f79aa) 22%, transparent);background:color-mix(in srgb, var(--entry-color,#6f79aa) 10%, transparent);box-shadow:inset 1px 0 color-mix(in srgb, var(--entry-color,#6f79aa) 82%, #25262b);border-radius:5px;margin-block:3px;padding:3px 4px 3px 3px;overflow:hidden}.planner-workspace-route .chk-row.st-done{opacity:.52}.planner-workspace-route .chk-row.st-partial{opacity:.74}.planner-workspace-route .chk-row.st-skipped{opacity:.36}.planner-workspace-route .chk-main{min-height:44px;color:inherit;box-shadow:none;text-align:start;background:0 0;border:0;border-radius:0;padding:4px 2px}.planner-workspace-route .chk-box{border-color:color-mix(in srgb, var(--entry-color,#6f79aa) 72%, #35363b);background:color-mix(in srgb, var(--entry-color,#6f79aa) 16%, transparent);border-radius:4px}.planner-workspace-route .swatches .choice-chip{background:var(--choice-color);border-radius:4px;width:32px;min-width:32px;min-height:32px;padding:0}:is(.app:has(.today-screen)>.topbar,.app:has(.records-route) .daily-paper-head){border-bottom:1px solid var(--line);padding:22px 20px 16px}.app:has(.today-screen)>.topbar{min-height:82px}.today-heading small,.daily-paper-head small{color:var(--sage-dark);letter-spacing:0;font-size:.75rem;font-weight:700;display:block}.today-heading h1,.daily-paper-head h1{font-family:var(--font-heading);letter-spacing:-.04em;margin:4px 0 0;font-size:1.7rem;font-weight:700;line-height:1.2}:is(.app:has(.today-screen)>.app-main,.app:has(.records-route)>.app-main){padding:18px 16px 90px}.today-screen{gap:22px}.today-now-section{gap:8px;display:grid}.today-screen .section-label,.today-timeline-section>header .section-label{color:var(--muted);font-family:var(--font-body);letter-spacing:.08em;margin:0;font-size:.69rem;font-weight:700}.today-current-status.now{min-height:auto;color:var(--sheet);background:var(--sage-dark);box-shadow:none;border:0;border-radius:16px;gap:0;padding:18px;display:grid}.today-current-status.now.is-empty{color:var(--ink);background:var(--sheet-muted)}.today-current-status.now.is-history{color:var(--sheet);border:1px solid color-mix(in srgb, var(--sage-dark) 82%, var(--sheet));background:linear-gradient(180deg, color-mix(in srgb, var(--sage-dark) 96%, transparent), color-mix(in srgb, var(--sage-dark) 93%, transparent));-webkit-backdrop-filter:blur(3px)saturate(108%);backdrop-filter:blur(3px)saturate(108%);box-shadow:inset 0 1px #ffffff52,inset -2px -3px #00000021,0 8px 18px #244d3a29}.today-current-status.now .today-current-status-header{color:currentColor;opacity:.85;font-size:.69rem}.today-current-status.now .today-current-label,.today-current-status.now .today-current-time,.today-current-status.now .today-current-kind{color:currentColor;font-variant-numeric:tabular-nums;letter-spacing:0;background:0 0;border:0;min-height:auto;padding:0;font-size:.69rem;font-weight:700}.today-current-status.now .today-current-copy h2{color:currentColor;max-width:26ch;font-family:var(--font-heading);letter-spacing:-.04em;margin:13px 0 4px;font-size:clamp(1.5rem,5vw,2rem);font-weight:700;line-height:1.3}.today-current-status.now .today-current-copy p{color:currentColor;font-size:var(--text-form-value);opacity:.9;margin:0}.today-current-progress.progress{background:color-mix(in srgb, var(--sheet) 28%, transparent);border-radius:9px;height:5px;margin-top:16px;overflow:hidden}.today-current-progress.progress i{border-radius:inherit;background:var(--sheet);width:55%;height:100%;display:block}.today-current-status.now .today-current-checklist{border-top-color:color-mix(in srgb, var(--sheet) 35%, transparent);margin-top:14px}.today-current-status.now .today-current-checklist button{border-bottom-color:color-mix(in srgb, var(--sheet) 24%, transparent);color:currentColor;min-height:44px}.today-current-status.now .today-current-checklist button>span{color:var(--sage-dark);border-color:currentColor}.today-current-status.now .today-current-checklist button.is-checked{color:color-mix(in srgb, currentColor 70%, transparent)}.today-current-status.now .today-current-checklist button.is-checked>span{background:var(--sheet)}.today-current-status.now .today-current-actions{margin-top:14px}.today-current-status.now .today-current-actions button{border-color:color-mix(in srgb, var(--sheet) 48%, transparent);min-height:44px;color:var(--sheet);background:0 0}.today-current-status.now .today-current-actions .primary-button{color:var(--sage-dark);background:var(--sheet)}.today-timeline-section{padding:0}.today-timeline-section>header{border:0;margin:0 0 8px;padding:0;display:block}.today-timeline{--timeline-time-column:53px;--timeline-rail-width:10px;--timeline-column-gap:10px;border-top:1px solid var(--ink);position:relative}.today-timeline-slot{min-height:max(56px, calc(var(--timeline-duration,56) * 1px));transition:min-height .18s;position:relative}.today-timeline-row{grid-template-columns:var(--timeline-time-column) var(--timeline-rail-width) minmax(0, 1fr) auto auto;column-gap:var(--timeline-column-gap);border-bottom:1px solid var(--line);background:0 0;align-items:start;min-height:56px;padding:0;display:grid}.today-timeline-row.is-class,.today-timeline-row.is-current:not(.is-class),.timeline-day-review-row{background:0 0}.today-timeline-row>time{color:var(--ink);font-variant-numeric:tabular-nums;grid-column:1;align-self:start;padding-top:17px;font-size:.75rem;font-weight:700}.timeline-duration-rail{pointer-events:none;top:0;bottom:0;left:calc(var(--timeline-time-column) + var(--timeline-column-gap));width:10px;box-shadow:inset 0 -2px 2px color-mix(in srgb, var(--ink) 15%, transparent);background:#c8cbc580;border:1px solid #ffffff9e;border-radius:999px;position:absolute}.timeline-duration-rail:after{pointer-events:none;content:"";background:color-mix(in srgb, var(--ink) 18%, transparent);border-radius:999px;width:4px;height:10px;position:absolute;bottom:-11px;left:3px}.today-timeline-slot:last-child .timeline-duration-rail:after{display:none}.timeline-duration-rail.class{background:color-mix(in srgb, var(--rose-line) 42%, transparent)}.timeline-duration-rail.study{background:color-mix(in srgb, var(--sage-dark) 38%, transparent)}.today-timeline-row .timeline-copy{grid-column:3;align-self:start;min-width:0;min-height:56px;padding-top:11px;overflow:hidden}.today-timeline-row .timeline-copy strong,.today-timeline-row .timeline-study-edit{max-width:100%;color:var(--ink);font:inherit;text-align:left;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;padding:0;font-size:.81rem;font-weight:700;display:block;overflow:hidden}.today-timeline-row .timeline-study-edit{cursor:pointer;min-height:44px;margin:-11px 0 -9px -10px;padding:11px 10px 9px}.today-timeline-row .timeline-copy span{text-overflow:ellipsis;white-space:nowrap;margin-top:1px;font-size:.69rem;display:block;overflow:hidden}.timeline-kind.kind{min-height:auto;color:var(--muted);white-space:nowrap;grid-column:4;font-size:.63rem;font-weight:700}.timeline-kind.kind.class{color:#8b5957}.timeline-kind.kind.study{color:var(--sage-dark)}.today-timeline-row .timeline-row-actions,.today-timeline-row .timeline-day-review-actions,.today-timeline-row .timeline-saved-review,.today-timeline-row>.timeline-inline-trigger{grid-column:5;align-self:start;min-height:56px;padding-top:6px}.today-timeline-row .timeline-row-actions button,.today-timeline-row .timeline-day-review-actions button,.today-timeline-row .timeline-inline-trigger{border-radius:10px;min-height:44px}@media (prefers-reduced-motion:reduce){.today-timeline-slot{transition:none}}:is(.primary-button,.secondary-button,.primary-action){min-height:40px;color:var(--ink);background:color-mix(in srgb, var(--sheet,#fffefa) 90%, transparent);letter-spacing:-.018em;-webkit-backdrop-filter:blur(10px)saturate(1.08);border:1px solid #47484d29;border-radius:6px;font-size:.8rem;font-weight:720;box-shadow:inset 0 1px #ffffffb8,inset 0 -1px #37383d0f,0 1px 2px #2d2e3314}@media (hover:hover){:is(.primary-button,.secondary-button,.primary-action):not(:disabled):hover{background:color-mix(in srgb, var(--sheet,#fffefa) 96%, transparent);border-color:#47484d3d;transform:translateY(-1px)}}:is(.primary-button,.secondary-button,.primary-action):not(:disabled):active{transform:translateY(1px);box-shadow:inset 0 1px 2px #2d2e331a,0 0 #0000}button:focus-visible{outline:2px solid color-mix(in srgb, var(--accent) 78%, white);outline-offset:2px}:is(.primary-button,.secondary-button,.primary-action):is(:disabled,[aria-busy=true]){opacity:.48;filter:saturate(.55)}:is(.primary-button,.primary-action){border-color:color-mix(in srgb, var(--accent) 72%, #24252a);color:#fff;background:color-mix(in srgb, var(--accent) 90%, transparent);box-shadow:inset 0 1px #ffffff3d,inset 0 -1px #17181f2e,0 1px 2px #2d2e331a}:is(.planner-modal-panel,.class-session-sheet,.search-choice-sheet){border-radius:12px}.app .tabbar button{font-size:12px}.material-mock-editor button{font-size:var(--text-form-value)!important}.records-route .paper-card{border-radius:11px;margin-block:9px;padding:13px 14px}.records-route .paper-card>h2{margin-bottom:9px;font-size:.98rem}.records-route .paper-record{grid-template-columns:40px minmax(0,1fr) auto;gap:8px;padding-block:8px}.records-route .paper-record h3{font-size:.76rem;line-height:1.35}.records-route .paper-record-copy>p,.records-route .record-materials li{font-size:.64rem;line-height:1.4}.records-route .paper-record>time,.records-route .record-status{font-size:.6rem}.records-route :is(.paper-empty,.daily-review-copy){font-size:var(--text-metadata);padding-block:6px;line-height:1.4}.records-route .paper-record-action{border-radius:5px;min-height:38px;padding-inline:9px;font-size:.64rem}.planner-modal .flow-form-actions button,.planner-modal :is(.choice-chip,.amount-stepper button){border-radius:5px;min-height:38px;padding-inline:12px;font-size:13px}.planner-modal>header button{width:38px;min-height:38px}@media (prefers-reduced-motion:reduce){button{transition:none!important}}.today-timeline-empty{font-size:var(--text-form-value);padding:24px 0}.app:has(.records-route)>.topbar{display:none}.app:has(.records-route)>.app-main{width:min(100%,760px);padding-top:0}.records-route.daily-paper{min-width:0}.daily-paper-head{margin-inline:-16px}.daily-paper-body{padding-top:18px}.journal-date{margin-bottom:20px}.journal-date h2{font-family:var(--font-heading);letter-spacing:-.045em;margin:0;font-size:clamp(2.25rem,9vw,2.75rem);font-weight:700;line-height:1.1}.journal-date p{color:var(--muted);font-family:var(--font-heading);margin:2px 0 0;font-size:1.06rem;font-style:italic;font-weight:700}.record-date-picker{gap:8px;margin-bottom:16px;display:grid}.record-date-strip{scrollbar-width:none;grid-auto-columns:44px;grid-auto-flow:column;justify-content:space-between;gap:4px;padding-bottom:3px;display:grid;position:relative;overflow-x:auto}.record-date-strip[data-selection-drag=true]:before,.record-date-strip[data-selection-drag=true]:after{z-index:3;content:"";pointer-events:none;width:44px;transform:translate3d(calc(-50% + var(--selected-drag-offset,0px)), 0, 0) scaleX(var(--selected-drag-stretch,1)) scaleY(.97) skewX(var(--selected-drag-lean,0deg));transform-origin:50%;border-radius:13px;position:absolute;top:5px;bottom:5px;left:50%}.record-date-strip[data-selection-drag=true]:before{border:1px solid color-mix(in srgb, var(--sage) 20%, var(--sheet) 70%);background:color-mix(in srgb, var(--sage-soft) 50%, transparent);box-shadow:0 10px 24px #3646381f, inset 0 1.5px 0 #ffffffd1, inset 1px 0 0 #ffffff61, inset -1px -1px 0 color-mix(in srgb, var(--sage) 16%, transparent);-webkit-backdrop-filter:blur(11px)saturate(148%)contrast(1.055)brightness(1.035);backdrop-filter:blur(11px)saturate(148%)contrast(1.055)brightness(1.035)}.record-date-strip[data-selection-drag=true]:after{opacity:.82;background:linear-gradient(105deg,#0000 8%,#ffffff94 40%,#ffffff24 68%,#0000 94%);border-radius:999px;height:18px;top:7px;bottom:auto}.record-date-strip::-webkit-scrollbar{display:none}.record-date-strip button{width:44px;min-height:58px;color:var(--muted);background:0 0;border:0;border-radius:12px;place-items:center;gap:0;padding:4px;display:grid;position:relative}.record-date-strip button span{font-size:.63rem;font-weight:700}.record-date-strip button strong{color:var(--ink);font-size:.81rem}.record-date-strip button i{background:var(--sage-dark);border-radius:50%;width:4px;height:4px}.record-date-strip button i.empty-dot{visibility:hidden}.record-date-strip button.is-selected{color:var(--sheet);background:var(--sage-dark)}.record-date-strip button.is-selected strong{color:var(--sheet);background:0 0}.paper-card{background:var(--sheet);border-radius:18px;margin:12px 0;padding:18px;box-shadow:0 10px 30px #3e3a320f}.paper-card>h2{font-family:var(--font-heading);letter-spacing:-.03em;margin:0 0 15px;font-size:1.25rem;font-weight:700;line-height:1.2}.paper-record-list{display:grid}.paper-record{border-bottom:1px solid #ece8e1;grid-template-columns:44px minmax(0,1fr) auto;align-items:start;gap:10px;min-width:0;padding:11px 0;display:grid}.paper-record:last-child,.paper-record-list>.paper-empty:last-child{border-bottom:0}.paper-record>time{color:var(--muted);font-variant-numeric:tabular-nums;padding-top:2px;font-size:.69rem;font-weight:700}.paper-record-copy{min-width:0}.paper-record-action{border:1px solid var(--line);min-height:44px;color:var(--sage-dark);background:0 0;border-radius:10px;padding:0 12px;font-size:.72rem;font-weight:750}.paper-record-action:hover{background:var(--sage-soft)}.paper-record h3{color:var(--ink);margin:0;font-size:.81rem;font-weight:750;line-height:1.45}.paper-record-copy>p{color:var(--muted);margin:2px 0 0;font-size:.69rem;line-height:1.5}.paper-record-copy>p.record-note{color:var(--ink);margin-top:8px}.record-materials{border-top:1px solid var(--line);gap:0;margin:9px 0 0;padding:0;list-style:none;display:grid}.record-materials li{border-bottom:1px solid var(--paper-rule);justify-content:space-between;align-items:center;gap:10px;min-height:36px;font-size:.69rem;display:flex}.record-materials span{color:var(--muted);font-variant-numeric:tabular-nums;flex:none}.record-status{color:var(--sage-dark);white-space:nowrap;font-size:.63rem;font-weight:750}.paper-empty,.daily-review-copy{color:#8d8b85;font-size:var(--text-form-value);border-bottom:1px solid #ece8e1;margin:0;padding:11px 0}.daily-review-copy{color:var(--ink)}.monthly-paper-summary{border-top:1px solid var(--ink);border-bottom:1px solid var(--line);margin-top:18px}.monthly-paper-summary summary{min-height:48px;color:var(--ink);cursor:pointer;justify-content:space-between;align-items:center;font-size:.81rem;font-weight:750;list-style:none;display:flex}.monthly-paper-summary summary:after{content:"+";color:var(--sage-dark);font-size:1rem}.monthly-paper-summary[open] summary:after{content:"−"}.monthly-paper-summary dl{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0;padding:4px 0 18px;display:grid}.monthly-paper-summary dl div{gap:2px;display:grid}.monthly-paper-summary dt{color:var(--muted);font-size:.63rem}.monthly-paper-summary dd{color:var(--ink);font-family:var(--font-heading);margin:0;font-size:1rem;font-weight:700}@media (width<=560px){.app:has(.today-screen)>.topbar{width:100%}:is(.app:has(.today-screen)>.app-main,.app:has(.records-route)>.app-main){width:100%}.today-timeline-row{grid-template-columns:var(--timeline-time-column) var(--timeline-rail-width) minmax(0, 1fr) auto;column-gap:var(--timeline-column-gap)}.today-timeline{--timeline-time-column:45px;--timeline-rail-width:10px;--timeline-column-gap:8px}.today-timeline-row .timeline-row-actions,.today-timeline-row .timeline-day-review-actions,.today-timeline-row .timeline-saved-review{grid-column:3/-1;justify-self:end}.today-timeline-row>.timeline-inline-trigger,.today-timeline-row .timeline-fixed-actions{grid-area:1/4;justify-self:end}.today-timeline-row .timeline-kind{display:none}.paper-record{grid-template-columns:38px minmax(0,1fr) auto;gap:8px}}@media (hover:hover){.record-date-strip button:hover,.monthly-paper-summary summary:hover{background:var(--sage-soft)}.record-date-strip button.is-selected:hover{background:var(--sage-dark)}}.demo-menu summary,.demo-menu .demo-actions,.planning-console-toolbar,.class-sheet-footer,.weekly-plan-table thead th,.weekly-plan-table tbody>tr>th[scope=row]{border-color:color-mix(in srgb, var(--sheet) 48%, var(--line));background:color-mix(in srgb, var(--sheet) 52%, transparent);-webkit-backdrop-filter:blur(18px)saturate(132%);backdrop-filter:blur(18px)saturate(132%);box-shadow:inset 0 1px #ffffff9e}.demo-menu .demo-actions{background:color-mix(in srgb, var(--sheet) 54%, transparent);border-radius:14px;overflow:hidden;box-shadow:0 14px 36px #36332d1f,inset 0 1px #ffffffb8}.demo-menu summary,.demo-menu summary:hover,.demo-menu[open] summary{background:color-mix(in srgb, var(--sheet) 40%, transparent);border-radius:12px}.session-record-backdrop,.class-sheet-backdrop{-webkit-backdrop-filter:blur(8px)saturate(108%);backdrop-filter:blur(8px)saturate(108%);background:#21222042}.session-record-dialog,.class-session-sheet{border-color:color-mix(in srgb, var(--sheet) 56%, var(--line));background:color-mix(in srgb, var(--sheet) 64%, transparent);-webkit-backdrop-filter:blur(26px)saturate(124%);backdrop-filter:blur(26px)saturate(124%);box-shadow:0 24px 68px #2c2a262e,inset 0 1px #ffffffc2}.class-sheet-header{background:color-mix(in srgb, var(--sheet) 46%, transparent);-webkit-backdrop-filter:blur(20px)saturate(128%);backdrop-filter:blur(20px)saturate(128%)}.class-session-sheet{background:var(--sheet);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:0 24px 64px #47403429}.class-sheet-header,.class-sheet-footer{-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0}.self-study-sheet-section{box-shadow:none;background:0 0;border:0}.self-study-sheet select,.self-study-sheet input,.self-study-sheet button{min-height:44px}.class-session-sheet .class-sheet-header>.class-sheet-secondary-action{min-width:44px;min-height:44px}.self-study-suggestions{border-top:1px solid var(--line)}.self-study-suggestions>button{border:0;border-bottom:1px solid var(--line);width:100%;color:var(--ink);font:inherit;text-align:left;background:0 0;border-radius:0;padding:10px 2px;display:block}.self-study-suggestions>button.is-selected{background:color-mix(in srgb, var(--sage-soft) 60%, transparent)}.self-study-sheet .class-sheet-section-heading>div{align-items:center;gap:8px;display:flex}.self-study-materials>button>span{color:var(--muted);margin-right:8px;font-size:.68rem;font-weight:750}.self-study-empty{color:var(--muted);margin:0;padding:12px 2px;font-size:.84rem}.planner-toast{border-color:color-mix(in srgb, var(--sheet) 20%, transparent);background:color-mix(in srgb, var(--ink) 74%, transparent);-webkit-backdrop-filter:blur(20px)saturate(118%);backdrop-filter:blur(20px)saturate(118%);box-shadow:0 16px 38px #2825202e,inset 0 1px #ffffff29}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.tabbar,.demo-menu summary,.demo-menu .demo-actions,.planning-console-toolbar,.class-sheet-footer,.session-record-dialog,.class-session-sheet,.class-sheet-header,.planner-toast,.weekly-plan-table thead th,.weekly-plan-table tbody>tr>th[scope=row]{background-color:color-mix(in srgb, var(--sheet) 94%, var(--paper))}.planner-toast{background-color:var(--ink)}}.app:has(.materials-route)>.topbar{display:none}.app:has(.materials-route)>.app-main{width:min(100%,1120px);padding:0 16px 96px}.materials-route{gap:18px;min-width:0}.materials-head{margin-inline:-16px;padding:22px 20px 16px}.materials-head small{color:var(--sage-dark);font-size:.75rem;font-weight:700;display:block}.materials-head h1{margin-top:4px;font-size:1.7rem}.materials-head .material-add-trigger{min-height:44px;padding-block:8px}.unified-material-layout,.material-master{min-width:0}.material-kind-filters{border:1px solid var(--line);background:var(--sheet-muted);border-radius:12px;grid-template-columns:repeat(3,1fr);gap:4px;padding:4px;display:grid}.material-kind-filters button{min-height:44px;color:var(--muted);background:0 0;border:0;border-radius:9px;padding:0 12px;font-size:.78rem;font-weight:750}.material-kind-filters button.is-active{color:var(--ink);background:var(--sheet);box-shadow:0 1px 5px #39322a12}.unified-material-list{border-top:1px solid var(--ink);margin-top:18px}.unified-material-list>button{border:0;border-bottom:1px solid var(--line);width:100%;min-height:68px;color:var(--ink);text-align:left;background:0 0;border-radius:0;grid-template-columns:4px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 2px;display:grid}.unified-material-list>button.is-selected{background:color-mix(in srgb, var(--sage-soft) 58%, transparent)}.material-kind-mark{background:var(--sage);border-radius:4px;width:4px;height:32px}.material-kind-mark.is-mock-exam{background:var(--rose-line)}.unified-material-list>button>span:nth-child(2){gap:2px;min-width:0;display:grid}.unified-material-list strong{text-overflow:ellipsis;white-space:nowrap;font-size:.86rem;line-height:1.35;overflow:hidden}.unified-material-list small,.unified-material-list em{color:var(--muted);font-size:.69rem;font-style:normal}.unified-material-list em{font-weight:750}.unified-material-list>button:has(.is-mock-exam) em{color:#855854}.material-list-empty,.material-detail-empty{color:var(--muted);font-size:var(--text-form-value);margin:0;padding:28px 4px}.material-detail-paper{border:1px solid var(--line);background:var(--sheet);min-width:0;box-shadow:var(--shadow);border-radius:18px;padding:16px;display:none}.unified-material-layout.show-detail .material-master{display:none}.unified-material-layout.show-detail .material-detail-paper{display:block}.material-list-back{width:auto;color:var(--sage-dark);background:0 0;border:0;margin:-4px 0 12px;padding:0 4px;font-size:.76rem;font-weight:750}.material-list-back:before{content:"←";margin-right:6px}.unified-textbook-detail,.mock-material-detail{gap:22px;display:grid}.unified-textbook-detail>header,.mock-material-detail>header{border-bottom:1px solid var(--ink);justify-content:space-between;align-items:flex-start;gap:14px;min-width:0;padding-bottom:15px;display:flex}.unified-textbook-detail>header>div,.mock-material-detail>header>div{min-width:0}.unified-textbook-detail>header span,.mock-material-detail>header span{color:var(--sage-dark);font-size:.69rem;font-weight:750}.mock-material-detail>header span{color:#855854}.unified-textbook-detail h2,.mock-material-detail>header h2{overflow-wrap:anywhere;font-family:var(--font-heading);letter-spacing:-.04em;margin:3px 0 0;font-size:clamp(1.35rem,6vw,1.75rem);line-height:1.25}.unified-textbook-detail>header p{color:var(--muted);margin:3px 0 0;font-size:.72rem}.unified-textbook-detail>header button,.mock-material-detail>header button{min-height:44px;color:var(--sage-dark);background:0 0;border:0;flex:none;padding-inline:10px;font-size:.75rem;font-weight:750}.unified-book-progress{grid-template-columns:1fr auto;align-items:baseline;gap:10px 12px;display:grid}.unified-book-progress>span{color:var(--muted);font-size:.69rem;font-weight:750}.unified-book-progress>strong{font-family:var(--font-heading);font-size:1.1rem}.unified-progress-track{background:var(--sage-soft);border-radius:999px;grid-column:1/-1;height:5px;overflow:hidden}.unified-progress-track i{border-radius:inherit;background:var(--sage-dark);height:100%;display:block}.connected-material-sessions{border-top:1px solid var(--ink);gap:0;display:grid}.connected-material-sessions h3{color:var(--muted);font-family:var(--font-body);letter-spacing:.08em;margin:0;padding:13px 0 8px;font-size:.69rem}.connected-material-sessions>div>article{border-bottom:1px solid var(--line);grid-template-columns:78px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:62px;display:grid}.connected-material-sessions time{font-size:.7rem;font-weight:700}.connected-material-sessions article>div{gap:2px;min-width:0;display:grid}.connected-material-sessions strong{text-overflow:ellipsis;white-space:nowrap;font-size:.79rem;overflow:hidden}.connected-material-sessions span,.connected-material-sessions em{color:var(--muted);font-size:.67rem;font-style:normal}.connected-material-sessions em{color:#855854;font-weight:750}.material-archive-action{min-height:44px;color:var(--muted);background:0 0;border:0;justify-self:start;padding:0 4px;font-size:.72rem}.material-attempt-strip{scrollbar-width:thin;gap:6px;padding-bottom:4px;display:flex;overflow-x:auto}.material-attempt-strip button{border:1px solid var(--line);min-width:124px;min-height:64px;color:var(--ink);text-align:left;background:0 0;border-radius:10px;gap:1px;padding:9px 11px;display:grid}.material-attempt-strip time,.material-attempt-strip span{color:var(--muted);font-size:.65rem}.material-attempt-strip strong{font-size:.78rem}.material-detail-paper .material-mock-detail,:is(.material-detail-paper,.mock-inline-step) .material-mock-editor{background:0 0;border:0;border-radius:0;gap:16px;padding:0}:is(.material-detail-paper,.mock-inline-step) .mock-editor-transaction{--mock-editor-action-height:44px;--mock-editor-control-height:var(--control-height);--mock-editor-helper-size:var(--text-helper)}.material-detail-paper .material-mock-detail>header{border-top:1px solid var(--ink);border-bottom:1px solid var(--line);padding:14px 0}.material-detail-paper .material-mock-detail h2,:is(.material-detail-paper,.mock-inline-step) .material-mock-editor h2{font-family:var(--font-heading);margin:3px 0 0;font-size:1.1rem}.material-detail-paper .mock-score{color:var(--sage-dark);font-family:var(--font-heading);font-size:1.7rem}.material-detail-paper .mock-warning{color:#855854;background:0 0;border-radius:0;padding:10px 0;font-size:.74rem}.material-detail-paper .mock-question{padding:13px 0}.material-detail-paper .mock-question-actions{flex-wrap:wrap}.material-detail-paper .mock-question-actions select{max-width:none;min-height:44px}:is(.material-detail-paper,.mock-inline-step) .material-mock-editor .flow-form-prompts>header{border-bottom:1px solid var(--ink);padding-bottom:14px}:is(.material-detail-paper,.mock-inline-step) .material-mock-editor .flow-form-prompts,:is(.material-detail-paper,.mock-inline-step) .material-mock-editor .mock-summary-groups,:is(.material-detail-paper,.mock-inline-step) .material-mock-editor .wrong-answer-editor,:is(.material-detail-paper,.mock-inline-step) .material-mock-editor .mock-active-question{gap:18px;display:grid}:is(.material-detail-paper,.mock-inline-step) .material-mock-editor .mock-summary-group{border-bottom:1px solid var(--line);gap:12px;min-width:0;padding-bottom:18px;display:grid}:is(.material-detail-paper,.mock-inline-step) .material-mock-editor :is(label,.mock-picker-field,.mock-owner-summary){color:var(--muted);font-size:var(--text-helper);gap:6px;margin:0;font-weight:700;display:grid}:is(.material-detail-paper,.mock-inline-step) .material-mock-editor :is(input,textarea){width:100%;min-height:var(--mock-editor-control-height);border-color:var(--line);border-radius:var(--control-radius);color:var(--ink);background:var(--sheet);font-size:var(--text-form-value);padding:10px 12px}:is(.material-detail-paper,.mock-inline-step) .material-mock-editor textarea{resize:vertical;min-height:94px}:is(.material-detail-paper,.mock-inline-step) .material-mock-editor .mock-owner-summary strong{color:var(--ink);font-size:var(--text-form-value)}:is(.material-detail-paper,.mock-inline-step) .material-mock-editor .mock-picker-field>button,:is(.material-detail-paper,.mock-inline-step) .material-mock-editor .mock-details-toggle{justify-self:start;min-height:44px}:is(.material-detail-paper,.mock-inline-step) .material-mock-editor .mock-details-toggle{color:var(--sage-dark);font-size:var(--text-form-value);background:0 0;border:0;padding-inline:0;font-weight:750}:is(.material-detail-paper,.mock-inline-step) .material-mock-editor .mock-question-core,:is(.material-detail-paper,.mock-inline-step) .material-mock-editor .mock-question-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}:is(.material-detail-paper,.mock-inline-step) .material-mock-editor .mock-question-details .span-2{grid-column:1/-1}:is(.material-detail-paper,.mock-inline-step) .material-mock-editor .mock-active-question{border-block:1px solid var(--line);padding-block:18px}:is(.material-detail-paper,.mock-inline-step) .material-mock-editor .form-summary-save{background:color-mix(in srgb, var(--sheet) 94%, transparent)}:is(.material-detail-paper,.mock-inline-step) .material-mock-editor .primary-button{border-color:var(--sage-dark);background:var(--sage-dark);min-height:48px}.material-detail-paper .material-mock-detail .choice-chips{gap:6px}.material-detail-paper .material-mock-detail .choice-chip{min-height:44px;font-size:var(--text-form-value);padding:7px 10px}@media (width>=800px){.app:has(.materials-route)>.app-main{padding-inline:24px}.materials-head{margin-inline:0;padding-inline:0}.unified-material-layout,.unified-material-layout.show-detail{grid-template-columns:minmax(280px,.78fr) minmax(420px,1.22fr);align-items:start;gap:24px;display:grid}.unified-material-layout .material-master,.unified-material-layout.show-detail .material-master,.unified-material-layout .material-detail-paper,.unified-material-layout.show-detail .material-detail-paper{display:block}.material-detail-paper{max-height:calc(100dvh - 116px);padding:22px;position:sticky;top:18px;overflow:auto}.material-list-back{display:none}.material-detail-paper .material-mock-editor .mock-score-group{grid-template-columns:repeat(2,minmax(0,1fr))}.material-detail-paper .material-mock-editor .mock-score-group>:last-child{grid-column:1/-1}}@media (width<=520px){.material-detail-paper .material-mock-editor .mock-question-core,.material-detail-paper .material-mock-editor .mock-question-details{grid-template-columns:minmax(0,1fr)}.material-detail-paper .material-mock-editor .mock-question-details .span-2{grid-column:auto}.material-detail-paper .material-mock-editor>.flow-form-transaction-surface>.flow-form-actions{flex-wrap:wrap}.material-detail-paper .material-mock-editor>.flow-form-transaction-surface>.flow-form-actions button{flex:120px}}.mock-inline-step .material-mock-editor>.flow-form-transaction-surface>.flow-form-actions{flex-wrap:wrap}.mock-inline-step .material-mock-editor>.flow-form-transaction-surface>.flow-form-actions button{min-height:var(--mock-editor-action-height);flex:132px}.mock-inline-step .material-mock-editor .mock-question-actions button{min-height:var(--mock-editor-action-height);font-size:var(--mock-editor-helper-size)}.mock-inline-step .material-mock-editor :is(.form-error,.mock-warning){font-size:var(--mock-editor-helper-size)}.mock-inline-step .class-sheet-inline-error p{font-size:var(--text-helper)}@media (hover:hover){.unified-material-list>button:hover{background:color-mix(in srgb, var(--sage-soft) 45%, transparent)}.material-kind-filters button:hover{color:var(--ink)}}.material-kind-filters,.timetable-week-nav{border:1px solid color-mix(in srgb, var(--sheet) 46%, var(--line));background:color-mix(in srgb, var(--sheet) 34%, transparent);-webkit-backdrop-filter:blur(20px)saturate(132%);backdrop-filter:blur(20px)saturate(132%);border-radius:16px;box-shadow:0 8px 24px #36332d12,inset 0 1px #ffffffa8}.timetable-week-nav{gap:3px;padding:4px}.timetable-week-nav button,.timetable-week-nav button:hover{box-shadow:none;background:0 0;border-color:#0000;border-radius:12px}.timetable-week-nav button:active{background:color-mix(in srgb, var(--sheet) 50%, transparent);transform:scale(.96)}.material-kind-filters button{z-index:1;border-radius:12px;position:relative}.material-kind-filters button.is-active{border:1px solid color-mix(in srgb, var(--sheet) 54%, var(--line));background:color-mix(in srgb, var(--sheet) 48%, transparent);-webkit-backdrop-filter:blur(16px)saturate(126%);backdrop-filter:blur(16px)saturate(126%);box-shadow:0 4px 14px #36332d12,inset 0 1px #ffffffb8}@media (hover:hover){.material-kind-filters button:hover{background:color-mix(in srgb, var(--sheet) 26%, transparent)}.material-kind-filters button.is-active:hover{background:color-mix(in srgb, var(--sheet) 48%, transparent)}}.material-detail-paper{border-color:color-mix(in srgb, var(--sheet) 48%, var(--line));background:color-mix(in srgb, var(--sheet) 42%, transparent);-webkit-backdrop-filter:blur(24px)saturate(126%);backdrop-filter:blur(24px)saturate(126%);box-shadow:0 14px 38px #36332d17,inset 0 1px #ffffffad}.week-table thead th,.week-table tbody th,.weekly-plan-table thead th,.weekly-plan-table tbody>tr>th[scope=row]{background:color-mix(in srgb, var(--sheet) 50%, transparent);-webkit-backdrop-filter:blur(16px)saturate(124%);backdrop-filter:blur(16px)saturate(124%)}@media (prefers-reduced-motion:reduce){.timetable-week-nav button{transition-duration:.01ms!important}}.materials-route{gap:24px}.materials-head{border-bottom-color:color-mix(in srgb, var(--sage) 18%, var(--line));padding-bottom:18px}.material-master{align-content:start;gap:14px;display:grid}.material-kind-filters{border-color:color-mix(in srgb, var(--sage) 16%, var(--line));background:color-mix(in srgb, var(--sheet) 72%, var(--sage-soft));box-shadow:0 7px 18px #3c433b0e, inset 0 1px 0 #ffffffb8, inset 0 -2px 0 color-mix(in srgb, var(--sage) 7%, transparent);border-radius:16px}.material-kind-filters button,.material-kind-filters button:hover,.material-kind-filters button.is-active,.material-kind-filters button.is-active:hover{box-shadow:none;background:0 0;border-radius:12px}.unified-material-list{border-top:1px solid color-mix(in srgb, var(--ink) 68%, var(--line));margin-top:0;display:block}.unified-material-list>button{border:0;border-bottom:1px solid var(--line);min-height:70px;box-shadow:none;background:0 0;border-radius:0;grid-template-columns:4px minmax(0,1fr) auto;gap:12px;padding:11px 4px 11px 2px;transition:background-color .16s,padding .18s cubic-bezier(.25,1,.5,1)}.unified-material-list>button.is-selected{background:linear-gradient(90deg, color-mix(in srgb, var(--sage-soft) 72%, transparent), color-mix(in srgb, var(--sage-soft) 18%, transparent) 72%, transparent);padding-inline:5px 4px}.material-kind-mark{width:4px;height:34px;box-shadow:none;border-radius:999px}.material-kind-mark.is-mock-exam{box-shadow:none}.unified-material-list strong{font-size:.9rem}.material-detail-paper{border-color:var(--acrylic-border);background:var(--acrylic-surface);box-shadow:0 14px 32px #3c433b16, inset 0 1px 0 #ffffffc7, inset 0 -2px 0 color-mix(in srgb, var(--sage) 8%, transparent);border-radius:20px}.material-list-empty,.material-detail-empty{border:1px dashed color-mix(in srgb, var(--sage) 24%, var(--line));background:color-mix(in srgb, var(--sheet) 72%, transparent);text-align:center;border-radius:14px}.material-attempt-strip button{border-color:var(--acrylic-border);background:color-mix(in srgb, var(--sheet) 86%, var(--sage-soft));border-radius:13px;box-shadow:0 5px 12px #3c433b0d,inset 0 1px #ffffffbd}.material-attempt-strip button[aria-pressed=true]{border-color:color-mix(in srgb, var(--sage) 52%, var(--line));background:color-mix(in srgb, var(--sheet) 70%, var(--sage-soft))}@media (hover:hover){.unified-material-list>button:hover{background:color-mix(in srgb, var(--sage-soft) 36%, transparent)}}:is(.paper-card,.material-detail-paper,.unified-material-list>button){border:1px solid var(--acrylic-border);background:var(--acrylic-surface);box-shadow:var(--acrylic-depth), inset 0 1px 0 #ffffffc2, inset 0 -2px 0 color-mix(in srgb, var(--sage) 8%, transparent)}.unified-material-list>button,.unified-material-list>button:hover,.unified-material-list>button.is-selected{border-width:0 0 1px;border-color:var(--line);box-shadow:none;border-radius:0}.record-date-rail-shell{isolation:isolate;min-width:0;position:relative}.optical-filter-definitions{pointer-events:none;width:0;height:0;position:absolute;overflow:hidden}.record-date-rail-shell:before,.record-date-rail-shell:after{z-index:4;content:"";pointer-events:none;-webkit-backdrop-filter:url(#date-edge-refraction)blur(.25px)saturate(122%)contrast(1.04);backdrop-filter:url(#date-edge-refraction)blur(.25px)saturate(122%)contrast(1.04);background:0 0;width:68px;position:absolute;top:1px;bottom:1px}.record-date-rail-shell:before{box-shadow:inset .5px 0 0 color-mix(in srgb, var(--sage) 8%, transparent);transform-origin:0;border-radius:17px 0 0 17px;left:1px;transform:scaleX(1.012);-webkit-mask-image:linear-gradient(90deg,#000 0%,#000000c2 28%,#0000 100%);mask-image:linear-gradient(90deg,#000 0%,#000000c2 28%,#0000 100%)}.record-date-rail-shell:after{box-shadow:inset -.5px 0 0 color-mix(in srgb, var(--sage) 8%, transparent);transform-origin:100%;border-radius:0 17px 17px 0;right:1px;transform:scaleX(1.012);-webkit-mask-image:linear-gradient(270deg,#000 0%,#000000c2 28%,#0000 100%);mask-image:linear-gradient(270deg,#000 0%,#000000c2 28%,#0000 100%)}.record-date-drag-glass{z-index:5;border:1px solid color-mix(in srgb, var(--sage) 28%, transparent);background:color-mix(in srgb, var(--sage) 7%, transparent);width:54px;box-shadow:0 13px 28px #3646381a, inset 0 1.5px 0 #ffffffad, inset 1px 0 0 #ffffff42, inset -1px -2px 0 color-mix(in srgb, var(--sage-dark) 13%, transparent);opacity:0;pointer-events:none;transform:translate3d(var(--selected-drag-offset,0), 0, 0) scaleX(var(--selected-drag-stretch,1)) scaleY(1.03) skewX(var(--selected-drag-lean,0deg));transform-origin:50%;border-radius:22px;transition:opacity .16s cubic-bezier(.25,1,.5,1);position:absolute;top:-6px;bottom:-6px;left:calc(50% - 27px)}.record-date-drag-glass:after{content:"";background:linear-gradient(105deg,#0000 4%,#ffffff94 40%,#ffffff24 68%,#0000 94%);border-radius:999px;height:38%;position:absolute;inset:2px 5px auto}.record-date-rail-shell[data-selection-drag=true] .record-date-drag-glass{opacity:1}.record-date-strip button.is-selected:before,.record-date-strip button.is-selected:after{transition:opacity .16s cubic-bezier(.25,1,.5,1)}.record-date-strip[data-selection-drag=true]:before,.record-date-strip[data-selection-drag=true]:after{display:none}.app{overflow-x:clip}.app-main[data-page-direction=forward][data-page-motion-cycle="0"]{animation:.22s cubic-bezier(.16,1,.3,1) page-forward-0}.app-main[data-page-direction=forward][data-page-motion-cycle="1"]{animation:.22s cubic-bezier(.16,1,.3,1) page-forward-1}.app-main[data-page-direction=backward][data-page-motion-cycle="0"]{animation:.22s cubic-bezier(.16,1,.3,1) page-backward-0}.app-main[data-page-direction=backward][data-page-motion-cycle="1"]{animation:.22s cubic-bezier(.16,1,.3,1) page-backward-1}@keyframes page-forward-0{0%{opacity:.42;transform:translate(10px)}72%{transform:translate(-1px)}}@keyframes page-forward-1{0%{opacity:.42;transform:translate(10px)}72%{transform:translate(-1px)}}@keyframes page-backward-0{0%{opacity:.42;transform:translate(-10px)}72%{transform:translate(1px)}}@keyframes page-backward-1{0%{opacity:.42;transform:translate(-10px)}72%{transform:translate(1px)}}@media (prefers-reduced-motion:reduce){.app-main[data-page-direction]{animation:.1s linear page-reduced-fade!important}}@keyframes page-reduced-fade{0%{opacity:.86}}.record-date-strip{border:1px solid color-mix(in srgb, var(--sage) 12%, var(--sheet) 48%);background:color-mix(in srgb, var(--sage-soft) 28%, transparent);box-shadow:0 7px 20px #3640360b, inset 0 1px 0 #ffffff9e, inset 0 -1px 0 color-mix(in srgb, var(--sage) 7%, transparent);-webkit-backdrop-filter:blur(22px)saturate(142%)contrast(1.025);backdrop-filter:blur(22px)saturate(142%)contrast(1.025);cursor:grab;scroll-behavior:auto;touch-action:pan-x;-webkit-user-select:none;user-select:none;border-radius:18px;justify-content:flex-start;gap:4px;padding:5px;scroll-padding-inline:calc(50% - 22px);display:flex}.record-date-strip>button{flex:0 0 44px}.record-date-strip[data-dragging=true]{cursor:grabbing;scroll-behavior:auto}.record-date-strip button,.record-date-strip button:hover{color:var(--muted);background:0 0;transition:color .18s cubic-bezier(.25,1,.5,1),transform .18s cubic-bezier(.25,1,.5,1)}.record-date-strip button.is-selected,.record-date-strip button.is-selected:hover{isolation:isolate;color:var(--sage-dark);box-shadow:none;touch-action:none;background:0 0;border-color:#0000;animation:.28s cubic-bezier(.16,1,.3,1) record-date-settle}.record-date-strip button.is-selected:before{z-index:0;border:1px solid color-mix(in srgb, var(--sage) 20%, var(--sheet) 70%);border-radius:inherit;background:color-mix(in srgb, var(--sage-soft) 52%, transparent);box-shadow:0 5px 16px #36463814, inset 0 1.5px 0 #ffffffc2, inset 1px 0 0 #ffffff57, inset -1px -1px 0 color-mix(in srgb, var(--sage) 14%, transparent);content:"";-webkit-backdrop-filter:blur(11px)saturate(148%)contrast(1.055)brightness(1.035);backdrop-filter:blur(11px)saturate(148%)contrast(1.055)brightness(1.035);position:absolute;inset:0}.record-date-strip button.is-selected:after{z-index:0;content:"";opacity:.72;pointer-events:none;background:linear-gradient(105deg,#0000 4%,#ffffff8a 38%,#ffffff2e 63%,#0000 92%);border-radius:999px;height:38%;position:absolute;inset:2px 5px auto;transform:translate(-1px)skew(-8deg)}.record-date-strip button.is-selected>span,.record-date-strip button.is-selected>strong,.record-date-strip button.is-selected>i{z-index:1;position:relative}.record-date-strip[data-selection-drag=true] button.is-selected{z-index:2;transition:none;animation:none}.record-date-strip[data-selection-drag=true] button.is-selected:before,.record-date-strip[data-selection-drag=true] button.is-selected:after{opacity:0}.record-date-strip button.is-selected strong{color:var(--ink)}.record-date-strip button.is-selected i{background:var(--sage-dark)}.record-date-strip[data-direction]{animation:none}.record-date-strip[data-settling=true]{cursor:grabbing;scroll-behavior:auto}@keyframes record-strip-backward-0{35%{transform:translate(7px)scaleX(.985)}}@keyframes record-strip-backward-1{35%{transform:translate(7px)scaleX(.985)}}@keyframes record-strip-forward-0{35%{transform:translate(-7px)scaleX(.985)}}@keyframes record-strip-forward-1{35%{transform:translate(-7px)scaleX(.985)}}@keyframes record-date-settle{42%{transform:scale(1.06)}72%{transform:scale(.98)}}.material-kind-filters{isolation:isolate;position:relative}.material-kind-filters:before{z-index:0;border:1px solid color-mix(in srgb, var(--sheet) 54%, var(--line));background:color-mix(in srgb, var(--sheet) 48%, transparent);content:"";-webkit-backdrop-filter:blur(16px)saturate(126%);backdrop-filter:blur(16px)saturate(126%);border-radius:12px;width:calc(33.3333% - 5.33333px);transition:transform .34s cubic-bezier(.16,1,.3,1);position:absolute;top:4px;bottom:4px;left:4px;transform:translate(0);box-shadow:0 4px 14px #36332d12,inset 0 1px #ffffffb8}.material-kind-filters:has(button:nth-child(2).is-active):before{transform:translate(calc(100% + 4px))}.material-kind-filters:has(button:nth-child(3).is-active):before{transform:translate(calc(200% + 8px))}.material-kind-filters button.is-active,.material-kind-filters button.is-active:hover{box-shadow:none;background:0 0;border-color:#0000}.demo-menu[open] .demo-actions{transform-origin:100% 0;animation:.18s cubic-bezier(.16,1,.3,1) glass-pop-in}.session-record-dialog,.class-sheet-dialog{animation:.24s cubic-bezier(.16,1,.3,1) glass-sheet-in}.planner-toast{animation:.22s cubic-bezier(.16,1,.3,1) glass-toast-in}@keyframes glass-pop-in{0%{opacity:0;transform:translateY(-5px)scale(.97)}}@keyframes glass-sheet-in{0%{opacity:0;transform:translateY(10px)scale(.985)}}@keyframes glass-toast-in{0%{opacity:0;transform:translateY(8px)scale(.98)}}@media (prefers-reduced-motion:reduce){.record-date-strip,.record-date-strip button,.material-kind-filters:before,.demo-menu .demo-actions,.session-record-dialog,.class-sheet-dialog,.planner-toast{transition-duration:.01ms!important;animation:none!important}}.record-date-native-input{border:1px solid color-mix(in srgb, var(--sage) 18%, transparent);width:auto;min-width:145px;min-height:44px;color:var(--ink);background:color-mix(in srgb, var(--sheet) 32%, transparent);font:inherit;font-size:var(--text-form-value);font-variant-numeric:tabular-nums;-webkit-backdrop-filter:blur(12px)saturate(116%);backdrop-filter:blur(12px)saturate(116%);border-radius:10px;justify-self:end;padding-inline:10px;box-shadow:inset 0 1px #ffffff6b}.record-date-rail-shell{border:1px solid color-mix(in srgb, var(--sage) 13%, transparent);background:color-mix(in srgb, var(--sage-soft) 18%, transparent);-webkit-backdrop-filter:blur(18px)saturate(124%);backdrop-filter:blur(18px)saturate(124%);border-radius:20px;overflow:visible;box-shadow:inset 0 1px #ffffff75,0 7px 20px #36403609}.record-date-strip{border-radius:inherit;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0}.materials-route .material-kind-filters{border-color:color-mix(in srgb, var(--sage) 16%, transparent);background:color-mix(in srgb, var(--sheet) 42%, transparent);-webkit-backdrop-filter:blur(18px)saturate(124%);backdrop-filter:blur(18px)saturate(124%);box-shadow:0 7px 18px #3c433b0b,inset 0 1px #ffffff94}.materials-route :is(.material-kind-filters button,.material-group-toggle,.material-row,.material-add-trigger):focus{outline:none}.materials-route :is(.material-kind-filters button,.material-group-toggle,.material-row,.material-add-trigger):focus-visible,.materials-route .material-kind-filters button:focus-visible{box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--sage) 32%, transparent);color:var(--sage-dark);outline:none}.materials-route .unified-material-layout,.materials-route .material-master,.materials-route .unified-material-list,.materials-route .material-detail-paper{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-color:#0000}.materials-route .material-detail-paper{border-radius:0}.materials-route .unified-material-list{background:0 0}.materials-route :is(.unified-material-list>button,.material-group-toggle,.material-row),.materials-route :is(.unified-material-list>button,.material-group-toggle,.material-row):hover,.materials-route :is(.unified-material-list>button,.material-group-toggle,.material-row).is-selected,.materials-route :is(.unified-material-list>button,.material-group-toggle,.material-row).is-selected:hover,.materials-route .unified-material-list>button,.materials-route .unified-material-list>button:hover,.materials-route .unified-material-list>button.is-selected,.materials-route .unified-material-list>button.is-selected:hover{box-shadow:none;background:0 0}.materials-route .material-group-toggle,.materials-route .material-row{border-radius:0}.materials-route .material-group-child{padding-inline-start:28px}.materials-route :is(.material-group-toggle,.material-row){border:0;border-bottom:1px solid color-mix(in srgb, var(--line) 82%, transparent);width:100%;min-height:58px;color:var(--ink);text-align:left;background:0 0;grid-template-columns:5px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 0;display:grid}.materials-route .material-group-toggle{grid-template-columns:minmax(0,1fr) auto auto}.materials-route .material-group-toggle small,.materials-route .material-row small{color:var(--muted)}.materials-route .material-group-toggle>span{color:var(--sage-dark);font-size:1.1rem}.materials-route .material-row:hover,.materials-route .material-row.is-selected{color:var(--sage-dark)}.materials-route .material-row.is-selected>span:not(.material-kind-mark) strong{font-weight:800}.materials-route .material-create-editor{border:0;border-bottom:1px solid color-mix(in srgb, var(--line) 88%, transparent);background:0 0;gap:12px;margin:0 0 18px;padding:0 0 16px;display:grid}.materials-route .material-create-editor>label{color:var(--muted);gap:5px;font-size:.72rem;font-weight:750;display:grid}.materials-route .material-create-editor input,.materials-route .material-create-editor select{border:0;border-bottom:1px solid color-mix(in srgb, var(--sage) 32%, transparent);min-height:42px;color:var(--ink);font:inherit;background:0 0;border-radius:0;padding:8px 0}.materials-route .material-create-editor .material-create-kind{border:1px solid color-mix(in srgb, var(--sage) 23%, transparent);background:color-mix(in srgb, var(--sheet) 38%, transparent);border-radius:999px;padding-inline:10px}.materials-route .material-create-actions{justify-content:flex-end;gap:8px;display:flex}.materials-route .material-create-cancel{color:var(--ink);background:0 0}.materials-route .material-create-save{color:var(--sheet);background:var(--sage-dark);border-color:#0000}.materials-route :is(.material-list-empty,.material-detail-empty){background:0 0}:is(.primary-button,.planner-toast){background-color:color-mix(in srgb, var(--sage-dark) 92%, transparent);-webkit-backdrop-filter:blur(12px)saturate(116%);backdrop-filter:blur(12px)saturate(116%)}.learned-editor-shell{border:1px solid var(--line,#d8d4ca);background:#ffffff61;border-radius:12px;position:relative;overflow:hidden}.learned-editor-toolbar{border-bottom:1px solid var(--line,#d8d4ca);-webkit-overflow-scrolling:touch;flex-wrap:nowrap;gap:4px;padding:6px;display:flex;overflow-x:auto}.learned-editor-toolbar button,.learned-equation-dialog button{min-width:44px;min-height:44px;color:inherit;background:0 0;border:0;border-radius:8px;padding:0 10px}.learned-editor-toolbar button:hover,.learned-editor-toolbar button[aria-pressed=true]{background:#4b4f811a}.learned-editor-toolbar button:focus-visible{outline:3px solid color-mix(in srgb, var(--focus-ring) 56%, transparent);outline-offset:-3px}.learned-editor-toolbar button:disabled{opacity:.38}.learned-editor-toolbar-separator{background:var(--line,#d8d4ca);flex:0 0 1px;width:1px;margin:7px 3px}.learned-editor-paper{min-height:150px;position:relative}.learned-editor-input{outline:none;min-height:150px;padding:14px;line-height:1.65}.learned-editor-placeholder{color:#77746d;pointer-events:none;position:absolute;inset:14px}.learned-editor-input h2{margin:.5em 0;font-size:1.2rem}.learned-editor-input blockquote{border-left:3px solid #777da3;margin:.75em 0;padding-left:12px}.learned-editor-input img{max-width:100%;height:auto;margin:10px auto;display:block}.learned-slash-menu{z-index:4;background:#fffdf7;border:1px solid #d8d4ca;border-radius:10px;min-width:140px;padding:4px;display:grid;position:absolute;top:92px;left:12px;box-shadow:0 8px 24px #24221f24}.learned-slash-menu [role=option]{text-align:left;background:0 0;border:0;border-radius:7px;min-height:44px}.learned-slash-menu .is-active,.learned-slash-menu [aria-selected=true]{background:#4b4f811a}.learned-equation-dialog{z-index:5;border:1px solid var(--line,#d8d4ca);max-height:calc(100% - 20px);color:var(--ink,#2c2a26);background:var(--sheet,#fffdf7);border-radius:10px;gap:16px;padding:18px;display:grid;position:absolute;inset:48px 10px 10px;overflow-y:auto;box-shadow:0 12px 28px #24221f24}.learned-equation-header{border-bottom:1px solid var(--line,#d8d4ca);padding-bottom:12px}.learned-equation-header h2{font-family:var(--font-heading);margin:0;font-size:1.25rem;line-height:1.2}.learned-equation-header p{max-width:48ch;color:var(--muted,#6f6a61);margin:5px 0 0;font-size:.8rem}.learned-equation-field{gap:6px;display:grid}.learned-equation-field>label,.learned-equation-preview-label{color:var(--muted,#6f6a61);font-size:.72rem;font-weight:750}.learned-equation-input{resize:vertical;border:1px solid var(--line,#d8d4ca);width:100%;min-height:96px;color:inherit;background:color-mix(in srgb, var(--sheet,#fffdf7) 72%, var(--sage-soft,#e7ece5));border-radius:6px;padding:11px 12px;font:.92rem/1.55 ui-monospace,SFMono-Regular,Consolas,monospace}.learned-equation-input:focus-visible{outline:2px solid color-mix(in srgb, var(--sage-dark,#526354) 65%, transparent);outline-offset:1px}.learned-equation-mode{border:1px solid var(--line,#d8d4ca);background:var(--sheet-muted,#f7f3eb);border-radius:9px;grid-template-columns:repeat(2,minmax(0,1fr));padding:3px;display:grid}.learned-equation-mode label{cursor:pointer;border-radius:6px;place-items:center;min-height:44px;display:grid;position:relative}.learned-equation-mode input{opacity:0;width:1px;height:1px;position:absolute}.learned-equation-mode label:has(input:checked){color:var(--sheet,#fffdf7);background:var(--sage-dark,#526354)}.learned-equation-mode label:has(input:focus-visible){outline:2px solid var(--focus-ring,#526354);outline-offset:-2px}.learned-equation-preview{border:1px solid color-mix(in srgb, var(--sage,#718171) 30%, var(--line,#d8d4ca));background:color-mix(in srgb, var(--sage-soft,#e7ece5) 48%, var(--sheet,#fffdf7));border-radius:6px;min-height:104px;padding:12px;overflow-x:auto}.learned-equation-preview-body{place-items:center;min-height:64px;padding-top:6px;display:grid}.learned-equation-preview-empty{color:var(--muted,#6f6a61);font-size:.8rem}.learned-equation-actions{justify-content:flex-end;gap:8px;padding-top:2px;display:flex}.learned-equation-actions .is-cancel{border:1px solid var(--line,#d8d4ca)}.learned-equation-actions .is-apply{color:var(--sheet,#fffdf7);background:var(--sage-dark,#526354)}.learned-equation-actions button:disabled{opacity:.45}@media (width<=560px){.learned-equation-dialog{gap:14px;padding:16px;inset:10px}.learned-equation-actions button{flex:1}}.learned-equation.is-block{text-align:center;padding:8px;display:block}.learned-equation.is-inline{display:inline}.today-screen,.records-route{font-size:var(--text-body)}.today-screen{width:min(100%,900px);margin-inline:auto}.today-timeline-row>.timeline-inline-trigger{min-width:44px;min-height:44px;color:var(--sage-dark);box-shadow:none;background:0 0;border:0;border-radius:8px;padding:0 6px;font-size:.72rem;font-weight:760}.today-timeline-row>.timeline-inline-trigger:active,.today-timeline-row>.timeline-inline-trigger:hover{background:color-mix(in srgb, var(--sage-soft) 58%, transparent);box-shadow:none}.today-timeline-row .timeline-day-review-actions button,.today-timeline-row .timeline-saved-review .text-button{background:color-mix(in srgb, var(--sheet-muted) 92%, var(--paper));min-height:44px;box-shadow:none;border:0;border-radius:8px}.today-timeline-row .timeline-fixed-actions{grid-column:5;align-items:center;gap:3px;min-height:56px;display:flex}.today-timeline-row .timeline-fixed-check{width:44px;min-width:44px;height:44px;min-height:44px;color:color-mix(in srgb, var(--timeline-subject,var(--sage)) 78%, var(--ink));box-shadow:none;background:0 0;border:0;border-radius:0;place-items:center;padding:0;font-size:.82rem;font-weight:850;display:grid}.today-timeline-row .timeline-fixed-check .checklist-mark-control__symbol{background:color-mix(in srgb, currentColor 7%, transparent);width:22px;height:22px;box-shadow:none;border:1.5px solid;border-radius:4px}.today-timeline-row .timeline-fixed-check.st-done{opacity:.58}.today-timeline-row .timeline-fixed-check.st-partial{opacity:.76}.today-timeline-row .timeline-fixed-check.st-skipped{opacity:.4}.today-timeline-row .timeline-fixed-actions .timeline-inline-trigger{min-width:36px;min-height:34px;color:var(--sage-dark);background:0 0;border:0;border-radius:5px;padding:0 4px;font-size:.68rem;font-weight:760}.material-filter-bar{grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:8px;display:grid}.material-archive-filter{border:1px solid color-mix(in srgb, var(--sage) 22%, var(--line));min-width:72px;min-height:44px;color:var(--muted);background:color-mix(in srgb, var(--sheet-muted) 94%, var(--paper));box-shadow:none;border-radius:12px;padding-inline:12px;font-size:.72rem;font-weight:750}.material-archive-filter.is-active{color:var(--sage-dark);border-color:color-mix(in srgb, var(--sage) 48%, var(--line));background:var(--sage-soft)}.archived-material-detail{gap:18px;max-width:620px;display:grid}.archived-material-detail header{border-bottom:1px solid var(--line);padding-bottom:14px}.archived-material-detail header span,.archived-material-detail header p,.archived-material-note,.archived-material-detail dt{color:var(--muted);font-size:var(--text-helper)}.archived-material-detail h2,.archived-material-detail header p,.archived-material-note{margin:0}.archived-material-detail h2{margin-block:4px;font-size:1.28rem}.archived-material-detail dl{gap:10px;margin:0;display:grid}.archived-material-detail dl div{border-bottom:1px solid var(--line);grid-template-columns:100px minmax(0,1fr);align-items:center;min-height:44px;display:grid}.archived-material-detail dd{font-size:var(--text-form-value);margin:0;font-weight:700}.material-restore-action{min-width:96px;min-height:44px;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;justify-self:start}@media (width<=560px){.today-screen{width:100%}.material-filter-bar{gap:6px}.material-archive-filter{min-width:68px;padding-inline:8px}}.capture-flow-form{gap:24px;min-height:100%;padding:20px 24px 0}.capture-flow-form .flow-form-prompts{gap:24px}.capture-flow-form .form-summary{gap:12px;padding-bottom:4px}.capture-flow-form .form-summary-save{background:0 0;padding-block:4px 0;position:static}.capture-flow-form .class-sheet-section{border:0;padding:0}.capture-subject-choice{border-bottom:1px solid var(--line);gap:10px;padding-bottom:22px;display:grid}.capture-subject-choice .class-sheet-section-heading{margin-bottom:0}.capture-flow-form .class-sheet-record-fields{grid-template-columns:minmax(0,1fr);gap:24px}.capture-flow-form .flow-prompt{border-bottom:1px solid var(--line);padding-bottom:22px}.capture-flow-form .flow-prompt>legend{margin-bottom:8px}.capture-flow-form textarea{min-height:90px}.capture-flow-form>.flow-form-transaction-surface>.flow-form-actions{z-index:2;padding:12px 24px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:color-mix(in srgb, var(--sheet) 94%, transparent);margin-inline:-24px}.class-session-sheet .subject-choice-row{gap:8px;min-width:0;display:grid}.class-session-sheet .subject-choice-row>.class-sheet-secondary-action{justify-self:start;min-height:44px}.class-session-sheet .material-add-trigger{min-height:44px}.material-progress-fields>.amount-choice,.material-progress-fields>.choice-chips{min-width:0}.material-progress-suggestion,.capture-empty-note{color:var(--muted);font-size:var(--text-helper);grid-column:1/-1;margin:0;line-height:1.5}.material-picker-inline{margin-top:16px}@media (width<=640px){.capture-flow-form{padding-inline:16px}.capture-flow-form>.flow-form-transaction-surface>.flow-form-actions{margin-inline:-16px;padding-inline:16px}.capture-flow-form>.flow-form-transaction-surface>.flow-form-actions button{flex:1}.capture-flow-form .form-summary-row{grid-template-columns:minmax(72px,.38fr) minmax(0,1fr)}.capture-flow-form .form-summary-row>:last-child:not(dd){grid-column:1/-1}.capture-flow-form .material-progress-fields{grid-template-columns:minmax(0,1fr)}}.materials-route .material-form-flow,.material-picker-inline .material-create-step{gap:20px;min-width:0;display:grid}.material-picker-inline fieldset.material-create-step{border:0;margin:0;padding:0}.materials-route .material-form-flow{border-bottom:1px solid var(--line);margin-bottom:18px;padding-bottom:18px}.materials-route .material-form-flow>.flow-form-transaction-surface>.flow-form-prompts,.material-picker-inline .material-create-step{gap:18px}.materials-route .material-form-flow .flow-prompt,.material-picker-inline .material-create-step>.flow-prompt{border-bottom:1px solid var(--line);padding-bottom:18px}.materials-route .material-form-flow .flow-prompt-control,.material-picker-inline .material-create-step .flow-prompt-control{gap:12px;display:grid}.materials-route .material-form-flow .subject-choice-row,.material-picker-inline .subject-choice-row{gap:8px;min-width:0;display:grid}.materials-route .material-form-flow .subject-choice-row>button,.material-picker-inline .subject-choice-row>button{justify-self:start;min-height:44px}.materials-route .material-form-flow :is(.choice-chip,input,textarea,button),.material-picker-inline .material-create-step :is(.choice-chip,input,button){min-height:44px}.materials-route .material-form-flow :is(input,textarea),.material-picker-inline .material-create-step input{font-size:var(--text-form-value)}.materials-route .material-form-flow :is(.flow-prompt-helper,.flow-prompt-error,.form-error),.material-picker-inline .material-create-step :is(.flow-prompt-helper,.form-error){font-size:max(14px, var(--text-helper))}.material-editor-heading{border-bottom:1px solid var(--ink);gap:4px;padding-bottom:14px;display:grid}.material-editor-heading strong{font-family:var(--font-heading);font-size:var(--text-section-heading)}.material-editor-heading span{color:var(--muted);font-size:var(--text-helper)}.material-editor-details,.material-editor-detail-grid,.material-editor-control-stack{gap:12px;display:grid}.material-editor-details>button{justify-self:start}.material-editor-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.materials-route .material-form-flow>.flow-form-transaction-surface>.flow-form-actions{z-index:2;border-top:1px solid var(--line);background:color-mix(in srgb, var(--sheet) 94%, transparent);padding-block:10px;position:sticky;bottom:0}.materials-route .material-form-flow .form-summary-save button,.material-picker-inline .material-create-step .form-summary-save button{min-height:50px}.material-picker-inline .material-create-step .form-summary{gap:10px}.material-picker-inline .material-picker-actions{flex-wrap:wrap}@media (width<=640px){.material-editor-detail-grid{grid-template-columns:minmax(0,1fr)}.materials-route .material-form-flow .form-summary-row,.material-picker-inline .material-create-step .form-summary-row{grid-template-columns:minmax(72px,.38fr) minmax(0,1fr)}}.planner-workspace-route :is(.reference-month-head,.reference-week-panel-head,.daily-panel-head){border-bottom:1px dotted color-mix(in srgb, var(--ink) 18%, transparent);grid-template-columns:44px minmax(0,1fr) 44px auto;justify-content:stretch;align-items:center;gap:4px;min-height:48px;padding:0 0 8px;display:grid}.planner-workspace-route :is(.reference-month-head,.reference-week-panel-head,.daily-panel-head)>button{appearance:none;border:1px solid color-mix(in srgb, var(--ink) 10%, transparent);width:44px;min-width:44px;height:44px;min-height:44px;color:var(--ink);background:color-mix(in srgb, var(--sheet) 78%, transparent);box-shadow:0 1px 2px color-mix(in srgb, var(--ink) 6%, transparent);font:720 16px/1 var(--font-body);border-radius:8px;place-items:center;margin:0;padding:0;display:grid}.planner-workspace-route :is(.reference-month-head,.reference-week-panel-head,.daily-panel-head)>:is(h1,strong){text-align:center;min-width:0;font:720 14px/1.2 var(--font-body);letter-spacing:-.025em;margin:0}.planner-workspace-route .reference-month-head>.reference-month-today{width:auto;min-width:44px;color:var(--sage-dark);padding-inline:10px;font-size:12px}.planner-todo-inbox .reference-month-todo-add{appearance:none;width:100%;min-height:42px;color:var(--sage-dark);box-shadow:none;font:680 12px/1 var(--font-body);text-align:start;background:0 0;border:0;border-radius:4px;align-items:center;gap:7px;margin:4px 0 0;padding:0 8px;display:flex}.planner-todo-inbox .reference-month-todo-add:hover{background:color-mix(in srgb, var(--sage-soft) 54%, transparent)}.planner-todo-inbox{border-top:0;gap:0;padding:18px 4px 8px}.planner-todo-inbox>header{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.planner-todo-inbox .reference-month-todo-groups{border:0;gap:14px;display:grid}.planner-todo-inbox .planner-todo-group{border:1px solid color-mix(in srgb, var(--ink) 22%, transparent);background:color-mix(in srgb, var(--sheet) 92%, transparent);box-shadow:0 1px 2px color-mix(in srgb, var(--ink) 6%, transparent), 0 8px 18px color-mix(in srgb, var(--ink) 4%, transparent);border-radius:14px;overflow:clip}.planner-todo-inbox .planner-todo-group>summary{grid-template-columns:20px minmax(0,1fr) auto 36px 28px;align-items:center;gap:7px;min-height:54px;padding:2px 10px 0 16px;display:grid}.planner-todo-inbox .planner-todo-group>summary>i{width:18px;height:18px;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--ink) 8%, transparent);border-radius:7px}.planner-todo-inbox .planner-todo-group>summary>strong{text-overflow:ellipsis;white-space:nowrap;letter-spacing:-.025em;font-size:16px;font-weight:670;overflow:hidden}.planner-todo-inbox .planner-todo-group>summary>span{color:color-mix(in srgb, var(--muted) 78%, transparent);font-variant-numeric:tabular-nums;font-size:14px}.planner-todo-inbox .planner-todo-group>summary>button,.planner-todo-inbox .planner-todo-drag{width:36px;min-width:36px;min-height:44px;color:color-mix(in srgb, var(--muted) 42%, transparent);font-size:17px}.planner-todo-chevron{width:28px;min-height:44px;color:color-mix(in srgb, var(--muted) 55%, transparent);place-items:center;font-size:15px;font-weight:500;transition:transform .16s cubic-bezier(.16,1,.3,1);display:grid}.planner-todo-group:not([open]) .planner-todo-chevron{transform:rotate(180deg)}.planner-todo-inbox .planner-todo-group .reference-month-todo-list{border-top:0;padding:0 10px 8px}.planner-todo-inbox .planner-todo-group .reference-month-todo{border-bottom:0;grid-template-columns:48px minmax(0,1fr) 38px;min-height:52px;padding:0}.planner-todo-inbox .reference-month-todo-check{min-width:48px;min-height:48px}.planner-todo-inbox .reference-month-todo-check:before{background:0 0;border-width:1.5px;border-radius:3px;width:22px;height:22px}.planner-todo-inbox .reference-month-todo-check[data-mark=done]:before{border-color:color-mix(in srgb, var(--ink) 72%, transparent);background:color-mix(in srgb, var(--ink) 72%, transparent)}.planner-todo-inbox .reference-month-todo-main{min-height:48px;padding:5px 0}.planner-todo-inbox .reference-month-todo-main strong{letter-spacing:-.02em;font-size:15px;font-weight:640}.planner-todo-inbox .reference-month-todo.st-done{opacity:.52}.planner-todo-inbox .planner-todo-group-add{width:44px;min-width:44px;min-height:38px;color:color-mix(in srgb, var(--muted) 45%, transparent);place-items:center;margin:0 0 0 5px;font-size:21px;font-weight:350;display:grid}.planner-todo-inbox>.reference-month-todo-add{width:48px;min-width:48px;min-height:48px;color:var(--ink);background:color-mix(in srgb, var(--sheet) 88%, transparent);box-shadow:0 4px 14px color-mix(in srgb, var(--ink) 8%, transparent);border:0;border-radius:50%;place-items:center;margin:16px auto 0;padding:0;display:grid}.planner-todo-inbox>.reference-month-todo-add span{font-size:24px;font-weight:340}.planner-todo-inbox .reference-month-todo-empty{text-align:center;border:0;padding:24px 8px 8px}.planner-todo-inbox .reference-month-todo-groups{gap:8px}.planner-todo-inbox .planner-todo-group{box-shadow:0 1px 3px color-mix(in srgb, var(--ink) 6%, transparent);border-radius:8px}.planner-todo-inbox .planner-todo-group>summary{min-height:48px;padding:0 8px 0 12px}.planner-todo-inbox .planner-todo-group .reference-month-todo-list{padding:0 6px 5px}.planner-todo-inbox .planner-todo-group .reference-month-todo{min-height:48px}.planner-todo-inbox>.reference-month-todo-add{box-shadow:0 1px 3px color-mix(in srgb, var(--ink) 7%, transparent);border-radius:8px}.planner-todo-inline-row{grid-template-columns:48px minmax(0,1fr) 38px;align-items:center;min-height:48px;display:grid}.planner-todo-inline-check{border:1.5px solid color-mix(in srgb, var(--sage) 70%, var(--ink));border-radius:3px;justify-self:center;width:22px;height:22px}.planner-todo-inline-row input,.planner-todo-inline-input{border:0;border-bottom:1px solid color-mix(in srgb, var(--sage-dark) 36%, transparent);width:100%;min-width:0;min-height:42px;color:var(--ink);box-shadow:none;font:640 15px/1.35 var(--font-body);background:0 0;border-radius:0;padding:0}.planner-todo-inline-row>button{min-width:38px;min-height:44px;color:var(--muted);box-shadow:none;background:0 0;border:0;border-radius:0;padding:0}.planner-todo-category-draft{box-sizing:border-box;width:100%;min-width:0;max-width:100%;margin-bottom:8px;padding:0;overflow:hidden}.planner-todo-category-draft-head{grid-template-columns:20px minmax(0,1fr) 40px 40px;align-items:center;gap:6px;min-width:0;min-height:48px;padding:0 6px 0 12px;display:grid}.planner-todo-category-draft-head>i{border-radius:6px;width:18px;height:18px}.planner-todo-category-draft-head>input{border:0;border-bottom:1px solid color-mix(in srgb, var(--sage-dark) 36%, transparent);min-width:0;min-height:42px;box-shadow:none;font:670 16px/1.3 var(--font-body);background:0 0;border-radius:0;outline:none;padding:0}.planner-todo-category-draft-head>button{min-width:40px;min-height:40px;box-shadow:none;background:0 0;border:0;border-radius:4px;padding:0}.planner-todo-category-draft-options{border-top:1px solid color-mix(in srgb, var(--ink) 8%, transparent);gap:4px;min-width:0;padding:4px 10px 8px;display:grid;overflow:hidden}.planner-todo-category-draft-options .reference-month-todo-colors{justify-content:flex-start;max-width:100%;margin:0}.planner-todo-category-draft-options .reference-month-todo-colors button{min-width:36px;min-height:36px}.planner-todo-category-draft-options .reference-month-todo-subjects{width:100%;max-width:100%;margin:0;padding:0;overflow-x:auto}.planner-todo-category-draft-options .reference-month-todo-subjects button{border-radius:5px;min-height:36px;padding-inline:10px}.planner-todo-group>summary>strong small{color:var(--muted);margin-left:6px;font-size:11px;font-weight:600}.app-main:has(.planner-workspace-route){width:100%;max-width:none;padding-inline:clamp(8px,1.5vw,20px)}.planner-workspace-route{width:100%;max-width:none}
