:root{--adm-radius-s:4px;--adm-radius-m:8px;--adm-radius-l:12px;--adm-font-size-1:9px;--adm-font-size-2:10px;--adm-font-size-3:11px;--adm-font-size-4:12px;--adm-font-size-5:13px;--adm-font-size-6:14px;--adm-font-size-7:15px;--adm-font-size-8:16px;--adm-font-size-9:17px;--adm-font-size-10:18px;--adm-color-primary:#1677ff;--adm-color-success:#00b578;--adm-color-warning:#ff8f1f;--adm-color-danger:#ff3141;--adm-color-yellow:#ff9f18;--adm-color-orange:#ff6430;--adm-color-wathet:#e7f1ff;--adm-color-text:#333;--adm-color-text-secondary:#666;--adm-color-weak:#999;--adm-color-light:#ccc;--adm-color-border:#eee;--adm-color-background:#fff;--adm-color-highlight:var(--adm-color-danger);--adm-color-white:#fff;--adm-color-box:#f5f5f5;--adm-color-text-light-solid:var(--adm-color-white);--adm-color-text-dark-solid:#000;--adm-color-fill-content:var(--adm-color-box);--adm-font-size-main:var(--adm-font-size-5);--adm-font-family:-apple-system, blinkmacsystemfont, "Helvetica Neue", helvetica, segoe ui, arial, roboto, "PingFang SC", "miui", "Hiragino Sans GB", "Microsoft Yahei", sans-serif;--adm-border-color:var(--adm-color-border)}html[data-prefers-color-scheme=dark]{--adm-color-primary:#3086ff;--adm-color-success:#34b368;--adm-color-warning:#ffa930;--adm-color-danger:#ff4a58;--adm-color-yellow:#ffa930;--adm-color-orange:#e65a2b;--adm-color-wathet:#0d2543;--adm-color-text:#e6e6e6;--adm-color-text-secondary:#b3b3b3;--adm-color-weak:gray;--adm-color-light:#4d4d4d;--adm-color-border:#2b2b2b;--adm-color-box:#0a0a0a;--adm-color-background:#1a1a1a;--adm-color-background-body:var(--adm-color-background);--adm-border-color:var(--adm-color-border)}:root{-webkit-tap-highlight-color:#0000}html{background-color:var(--adm-color-background-body)}body{color:var(--adm-color-text);font-size:var(--adm-font-size-main);font-family:var(--adm-font-family)}a,button{cursor:pointer}a{color:var(--adm-color-primary);transition:opacity .2s ease-in-out}a:active{opacity:.8}.adm-plain-anchor{color:unset;transition:none}.adm-plain-anchor:active{opacity:unset}body.adm-overflow-hidden{overflow:hidden!important}div.adm-px-tester{--size:1;height:calc(var(--size) / 2 * 2px);-webkit-user-select:none;user-select:none;pointer-events:none;width:0;position:fixed;top:-100vh;left:-100vw}@font-face{font-display:block;font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(/static/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2)format("woff2"),url(/static/assets/KaTeX_AMS-Regular-DMm9YOAa.woff)format("woff"),url(/static/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(/static/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2)format("woff2"),url(/static/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff)format("woff"),url(/static/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(/static/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2)format("woff2"),url(/static/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff)format("woff"),url(/static/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(/static/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2)format("woff2"),url(/static/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff)format("woff"),url(/static/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(/static/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2)format("woff2"),url(/static/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff)format("woff"),url(/static/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(/static/assets/KaTeX_Main-Bold-Cx986IdX.woff2)format("woff2"),url(/static/assets/KaTeX_Main-Bold-Jm3AIy58.woff)format("woff"),url(/static/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(/static/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2)format("woff2"),url(/static/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff)format("woff"),url(/static/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(/static/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2)format("woff2"),url(/static/assets/KaTeX_Main-Italic-BMLOBm91.woff)format("woff"),url(/static/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(/static/assets/KaTeX_Main-Regular-B22Nviop.woff2)format("woff2"),url(/static/assets/KaTeX_Main-Regular-Dr94JaBh.woff)format("woff"),url(/static/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(/static/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2)format("woff2"),url(/static/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff)format("woff"),url(/static/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(/static/assets/KaTeX_Math-Italic-t53AETM-.woff2)format("woff2"),url(/static/assets/KaTeX_Math-Italic-DA0__PXp.woff)format("woff"),url(/static/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(/static/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2)format("woff2"),url(/static/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff)format("woff"),url(/static/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(/static/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2)format("woff2"),url(/static/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff)format("woff"),url(/static/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(/static/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2)format("woff2"),url(/static/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff)format("woff"),url(/static/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(/static/assets/KaTeX_Script-Regular-D3wIWfF6.woff2)format("woff2"),url(/static/assets/KaTeX_Script-Regular-D5yQViql.woff)format("woff"),url(/static/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(/static/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2)format("woff2"),url(/static/assets/KaTeX_Size1-Regular-C195tn64.woff)format("woff"),url(/static/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(/static/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2)format("woff2"),url(/static/assets/KaTeX_Size2-Regular-oD1tc_U0.woff)format("woff"),url(/static/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(/static/assets/KaTeX_Size3-Regular-CTq5MqoE.woff)format("woff"),url(/static/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(/static/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2)format("woff2"),url(/static/assets/KaTeX_Size4-Regular-BF-4gkZK.woff)format("woff"),url(/static/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(/static/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2)format("woff2"),url(/static/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff)format("woff"),url(/static/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.16.47"}.katex .katex-mathml{clip-path:inset(50%);border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.katex .katex-html>.newline{display:block}.katex .base{white-space:nowrap;width:min-content;position:relative}.katex .base,.katex .strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;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 .vbox{flex-direction:column;align-items:baseline;display:inline-flex}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{flex-direction:row;display:inline-flex}.katex .thinbox{width:0;max-width:0}.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 .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .smash{line-height:0;display:inline}.katex .clap,.katex .llap,.katex .rlap{width:0;position:relative}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;width:100%;display:inline-block}.katex .hdashline{border-bottom-style:dashed;width:100%;display:inline-block}.katex .sqrt>.root{margin-left:.277778em;margin-right:-.555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.833333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.16667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.33333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.66667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.45667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.14667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.714286em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.857143em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.14286em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.28571em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.42857em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.71429em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.05714em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.46857em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.96286em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.55429em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.11111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.33333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.30444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.76444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.416667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.583333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.833333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.72833em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.07333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.347222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.416667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.486111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.694444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.833333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.44028em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.72778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.289352em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.347222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.405093em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.462963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.520833em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.578704em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.694444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.833333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.20023em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.43981em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.24108em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.289296em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.337512em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.385728em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.433944em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.48216em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.578592em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.694311em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.833173em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.19961em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.200965em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.241158em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.281351em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.321543em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.361736em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.401929em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.482315em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.578778em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.694534em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.833601em}.katex .fontsize-ensurer.reset-size11.size11,.katex .sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{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 .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{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 .stretchy{width:100%;display:block;position:relative;overflow:hidden}.katex .stretchy:after,.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 .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>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{text-align:left;padding-left:2em}body{counter-reset:katexEqnNo mmlEqnNo}:root{--chat-font-size:15px}.login-container{background:radial-gradient(circle at 32px 34px, #236d7314 0 1px, transparent 1.5px), linear-gradient(180deg, #f8fbfb 0%, var(--bg) 44%, #f1f6f4 100%);background-size:18px 18px,auto;justify-content:center;align-items:center;min-height:100vh;padding:16px;display:flex;position:relative}.login-container:before{content:"";pointer-events:none;background:#d35c4b47;width:2px;position:absolute;top:0;bottom:0;left:28px}.login-card{border:1px solid var(--line);background:var(--paper);width:100%;max-width:440px;box-shadow:var(--soft-shadow);border-radius:8px;padding:40px;position:relative}.auth-product-logo{object-fit:cover;border-radius:50%;width:84px;height:84px;margin:0 auto 12px;display:block}.login-title{width:100%;color:var(--teal);justify-self:stretch;margin:0 0 24px;font-size:26px;font-weight:700;line-height:1.3;display:block;text-align:center!important}.login-subtitle{color:var(--muted);text-align:center;margin:-10px 0 24px;font-size:14px;line-height:1.6}.register-subtitle{text-align:center;color:var(--muted);margin:-16px 0 24px;font-size:14px}.login-form{flex-direction:column;align-items:stretch;gap:16px;display:flex}.register-grade-block{padding:4px 0}.register-field-label{color:var(--ink);margin:0 0 8px;font-size:14px;font-weight:650}.picker-placeholder{color:var(--muted)}.login-form .picker-button{margin-top:0}.role-selector{align-items:center;gap:8px;padding:8px 0;display:flex}.role-selector label{color:var(--ink);font-weight:500}.demo-accounts{background:var(--chalk);border-radius:8px;margin-top:24px;padding:16px}.demo-accounts h3{color:var(--muted);margin:0 0 8px;font-size:14px}.demo-accounts p{color:var(--muted);margin:4px 0;font-size:13px}.page-container{padding:16px}.bottom-nav{z-index:100;position:fixed;bottom:0;left:0;right:0}.admin-layout{background:#f4f7f8;min-height:100%}.admin-antd-layout.ant-layout,.admin-antd-layout{background:#f4f7f8;width:auto;height:auto;min-height:0;display:flex;position:fixed;inset:0;overflow:hidden}.admin-antd-layout>.ant-layout-sider{scrollbar-width:thin;height:100%;overflow:auto}.admin-antd-layout>.ant-layout.admin-antd-main,.admin-antd-layout>.admin-antd-main{background:#f4f7f8;flex-direction:column;flex:1;width:auto;min-width:0;height:100%;min-height:0;display:flex;overflow:hidden}.admin-brand{color:#fff;align-items:center;height:64px;padding:0 20px;font-size:17px;font-weight:600;display:flex}.admin-antd-header.ant-layout-header,.admin-antd-header{border-bottom:1px solid var(--line);background:#fff;flex:0 0 64px;justify-content:space-between;align-items:center;height:64px;padding:0 24px;line-height:64px;display:flex}.admin-header-title{color:var(--ink);font-size:18px;font-weight:600}.admin-user-button{color:var(--ink);align-items:center;gap:8px;display:inline-flex}.admin-antd-content{scrollbar-width:thin;scrollbar-color:#18272b47 transparent;background:#f4f7f8;flex:auto;width:100%;min-width:0;height:auto;min-height:0;padding:20px 24px;overflow:auto}.admin-antd-content::-webkit-scrollbar{width:8px;height:8px}.admin-antd-content::-webkit-scrollbar-thumb{background:#18272b47;border-radius:999px}.admin-antd-content::-webkit-scrollbar-track{background:0 0}.admin-antd-content>.dashboard-page,.admin-antd-content>.questions-page,.admin-antd-content>.students-page,.admin-antd-content>.classes-page,.admin-antd-content>.users-page,.admin-antd-content>.stats-page,.admin-antd-content>.admin-data-page{box-sizing:border-box;width:100%;min-height:100%}.admin-mobile-nav,.admin-mobile-cards{display:none}.admin-dashboard-page .page-header{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:20px;display:flex}.admin-dashboard-page .page-header h1,.admin-dashboard-page .page-header p,.admin-panel h2{margin:0}.admin-dashboard-page .page-header p{color:var(--muted);margin-top:5px}.dashboard-range-controls{flex-wrap:wrap;gap:10px;display:flex}.dashboard-metrics{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;display:grid}.dashboard-metric{text-align:left;border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;grid-template-columns:40px 1fr;align-items:center;gap:1px 10px;min-height:92px;padding:14px;display:grid}.dashboard-metric>span{width:40px;height:40px;color:var(--teal);background:var(--surface-soft);border-radius:8px;grid-row:1/3;place-items:center;display:grid}.dashboard-metric strong{color:var(--ink);font-size:22px}.dashboard-metric small{color:var(--muted)}.admin-panel{border:1px solid var(--line);min-width:0;box-shadow:var(--soft-shadow);background:#fff;border-radius:8px;margin-top:16px;padding:18px}.admin-panel h2{margin-bottom:14px;font-size:16px}.dashboard-sections{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.dashboard-list{display:grid}.dashboard-list>button,.dashboard-list>div{text-align:left;border:0;border-bottom:1px solid var(--line);background:0 0;align-items:center;gap:10px;min-width:0;min-height:56px;padding:9px 4px;display:flex}.dashboard-list>button{cursor:pointer}.dashboard-list>button>span,.dashboard-list>div>span{flex:1;min-width:0;display:grid}.dashboard-list small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dashboard-list em{color:var(--teal);text-align:right;justify-items:end;font-style:normal;font-weight:600;display:grid}.dashboard-list em small{white-space:normal;font-weight:500}.dashboard-page h1,.questions-page h1,.students-page h1,.classes-page h1{color:var(--ink);margin-top:0}.dashboard-page .page-header,.questions-page .page-header,.students-page .page-header,.classes-page .page-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.dashboard-page .stat-card,.dashboard-page .activity-section,.questions-page .question-card,.students-page .student-card,.classes-page .class-card{border:1px solid var(--line);box-shadow:var(--soft-shadow);background:#fff;border-radius:10px}.dashboard-page .overview-stats,.dashboard-page .stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.dashboard-page .stat-card{padding:18px}.questions-page .questions-list,.students-page .students-list,.classes-page .classes-list{gap:14px;display:grid}.questions-page .question-card,.students-page .student-card,.classes-page .class-card{padding:18px}.filters,.search-box{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:18px;display:flex}.admin-main{box-sizing:border-box;width:100%;max-width:1180px;margin:0 auto;padding:28px 24px 112px}.admin-header{color:#fff;background:#236d73;justify-content:space-between;align-items:center;gap:16px;padding:18px 28px;display:flex;box-shadow:0 2px 12px #18272b1f}.admin-header strong,.admin-eyebrow{display:block}.admin-header strong{margin-top:3px;font-size:20px}.admin-eyebrow{opacity:.75;font-size:12px}.admin-account{align-items:center;gap:14px;font-size:14px;display:flex}.admin-account button{color:#fff;cursor:pointer;background:#ffffff24;border:1px solid #ffffff59;border-radius:6px;align-items:center;gap:6px;padding:8px 12px;display:inline-flex}.users-page,.stats-page{width:100%}.users-page .page-header,.stats-page>h1{margin-top:0}.users-page .page-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.users-page .page-header h1,.stats-page>h1{color:var(--ink);margin-bottom:0}.search-bar{border:1px solid var(--line);background:#fff;border-radius:8px;align-items:center;gap:10px;margin-bottom:18px;padding:8px 14px;display:flex}.users-list{gap:12px;display:grid}.user-card,.stat-card,.activity-section,.health-section{border:1px solid var(--line);box-shadow:var(--soft-shadow);background:#fff;border-radius:10px}.user-card{grid-template-columns:minmax(220px,1.5fr) minmax(150px,1fr) auto;align-items:center;gap:18px;padding:18px;display:grid}.user-info,.user-status,.user-actions{align-items:center;gap:12px;display:flex}.user-avatar{width:42px;height:42px;color:var(--teal);background:var(--surface-soft);border-radius:50%;place-items:center;display:grid}.user-details h3,.user-details p{margin:0}.user-details h3{font-size:15px}.user-username,.meta-item{color:var(--muted);font-size:12px}.user-grade,.student-grade{color:var(--teal);margin:2px 0 0;font-size:12px;font-weight:650}.user-status{flex-wrap:wrap;font-size:13px}.status-indicator{align-items:center;gap:6px;display:flex}.status-dot{background:var(--line-strong);border-radius:50%;width:8px;height:8px}.status-dot.active{background:var(--green)}.role-badge{color:#fff;border-radius:999px;padding:4px 8px;font-size:12px}.user-actions{flex-wrap:wrap;justify-content:flex-end}.user-actions .ant-btn .ant-btn-icon{align-items:center;display:inline-flex;transform:translate(2px,.5px)}.admin-window-modal .ant-modal-content{box-shadow:none;background:0 0;padding:0;overflow:hidden}.admin-window-modal .ant-modal-body{padding:0}.admin-window-card{z-index:1;background-color:#f8fbfe;border:1px solid #d7e2ea;border-radius:8px;width:100%;margin:0 auto;box-shadow:0 12px 32px #183b4924}.admin-window-tools{background:#eef4f8;border-bottom:1px solid #e3ebf1;align-items:center;gap:12px;padding:9px 12px;display:flex}.admin-window-circles{align-items:center;gap:6px;padding:0 2px;display:flex}.admin-window-box{box-sizing:border-box;border-radius:50%;width:10px;height:10px;padding:1px;display:inline-block}.admin-window-red{background-color:#ff605c}.admin-window-yellow{background-color:#ffbd44}.admin-window-green{background-color:#00ca4e}.admin-window-tools strong{color:#314149;font-size:14px;font-weight:600}.admin-window-body{gap:20px;padding:20px 22px 18px;display:grid}.admin-form-grid{gap:16px;display:grid}.admin-form-field{gap:8px;margin:0;display:grid}.admin-form-field>span{color:#3d4d55;font-size:13px;font-weight:600;line-height:1.2}.admin-form-field .ant-input,.admin-form-field .ant-input-affix-wrapper,.admin-form-field .ant-input-password{background:#fff;border-color:#d5e0e7;border-radius:8px;min-height:40px}.admin-form-field .ant-input-affix-wrapper>input.ant-input{min-height:auto}.admin-form-field .ant-radio-group{align-items:center;gap:16px;min-height:40px;display:flex}.admin-form-hint{color:#7a8a93;margin:0;font-size:12px;line-height:1.4}.admin-window-footer{border-top:1px solid #e6eef3;justify-content:flex-end;padding-top:4px;display:flex}.stats-page>h1{margin-bottom:24px}.stats-section,.activity-section,.health-section{margin-bottom:24px;padding:20px}.stats-section h2,.activity-section h2,.health-section h2{margin:0 0 16px;font-size:17px}.stats-grid,.health-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.stat-card{align-items:center;gap:12px;padding:18px;display:flex}.stat-icon{width:42px;height:42px;color:var(--teal);background:var(--surface-soft);border-radius:8px;place-items:center;display:grid}.stat-value{font-size:22px;font-weight:700}.stat-label{color:var(--muted);font-size:12px}.stats-page .page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:20px;display:flex}.stats-page .page-header-title h1{color:var(--ink);margin:0 0 6px;font-size:20px;font-weight:600}.stats-page .page-header-title p{color:var(--muted);margin:0;font-size:13px}.stats-page .page-header-filters{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.admin-data-page .page-header,.stats-page .page-header{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:20px;display:flex}.admin-data-page .page-header h1,.stats-page .page-header h1{color:var(--ink);margin:0 0 6px}.admin-data-page .page-header p,.stats-page .page-header p,.admin-cell-muted{color:var(--muted);margin:0;font-size:13px}.admin-data-page .ant-table-wrapper,.stats-page .ant-table-wrapper{border:1px solid var(--line);max-width:100%;box-shadow:var(--soft-shadow);scrollbar-width:thin;background:#fff;border-radius:10px;overflow:auto}.admin-data-page .ant-table{font-size:12px}.admin-data-page .ant-table-thead>tr>th{padding:10px 8px;font-size:11px}.admin-data-page .ant-table-tbody>tr>td{padding:8px;font-size:12px}.session-question-cell{gap:5px;min-width:240px;display:grid}.session-question-cell .session-question-snippet{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:13px;display:block;overflow:hidden}.session-question-cell .session-question-snippet .tutoring-rich-text{display:inline}.session-question-cell .session-question-snippet .tutoring-math{vertical-align:-.15em;max-width:100%;display:inline}.session-question-cell .session-question-snippet .katex{font-size:1em}.session-question-link{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.session-question-link strong{color:var(--teal)}.session-question-link:hover strong{text-decoration:underline}.session-question-link:focus-visible{outline:2px solid var(--teal);outline-offset:4px;border-radius:4px}.datetime-cell{color:var(--muted);font-size:11px;line-height:1.4}.datetime-cell .date-text{color:var(--ink);margin-bottom:2px;font-size:12px;font-weight:500}.datetime-cell .time-text{font-size:11px}.duration-turn-cell{color:var(--muted);font-size:12px}.duration-turn-cell .duration-text{color:var(--ink);margin-bottom:2px;font-size:13px;font-weight:500}.duration-turn-cell .turn-count{font-size:11px}.session-detail{gap:20px;display:grid}.session-detail h2{margin:0;font-size:17px}.session-question-image{object-fit:contain;border:1px solid var(--line);background:#f6f8f8;border-radius:8px;width:100%;max-height:360px}.session-turn-list{gap:10px;display:grid}.session-turn{border-left:3px solid var(--line-strong);background:#f4f7f8;border-radius:6px;padding:12px 14px}.session-turn.student{border-left-color:var(--teal);background:#eef7f6}.session-turn-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.session-turn-header-right{flex-shrink:0;align-items:center;gap:8px;display:flex}.session-turn-time{color:#888;white-space:nowrap;font-size:12px}.session-turn-elapsed{color:#1677ff;white-space:nowrap;background:#e6f4ff;border-radius:3px;padding:1px 6px;font-size:12px}.session-turn-type-tag{color:#666;white-space:nowrap;background:#e8e8e8;border-radius:3px;padding:1px 6px;font-size:11px}.session-turn-type-tag.option{color:#1677ff;background:#e6f4ff}.session-turn-type-tag.free_text{color:#d46b08;background:#fff7e6}.session-turn-choices{gap:4px;margin:8px 0 4px;display:grid}.session-turn-choice{border:1px solid #e8e8e8;border-radius:4px;justify-content:space-between;align-items:center;padding:6px 10px;font-size:13px;display:flex}.session-turn-choice.correct{background:#f6ffed;border-color:#b7eb8f}.session-turn-choice.wrong{background:#fff2f0;border-color:#ffccc7}.session-turn-content.is-correct{color:#52c41a}.session-turn-content.is-wrong{color:#ff4d4f}.session-turn-content.free_text{font-style:italic}.session-turn p,.session-turn-content{white-space:pre-wrap;margin:5px 0 0;line-height:1.6;display:block}.session-detail .tutoring-math{vertical-align:middle;max-width:100%;display:inline-block;overflow:auto hidden}.tutoring-math-fallback{color:var(--teal,#236d73);font-variant-numeric:tabular-nums;background:#236d7314;border-radius:4px;padding:0 2px;display:inline}@media (width<=760px){.admin-antd-content{padding:14px 16px}.dashboard-page .overview-stats,.dashboard-page .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-header{align-items:flex-start;padding:16px}.admin-account{flex-direction:column;align-items:flex-end;gap:8px}.admin-main{padding:20px 14px 104px}.user-card{grid-template-columns:1fr;gap:12px}.user-actions{justify-content:flex-start}.stats-grid,.health-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-data-page .page-header,.stats-page .page-header{flex-direction:column;align-items:stretch}.stats-page .page-header-filters{width:100%}}@media (width>=700px){.login-card{max-width:480px}}:root{--adm-color-primary:#236d73;--adm-color-success:#43885f;--adm-color-warning:#c28a2e;--bg:#f4f8f9;--surface:#fff;--surface-soft:#eef7f6;--paper:#fffdf7;--ink:#18272b;--muted:#657479;--line:#d7e1e3;--line-strong:#a8b7bb;--teal:#236d73;--green:#43885f;--red:#d35c4b;--amber:#c28a2e;--chalk:#f7fbfa;--shadow:0 18px 42px #18272b21;--soft-shadow:0 8px 22px #18272b12;color:var(--ink);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#dce9ec;font-family:Inter,MiSans,PingFang SC,Microsoft YaHei,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{height:100%;overflow:hidden}body{min-width:320px;height:100%;margin:0;overflow:hidden}button,[role=button]{touch-action:manipulation}#app{width:100%;height:100%;overflow:hidden}.hidden-file-input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;overflow:hidden}.mobile-shell{background:radial-gradient(circle at 32px 34px, #236d7314 0 1px, transparent 1.5px), linear-gradient(180deg, #f8fbfb 0%, var(--bg) 44%, #f1f6f4 100%);width:min(100%,430px);height:100vh;min-height:100vh;box-shadow:var(--shadow);background-size:18px 18px,auto;flex-direction:column;margin:0 auto;display:flex;position:relative;overflow:hidden}.mobile-shell:before{z-index:0;background:linear-gradient(90deg, var(--amber), var(--red));opacity:.36;content:"";pointer-events:none;border-radius:999px;width:34px;height:4px;position:absolute;top:60px;left:16px}.top-bar{--height:54px;z-index:20;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);width:min(100%,430px);color:var(--ink);background:#f8fbfbeb;border-bottom:1px solid #d7e1e3e6;flex:none;font-weight:800;position:fixed;top:0;left:50%;transform:translate(-50%)}.app-body{z-index:1;scrollbar-width:none;flex:1;min-height:0;padding:70px 14px 92px;position:relative;overflow-y:auto}.app-body::-webkit-scrollbar{width:0;height:0}:is(.mobile-shell:has(.processing-page),.mobile-shell:has(.chat-page),.mobile-shell:has(.summary-page)){background:radial-gradient(circle at 28px 32px,#236d730e 0 1px,#0000 1.5px) 0 0/18px 18px,#f4f8f9}:is(.mobile-shell:has(.processing-page) .app-body,.mobile-shell:has(.chat-page) .app-body,.mobile-shell:has(.summary-page) .app-body){padding-bottom:18px}.mobile-shell:has(.chat-page) .app-body{flex-direction:column;padding-bottom:0;display:flex;overflow:hidden}h1,h2,p{margin:0}h1{max-width:11em;color:var(--ink);letter-spacing:0;font-size:28px;font-weight:850;line-height:1.16}h2{color:var(--ink);letter-spacing:0;font-size:19px;font-weight:850;line-height:1.25}.eyebrow{color:inherit;letter-spacing:0;opacity:.78;margin:0 0 7px;font-size:12px;font-weight:850}.hero-panel{min-height:126px;color:var(--ink);background:linear-gradient(140deg, #fffffff0 0 58%, #e8f6f4f5 58%), var(--surface);box-shadow:var(--soft-shadow);border:1px solid #236d7329;border-radius:12px;align-content:end;gap:18px;padding:18px;display:grid;position:relative;overflow:hidden}.hero-panel:before{content:"";background:linear-gradient(#236d7314 1px,#0000 1px) 0 0/18px 18px,linear-gradient(90deg,#236d7314 1px,#0000 1px) 0 0/18px 18px,#ffffffb8;border:1px solid #236d7333;border-radius:10px;width:82px;height:56px;position:absolute;top:18px;right:18px;transform:rotate(2deg)}.hero-panel:after{content:"";background:#ffffffbd;border:1px solid #236d731f;border-radius:999px;width:86px;height:28px;position:absolute;bottom:18px;right:20px;box-shadow:inset 0 0 0 1px #ffffffc7}.hero-panel>div{z-index:1;position:relative}.hero-panel h1,.about-hero h1{color:var(--ink)}.hero-copy{max-width:19em;color:var(--muted);margin-top:7px;font-size:14px;line-height:1.65}.upload-grade-hint{color:var(--muted);margin:10px 2px 0;font-size:12px;line-height:1.45}.upload-page{min-height:calc(100vh - 154px)}.showcase-section{box-shadow:var(--soft-shadow);background:#fffaf0f0;border:1px solid #236d7333;border-radius:12px;margin-top:14px;padding:16px}.showcase-heading{color:var(--teal);justify-content:space-between;align-items:center;display:flex}.showcase-heading .eyebrow{color:var(--teal)}.showcase-filters{gap:12px;margin-top:12px;padding:0 0 4px;display:flex}.showcase-filter-btn{color:var(--text);cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #236d734d;border-radius:8px;align-items:center;gap:6px;padding:8px 14px;font-size:14px;line-height:1.5;transition:all .15s;display:flex}.showcase-filter-btn:active{border-color:var(--teal);background:#236d7314}.showcase-grade-chip{color:var(--teal);white-space:nowrap;background:#236d730f;border:1px dashed #236d734d;border-radius:8px;align-items:center;gap:6px;padding:8px 14px;font-size:14px;font-weight:600;line-height:1.5;display:flex}.showcase-empty-hint{color:var(--muted);margin:12px 2px 2px;font-size:13px;line-height:1.5}.showcase-list{gap:10px;margin-top:13px;display:grid}.showcase-card:active{transform:translateY(1px)}.showcase-card-copy small,.showcase-card-copy>span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:1.35;overflow:hidden}.showcase-card-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:15px;overflow:hidden}.showcase-card-copy em{color:var(--teal);background:#eaf5f1;border-radius:999px;justify-self:start;padding:2px 7px;font-size:10px;font-style:normal;font-weight:750}.login-body{padding-bottom:18px}.login-page{align-content:center;width:100%;max-width:350px;min-height:calc(100vh - 88px);margin:0 auto;display:grid}.login-card{box-sizing:border-box;border:1px solid var(--line);background:var(--paper);width:100%;max-width:350px;box-shadow:var(--soft-shadow);border-radius:8px;gap:15px;padding:25px 28px;display:grid}.login-hero{text-align:center;flex-direction:column;align-items:center;gap:6px;display:flex}.login-logo{object-fit:cover;border-radius:50%;width:72px;height:72px;margin-bottom:4px}.login-hero .eyebrow{color:var(--teal);font-weight:800}.login-hero h1{max-width:none;color:var(--ink);font-size:30px;font-weight:900;line-height:1.25}.login-hero p:last-child{color:var(--muted);margin:4px 0 0;font-size:13px;line-height:1.55}.login-card label{color:var(--muted);gap:6px;font-size:13px;font-weight:700;display:grid}.login-card .adm-input{box-sizing:border-box;border:1px solid var(--line);width:100%;min-height:50px;color:var(--ink);box-shadow:none;background:#fff;border-radius:8px;padding:0 16px;font-size:15px;font-weight:600;transition:border-color .2s}.login-card .adm-input:focus-within{border-color:var(--teal);box-shadow:none;background:#fff}.login-card .adm-input-element{background:0 0;border:0;border-radius:0;width:100%;height:100%;padding:0}.login-card .adm-input-element:-webkit-autofill{-webkit-text-fill-color:var(--ink);transition:background-color 9999s ease-out;box-shadow:inset 0 0 0 1000px #fff}.login-card .adm-input-element:-webkit-autofill:hover{-webkit-text-fill-color:var(--ink);transition:background-color 9999s ease-out;box-shadow:inset 0 0 0 1000px #fff}.login-card .adm-input-element:-webkit-autofill:focus{-webkit-text-fill-color:var(--ink);transition:background-color 9999s ease-out;box-shadow:inset 0 0 0 1000px #fff}.login-card .adm-input-element::placeholder{color:var(--muted)}.login-footer{color:var(--muted);text-align:center;margin:4px 0 0;font-size:14px}.login-footer a{color:var(--teal);font-weight:650;text-decoration:none}.icon-text-button .adm-button-content{justify-content:center;align-items:center;gap:.35em;line-height:1;display:inline-flex}.icon-text-button .auth-button-icon{stroke-width:2.25px;flex:none;width:1em;height:1em;transform:translateY(2px)}.login-card .icon-text-button .auth-button-icon{transform:none}.login-card .icon-text-button{--border-color:var(--teal);--text-color:var(--chalk);width:100%;height:48px;min-height:48px;color:var(--chalk);background:var(--teal);box-shadow:none;border:none;border-radius:8px;margin:5px auto 0;padding:0 18px;font-size:16px;font-weight:700}.login-card .icon-text-button:hover{background:#1c5c61}.login-card .icon-text-button:active{background:#184f54}.login-card .icon-text-button .adm-button-content{gap:8px}.login-card .icon-text-button .auth-button-icon{width:18px;height:18px;display:block}.login-button-content{justify-content:center;align-items:center;gap:7px;min-width:64px;line-height:1;display:inline-flex}.user-strip{box-shadow:var(--soft-shadow);background:#ffffffe6;border:1px solid #236d7329;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;padding:10px 12px;display:flex}.user-strip.compact{box-shadow:none;margin-bottom:12px}.user-strip div{gap:2px;display:grid}.user-strip span{color:var(--muted);font-size:12px}.user-strip strong{color:var(--ink);font-size:15px;font-weight:850}.user-strip .icon-text-button{align-self:center}.logout-simple-button{color:#fafafa;text-transform:uppercase;cursor:pointer;background:#252525;border:2px solid #fafafa;border-radius:8px;justify-content:center;align-self:center;align-items:center;gap:5px;margin:0;padding:7px 13px;font-size:.85rem;font-weight:700;transition:box-shadow .1s,transform .1s;display:inline-flex;box-shadow:3px 3px #888}.logout-simple-button .auth-button-icon{stroke-width:2.25px;flex:none;width:1em;height:1em}.logout-simple-button:active{box-shadow:none;transform:translate(3px,3px)}.logout-simple-button:focus-visible{outline-offset:3px;outline:3px solid #25252547}.upload-panel,.section-block{box-shadow:var(--soft-shadow);background:#ffffffeb;border:1px solid #d7e1e3f2;border-radius:12px;margin-top:12px;padding:16px}.grade-panel{box-shadow:var(--soft-shadow);background:#ffffffeb;border:1px solid #d7e1e3f2;border-radius:12px;grid-template-columns:1fr auto;align-items:center;gap:6px 12px;margin-top:12px;padding:14px 16px;display:grid}.grade-panel>div{gap:2px;display:grid}.grade-panel span{color:var(--muted);font-size:12px}.grade-panel strong{color:var(--ink);font-size:16px;font-weight:800}.grade-edit-button{color:var(--teal);cursor:pointer;background:#eef8f7;border:1px solid #236d7347;border-radius:8px;margin:0;padding:8px 12px;font-size:13px;font-weight:650}.grade-hint{color:var(--muted);grid-column:1/-1;margin:2px 0 0;font-size:12px;line-height:1.45}.about-grade-panel{margin-top:14px}.grade-popup .adm-popup-body{border-radius:16px 16px 0 0}.grade-sheet{padding:18px 16px calc(18px + env(safe-area-inset-bottom))}.grade-sheet-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.grade-sheet-heading h2{color:var(--ink);margin:4px 0 0;font-size:20px;font-weight:850}.grade-sheet-tip{color:var(--muted);margin:10px 0 14px;font-size:13px;line-height:1.5}.grade-option-list{margin-bottom:16px}.grade-option-item{background:var(--surface);border:1px solid #d7e1e3f2;border-radius:8px;width:100%;padding:12px 14px}.grade-option-item+.grade-option-item{margin-top:8px}.upload-action{width:100%;min-height:88px;color:var(--teal);background:var(--surface);text-align:left;cursor:pointer;border:1px solid #d7e1e3f2;border-radius:12px;align-items:center;gap:14px;margin:0;padding:15px;transition:border-color .18s,box-shadow .18s,transform .18s;display:flex;position:relative}.upload-action:hover{border-color:#236d7375;transform:translateY(-1px);box-shadow:0 10px 22px #236d7317}.upload-action:focus-visible,.picker-button:focus-visible{outline-offset:2px;outline:3px solid #c28a2e5c}.upload-action+.upload-action{margin-top:10px}.upload-action.primary{background:#eef8f7;border-color:#236d736b}.upload-action.primary:after{background:linear-gradient(var(--teal), var(--green));content:"";border-radius:999px;width:6px;height:34px;position:absolute;top:13px;right:14px}.upload-action span{gap:5px;display:grid}.upload-action strong{color:var(--ink);font-size:16px;font-weight:850}.upload-action small{color:var(--muted);font-size:13px;line-height:1.45}.showcase-section{box-shadow:var(--soft-shadow);background:#fffffff0;border:1px solid #236d7329;border-radius:12px;gap:12px;margin-top:14px;padding:15px;display:grid}.showcase-heading{justify-content:space-between;align-items:flex-end;gap:12px;display:flex}.showcase-heading h2{font-size:18px}.showcase-list{gap:10px;display:grid}.showcase-card{width:100%;color:var(--ink);text-align:left;cursor:pointer;background:#fff;border:1px solid #d7e1e3f2;border-radius:8px;grid-template-columns:72px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px;display:grid}.showcase-card:disabled{cursor:wait;opacity:.7}.showcase-card img{object-fit:cover;background:#eef5f3;border-radius:6px;width:72px;height:56px}.showcase-card-copy{gap:3px;min-width:0;display:grid}.showcase-card-copy small,.showcase-card-copy span,.showcase-card-copy em{overflow-wrap:anywhere}.showcase-card-copy small{color:var(--green);font-size:12px;font-style:normal;font-weight:700}.showcase-card-copy strong{color:var(--ink);font-size:15px;line-height:1.35}.showcase-card-copy span{color:var(--muted);font-size:13px;line-height:1.45}.showcase-card-copy em{color:var(--teal);font-size:12px;font-style:normal;font-weight:700}.error-text{color:#a8463a;background:#fff3ef;border:1px solid #d35c4b3d;border-radius:8px;margin-top:12px;padding:10px 12px;font-size:13px;line-height:1.45}.upload-box{min-height:104px;color:var(--teal);background:var(--surface-soft);cursor:pointer;border:1px dashed #236d738f;border-radius:12px;align-items:center;gap:14px;padding:14px;display:flex}.upload-box div{gap:4px;display:grid}.upload-box strong{color:var(--ink);font-size:16px}.upload-box span{color:var(--muted);font-size:13px}.image-crop-popup{background:var(--paper);border-radius:0;width:100%;height:100dvh;max-height:100dvh;overflow:hidden}.image-crop-sheet{box-sizing:border-box;width:100%;height:100%;padding:calc(10px + env(safe-area-inset-top)) 12px calc(10px + env(safe-area-inset-bottom));grid-template-rows:auto minmax(0,1fr) auto;gap:10px;display:grid;overflow:hidden}.image-crop-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.image-crop-heading h2{color:var(--ink);margin:0;font-size:20px}.image-crop-heading-actions{align-items:center;gap:8px;display:flex}.image-crop-help-wrap{position:relative}.image-crop-help,.image-crop-close{border:1px solid var(--line);width:34px;height:34px;color:var(--muted);background:var(--surface);border-radius:50%;place-items:center;padding:0;display:grid}.image-crop-help{color:var(--teal);cursor:pointer}.image-crop-tooltip{z-index:5;color:#fff;background:#142628f5;border-radius:8px;width:min(280px,100vw - 40px);padding:10px 12px;font-size:13px;line-height:1.5;position:absolute;top:calc(100% + 9px);right:0;box-shadow:0 5px 18px #00000038}.image-crop-tooltip:before{content:"";border-bottom:7px solid #142628f5;border-left:6px solid #0000;border-right:6px solid #0000;position:absolute;bottom:100%;right:10px}.image-crop-rotate-btn{width:auto;min-width:80px;height:44px;color:var(--teal,#236d73);cursor:pointer;background:#ffffffeb;border:1px solid #236d7338;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-size:14px;font-weight:600;transition:background .15s,border-color .15s;display:inline-flex}.image-crop-rotate-btn:hover:not(:disabled),.image-crop-rotate-btn:focus-visible:not(:disabled){background:#236d7314;border-color:#236d7373;outline:none}.image-crop-rotate-btn:disabled{opacity:.45;cursor:not-allowed}.image-crop-image-wrap{border:1px solid var(--line);background:#273336;border-radius:10px;justify-content:center;align-items:center;min-width:0;min-height:0;display:flex;overflow:hidden;container-type:size}.image-crop-stage{width:min(100cqw, calc(100cqh * var(--crop-aspect,1)));aspect-ratio:var(--crop-aspect,1);touch-action:none;flex:none;line-height:0;position:relative;overflow:hidden}.image-crop-stage img{object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:100%;display:block}.image-crop-selection{z-index:1;cursor:move;touch-action:none;border:2px solid #fff;min-width:10%;min-height:10%;position:absolute;box-shadow:0 0 0 999px #0b17198f}.image-crop-selection:before,.image-crop-selection:after{content:"";background:#ffffffb3;width:100%;height:1px;position:absolute;left:0}.image-crop-selection:before{top:33.333%}.image-crop-selection:after{bottom:33.333%}.image-crop-resize-handle{touch-action:none;background:#fff;border:3px solid #236d73;border-radius:50%;width:22px;height:22px;position:absolute;box-shadow:0 1px 5px #00000047}.image-crop-resize-handle-nw{cursor:nwse-resize;top:-11px;left:-11px}.image-crop-resize-handle-ne{cursor:nesw-resize;top:-11px;right:-11px}.image-crop-resize-handle-sw{cursor:nesw-resize;bottom:-11px;left:-11px}.image-crop-resize-handle-se{cursor:nwse-resize;bottom:-11px;right:-11px}.image-crop-actions{grid-template-columns:auto minmax(0,1fr);gap:10px;display:grid}.image-crop-action-rotations{gap:8px;display:flex}.image-crop-detecting{z-index:2;color:#fff;pointer-events:none;background:#0b1719b8;flex-direction:column;justify-content:center;align-items:center;gap:10px;font-size:14px;display:flex;position:absolute;inset:0}.image-crop-detecting .adm-spin-loading{--adm-color-primary:#fff}.progress-row,.section-title,.status-item,.timeline{justify-content:space-between;align-items:center;gap:12px;display:flex}.progress-row{color:var(--muted);margin:14px 0 8px;font-size:13px}.progress-row strong{color:var(--teal)}.processing-page{text-align:center;align-content:center;gap:24px;min-height:calc(100vh - 98px);padding:30px 20px;display:grid}.loading-orbit{background:var(--surface);width:118px;height:118px;box-shadow:var(--soft-shadow);border:1px solid #236d732e;border-radius:50%;place-items:center;margin:0 auto;display:grid;position:relative}.loading-orbit:before,.loading-orbit:after{content:"";border-radius:50%;position:absolute}.loading-orbit:before{border:1px dashed #236d7357;inset:13px}.loading-orbit:after{background:var(--amber);width:12px;height:12px;transform:translate(43px,-34px)}.loading-orbit .adm-spin-loading{--size:46px}.processing-page .eyebrow{color:var(--teal)}.processing-page h1{max-width:11em;color:var(--ink);margin:0 auto}.processing-copy{color:var(--muted);margin-top:10px;font-size:15px}.learning-tips{color:#245348;background:var(--surface-soft);width:min(100% - 24px,320px);min-height:48px;box-shadow:none;text-align:left;border:1px solid #236d731f;border-radius:8px;flex-direction:row;justify-content:flex-start;align-items:center;margin:0 12px 12px;padding:12px;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;display:flex}.learning-tips-icon{color:#245348;flex:none;width:20px;height:20px;margin-right:8px;transform:translateY(-2px)}.learning-tips-content{color:#245348;overflow-wrap:anywhere;flex:1;min-width:0;font-size:14px;font-weight:500;line-height:1.5;display:inline}.learning-tips-label{color:#245348;font-weight:600}.adm-progress-bar-fill{background:var(--teal)}.agent-progress-panel{color:var(--muted);text-align:left;background:#f5fbfaeb;border:1px solid #236d7333;border-radius:8px;gap:7px;padding:12px 14px;display:grid}.agent-progress-title{color:var(--teal);align-items:center;gap:7px;font-size:13px;font-weight:700;display:flex}.agent-progress-panel p{opacity:.62;margin:0;padding-left:22px;font-size:13px;line-height:1.45}.agent-progress-panel p.active{color:var(--ink);opacity:1}.processing-list{text-align:left;gap:10px;margin-top:18px;display:grid}.processing-list div{min-height:40px;color:var(--muted);background:#ffffffeb;border:1px solid #d7e1e3f2;border-radius:10px;align-items:center;gap:9px;padding:10px 12px;display:flex}.processing-list div.done{color:#2f6647;background:#eef8f2;border-color:#43885f47}.processing-list div.active{color:var(--ink);background:#f5fbfa;border-color:#236d7347}.processing-step-pending{border:1.5px solid #236d732e;border-radius:999px;flex:none;width:16px;height:16px}.processing-list svg{color:var(--green);flex:none}.status-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px;display:grid}.status-item{border:1px solid var(--line);background:var(--surface);border-radius:10px;flex-direction:column;align-items:flex-start;min-height:112px;padding:12px}.status-item svg{color:var(--teal)}.status-item span{color:var(--muted);font-size:12px}.status-item strong{font-size:14px;line-height:1.32}.section-title{margin-bottom:14px}.section-title.compact{margin-bottom:10px}.section-title .eyebrow{color:var(--green)}.section-title>svg{width:26px;height:26px;color:var(--green)}.adm-steps{--title-font-size:15px;--description-font-size:13px}.adm-step .adm-step-title{font-weight:800}.section-block .adm-button{margin-top:14px}.chat-preview,.assistant-reply{border-radius:8px;align-items:flex-start;gap:10px;padding:12px;display:flex}.chat-preview{color:var(--ink);background:#eef8f7}.chat-preview svg{color:var(--teal);flex:none;font-size:22px}.assistant-reply{color:#245348;background:#eef8f2;margin-top:8px;font-size:14px;line-height:1.5}.assistant-reply svg{color:var(--green);flex:none}.chat-page{min-height:0;padding-bottom:calc(8px + env(safe-area-inset-bottom));flex-direction:column;flex:1;gap:10px;display:flex;position:relative}.question-card-float{z-index:3;overflow-anchor:none;flex-shrink:0;position:sticky;top:0}.question-card{box-shadow:var(--soft-shadow);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#fffffff0;border:1px solid #d7e1e3f2;border-radius:12px;flex-direction:column;flex-shrink:0;display:flex;overflow:hidden}.question-card-body{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;min-width:0;max-height:min(34vh,260px);padding:14px 14px 10px;overflow:hidden auto}.question-card-toggle{color:#3a3f3d;cursor:pointer;background:#f7fafb;border:none;border-top:1px solid #d7e1e3f2;border-radius:0;flex:none;justify-content:center;align-items:center;width:100%;height:28px;margin:0;padding:0;display:flex}.question-card-toggle:active{color:var(--teal);background:#eef5f6}.question-card-toggle-icon{color:var(--teal);flex:none}.question-card-collapsed{width:100%;color:inherit;text-align:left;box-shadow:var(--soft-shadow);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);cursor:pointer;background:#fffffff0;border:1px solid #d7e1e3f2;border-radius:12px;align-items:center;gap:10px;padding:10px 12px;display:flex}.question-card-collapsed-title{min-width:0;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:14px;font-weight:700;line-height:1.4;overflow:hidden}.question-card strong{font-size:15px;font-weight:850}.question-card p:last-child{color:var(--muted);margin-top:6px;font-size:13px;line-height:1.55}.question-card-body>.visual-note-chip{margin-bottom:8px}.question-content-renderer{flex-direction:column;gap:10px;display:flex}.question-content-renderer p{color:var(--muted);margin:0;font-size:13px;line-height:1.55}.question-content-renderer strong{margin-bottom:6px;font-size:15px;font-weight:850;display:block}.question-block-image-preview{cursor:zoom-in;background:0 0;border:0;border-radius:8px;width:100%;max-height:320px;padding:0;transition:box-shadow .2s;position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(#000 0% 86%,#0000 100%);mask-image:linear-gradient(#000 0% 86%,#0000 100%)}.question-block-image{background:#236d730a;border:1px solid #236d731f;border-radius:8px;width:100%;height:auto;margin:4px auto;display:block}.question-block-image-preview:hover{box-shadow:0 4px 12px #236d7333}.question-image-modal{z-index:1000;cursor:default;touch-action:none;background:#000000f0;justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow:hidden}.question-image-modal-content{object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;touch-action:none;cursor:grab;will-change:transform;max-width:100vw;max-height:100vh}.question-image-modal-content:active{cursor:grabbing}.question-image-modal-close{top:max(16px, env(safe-area-inset-top));right:max(16px, env(safe-area-inset-right));z-index:1;color:#fff;cursor:pointer;background:#00000073;border:1px solid #ffffff47;border-radius:50%;place-items:center;width:42px;height:42px;padding:0;display:grid;position:absolute}.question-block-image-fallback{color:var(--muted);text-align:center;border:1px dashed #236d7338;border-radius:8px;padding:12px;font-size:13px}.question-block-formula{overflow-x:auto}.question-block-options{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.question-block-options li{color:var(--muted);background:#ffffffb8;border:1px solid #2d5a5424;border-radius:8px;margin:0;padding:6px 10px;font-size:13px;line-height:1.55}.question-block-table{border-collapse:collapse;width:100%;font-size:13px}.question-block-table th{text-align:center;background:#236d730f;border:1px solid #236d732e;padding:10px;font-weight:600}.question-block-table td{border:1px solid #236d7324;padding:8px 10px}.question-block-table-fallback{white-space:pre-wrap;background:#236d730a;border-radius:8px;padding:10px;font-size:12px;overflow-x:auto}.chat-window{scroll-behavior:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-direction:column;flex:1;gap:12px;min-height:0;padding:14px 0;display:flex;overflow-y:auto}.chat-window::-webkit-scrollbar{width:0;height:0}.message{align-items:flex-start;gap:8px;min-width:0;max-width:88%;display:flex}.message-body{overflow-wrap:break-word;word-break:break-word;flex:1;gap:6px;min-width:0;display:grid}.guide-pair{display:contents}.message p{font-size:var(--chat-font-size,15px);overflow-wrap:break-word;word-break:break-word;white-space:normal;border-radius:12px;margin:0;padding:11px 12px;line-height:1.58;box-shadow:0 7px 16px #2b302a14}.message.assistant p:not(.choice-bubble-hint),.quest-message-bubble{color:#245348;background:var(--surface);border:1px solid #236d7324;border-radius:10px;box-shadow:0 7px 16px #2b302a14}.message.assistant p:not(.choice-bubble-hint){padding:12px 14px}.quest-message-bubble{overflow:hidden}.message.assistant .quest-message-bubble>p{box-shadow:none;background:0 0;border:0;border-radius:0;padding:12px 14px}.quest-stepper{background:#ffffffb8;border-top:1px solid #43885f26;width:min(100%,400px);padding:14px}.quest-stepper-header{color:#245348;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;font-size:12px;font-weight:650;display:flex}.quest-stepper-toggle{color:#3a3f3d;cursor:pointer;background:#f7fafb;border:none;border-top:1px solid #d7e1e3f2;border-radius:0;justify-content:center;align-items:center;width:calc(100% + 28px);height:28px;margin:14px -14px -14px;padding:0;display:flex}.quest-stepper-toggle:active{color:var(--teal);background:#eef5f6}.quest-stepper-toggle svg{color:var(--teal);flex:none}.quest-stepper-toggle span{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.admin-session-summary{gap:12px;width:100%;line-height:1.6;display:grid}.admin-session-summary-block{border-top:1px solid #236d731f;gap:6px;padding-top:10px;display:grid}.admin-session-summary-block>strong{color:#245348;font-size:13px}.admin-session-solution-steps{gap:8px;display:grid}.admin-session-solution-step{color:#536c70;grid-template-columns:24px minmax(0,1fr);align-items:start;gap:8px;font-size:13px;display:grid}.admin-session-solution-step>span{color:#2a6670;background:#e7f3f4;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:11px;font-weight:800;display:inline-flex}.admin-session-solution-step>div{min-width:0}.admin-session-solution-step>div>strong{color:#1f3f44;font-size:13px;display:block}.admin-session-methods{flex-wrap:wrap;gap:6px;display:flex}.quest-stepper-header strong{color:var(--teal);font-size:11px}.quest-stepper-list{display:grid}.quest-stepper-step{min-width:0;margin-bottom:18px;display:flex;position:relative}.quest-stepper-step:last-child{margin-bottom:0}.quest-stepper-line{z-index:1;background:#dce8e1;width:2px;position:absolute;top:30px;bottom:-18px;left:14px}.quest-stepper-circle{z-index:2;border-radius:50%;flex:none;justify-content:center;align-items:center;width:30px;height:30px;margin-right:10px;font-size:11px;font-weight:700;display:flex;position:relative}.quest-stepper-completed .quest-stepper-circle{color:#fff;background:var(--teal)}.quest-stepper-active .quest-stepper-circle{border:2px solid var(--teal);color:var(--teal);background:#fff}.quest-stepper-pending .quest-stepper-circle{color:#93a59e;background:#f8fbf9;border:2px solid #dbe4e0}.quest-stepper-content{flex:1;min-width:0;padding-top:1px}.quest-stepper-title{color:#245348;overflow-wrap:anywhere;margin-bottom:3px;font-size:12px;font-weight:600;line-height:1.35}.quest-stepper-completed .quest-stepper-title,.quest-stepper-pending .quest-stepper-title{opacity:.68;filter:blur(.25px)}.quest-stepper-pending .quest-stepper-title{color:#93a59e}.quest-stepper-status{border-radius:999px;padding:1px 6px;font-size:10px;line-height:1.4;display:inline-block}.quest-stepper-completed .quest-stepper-status{color:#166534;background:#dcfce7}.quest-stepper-active .quest-stepper-status{color:#1d4ed8;background:#dbeafe}.quest-stepper-pending .quest-stepper-status{color:#64748b;background:#f1f5f9}.quest-branch{color:#79591d;background:#fff8e8;border:1px solid #be802338;border-radius:8px;align-items:flex-start;gap:8px;margin-top:12px;padding:9px 10px;animation:.22s ease-out quest-branch-enter;display:flex;position:relative}.quest-branch:before{content:"";background:#be802375;width:20px;height:2px;position:absolute;top:15px;left:-24px}.quest-branch-icon{color:#8b641e;background:#e7b24d33;border-radius:50%;flex:none;place-items:center;width:22px;height:22px;display:grid}.quest-branch-content,.quest-branch strong,.quest-branch-detail{display:block}.quest-branch-content{flex:1;min-width:0}.quest-branch strong{font-size:12px;line-height:1.4}.quest-branch-detail{color:#8a7246;overflow-wrap:anywhere;margin-top:2px;font-size:11px;line-height:1.5}.quest-branch-detail .tutoring-rich-text{color:inherit}@keyframes quest-branch-enter{0%{opacity:0;transform:translate(-6px)}to{opacity:1;transform:translate(0)}}.quest-advance-overlay{z-index:8;color:#fffdf4;pointer-events:none;perspective:900px;background:#143a2ff7;border:1px solid #e2f7dc61;border-radius:18px;place-items:center;width:min(100% - 24px,350px);min-height:304px;padding:18px 20px 20px;animation:.24s ease-out both quest-overlay-enter;display:grid;position:absolute;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%);box-shadow:0 18px 42px #16302952,0 3px #0a231b47,inset 0 1px #ffffff24}.quest-advance-glow{border:2px solid #e2f7dc33;border-radius:50%;width:190px;height:190px;position:absolute;box-shadow:0 0 80px #8bd2912e}.quest-advance-glow-left{animation:2.6s ease-in-out infinite alternate quest-glow-float;top:-58px;left:-82px}.quest-advance-glow-right{animation:2.4s ease-in-out .18s infinite alternate-reverse quest-glow-float;bottom:-66px;right:-88px}.quest-advance-stage{z-index:1;width:min(100%,360px);transform-style:preserve-3d;justify-items:center;animation:.52s cubic-bezier(.2,.85,.25,1.15) both quest-stage-enter;display:grid;position:relative}.quest-complete-scene,.quest-flag-scene{width:190px;height:190px;transform-style:preserve-3d;position:relative}.quest-complete-scene{place-items:center;display:grid;transform:rotateX(8deg)rotateY(-6deg)}.quest-complete-medallion{z-index:3;color:#fff;width:112px;height:112px;transform-style:preserve-3d;background:#4f9a63;border:5px solid #f9fff6;border-radius:50%;place-items:center;animation:.72s cubic-bezier(.2,1.25,.35,1) both quest-check-drop;display:grid;position:relative;box-shadow:0 8px #2f6842,0 16px 28px #0418126b,inset 0 0 0 8px #ffffff24}.quest-complete-medallion:after{content:"";filter:blur(5px);background:#081b1557;border-radius:50%;width:76px;height:18px;position:absolute;transform:translateY(86px)rotateX(72deg)translateZ(-40px)}.quest-complete-medallion svg{filter:drop-shadow(0 3px #1d573080);width:62px;height:62px}.quest-complete-orbit{border:2px solid #e1f7daa3;border-radius:50%;position:absolute;inset:18px}.quest-complete-orbit-one{animation:1.9s linear infinite quest-orbit-spin;transform:rotateX(68deg)rotate(8deg)}.quest-complete-orbit-two{animation:1.7s linear infinite quest-orbit-spin-reverse;inset:34px 8px;transform:rotateY(68deg)rotate(-12deg)}.quest-complete-spark{z-index:4;color:#f4d675;place-items:center;width:34px;height:34px;animation:.76s ease-out both quest-spark-pop;display:grid;position:absolute}.quest-complete-spark svg{width:100%;height:100%}.quest-complete-spark-one{top:18px;right:14px}.quest-complete-spark-two{animation-delay:.12s;bottom:22px;left:8px}.quest-flag-scene{transform:rotateX(9deg)rotateY(-8deg)}.quest-flag-platform{border-radius:50%;height:38px;position:absolute;left:22px;right:22px}.quest-flag-platform-bottom{background:#1f4c3d;bottom:16px;transform:translateY(10px);box-shadow:0 18px 24px #04161166}.quest-flag-platform-top{background:#76ad75;border:3px solid #f4fff094;bottom:30px;box-shadow:inset 0 -8px #29674057}.quest-flag-shadow{filter:blur(4px);background:#0a241b6b;border-radius:50%;height:16px;animation:.72s ease-out both quest-flag-shadow;position:absolute;bottom:38px;left:52px;right:52px}.quest-flag-burst{z-index:1;border:3px solid #f4d775b8;border-radius:50%;height:36px;animation:.76s ease-out .38s both quest-flag-burst;position:absolute;bottom:38px;left:42px;right:42px}.quest-flag-icon{z-index:3;color:#fff8dc;fill:#dfad43;filter:drop-shadow(7px 9px #285e47)drop-shadow(0 14px 14px #04181266);transform-origin:50% 100%;width:96px;height:112px;animation:.82s cubic-bezier(.22,1.2,.32,1) both quest-flag-plant;position:absolute;bottom:39px;left:53px}.quest-advance-copy{text-align:center;text-shadow:0 2px 4px #06191357;justify-items:center;max-width:340px;margin-top:4px;animation:.42s ease-out .28s both quest-copy-enter;display:grid}.quest-advance-copy>span{color:#d8ead5;letter-spacing:.22em;margin-bottom:7px;font-size:12px;font-weight:800}.quest-advance-copy>strong{color:#fffdf4;letter-spacing:.02em;font-size:clamp(26px,8vw,36px);font-weight:900;line-height:1.15}.quest-advance-copy>div{color:#e9f4e5;overflow-wrap:anywhere;max-width:100%;margin-top:10px;font-size:16px;font-weight:650;line-height:1.5}.quest-advance-start .quest-advance-stage{animation-name:quest-stage-turn}@keyframes quest-overlay-enter{0%{opacity:0}to{opacity:1}}@keyframes quest-stage-enter{0%{opacity:0;transform:translateY(26px)rotateX(18deg)scale(.78)}to{opacity:1;transform:translateY(0)rotateX(0)scale(1)}}@keyframes quest-stage-turn{0%{opacity:0;transform:translateY(24px)rotateY(-22deg)scale(.82)}to{opacity:1;transform:translateY(0)rotateY(0)scale(1)}}@keyframes quest-check-drop{0%{opacity:0;transform:translateY(-54px)rotateY(-38deg)scale(.58)}68%{opacity:1;transform:translateY(6px)rotateY(6deg)scale(1.08)}to{opacity:1;transform:translateY(0)rotateY(0)scale(1)}}@keyframes quest-orbit-spin{to{transform:rotateX(68deg)rotate(368deg)}}@keyframes quest-orbit-spin-reverse{to{transform:rotateY(68deg)rotate(-372deg)}}@keyframes quest-spark-pop{0%{opacity:0;transform:scale(.2)rotate(-28deg)}62%{opacity:1;transform:scale(1.22)rotate(8deg)}to{opacity:1;transform:scale(1)rotate(0)}}@keyframes quest-flag-plant{0%{opacity:0;transform:translate3d(24px,-76px,45px)rotate(10deg)scale(.72)}66%{opacity:1;transform:translate(-2px,6px)rotate(-3deg)scale(1.04)}to{opacity:1;transform:translate(0,0)rotate(0)scale(1)}}@keyframes quest-flag-shadow{0%{opacity:0;transform:scale(.35)}to{opacity:1;transform:scale(1)}}@keyframes quest-flag-burst{0%{opacity:0;transform:scale(.25)}48%{opacity:1}to{opacity:0;transform:scale(1.8)}}@keyframes quest-copy-enter{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes quest-glow-float{0%{transform:translateY(-8px)scale(.96)}to{transform:translateY(12px)scale(1.05)}}.message-actions{align-items:center;gap:2px;padding-left:2px;display:inline-flex}.message-action-btn{color:#7a8682;cursor:pointer;background:0 0;border:none;border-radius:999px;justify-content:center;align-items:center;gap:4px;min-width:30px;height:28px;margin:0;padding:0 8px;display:inline-flex}.message-action-btn:hover{color:var(--teal,#236d73);background:#236d7314}.message-action-btn.is-active.is-up{color:#2f7d4a;background:#43885f24}.message-action-btn.is-active.is-down{color:#b45309;background:#b453091f}.message-action-btn:disabled{opacity:.55;cursor:not-allowed}.message-action-feedback{font-size:12px}.assistant-avatar-icon{color:var(--green);flex:none;margin-top:10px}.choice-message{align-items:flex-start;width:92%;max-width:92%;animation:.28s ease-out choice-bubble-enter}@keyframes choice-bubble-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.choice-bubble{color:#245348;background:var(--surface);border:1px solid #236d7324;border-radius:10px;flex:1;min-width:0;padding:12px 14px;box-shadow:0 7px 16px #2b302a14}.choice-bubble-wrap{flex:1;gap:4px;min-width:0;display:grid}.choice-bubble-wrap .message-actions{padding-left:4px}.choice-bubble-hint{color:#3d6f5f;margin:0;font-size:14px;line-height:1.55}.free-text-prompt-message{animation:.28s ease-out choice-bubble-enter}.free-text-prompt-bubble{padding:12px 14px}.method-pick-message .choice-bubble-hint{letter-spacing:.02em;font-weight:600}.choice-bubble-options{gap:8px;margin-top:10px;display:flex}.choice-bubble-options-vertical{flex-direction:column}.choice-bubble-options-horizontal{flex-flow:wrap}.choice-bubble-options .adm-button{--border-radius:10px;--border-color:#236d7357;--text-color:var(--teal);--background-color:#f8fbfb;white-space:normal;box-sizing:border-box;overflow-wrap:anywhere;word-break:break-word;text-align:left;width:100%;min-width:0;max-width:100%;line-height:1.45;overflow:visible}.choice-bubble-options .adm-button-primary{--background-color:var(--teal);--border-color:var(--teal);--text-color:var(--chalk)}.choice-bubble-options-vertical .adm-button{text-align:left;justify-content:flex-start;width:100%}.choice-bubble-options-horizontal .adm-button{text-align:center;flex:auto;justify-content:center;width:auto;min-width:52px;max-width:100%;padding-inline:12px}.choice-bubble-options .adm-button>span{white-space:normal;overflow-wrap:anywhere;word-break:break-word;min-width:0;max-width:100%;display:block}.choice-bubble-options .adm-button .tutoring-rich-text{scrollbar-width:none;width:100%;min-width:0;max-width:100%;display:block;overflow:auto hidden}.choice-bubble-options .adm-button .tutoring-rich-text::-webkit-scrollbar{width:0;height:0;display:none}.choice-bubble-options .adm-button.choice-dont-know{order:99}.choice-bubble-options .adm-button.choice-dont-know.adm-button-fill-outline{--border-color:#786e5a59;--text-color:#6b6358;--background-color:#f7f4ef}.tutoring-rich-text{white-space:pre-wrap;word-break:break-word}.tutoring-hl{color:inherit;-webkit-box-decoration-break:clone;box-decoration-break:clone;background:linear-gradient(#ffe78200 6%,#ffe164d9 22% 86%,#ffe78200 97%);border-radius:3px;padding:0 2px}.tutoring-hl .katex{color:inherit}.tutoring-math-inline{vertical-align:middle;white-space:nowrap;scrollbar-width:none;max-width:100%;margin:0 1px;display:inline;overflow:visible}.tutoring-math-inline::-webkit-scrollbar{width:0;height:0;display:none}.tutoring-math-inline .katex-display{margin:0;display:inline}.tutoring-math-block{margin:6px 0;display:block;overflow-x:auto}.tutoring-math .katex{font-size:1.04em}.message p .tutoring-rich-text{display:block}.message.student{align-self:flex-end}.message.student p{color:var(--chalk);overflow-wrap:break-word;word-break:break-word;background:#236d73}.thinking-message{width:min(92%,360px);max-width:92%}.thinking-avatar-icon{color:var(--green);flex:none;margin-top:14px}.thinking-card{background:var(--surface);border:1px solid #236d7324;border-radius:10px;flex:1;min-width:0;overflow:hidden;box-shadow:0 7px 16px #2b302a14}.message.assistant:not(.thinking-message) .message-body,.message.assistant:not(.thinking-message) .message-body>p{overflow-wrap:anywhere;word-break:break-word;min-width:0;max-width:100%}.streaming-message{width:fit-content;min-width:0;max-width:88%}.streaming-message .message-body{flex:0 auto;width:fit-content;min-width:0;max-width:100%}.thinking-card-header{align-items:center;gap:10px;min-height:44px;padding:11px 14px;display:flex}.thinking-status-text{color:#245348;font-size:14px;font-weight:650;line-height:1.5}.thinking-agent-progress{text-align:left;padding:2px 14px 12px;display:grid}.thinking-progress-item{min-height:30px;color:var(--muted);grid-template-columns:18px minmax(0,1fr);gap:8px;font-size:12.5px;line-height:1.45;display:grid;position:relative}.thinking-progress-item:not(:last-child):after{content:"";background:#236d7329;width:1px;position:absolute;top:17px;bottom:-2px;left:7px}.thinking-progress-item.active{color:#245348;font-weight:600}.thinking-progress-marker{color:#236d7380;justify-content:center;align-items:flex-start;padding-top:2px;display:flex}.thinking-progress-item.active .thinking-progress-marker>span{border:2px solid #236d733d;border-top-color:var(--teal);border-radius:50%;width:9px;height:9px;margin-top:2px;animation:.9s linear infinite thinking-progress-spin}@keyframes thinking-progress-spin{to{transform:rotate(360deg)}}.thinking-dots{align-items:center;gap:5px;display:inline-flex}.thinking-dots span{background:var(--teal);border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite thinking-dot}.thinking-dots span:nth-child(2){animation-delay:.15s}.thinking-dots span:nth-child(3){animation-delay:.3s}@keyframes thinking-dot{0%,80%,to{opacity:.35;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}.choice-panel{max-height:min(42vh,280px);box-shadow:var(--soft-shadow);scrollbar-width:thin;background:#fffffff7;border:1px solid #d7e1e3f2;border-radius:12px;padding:12px;overflow-y:auto}.choice-panel p{color:var(--muted);margin-bottom:10px;font-size:14px}.choice-panel-question{color:var(--ink);margin-bottom:8px;font-size:15px;font-weight:600;line-height:1.55}.choice-panel-hint{margin-bottom:10px}.choice-panel div{flex-direction:column;gap:8px;display:flex}.choice-panel .adm-button{--border-radius:10px;--border-color:#236d7357;--text-color:var(--teal);background:#f8fbfb;justify-content:flex-start;width:100%}.chat-actions{z-index:1;overflow-anchor:none;background:linear-gradient(#f4f8f900 0%,#f4f8f9eb 28%,#f4f8f9 100%);flex-shrink:0;gap:8px;width:100%;padding:8px 0 0;display:grid;position:static}.summary-transition{color:#245348;background:#eef8f2;border:1px solid #43885f4d;border-radius:12px;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;display:grid;box-shadow:0 12px 28px #2b302a1f}.summary-transition-countdown{width:38px;height:38px;color:var(--teal);background:#fff;border:2px solid #43885f6b;border-radius:50%;justify-content:center;align-items:center;font-size:18px;font-weight:850;display:inline-flex}.summary-transition strong{font-size:14px;display:block}.summary-transition p{color:var(--muted);margin:2px 0 0;font-size:12px;line-height:1.4}.summary-transition .adm-button{--border-radius:8px;white-space:nowrap}@media (width<=390px){.summary-transition{grid-template-columns:42px minmax(0,1fr)}.summary-transition .adm-button{grid-column:1/-1;width:100%}}.clarify-quick-actions{flex-wrap:wrap;gap:8px;padding:0 2px;display:flex}.clarify-quick-actions .adm-button{--border-radius:999px;min-width:88px}.chat-composer{box-sizing:border-box;background:var(--surface);border:1px solid #d7e1e3fa;border-radius:12px;grid-template-columns:minmax(0,1fr) 42px;align-items:center;gap:8px;min-width:0;max-width:100%;padding:8px;display:grid;box-shadow:0 12px 28px #2b302a1f}.chat-composer.has-choice-chip{align-items:center}.composer-choice-chip{box-sizing:border-box;width:fit-content;min-width:0;max-width:100%;min-height:30px;color:var(--teal);background:#eef7f7;border:1px solid #236d7357;border-radius:999px;grid-column:1/-1;align-self:start;align-items:center;gap:6px;padding:4px 6px 4px 10px;display:inline-flex;overflow:hidden;box-shadow:inset 0 1px #ffffffb3}.composer-choice-chip-label{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;max-width:calc(100% - 28px);font-size:13px;line-height:1.35;overflow:hidden}.composer-choice-chip-label .tutoring-rich-text,.composer-choice-chip-label .katex{white-space:nowrap;display:inline}.composer-choice-chip-clear{width:22px;height:22px;color:var(--teal);cursor:pointer;background:#236d731f;border:none;border-radius:999px;flex:0 0 22px;justify-content:center;align-items:center;margin:0;padding:0;display:inline-flex}.composer-choice-chip-clear:disabled{opacity:.5;cursor:not-allowed}.chat-composer.has-choice-chip .adm-input{grid-column:1;min-width:0}.chat-composer .adm-input{grid-column:1;min-width:0;padding:0 2px}.send-button{grid-column:2;align-self:center;width:42px;height:36px;padding:0}.send-button .adm-button-content{justify-content:center;align-items:center;display:inline-flex}.send-button svg{transform:translate(-2px,4px)}.summary-page{gap:12px;min-height:calc(100vh - 84px);display:grid}.summary-hero,.summary-block{box-shadow:var(--soft-shadow);background:#fffffff0;border:1px solid #d7e1e3f2;border-radius:12px}.summary-hero{background:linear-gradient(90deg,#eef8f7f5,#fffffff5);align-items:flex-start;gap:14px;padding:18px;display:flex}.summary-hero svg{color:var(--green);flex:none}.summary-hero .eyebrow{color:var(--green)}.summary-hero h1{max-width:none;color:var(--ink);font-size:24px}.summary-hero p:last-child{color:var(--muted);margin-top:8px;font-size:14px;line-height:1.58}.summary-block{padding:15px}.summary-block h2{margin-bottom:8px;font-size:17px}.summary-block p{color:var(--muted);font-size:14px;line-height:1.68}.summary-tags{flex-wrap:wrap;gap:8px;display:flex}.solution-steps{gap:12px;display:grid}.solution-step{gap:10px;display:flex}.solution-step>span{width:24px;height:24px;color:var(--chalk);background:var(--green);border-radius:8px;flex:none;place-items:center;font-size:13px;font-weight:800;display:grid}.solution-step strong{margin-bottom:4px;font-size:14px;font-weight:850;display:block}.summary-actions{gap:10px;margin-top:4px;display:grid}.summary-rating{gap:10px;display:grid}.summary-rating-hint,.summary-rating-thanks{color:var(--muted);margin:0;font-size:14px}.summary-rating-thanks{color:var(--teal);font-weight:650}.summary-rating-stars{align-items:center;gap:6px;display:flex}.summary-rating-star{color:#c4b59a;cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;width:44px;height:44px;padding:0;display:inline-flex}.summary-rating-star.is-active{color:#c9893a}.summary-rating-star:disabled{cursor:default}.feedback-button{color:var(--muted)}.feedback-popup{border-radius:16px 16px 0 0;overflow:hidden}.feedback-form{padding:18px 16px calc(18px + env(safe-area-inset-bottom));background:var(--surface);gap:14px;display:grid}.feedback-form h2{font-size:20px}.feedback-form>p{color:var(--muted);font-size:14px}.feedback-context{border:1px solid var(--line);background:var(--surface-soft);border-radius:10px;gap:4px;padding:10px 12px;display:grid}.feedback-context span{color:var(--muted);font-size:12px}.feedback-context strong{color:var(--ink);font-size:14px;line-height:1.35}.feedback-message-snapshot .feedback-snapshot-text{max-height:120px;color:var(--ink);background:#fff;border-radius:8px;margin-top:2px;padding:8px 10px;font-size:13px;font-weight:400;line-height:1.5;overflow:auto}.feedback-form label{color:var(--ink);gap:8px;font-size:14px;font-weight:800;display:grid}.picker-button{border:1px solid var(--line);width:100%;min-height:44px;color:var(--ink);font:inherit;text-align:left;background:#f8fbfb;border-radius:10px;justify-content:space-between;align-items:center;padding:0 12px;display:flex}.feedback-form .adm-text-area{border:1px solid var(--line);background:#f8fbfb;border-radius:10px;padding:10px 12px;font-weight:400}.feedback-actions{grid-template-columns:1fr 1fr;gap:10px;margin-top:4px;display:grid}.exit-feedback-hint{color:var(--muted);margin:-6px 0 0;font-size:12px}.record-page{background:linear-gradient(#fffffffa 0%,#f8fcfbf5 100%);border-color:#236d7324;min-height:calc(100vh - 160px);padding:14px}.record-hero{gap:12px;display:grid}.record-section-title{align-items:flex-start;margin-bottom:0}.record-section-title h2{color:#1a3538;max-width:none;font-size:24px}.record-hero-copy{color:#6a7f84;margin-top:6px;font-size:13px;font-weight:500;line-height:1.55}.record-page .section-title .eyebrow{opacity:1;color:#3d7a62}.record-user-strip{background:#ffffffe0;border-color:#236d731f;margin-bottom:0}.record-page .user-strip span{color:#7a8f94;font-size:12px;font-weight:600}.record-page .user-strip strong{color:#2a4b50;font-size:15px;font-weight:800}.record-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.record-item{background:#fff;border:1px solid #236d731a;border-radius:12px;align-content:center;gap:6px;min-height:76px;padding:12px 10px;display:grid;box-shadow:0 6px 16px #236d730f}.record-item:before{background:var(--teal);content:"";border-radius:999px;width:28px;height:4px;display:block}.record-item:nth-child(2):before{background:var(--green)}.record-item:nth-child(3):before{background:var(--amber)}.record-item span{color:#7a8f94;letter-spacing:.01em;font-size:12px;font-weight:600}.record-item strong{color:#1f5f66;font-size:17px;font-weight:850;line-height:1.2}.record-item:nth-child(2) strong{color:#2f6b4f}.record-item:nth-child(3) strong{color:#8a6428}.record-divider{border-color:#d7e1e3d9;margin:14px 0 10px}.record-list{gap:10px;display:grid}.record-completed-section .record-list{width:min(100%,420px);margin:0 auto}.record-incomplete-section,.record-completed-section{gap:10px;display:grid}.record-incomplete-section{margin-bottom:14px}.record-section-head{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.record-section-head h3{color:#1f3f44;margin:0;font-size:15px;font-weight:850}.record-section-head span{color:#8aa0a5;font-size:12px;font-weight:600}.record-card-incomplete{cursor:default;background:linear-gradient(135deg,#fffcf5fa,#fffffffa);border-color:#d6a24347}.record-card-incomplete:hover,.record-card-incomplete:focus-visible{transform:none;box-shadow:0 8px 18px #236d730f}.record-page .record-incomplete-tag{--text-color:#8a6428;--background-color:#fff4df;--border-color:#d6a24347;font-weight:700}.record-resume-button{justify-self:start;align-items:center;gap:8px;margin-top:2px;display:inline-flex}.record-resume-button svg{transform:translate(-4px,2px)}.record-card{cursor:pointer;background:linear-gradient(135deg,#fffffffa,#f5faf9fa);border:1px solid #236d731f;border-radius:12px;justify-content:space-between;align-items:center;gap:10px;width:100%;max-width:100%;padding:14px;transition:transform .2s,box-shadow .2s,border-color .2s;display:flex;box-shadow:0 8px 18px #236d730f}.record-card:hover,.record-card:focus-visible{border-color:#236d7338;outline:none;transform:translateY(-2px);box-shadow:0 12px 24px #236d731a}.record-card:active{transform:translateY(0)}.record-card-completed{flex-direction:column;align-items:stretch}.record-card-completed .record-card-thumb{border-radius:10px;width:100%;height:140px}.record-card-completed .record-card-body{width:100%}.record-card-thumb{object-fit:cover;background:#f5faf9;border:1px solid #236d731f;border-radius:8px;flex-shrink:0;width:64px;max-width:100%;height:64px}.record-card-body{flex:1;gap:8px;min-width:0;display:grid}.record-card-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.record-card-time{color:#8aa0a5;white-space:nowrap;text-overflow:ellipsis;max-width:11em;font-size:12px;font-weight:600;overflow:hidden}.record-card-title{color:#1f3f44;overflow-wrap:anywhere;word-break:break-word;font-size:16px;font-weight:850;line-height:1.45}.record-card-snippet{color:#6f8489;-webkit-line-clamp:2;overflow-wrap:anywhere;word-break:break-word;-webkit-box-orient:vertical;font-size:13px;font-weight:500;line-height:1.55;display:-webkit-box;overflow:hidden}.record-card-meta{color:#8aa0a5;overflow-wrap:anywhere;word-break:break-word;font-size:12px;font-weight:600;line-height:1.45}.record-card-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-top:2px;display:flex}.record-card-link{color:#2a6670;letter-spacing:.02em;font-size:12px;font-weight:800}.record-card-actions>*,.record-tags{max-width:100%}.record-tags .adm-tag{overflow-wrap:anywhere;word-break:break-word;white-space:normal;max-width:100%}.record-feedback-button{max-width:100%}.record-detail-popup{background:#f4f8f9;border-radius:18px 18px 0 0;max-height:92vh;overflow:hidden}.record-detail-sheet{grid-template-rows:auto 1fr;max-height:92vh;display:grid}.record-detail-toolbar{background:linear-gradient(#fffffffa,#f8fbfbfa);border-bottom:1px solid #d7e1e3e6;grid-template-columns:auto 1fr;align-items:start;gap:10px;padding:14px 16px 10px;display:grid}.record-detail-toolbar h2{color:#1f3f44;margin:2px 0 0;font-size:18px;font-weight:850;line-height:1.25}.record-detail-close{color:#5d7a80;cursor:pointer;background:#fff;border:1px solid #236d7324;border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex;box-shadow:0 4px 10px #236d7314}.record-detail-loading{color:#7a8f94;justify-items:center;gap:10px;padding:48px 20px;font-size:13px;font-weight:600;display:grid}.record-detail-scroll{padding:12px 14px calc(18px + env(safe-area-inset-bottom));gap:12px;display:grid;overflow:auto}.record-detail-chips{flex-wrap:wrap;gap:8px;display:flex}.record-detail-chips span{color:#6f8489;background:#fff;border:1px solid #236d731f;border-radius:999px;padding:5px 10px;font-size:11px;font-weight:700;box-shadow:0 4px 10px #236d730d}.record-detail-section{gap:10px;display:grid}.record-detail-section-head{color:#2a6670;align-items:center;gap:8px;display:flex}.record-detail-section-head h3{color:#1f3f44;margin:0;font-size:14px;font-weight:850}.record-detail-photo-frame{background:#fff;border:1px solid #236d7324;border-radius:10px;padding:10px 10px 16px;position:relative;transform:rotate(-.6deg);box-shadow:0 10px 24px #236d7314,inset 0 0 0 1px #fffc}.record-detail-photo-frame:before{content:"";background:#e8c4788c;border-radius:2px;width:56px;height:18px;position:absolute;top:-7px;left:50%;transform:translate(-50%)rotate(-2deg)}.record-detail-photo-frame img{object-fit:contain;background:#f7fbfb;border-radius:6px;width:100%;max-height:240px;display:block}.record-detail-photo-empty,.record-detail-empty-block{color:#8aa0a5;text-align:center;background:#ffffffb8;border:1px dashed #236d7333;border-radius:10px;justify-items:center;gap:8px;padding:22px 16px;font-size:13px;font-weight:600;display:grid}.record-detail-paper{background:linear-gradient(#fff 0%,#fbfefd 100%);border:1px solid #236d731f;border-radius:10px;padding:12px 14px;box-shadow:inset 3px 0 #d6565673}.record-detail-paper p{color:#3f5d62;white-space:pre-wrap;margin:0;font-size:14px;line-height:1.65}.record-detail-chat{gap:12px;display:grid}.record-detail-turn{gap:8px;display:grid}.record-chat-bubble{overflow-wrap:break-word;word-break:break-word;border-radius:12px;gap:4px;max-width:92%;padding:10px 12px;display:grid;box-shadow:0 6px 14px #236d7312}.record-chat-bubble span{letter-spacing:.03em;font-size:11px;font-weight:800}.record-chat-bubble p{white-space:pre-wrap;overflow-wrap:break-word;word-break:break-word;margin:0;font-size:14px;line-height:1.55}.record-chat-bubble .tutoring-rich-text,.record-detail-summary-card .tutoring-rich-text,.record-detail-step .tutoring-rich-text,.record-detail-attention .tutoring-rich-text,.record-card-title .tutoring-rich-text,.record-card-snippet .tutoring-rich-text,.summary-page .tutoring-rich-text{white-space:pre-wrap;word-break:break-word}.record-card-snippet .tutoring-math-inline,.record-method-tag .tutoring-math-inline,.record-detail-methods .tutoring-math-inline{vertical-align:middle}.record-chat-bubble-teacher{color:#2f4d52;background:#fff;border:1px solid #236d731f;border-bottom-left-radius:4px;justify-self:start}.record-chat-bubble-teacher span{color:#2a6670}.record-chat-bubble-student{color:#2f4f41;background:linear-gradient(#f2faf5,#e9f5ee);border:1px solid #43885f2e;border-bottom-right-radius:4px;justify-self:end}.record-chat-bubble-student span{color:#3d7a5d;text-align:right}.record-chat-bubble-reply{background:#fbfdfe;border-style:dashed}.record-turn-choices{gap:4px;margin-top:2px;display:grid}.record-turn-choices-label{color:#7d949a;letter-spacing:.04em;font-size:10.5px;font-weight:700}.record-turn-choice{color:#557579;background:#f8fbfb;border:1px dashed #236d732e;border-radius:8px;align-items:flex-start;gap:8px;padding:6px 9px;font-size:13px;line-height:1.5;display:flex}.record-turn-choice.is-picked{color:#2f4f41;background:#eef8f2;border-style:solid;border-color:#43885f6b;font-weight:600}.record-turn-choice-mark{color:#3d7a5d;letter-spacing:.02em;white-space:nowrap;background:#43885f24;border-radius:999px;flex:none;margin-left:auto;padding:1px 6px;font-size:10px;font-weight:800;line-height:1.6}.record-chat-bubble p.record-chat-note{color:#4a6a5c;border-left:2px solid #43885f47;padding-left:8px;font-size:13px}.record-detail-summary-card{background:linear-gradient(145deg,#fffffffa,#f5faf9fa);border:1px solid #236d731f;border-radius:12px;gap:12px;padding:14px;display:grid;box-shadow:0 10px 22px #236d7312}.record-detail-summary-lead{color:#2f4d52;margin:0;font-size:14px;font-weight:650;line-height:1.65}.record-detail-steps{border-left:2px solid #236d7329;gap:10px;padding-left:4px;display:grid}.record-detail-step{grid-template-columns:28px minmax(0,1fr);align-items:start;gap:10px;display:grid}.record-detail-step>span{color:#2a6670;background:#e7f3f4;border-radius:999px;justify-content:center;align-items:center;width:28px;height:28px;font-size:12px;font-weight:850;display:inline-flex}.record-detail-step>div{min-width:0}.record-detail-step strong{color:#1f3f44;font-size:13px;font-weight:800;line-height:1.5;display:block}.record-detail-step p{color:#5a7278;margin:4px 0 0;font-size:13px;line-height:1.6}.record-detail-step .tutoring-rich-text,.record-detail-step .tutoring-math-inline{max-width:100%;display:inline}.record-detail-methods{flex-wrap:wrap;gap:6px;display:flex}.record-detail-attention{color:#7a5a24;background:#fff8eb;border:1px solid #d6a24338;border-radius:10px;grid-template-columns:auto 1fr;align-items:start;gap:8px;padding:10px 12px;display:grid}.record-detail-attention p{margin:0;font-size:13px;font-weight:600;line-height:1.55}.record-page .record-subject-tag{--text-color:#2a6670;--background-color:#e7f3f4;--border-color:#236d732e;font-weight:700}.record-page .record-method-tag{--text-color:#356b57;--background-color:#edf7f1;--border-color:#43885f33;font-weight:700}.record-hint{color:#7a8f94;font-size:13px;font-weight:600}.record-tags{flex-wrap:wrap;margin-top:2px;gap:6px!important;display:flex!important}.record-feedback-button{justify-self:start;width:auto;margin-top:2px!important}.record-page .record-feedback-button{--text-color:#2a6670;--border-color:#236d7347;background:#f7fbfa;font-weight:700}.record-empty-state,.record-page .empty-state{color:#7a8f94;background:#ffffffb8;border:1px dashed #236d732e;border-radius:12px;padding:30px 18px}.record-empty-state svg,.record-page .empty-state svg{color:#5f9a78}.record-empty-state strong,.record-page .empty-state strong{color:#2a4b50;font-size:15px;font-weight:850}.record-empty-state span,.record-page .empty-state span{color:#8aa0a5;max-width:18em;font-size:13px;font-weight:500;line-height:1.55}.timeline{border-bottom:1px solid #d7e1e3f2;padding:13px 0}.timeline:last-child{border-bottom:0}.timeline div{gap:6px;display:grid}.timeline strong{font-size:15px;font-weight:850}.timeline span{color:var(--muted);font-size:13px;line-height:1.4}.empty-state{color:var(--muted);text-align:center;justify-items:center;gap:8px;padding:28px 18px;display:grid}.empty-state svg{color:var(--green)}.empty-state strong{color:var(--ink);font-size:15px;font-weight:850}.empty-state span{max-width:18em;font-size:13px;line-height:1.5}.about-page{background:linear-gradient(#f4f8f6b3,#fff0);gap:10px;min-height:calc(100vh - 154px);padding:2px 2px 10px;display:grid}.about-hero{color:var(--ink);background:#f5f0df;border:1px solid #234f4a29;border-radius:10px;align-items:flex-start;gap:14px;padding:16px 14px;display:flex;position:relative;overflow:hidden;box-shadow:0 2px 8px #234f4a0f}.about-hero:after{content:"";pointer-events:none;opacity:.45;background:repeating-linear-gradient(0deg,#0000 0 23px,#527a421a 24px);width:34%;position:absolute;inset:0 0 0 auto}.about-logo{object-fit:cover;z-index:1;border-radius:50%;flex:none;width:52px;height:52px;position:relative}.about-hero h1{color:#234f4a;z-index:1;max-width:none;font-size:24px;position:relative}.about-hero p:last-child{color:var(--muted);z-index:1;margin-top:8px;font-size:14px;line-height:1.58;position:relative}.about-card{background:#ffffffe0;border:1px solid #d7e1e3e6;border-radius:9px;padding:14px;box-shadow:0 2px 8px #234f4a0b}.about-version-footer{color:#9aa8a4;text-align:center;word-break:break-all;margin:auto 0 0;padding:12px 4px 2px;font-size:11px;line-height:1.5}.about-card-title{align-items:center;gap:8px;margin-bottom:7px;display:flex}.about-card-title svg{color:#527a42;width:19px}.about-card-title h2{color:#234f4a;font-size:16px}.about-card p{color:var(--muted);font-size:14px;line-height:1.68}.tutoring-mode-card{gap:10px;display:grid}.tutoring-mode-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.tutoring-mode-row>div{gap:4px;min-width:0;display:grid}.tutoring-mode-row span{color:var(--muted);font-size:12px;font-weight:650}.tutoring-mode-row strong{color:var(--ink);font-size:17px}.tutoring-mode-panel{margin-top:12px}.setting-edit-icon-button{width:34px;height:34px;color:var(--teal);cursor:pointer;background:#eef8f7;border:1px solid #236d7347;border-radius:8px;justify-content:center;align-items:center;margin:0;padding:0;display:inline-flex}.setting-edit-icon-button:disabled{opacity:.55;cursor:not-allowed}.about-tags{flex-wrap:wrap;gap:8px;display:flex}.about-page .user-strip{border-bottom:1px solid #234f4a24;margin:0;padding:10px 2px 8px}.about-page .about-grade-panel{border-radius:9px;box-shadow:0 2px 8px #234f4a0b}.detect-page{flex-direction:column;gap:14px;min-height:calc(100vh - 154px);display:flex}.detect-header{box-shadow:var(--soft-shadow);background:#fffffff0;border:1px solid #236d7329;border-radius:12px;padding:16px}.detect-header h1{font-size:22px}.detect-copy{color:var(--muted);margin-top:8px;font-size:14px;line-height:1.55}.detect-list,.detect-list>.adm-space-item{width:100%}.detect-item{--adm-radio-icon-size:20px;background:#fffffff0;border:1px solid #d7e1e3f2;border-radius:8px;align-items:flex-start;gap:10px;width:100%;padding:14px;display:flex}.detect-item.adm-radio-checked{background:#eef8f7;border-color:#236d736b}.detect-item-done{background:#e8f5ec;border-color:#4c8c5e59}.detect-item-done.adm-radio-checked{background:#dff0e4;border-color:#4c8c5e8c}.about-feedback-drawer{padding:0}.about-feedback-content{flex-direction:column;height:100%;display:flex}.about-feedback-header{background:linear-gradient(#fef9f3 0%,#fff 100%);border-bottom:1px solid #236d731f;align-items:center;gap:12px;padding:20px 20px 16px;display:flex}.about-feedback-header h3{color:#2d4a50;flex:1;margin:0;font-size:18px;font-weight:700}.about-feedback-close{color:#8aa0a5;cursor:pointer;background:0 0;border:none;border-radius:8px;padding:6px;transition:all .2s}.about-feedback-close:hover{color:#2d4a50;background:#236d7314}.about-feedback-body{flex-direction:column;flex:1;gap:20px;padding:20px;display:flex;overflow-y:auto}.about-feedback-body label{flex-direction:column;gap:8px;display:flex}.about-feedback-body label>span{color:#3f5d62;letter-spacing:.02em;font-size:13px;font-weight:600}.about-feedback-actions{background:#fffffffa;border-top:1px solid #236d731f;gap:12px;padding:16px 20px 20px;display:flex}.about-feedback-actions .adm-button{flex:1}.detect-item-done-badge{color:#2f6b42;background:#4c8c5e29;border-radius:999px;padding:2px 8px;font-size:12px;font-weight:700}.detect-item .adm-radio-icon{color:var(--teal);flex:none;margin-top:2px}.detect-item-content{flex:1;gap:6px;min-width:0;display:grid}.detect-item-main{align-items:center;gap:8px;display:flex}.detect-item-main strong{color:var(--ink);font-size:16px;font-weight:850}.detect-item-type{color:var(--teal);background:#236d7314;border-radius:999px;padding:2px 8px;font-size:12px;font-weight:700}.detect-item-preview{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:13px;line-height:1.5;overflow:hidden}.detect-visual-tag{--adm-tag-color:#c97c25;--adm-tag-background-color:#c97c251a;margin-left:auto;font-size:11px;font-weight:700}.detect-actions{gap:10px;margin-top:4px;display:grid}.mobile-shell:has(.detect-page){background:radial-gradient(circle at 28px 32px,#236d730e 0 1px,#0000 1.5px) 0 0/18px 18px,#f4f8f9}.mobile-shell:has(.detect-page) .app-body{padding-bottom:18px}.bottom-tabs{z-index:20;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffff5;border-top:1px solid #d7e1e3f2;width:min(100%,430px);position:fixed;bottom:0;left:50%;transform:translate(-50%)}.bottom-tabs .adm-tab-bar-item-active{color:var(--teal)}.adm-button-primary{--background-color:var(--teal);--border-color:var(--teal)}.adm-button{--border-radius:10px;font-weight:750}.adm-tag{border-radius:999px;font-weight:700}.adm-divider{border-color:#d7e1e3f2}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width>=700px){body{background:#dce9ec;place-items:center;min-height:100vh;padding:28px;display:grid;overflow:auto}.mobile-shell{border:1px solid #ffffffb8;border-radius:26px;height:min(900px,100vh - 56px);min-height:min(860px,100vh - 56px);max-height:900px}.top-bar,.bottom-tabs{border-radius:26px 26px 0 0}.bottom-tabs{border-radius:0 0 26px 26px}}.visual-note-trigger{color:#d35c4b;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:4px;transition:background-color .2s;display:flex}.visual-note-trigger:hover{background:#d35c4b1a}.visual-note-trigger-small{color:#d35c4b;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;margin-left:6px;padding:2px;transition:background-color .2s;display:inline-flex}.visual-note-trigger-small:hover{background:#d35c4b1a}.visual-note-collapsed-icon{color:#d35c4b;cursor:pointer;flex-shrink:0;margin:0 4px;transition:opacity .2s}.visual-note-collapsed-icon:hover{opacity:.7}.visual-note-chip{color:#d35c4b;cursor:pointer;background:#d35c4b1a;border:none;border-radius:999px;align-items:center;gap:4px;margin-left:auto;padding:4px 8px;font-size:12px;font-weight:700;transition:background-color .2s;display:inline-flex}.visual-note-chip:hover{background:#d35c4b2e}.visual-note-popup{border-radius:16px 16px 0 0;padding:20px}.visual-note-content{text-align:center}.visual-note-header{justify-content:center;align-items:center;gap:8px;margin-bottom:16px;display:flex}.visual-note-icon{color:#d35c4b}.visual-note-header h3{color:var(--ink);margin:0;font-size:18px}.visual-note-text{color:var(--muted);text-align:left;background:#fff8f6;border:1px solid #d35c4b2e;border-radius:8px;margin-bottom:20px;padding:12px 16px;font-size:15px;line-height:1.6}.visual-note-warning{color:#d35c4b;text-align:center;background:#d35c4b1a;border-radius:6px;margin-bottom:12px;padding:8px 12px;font-size:14px;font-weight:600}.visual-note-type{color:var(--muted);text-align:left;margin-bottom:8px;font-size:13px}.lesson-animation{background:#fffdf7;border:1px solid #174f4a3d;border-radius:8px;margin:10px 8px 14px;padding:12px;box-shadow:0 3px 10px #1f373414}.lesson-animation-zoom-open{overflow:hidden}.lesson-animation.is-zoomed{z-index:1000;background:#fffdf7;border:1px solid #244b4559;flex-direction:column;justify-content:center;margin:0;padding:16px;display:flex;position:fixed;inset:12px;box-shadow:0 18px 60px #11262247}.lesson-animation-zoom-backdrop{z-index:0;background:#1427249e;border:0;width:auto;height:auto;position:fixed;inset:-12px}.lesson-canvas-trigger{cursor:zoom-in;text-align:left;background:0 0;border:0;border-radius:6px;width:100%;padding:0;display:block;position:relative;overflow:hidden}.lesson-animation.is-zoomed .lesson-canvas-host,.lesson-animation.is-zoomed .lesson-animation-zoom-close{z-index:1;position:relative}.lesson-animation.is-zoomed .lesson-canvas-trigger{cursor:zoom-out;max-height:calc(100vh - 86px)}.lesson-canvas-trigger:focus-visible{outline-offset:-3px;outline:3px solid #43885f99}.lesson-animation-zoom-close{color:#245348;cursor:pointer;background:#fffdf7;border:1px solid #244b453d;border-radius:999px;align-self:flex-end;margin-top:8px;padding:6px 12px}.guide-message-with-lesson{color:#245348;background:var(--surface);border:1px solid #236d7324;border-radius:10px;overflow:hidden;box-shadow:0 7px 16px #2b302a14}.message.assistant .guide-message-with-lesson>p{clear:both;box-shadow:none;background:0 0;border:0;border-radius:0;margin:0;padding:12px;display:block}.guide-message-with-lesson .lesson-animation,.chat-bubble.assistant .lesson-animation{box-shadow:none;background:0 0;border:0;border-radius:0;margin:10px 10px 0;padding:0}.guide-message-with-lesson .interactive-lesson-loading,.chat-bubble.assistant .interactive-lesson-loading{background:0 0;border:0;border-radius:0;margin:0 10px 4px}.interactive-lesson-loading{color:#46615e;text-align:center;background:#fffdf7;border:1px solid #174f4a2e;border-radius:8px;margin:10px 8px 14px;padding:18px}.lesson-canvas-host{background:#fffdf7;border:1px solid #31413f24;border-radius:6px;width:100%;min-height:180px;overflow:hidden}.lesson-canvas-host canvas{animation:.26s ease-out lesson-scene-step-enter}@keyframes lesson-scene-step-enter{0%{opacity:.55;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}.lesson-canvas{pointer-events:none;width:100%;height:auto;display:block}.lesson-accessible-fallback{align-items:center;gap:8px;margin-top:10px;display:flex}.lesson-confirm-button{margin-top:10px}.lesson-accessible-fallback .adm-input{background:#fff;border:1px solid #31413f2e;border-radius:6px;flex:1;padding:7px 9px}.lesson-runtime-error{color:#a33a32;margin:8px 0 0;font-size:13px}.area-error{color:var(--ink,#31413f);background:#fff8f6f2;border:1px solid #a33a3240;border-radius:8px;margin:16px;padding:20px 16px}.area-error h2{margin:0 0 8px;font-size:18px}.area-error p{color:#31413fc7;margin:0;font-size:14px;line-height:1.5}.area-error-actions{gap:8px;margin-top:16px;display:flex}.activity-stats-page .page-header,.photo-sessions-page .page-header{align-items:flex-start;gap:16px}.activity-stats-page .page-header{flex-wrap:nowrap;align-items:center}.activity-stats-page .page-header-title{flex:1;min-width:0}.activity-stats-page .page-header-filters{flex-wrap:nowrap;flex:none}.activity-stats-page .page-header p{color:#6b7280;margin:6px 0 0}.admin-link-button{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;display:block}.admin-link-button:hover strong,.admin-link-button-inline:hover{color:var(--teal,#1f6f63);text-decoration:underline}.admin-link-button-inline{width:auto;font:inherit;color:var(--teal,#1f6f63);font-weight:650;display:inline}.admin-clickable-row{cursor:pointer}.admin-clickable-row:hover>td{background:#f3faf7!important}.admin-filter-banner{color:#24584f;background:#f3faf7;border:1px solid #cfe3dd;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;margin:0 0 14px;padding:10px 14px;font-size:13px;display:flex}.admin-cell-muted{color:#7a8582;margin-top:3px;font-size:12px}.session-anomaly-reason{color:#b42318;margin-top:5px;font-size:13px}.session-tip-assessments{gap:8px;display:grid}.session-tip-assessment{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.session-tip-assessment-text{flex:1;min-width:180px;font-size:13px;line-height:1.5}.session-annotation-panel{background:#fff9f8;border:1px solid #e2c9c5;border-radius:8px;gap:12px;margin:18px 0 24px;padding:16px;display:grid}.session-annotation-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.session-annotation-heading h2,.session-annotation-heading p{margin:0}.session-annotation-heading p{color:#7a8582;margin-top:4px;font-size:12px}.session-annotation-panel .ant-btn{justify-self:start}.admin-auto-refresh-label,.admin-last-refreshed{color:#6f7c79;font-size:12px}.admin-last-refreshed{text-align:right;margin:-8px 0 12px}@media (width<=767px){.admin-antd-layout>.ant-layout-sider{display:none}.admin-antd-header.ant-layout-header,.admin-antd-header{flex:0 0 56px;height:56px;padding:0 14px;line-height:56px}.admin-header-title{font-size:17px}.admin-user-button{min-width:44px;min-height:44px;padding-inline:8px;font-size:0}.admin-user-button .ant-avatar{font-size:13px}.admin-antd-content{padding:14px 12px calc(78px + env(safe-area-inset-bottom));overflow-x:hidden}.admin-mobile-nav{z-index:1000;min-height:62px;padding-bottom:env(safe-area-inset-bottom);border-top:1px solid var(--line);background:#fff;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -5px 18px #18272b14}.admin-mobile-nav .adm-tab-bar-item{min-height:56px}.admin-dashboard-page .page-header,.admin-data-page .page-header,.users-page .page-header{flex-direction:column;align-items:stretch;gap:12px}.admin-dashboard-page .page-header h1,.admin-data-page .page-header h1,.users-page .page-header h1{font-size:22px}.admin-dashboard-page .page-header p,.admin-data-page .page-header p{display:none}.dashboard-range-controls{display:grid}.dashboard-range-controls .ant-picker{width:100%;min-height:44px}.dashboard-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.dashboard-metric{grid-template-columns:32px 1fr;min-height:76px;padding:10px}.dashboard-metric>span{width:32px;height:32px}.dashboard-metric>span svg{width:18px}.dashboard-metric strong{font-size:19px}.dashboard-sections{grid-template-columns:1fr;gap:0}.admin-panel{padding:14px}.dashboard-trend{overflow:hidden}.admin-data-page .page-header>.ant-space{grid-template-columns:1fr 1fr;width:100%;display:grid}.admin-data-page .page-header>.ant-space>.ant-space-item{min-width:0}.admin-data-page .page-header .ant-picker,.admin-data-page .page-header .ant-input-affix-wrapper,.admin-data-page .page-header .ant-select,.admin-data-page .page-header .ant-btn{min-height:44px;width:100%!important;min-width:0!important}.admin-data-page .ant-table-wrapper{display:none}.admin-mobile-cards{gap:10px;display:grid}.admin-mobile-card{border:1px solid var(--line);min-width:0;box-shadow:var(--soft-shadow);background:#fff;border-radius:8px;overflow:hidden}button.admin-mobile-card,.mobile-card-main{width:100%;color:inherit;text-align:left;background:#fff;border:0;gap:10px;padding:14px;display:grid}.mobile-card-heading{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.mobile-card-heading>span{min-width:0;display:grid}.mobile-card-heading small{color:var(--muted)}.mobile-card-content{overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:100%;line-height:1.55;display:-webkit-box;overflow:hidden}.mobile-card-content .tutoring-math{max-width:100%;overflow-x:auto}.mobile-card-meta{color:var(--muted);align-items:center;gap:7px;font-size:12px;display:flex}.mobile-card-meta time{margin-left:auto}.mobile-card-actions{border-top:1px solid var(--line);gap:8px;padding:10px 14px;display:flex;overflow-x:auto}.mobile-card-actions .ant-btn{flex:none;min-height:44px}.mobile-pagination{justify-content:space-between;align-items:center;display:flex}.mobile-pagination .ant-btn{min-height:44px}.admin-filter-banner{flex-direction:column;align-items:flex-start}.admin-last-refreshed{text-align:left}.admin-detail-drawer .ant-drawer-content-wrapper{max-width:none;width:100%!important}.admin-detail-drawer .ant-drawer-body{padding:14px}.session-annotation-panel .ant-btn{width:100%;min-height:44px}.admin-responsive-modal{max-width:100vw;margin:0;padding:0;top:0}.admin-responsive-modal .ant-modal-content{border-radius:0;min-height:100dvh}.admin-window-modal{max-width:100vw;margin:0;padding:0;top:auto}.admin-window-modal .ant-modal-content{border-radius:12px 12px 0 0}.admin-window-body{max-height:72dvh;padding:16px;overflow-y:auto}.admin-window-footer{background:#f8fbfe;padding:12px 0 0;position:sticky;bottom:0}.user-card{padding:14px}.user-actions .ant-btn{min-height:44px}}.knowledge-graph-page{flex-direction:column;gap:12px;width:100%;min-height:100%;display:flex}.knowledge-graph-toolbar{z-index:5;grid-template-columns:minmax(220px,1fr) 120px 105px minmax(220px,340px);align-items:center;gap:10px;display:grid;position:relative}.knowledge-graph-title h1{color:var(--ink);margin:0;font-size:24px}.knowledge-graph-title p{color:var(--muted);margin:3px 0 0;font-size:13px}.knowledge-graph-search{position:relative}.knowledge-search-results{z-index:20;border:1px solid var(--line);background:#fff;border-radius:8px;padding:5px;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow:hidden;box-shadow:0 12px 30px #18272b26}.knowledge-search-results button{width:100%;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;flex-direction:column;padding:8px 10px;display:flex}.knowledge-search-results button:hover{background:#eef7f5}.knowledge-search-results button span,.knowledge-search-empty{color:var(--muted);font-size:12px}.knowledge-search-empty{text-align:center;padding:12px;display:block}.knowledge-graph-summary{border:1px solid var(--line);background:#fff;border-radius:8px;align-items:center;gap:8px;min-height:42px;padding:7px 12px;display:flex}.knowledge-graph-summary>span{color:var(--muted);border-right:1px solid var(--line);white-space:nowrap;padding-right:11px;font-size:13px}.knowledge-graph-summary strong{color:var(--ink);font-size:17px}.knowledge-legend{color:var(--muted);flex-wrap:wrap;gap:12px;margin-left:auto;font-size:12px;display:flex}.knowledge-legend span{align-items:center;gap:5px;display:inline-flex}.knowledge-legend i{border-radius:3px;width:10px;height:10px}.legend-grade_semester{background:#1677ff}.legend-learning_area{background:#168f77}.legend-topic{background:#d48806}.legend-knowledge_point{background:#8266c2}.knowledge-graph-stage{border:1px solid var(--line);min-height:520px;box-shadow:var(--soft-shadow);background-color:#fff;background-image:radial-gradient(#dce7e5 1px,#0000 1px);background-size:20px 20px;border-radius:8px;flex:620px;position:relative;overflow:hidden}.knowledge-state{place-items:center;min-height:520px;padding:30px;display:grid}.knowledge-state .ant-alert{width:min(560px,100%)}.knowledge-canvas{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;position:absolute;inset:0;overflow:hidden}.knowledge-canvas:active{cursor:grabbing}.knowledge-canvas svg{transform-origin:0 0;position:absolute;top:0;left:0;overflow:visible}.graph-edges path{fill:none;stroke:#bccdca;stroke-width:1.4px;transition:stroke .2s,stroke-width .2s}.graph-edges path.is-highlighted{stroke:#e34f4f;stroke-width:3px}.graph-node{cursor:pointer;outline:none}.graph-node rect{stroke-width:1.5px;filter:drop-shadow(0 2px 3px #1e34371a);transition:stroke-width .2s,filter .2s}.graph-node text{fill:#213536;text-anchor:middle;pointer-events:none;font-size:12px;font-weight:600}.node-grade_semester rect{fill:#e7f1ff;stroke:#1677ff}.node-learning_area rect{fill:#e6f6f1;stroke:#168f77}.node-topic rect{fill:#fff6dc;stroke:#d48806}.node-knowledge_point rect{fill:#f2edff;stroke:#8266c2}.graph-node.is-highlighted rect{stroke:#e34f4f;stroke-width:3px;filter:drop-shadow(0 3px 6px #e34f4f42)}.knowledge-canvas-controls{border:1px solid var(--line);box-shadow:var(--soft-shadow);background:#fffffff0;border-radius:8px;gap:6px;padding:6px;display:flex;position:absolute;bottom:14px;right:14px}.knowledge-node-details>h2{overflow-wrap:anywhere;margin:14px 0 18px}.knowledge-node-details h3{margin-top:24px;font-size:15px}.knowledge-node-details dl{grid-template-columns:74px 1fr;gap:10px;margin:0;display:grid}.knowledge-node-details dt{color:var(--muted)}.knowledge-node-details dd{color:var(--ink);overflow-wrap:anywhere;margin:0}.knowledge-relations{gap:8px;display:grid}.knowledge-relations button{color:var(--ink);text-align:left;border:1px solid var(--line);cursor:pointer;background:#f7faf9;border-radius:8px;align-items:center;gap:10px;padding:10px;display:flex}.knowledge-relations button:hover{border-color:var(--teal)}.knowledge-relations span{flex-direction:column;flex:1;min-width:0;display:flex}.knowledge-relations strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.knowledge-relations small{color:var(--muted)}@media (width<=700px){.knowledge-graph-toolbar{grid-template-columns:1fr 1fr}.knowledge-graph-title{display:none}.knowledge-graph-search{grid-column:1/-1}.knowledge-graph-summary{overflow-x:auto}.knowledge-legend{display:none}.knowledge-graph-stage{flex-basis:560px;min-height:500px}.knowledge-detail-drawer .ant-drawer-content-wrapper{width:100%!important}}.lesson-animation-pending{aspect-ratio:12/7;box-sizing:border-box;color:var(--muted,#62736c);text-align:center;background:#fffdf7;place-items:center;margin:10px 10px 0;padding:16px;font-size:13px;display:grid}.bloub-loading-container{flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:20px;transition:opacity .4s ease-out;display:flex}.bloub-loading-container.compact{gap:0;padding:12px 14px 8px}.bloub-avatar-wrapper{cursor:pointer;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;animation:.6s cubic-bezier(.34,1.56,.64,1) bloub-comet-enter;display:flex;position:relative}.bloub-poke-squash{transform-origin:50% 90%;animation:.45s ease-out bloub-poke-squash}@keyframes bloub-poke-squash{0%{transform:scale(1)}30%{transform:scale(1.18,.82)}55%{transform:scale(.9,1.1)}75%{transform:scale(1.05,.95)}to{transform:scale(1)}}@keyframes bloub-comet-enter{0%{opacity:0;transform:translate(-100px)translateY(-50px)scale(.3)}60%{opacity:1}to{opacity:1;transform:translate(0)translateY(0)scale(1)}}.bloub-tip-bubble{background:var(--surface-soft);border:1px solid #236d7324;border-radius:16px;max-width:280px;padding:12px 18px;animation:2.5s ease-in-out infinite bloub-bubble-float;position:relative;box-shadow:0 4px 12px #2b302a1a}.bloub-tip-bubble:before{content:"";border-top:8px solid #236d7324;border-left:8px solid #0000;border-right:8px solid #0000;width:0;height:0;position:absolute;bottom:-8px;left:50%;transform:translate(-50%)}.bloub-tip-bubble:after{content:"";border-left:7px solid #0000;border-right:7px solid #0000;border-top:7px solid var(--surface-soft);width:0;height:0;position:absolute;bottom:-6px;left:50%;transform:translate(-50%)}@keyframes bloub-bubble-float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.bloub-tip-content{color:#245348;text-align:center;font-size:13.5px;font-weight:500;line-height:1.5;animation:.3s ease-out bloub-tip-swap}@keyframes bloub-tip-swap{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.bloub-tip-bubble{touch-action:pan-y;-webkit-user-select:none;user-select:none}.bloub-tip-actions{justify-content:center;gap:8px;margin-top:10px;display:flex}.bloub-tip-feedback{color:#245348;cursor:pointer;-webkit-tap-highlight-color:transparent;background:#fff;border:1px solid #236d7333;border-radius:999px;padding:4px 14px;font-size:12px;font-weight:500;transition:background .2s,color .2s,border-color .2s,transform .1s}.bloub-tip-feedback:active{transform:scale(.94)}.bloub-tip-feedback.active-known{color:#fff;background:#3ecf8e;border-color:#3ecf8e}.bloub-tip-feedback.active-unsure{color:#fff;background:#f0b429;border-color:#f0b429}.bloub-tip-hint{color:#236d7380;text-align:center;margin-top:7px;font-size:10.5px}.planning-step-loading{justify-content:center;align-items:center;min-height:200px;padding:24px;display:flex}.bloub-bounce-loader{z-index:1;width:200px;height:60px;position:relative}.bloub-bounce-circle{transform-origin:50%;background-color:#3b93f0;border-radius:50%;width:20px;height:20px;animation:.5s infinite alternate bloub-bounce-circle;position:absolute;left:15%}@keyframes bloub-bounce-circle{0%{border-radius:50px 50px 25px 25px;height:5px;top:60px;transform:scaleX(1.7)}40%{border-radius:50%;height:20px;transform:scaleX(1)}to{top:0%}}.bloub-bounce-circle:nth-child(2){animation-delay:.2s;left:45%}.bloub-bounce-circle:nth-child(3){animation-delay:.3s;left:auto;right:15%}.bloub-bounce-shadow{transform-origin:50%;z-index:-1;filter:blur(1px);background-color:#00000080;border-radius:50%;width:20px;height:4px;animation:.5s infinite alternate bloub-bounce-shadow;position:absolute;top:62px;left:15%}@keyframes bloub-bounce-shadow{0%{transform:scaleX(1.5)}40%{opacity:.7;transform:scaleX(1)}to{opacity:.4;transform:scaleX(.2)}}.bloub-bounce-shadow:nth-child(4){animation-delay:.2s;left:45%}.bloub-bounce-shadow:nth-child(5){animation-delay:.3s;left:auto;right:15%}.thinking-card.bloub-only{justify-content:center;align-items:center;min-height:220px;padding:16px;display:flex}.thinking-card.bloub-only .bloub-loading-container{gap:16px;padding:20px}.bloub-progress-messages{text-align:center;flex-direction:column;gap:6px;margin-top:12px;display:flex}.bloub-progress-item{color:#236d7373;font-size:12px;line-height:1.4;transition:color .3s,opacity .3s}.bloub-progress-item.active{color:#236d73ad;font-weight:500}.bloub-progress-item.complete{opacity:.6}.about-page{gap:16px;padding-bottom:8px}.about-page>.user-strip{box-shadow:none;background:0 0;border:0;margin-bottom:-2px;padding:2px 4px}.about-hero{color:#f8fffd;background:#236d73;border:0;border-radius:18px;align-items:center;min-height:150px;padding:26px 22px;position:relative;overflow:hidden;box-shadow:0 10px 24px #236d732e}.about-hero:after{content:"";border:1px solid #fff3;border-radius:50%;width:180px;height:180px;position:absolute;top:-70px;right:-46px;box-shadow:0 0 0 22px #ffffff0f,0 0 0 44px #ffffff0a}.about-hero .eyebrow{color:#f8fffdb8;letter-spacing:.12em}.about-hero h1{color:#fff;letter-spacing:-.02em;margin-top:2px;font-size:30px}.about-hero p:last-child{color:#f8fffdd1;max-width:34em}.about-grade-panel{box-shadow:none;background:#f3faf7;border:1px solid #d9e8e4;border-radius:14px;margin-top:0;padding:18px 20px;position:relative}.about-card{border-radius:14px;padding:18px 20px;box-shadow:0 4px 14px #28413c0f}.about-card-title{margin-bottom:10px}.about-card-title svg{color:#236d73;background:#e7f3ef;border-radius:8px;width:30px;height:30px;padding:5px}.about-card-title h2{font-size:16px}.tutoring-mode-card{background:#fffaf0;border-color:#f0dfb8}.about-page .adm-button{border-radius:9px}.about-hero{min-height:0;color:var(--ink);box-shadow:var(--soft-shadow);background:linear-gradient(135deg,#eef8f7,#fff);border:1px solid #236d7329;border-radius:12px;padding:20px 18px}.about-hero:after{display:none}.about-logo{border-radius:50%;width:58px;height:58px}.about-hero .eyebrow{color:var(--muted)}.about-hero h1{color:var(--ink);font-size:26px}.about-hero p:last-child{color:var(--muted)}.about-grade-panel,.tutoring-mode-card{background:#fffffff0;border-color:#d7e1e3f2}.font-size-popup{border-radius:20px 20px 0 0}.font-size-popup-content{padding:24px}.font-size-popup-content h3{color:var(--ink);text-align:center;margin:0 0 20px;font-size:20px;font-weight:700}.font-size-preview{border:2px solid var(--teal-light);color:var(--ink);background:var(--surface);text-align:center;border-radius:12px;margin:16px 0;padding:20px;font-weight:500;transition:font-size .2s}.font-size-slider-wrapper{align-items:center;gap:12px;margin:20px 0;display:flex}.font-size-label{color:var(--muted);font-size:14px;font-weight:600}.font-size-slider{appearance:none;background:linear-gradient(to right, var(--teal-light) 0%, var(--teal) 100%);cursor:pointer;border-radius:3px;outline:none;flex:1;height:6px}.font-size-slider::-webkit-slider-thumb{appearance:none;background:var(--teal);cursor:pointer;border:3px solid #fff;border-radius:50%;width:20px;height:20px;box-shadow:0 2px 8px #236d734d}.font-size-slider::-moz-range-thumb{background:var(--teal);cursor:pointer;border:3px solid #fff;border-radius:50%;width:20px;height:20px;box-shadow:0 2px 8px #236d734d}.font-size-slider:disabled{opacity:.5;cursor:not-allowed}.font-size-value{color:var(--teal);text-align:center;margin:12px 0 20px;font-size:18px;font-weight:700}.display-settings-row{justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.display-settings-row>div{align-items:baseline;gap:8px;display:flex}.display-settings-row span{color:var(--muted);font-size:14px}.display-settings-row strong{color:var(--ink);font-size:16px;font-weight:600}.adm-radio-content,.adm-checkbox-content,.choice-panel .adm-radio label,.choice-panel .adm-checkbox label{font-size:var(--chat-font-size,15px)!important}.marketing-page{color:#23302d;min-height:100vh;font-family:var(--font-sans,system-ui,sans-serif);background:#f8f5ec}.marketing-nav{justify-content:space-between;align-items:center;max-width:1120px;margin:auto;padding:22px 28px;display:flex}.marketing-brand{color:#234f4a;align-items:center;gap:8px;font-size:20px;font-weight:800;text-decoration:none;display:inline-flex}.marketing-brand img{object-fit:cover;border-radius:50%;width:36px;height:36px}.marketing-nav-actions{align-items:center;gap:20px;display:flex}.marketing-nav-actions a{color:#234f4a;font-weight:600;text-decoration:none}.marketing-nav-cta,.marketing-primary{border-radius:7px;padding:12px 20px;text-decoration:none;color:#fff!important;background:#234f4a!important}.marketing-hero{grid-template-columns:1.15fr .85fr;align-items:center;gap:70px;max-width:1120px;margin:auto;padding:74px 28px 100px;display:grid}.marketing-kicker{color:#b45c42;letter-spacing:.12em;text-transform:uppercase;font-size:12px;font-weight:800}.marketing-hero h1{color:#203b37;margin:14px 0 24px;font-size:clamp(42px,6vw,76px);line-height:1.12}.marketing-hero h1 em{color:#b45c42;font-style:normal}.marketing-lead{color:#586460;max-width:600px;font-size:18px;line-height:1.8}.marketing-actions{align-items:center;gap:18px;margin:30px 0;display:flex}.marketing-secondary{color:#234f4a;font-weight:700}.marketing-note{color:#7b8580;font-size:13px}.marketing-hero-card{color:#fff;background:#234f4a;border-radius:16px;flex-direction:column;justify-content:center;min-height:270px;padding:42px 38px;display:flex;box-shadow:10px 12px #d9cdb7}.marketing-hero-card span{color:#e8b56b;font-size:13px}.marketing-hero-card strong{margin:18px 0;font-size:30px;line-height:1.35}.marketing-hero-card small{color:#d7e6df}.marketing-progress{gap:7px;margin-top:26px;display:flex}.marketing-progress i{background:#d7e6df;border-radius:4px;flex:1;height:5px}.marketing-progress i:not(:first-child){opacity:.35}.marketing-section,.marketing-faq{max-width:1120px;margin:auto;padding:85px 28px}.marketing-section h2,.marketing-faq h2{color:#203b37;margin:10px 0 42px;font-size:38px}.marketing-benefits{grid-template-columns:repeat(3,1fr);gap:28px;display:grid}.marketing-benefits article{border-top:2px solid #234f4a;padding-top:20px}.marketing-benefits span{color:#b45c42;font-weight:800}.marketing-benefits h3{margin:24px 0 10px;font-size:22px}.marketing-benefits p,.marketing-audience p{color:#62706b;line-height:1.8}.marketing-process{background:#eee8d9;max-width:none;padding-left:max(28px,50% - 532px);padding-right:max(28px,50% - 532px)}.marketing-process ol{grid-template-columns:repeat(3,1fr);gap:24px;margin:0;padding:0;list-style:none;display:grid}.marketing-process li{gap:18px;display:flex}.marketing-process b{color:#b45c42;font-size:28px}.marketing-process strong,.marketing-process small{display:block}.marketing-process small{color:#68746f;margin-top:8px}.marketing-audience{background:#dbe8de;padding:85px max(28px,50% - 532px)}.marketing-audience h2{margin:12px 0;font-size:42px;line-height:1.25}.marketing-audience p{max-width:520px;margin-bottom:28px}.marketing-faq details{border-top:1px solid #c7c8bc;padding:20px 0}.marketing-faq summary{cursor:pointer;font-weight:700}.marketing-faq details p{color:#62706b;line-height:1.7}.marketing-footer{color:#718078;border-top:1px solid #ddd6c6;justify-content:space-between;max-width:1120px;margin:auto;padding:28px;font-size:13px;display:flex}.marketing-footer a{color:#234f4a;font-weight:700}@media (width<=700px){.marketing-hero{padding-top:46px;display:block}.marketing-hero-card{margin-top:48px}.marketing-benefits,.marketing-process ol{grid-template-columns:1fr}.marketing-section,.marketing-faq{padding-top:60px;padding-bottom:60px}.marketing-footer{display:block}.marketing-footer a{margin-top:12px;display:block}}.marketing-section-intro{color:#62706b;max-width:760px;margin-top:-24px;margin-bottom:38px;font-size:17px;line-height:1.8}.marketing-guide-grid{grid-template-columns:1fr 1fr;align-items:start;gap:56px;display:grid}.marketing-guide-grid h3{color:#234f4a;font-size:25px}.marketing-guide-grid p{color:#62706b;font-size:17px;line-height:1.85}.marketing-guide-grid ol{margin:0;padding:0;list-style:none}.marketing-guide-grid li{border-bottom:1px solid #234f4a2e;gap:18px;padding:16px 0;display:flex}.marketing-guide-grid li b{color:#b45c42;font-size:24px}.marketing-guide-grid small,.marketing-guide-grid strong{display:block}.marketing-guide-grid small{color:#68746f;margin-top:6px}.marketing-topic-section{background:#f3ead9;padding:90px max(28px,50% - 532px)}.marketing-topic-section h2{color:#203b37;margin:12px 0 26px;font-size:40px}.marketing-topic-section p{color:#62706b;max-width:650px;line-height:1.8}.marketing-topic-list{flex-wrap:wrap;gap:10px;margin:24px 0;display:flex}.marketing-topic-list span{color:#435d54;background:#fffaf0;border:1px solid #b9a98d;border-radius:999px;padding:9px 14px}@media (width<=700px){.marketing-guide-grid{grid-template-columns:1fr;gap:26px}.marketing-topic-section h2{font-size:32px}.marketing-section-intro{margin-top:-18px}}.product-logo{object-fit:contain;border-radius:50%;flex-shrink:0;width:40px;height:40px;display:block}.login-card>.product-logo{width:76px;height:76px;margin:0 auto 18px}.login-logo,.about-logo{background:0 0;padding:0;overflow:hidden}.login-logo .product-logo,.about-logo .product-logo{width:100%;height:100%}.product-brand,.marketing-brand{align-items:center;gap:8px;display:inline-flex}.product-brand .product-logo,.admin-brand .product-logo{width:30px;height:30px}.admin-brand{align-items:center;gap:10px;display:flex}.adm-popup{--z-index:var(--adm-popup-z-index,1000);z-index:var(--z-index);position:fixed}.adm-popup-body{background-color:var(--adm-color-background);z-index:calc(var(--z-index) + 10);position:fixed}.adm-popup-body .adm-popup-close-icon{z-index:100;position:absolute}.adm-popup-body-position-bottom{width:100%;bottom:0;left:0}.adm-popup-body-position-bottom .adm-popup-close-icon{top:8px;right:8px}.adm-popup-body-position-top{width:100%;top:0;left:0}.adm-popup-body-position-top .adm-popup-close-icon{bottom:8px;right:8px}.adm-popup-body-position-left{height:100%;top:0;left:0}.adm-popup-body-position-left .adm-popup-close-icon{top:8px;right:8px}.adm-popup-body-position-right{height:100%;top:0;right:0}.adm-popup-body-position-right .adm-popup-close-icon{top:8px;left:8px}.adm-popup-close-icon{cursor:pointer;color:var(--adm-color-weak);padding:4px;font-size:18px;line-height:1}.adm-mask{--z-index:var(--adm-mask-z-index,1000);z-index:var(--z-index);width:100%;height:100%;display:block;position:fixed;top:0;left:0}.adm-mask-aria-button{z-index:0;pointer-events:none;width:100%;height:100%;position:absolute;top:0;left:0}.adm-mask-content{z-index:1}.adm-safe-area{--multiple:var(--adm-safe-area-multiple,1);width:100%;display:block}.adm-safe-area-position-top{padding-top:calc(env(safe-area-inset-top) * var(--multiple))}.adm-safe-area-position-bottom{padding-bottom:calc(env(safe-area-inset-bottom) * var(--multiple))}.adm-auto-center{justify-content:center;display:flex}.adm-auto-center-content{flex:0 auto}.adm-image{--width:var(--adm-image-width,auto);--height:var(--adm-image-height,auto);width:var(--width);height:var(--height);display:block;overflow:hidden}.adm-image-img{width:100%;height:100%}.adm-image-tip{background-color:var(--adm-color-fill-content);min-width:24px;height:100%;min-height:24px;position:relative}.adm-image-tip>svg{width:24px;height:24px;color:var(--adm-color-weak);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.adm-badge-wrapper{display:inline-block;position:relative}.adm-badge{vertical-align:middle;box-sizing:content-box;background-color:var(--color);--right:0;--top:0;--color:var(--adm-badge-color,var(--adm-color-highlight));border-radius:100px;display:inline-flex}.adm-badge-content{color:var(--adm-color-text-light-solid);box-sizing:border-box;min-width:8px;font-size:var(--adm-font-size-1);white-space:nowrap;text-align:center;padding:1px 4px;font-weight:400;line-height:12px}.adm-badge-fixed{right:var(--right);top:var(--top);position:absolute;transform:translate(50%,-50%)}.adm-badge-dot{border-radius:5px;width:10px;min-width:10px;height:10px}.adm-badge-bordered{border:solid 1px var(--adm-color-text-light-solid)}.adm-button{--color:var(--adm-color-text-light-solid);--text-color:var(--adm-button-text-color,var(--adm-color-text));--background-color:var(--adm-button-background-color,var(--adm-color-background));--border-radius:var(--adm-button-border-radius,4px);--border-width:var(--adm-button-border-width,1px);--border-style:var(--adm-button-border-style,solid);--border-color:var(--adm-button-border-color,var(--adm-color-border));color:var(--text-color);background-color:var(--background-color);box-sizing:border-box;height:auto;font-size:var(--adm-font-size-9);text-align:center;border:var(--border-width) var(--border-style) var(--border-color);border-radius:var(--border-radius);cursor:pointer;-webkit-user-select:none;user-select:none;margin:0;padding:7px 12px;line-height:1.4;transition:opacity .15s;display:inline-block;position:relative}.adm-button:focus{outline:none}.adm-button:before{transform:translate(calc(var(--border-width) * -1), calc(var(--border-width) * -1));background-color:var(--adm-color-text-dark-solid);border:var(--border-width) var(--border-style) var(--adm-color-text-dark-solid);border-radius:var(--border-radius);opacity:0;content:" ";box-sizing:content-box;width:100%;height:100%;position:absolute;top:0;left:0}.adm-button:active:before{opacity:.08}.adm-button-default.adm-button-fill-outline{--background-color:transparent;--border-color:var(--adm-color-text)}.adm-button-default.adm-button-fill-none{--background-color:transparent;--border-width:0px}.adm-button:not(.adm-button-default){--text-color:var(--adm-color-text-light-solid);--background-color:var(--color);--border-color:var(--color)}.adm-button:not(.adm-button-default).adm-button-fill-outline{--text-color:var(--color);--background-color:transparent}.adm-button:not(.adm-button-default).adm-button-fill-none{--text-color:var(--color);--background-color:transparent;--border-width:0px}.adm-button-primary{--color:var(--adm-color-primary)}.adm-button-success{--color:var(--adm-color-success)}.adm-button-danger{--color:var(--adm-color-danger)}.adm-button-warning{--color:var(--adm-color-warning)}.adm-button-block{width:100%;display:block}.adm-button-disabled{cursor:not-allowed;opacity:.4}.adm-button-disabled:active:before{display:none}.adm-button.adm-button-mini{font-size:var(--adm-font-size-main);padding-top:3px;padding-bottom:3px}.adm-button.adm-button-mini.adm-button-shape-rounded{padding-left:9px;padding-right:9px}.adm-button.adm-button-small{font-size:var(--adm-font-size-7);padding-top:3px;padding-bottom:3px}.adm-button.adm-button-large{font-size:var(--adm-font-size-10);padding-top:11px;padding-bottom:11px}.adm-button.adm-button-shape-rounded{--border-radius:1000px}.adm-button.adm-button-shape-rectangular{--border-radius:0}.adm-button-loading{vertical-align:bottom}.adm-button-loading-wrapper{justify-content:center;align-items:center;height:1.4em;display:flex}.adm-button-loading-wrapper>.adm-loading{opacity:.6}.adm-dot-loading{display:inline-block}.adm-divider-horizontal{border-width:0;border-color:var(--adm-color-border);color:var(--adm-color-weak);border-style:solid;align-items:center;margin:16px 0;font-size:14px;display:flex}.adm-divider-left.adm-divider-horizontal:before,.adm-divider-right.adm-divider-horizontal:after{max-width:10%}.adm-divider-horizontal:after,.adm-divider-horizontal:before{content:"";border-style:inherit;border-color:inherit;border-width:1px 0 0;flex:auto;display:block}.adm-divider-horizontal .adm-divider-content{flex:none;padding:0 16px}.adm-divider-vertical{vertical-align:middle;border-top:0;border-left:1px solid var(--adm-color-border);height:.9em;margin:0 16px;display:inline-block;position:relative;top:-.06em}.adm-picker{--header-button-font-size:var(--adm-font-size-7);--title-font-size:var(--adm-font-size-7);--item-font-size:var(--adm-font-size-8);--item-height:34px;---item-font-size:var(--item-font-size);---item-height:var(--item-height);flex-direction:column;width:100%;height:300px;display:flex;position:relative;overflow:hidden}.adm-picker .adm-picker-view.adm-picker-view{--item-font-size:var(---item-font-size);--item-height:var(---item-height)}.adm-picker-header{border-bottom:solid 1px var(--adm-color-border);flex-shrink:0;justify-content:space-between;align-items:center;padding:4px;display:flex}.adm-picker-header-button{font-size:var(--header-button-font-size);padding:8px;display:inline-block}.adm-picker-header-button-disabled,.adm-picker-header-button-disabled:active{opacity:.4;cursor:not-allowed}.adm-picker-header-title{font-size:var(--title-font-size);color:var(--adm-color-text);text-align:center;flex:1;padding:4px}.adm-picker-body{flex:1;width:100%;height:100%}.adm-picker-body>.adm-picker-view{--height:100%}.adm-picker-popup .adm-popup-body{border-top-left-radius:8px;border-top-right-radius:8px}.adm-spin-loading{--color:var(--adm-color-weak);--size:32px;width:var(--size);height:var(--size)}.adm-spin-loading-svg{width:100%;height:100%;animation:.8s linear infinite adm-spin-loading-rotate}.adm-spin-loading-svg>.adm-spin-loading-fill{stroke:var(--color)}@keyframes adm-spin-loading-rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.adm-picker-view{--height:240px;--item-height:34px;--item-font-size:var(--adm-font-size-8);height:var(--height);background:var(--adm-color-background);width:100%;display:flex;position:relative;overflow:hidden}.adm-picker-view-column{-webkit-user-select:none;user-select:none;touch-action:none;z-index:0;flex:1;height:100%;position:relative}.adm-picker-view-column-wheel{width:100%;cursor:-webkit-grab;cursor:grab;top:calc(50% - var(--item-height) / 2);position:absolute;left:0}.adm-picker-view-column-wheel:before{content:" ";width:100%;height:100vh;display:block;position:absolute;top:-100vh}.adm-picker-view-column-wheel:after{content:" ";width:100%;height:100vh;display:block;position:absolute;bottom:-100vh}.adm-picker-view-column-item{font-size:var(--item-font-size);height:var(--item-height);justify-content:center;align-items:center;padding:0 6px;display:flex}.adm-picker-view-column-item-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.adm-picker-view-column-accessible{pointer-events:none;opacity:0;width:100%;height:100%;top:calc(var(--item-height) * -1);z-index:0;flex-direction:column;padding-bottom:1px;display:flex;position:relative}.adm-picker-view-column-accessible>*{text-overflow:ellipsis;flex:1}.adm-picker-view-column-accessible-current{width:100%;height:100%;position:absolute}.adm-picker-view-column-accessible-button{width:100%;height:100%}.adm-picker-view-mask{z-index:10000;pointer-events:none;flex-direction:column;width:100%;height:100%;display:flex;position:absolute;top:0;left:0}.adm-picker-view-mask-top,.adm-picker-view-mask-bottom{flex:auto}.adm-picker-view-mask-middle{height:var(--item-height);box-sizing:border-box;border-top:solid 1px var(--adm-color-border);border-bottom:solid 1px var(--adm-color-border);flex:none}.adm-picker-view-mask-top{background:var(--adm-color-background);-webkit-mask:linear-gradient(#000 0%,#000c 50%,#0009 100%);mask:linear-gradient(#000 0%,#000c 50%,#0009 100%)}.adm-picker-view-mask-bottom{background:var(--adm-color-background);-webkit-mask:linear-gradient(#0009 0%,#000c 50%,#000 100%);mask:linear-gradient(#0009 0%,#000c 50%,#000 100%)}.adm-picker-view-loading-content{justify-content:center;align-items:center;width:100%;height:100%;display:flex}.adm-picker-view-item-height-measure{height:var(--item-height);pointer-events:none;width:0;position:relative;top:0;left:0}.adm-grid{--gap:0;--gap-horizontal:var(--gap);--gap-vertical:var(--gap);grid-gap:10px;-webkit-column-gap:var(--gap-horizontal);column-gap:var(--gap-horizontal);row-gap:var(--gap-vertical);grid-template-columns:repeat(var(--columns), minmax(0, 1fr));align-items:stretch;display:grid}.adm-grid-item{grid-column-end:span var(--item-span)}.adm-image-viewer-content{touch-action:none;-webkit-user-select:none;user-select:none;width:100vw;height:100vh}.adm-image-viewer-footer{z-index:1;width:100%;position:absolute;bottom:0}.adm-image-viewer-slides{z-index:1;height:100%;cursor:-webkit-grab;cursor:grab;touch-action:none;position:relative}.adm-image-viewer-slides-inner{white-space:nowrap;height:100%}.adm-image-viewer-slides-inner>*{margin-right:16px}.adm-image-viewer-slide{width:100%;height:100%;display:inline-block;position:relative}.adm-image-viewer-control{z-index:1;width:100%;height:100%;cursor:-webkit-grab;cursor:grab;touch-action:none;position:absolute;top:0;left:0}.adm-image-viewer-image-wrapper{justify-content:center;align-items:center;width:100%;height:100%;display:flex}.adm-image-viewer-image-wrapper img{max-width:100%;max-height:100%;display:block}.adm-image-viewer-indicator{z-index:2;color:var(--adm-color-border);font-size:var(--adm-font-size-6);position:absolute;top:12px;left:50%;transform:translate(-50%)}.adm-space-item{flex:none}.adm-space{--gap:8px;--gap-vertical:var(--gap);--gap-horizontal:var(--gap);display:inline-flex}.adm-space-vertical{flex-direction:column}.adm-space-vertical>.adm-space-item{margin-bottom:var(--gap-vertical)}.adm-space-vertical>.adm-space-item:last-child{margin-bottom:0}.adm-space-horizontal{flex-direction:row}.adm-space-horizontal>.adm-space-item{margin-right:var(--gap-horizontal)}.adm-space-horizontal>.adm-space-item:last-child{margin-right:0}.adm-space-horizontal.adm-space-wrap{margin-bottom:calc(var(--gap-vertical) * -1);flex-wrap:wrap}.adm-space-horizontal.adm-space-wrap>.adm-space-item{padding-bottom:var(--gap-vertical)}.adm-space.adm-space-block{display:flex}.adm-space-align-center{align-items:center}.adm-space-align-start{align-items:flex-start}.adm-space-align-end{align-items:flex-end}.adm-space-align-baseline{align-items:baseline}.adm-space-justify-center{justify-content:center}.adm-space-justify-start{justify-content:flex-start}.adm-space-justify-end{justify-content:flex-end}.adm-space-justify-between{justify-content:space-between}.adm-space-justify-around{justify-content:space-around}.adm-space-justify-evenly{justify-content:space-evenly}.adm-space-justify-stretch{justify-content:stretch}.adm-image-uploader{--cell-size:80px;--gap:12px;---gap:var(--gap);---gap-horizontal:var(--gap-horizontal,var(--gap));---gap-vertical:var(--gap-vertical,var(--gap))}.adm-image-uploader-grid,.adm-image-uploader-space{--gap:var(---gap);--gap-horizontal:var(---gap-horizontal);--gap-vertical:var(---gap-vertical)}.adm-image-uploader-cell{width:var(--cell-size);height:var(--cell-size);border-radius:4px;position:relative;overflow:hidden}.adm-image-uploader-cell-fail{box-sizing:border-box;border:1px solid red}.adm-image-uploader-cell-delete{width:14px;height:14px;color:var(--adm-color-white);cursor:pointer;background-color:#000000b3;border-radius:0 0 0 12px;font-size:8px;position:absolute;top:0;right:0}.adm-image-uploader-cell-delete-icon{position:absolute;top:3px;left:4px}.adm-image-uploader-cell-mask{color:var(--adm-color-white);background-color:#323233e0;position:absolute;inset:0}.adm-image-uploader-cell-loading{box-sizing:border-box;flex-direction:column;justify-content:center;align-items:center;height:100%;padding-top:8px;display:flex}.adm-image-uploader-cell-mask-message{font-size:var(--adm-font-size-4);padding:6px 4px;display:inline-block}.adm-image-uploader-cell-image{width:var(--cell-size);height:var(--cell-size)}.adm-image-uploader-upload-button-wrap{position:relative}.adm-image-uploader-upload-button-wrap .adm-image-uploader-upload-button{background-color:var(--adm-color-box);text-align:center;line-height:var(--cell-size);display:block}.adm-image-uploader-upload-button-wrap .adm-image-uploader-upload-button-icon{color:var(--adm-color-weak);font-size:32px}.adm-image-uploader-upload-button-wrap .adm-image-uploader-input{cursor:pointer;opacity:0;border-radius:4px;width:100%;height:100%;position:absolute;top:0;left:0}.adm-image-uploader .adm-image-uploader-gap-measure{height:var(--gap-horizontal);width:0;position:absolute;top:0;left:0}.adm-input{--font-size:var(--adm-font-size-9);--color:var(--adm-color-text);--placeholder-color:var(--adm-color-light);--text-align:left;--background-color:transparent;background-color:var(--background-color);justify-content:flex-start;align-items:center;width:100%;max-width:100%;min-height:24px;max-height:100%;display:flex}.adm-input-disabled{opacity:.4;cursor:not-allowed}.adm-input-element{box-sizing:border-box;width:100%;max-width:100%;max-height:100%;color:var(--color);font-size:var(--font-size);appearance:none;min-height:1.5em;text-align:var(--text-align);background:0 0;border:0;outline:none;flex:auto;margin:0;padding:0;line-height:1.5;display:inline-block}.adm-input-element::placeholder{color:var(--placeholder-color);font-family:inherit}.adm-input-element:-webkit-autofill{background-color:#0000}.adm-input-element:read-only{cursor:default}.adm-input-element:invalid{box-shadow:none}.adm-input-element::-ms-clear{display:none}.adm-input-element::-ms-reveal{display:none}.adm-input-element::-webkit-search-cancel-button{display:none}.adm-input-element::-webkit-search-decoration{display:none}.adm-input-element:disabled{opacity:1}.adm-input-element[type=date],.adm-input-element[type=time],.adm-input-element[type=datetime-local]{min-height:1.5em}.adm-input-element[type=search]{-webkit-appearance:none}.adm-input-element[readonly]{pointer-events:none}.adm-input-clear{color:var(--adm-color-light);cursor:pointer;flex:none;margin-left:8px;padding:4px}.adm-input-clear:active{color:var(--adm-color-weak)}.adm-input-clear .antd-mobile-icon{font-size:var(--adm-font-size-7);display:block}.adm-nav-bar{--height:45px;--border-bottom:none;height:var(--height);border-bottom:var(--border-bottom);white-space:nowrap;align-items:center;padding:0 12px;display:flex}.adm-nav-bar-left,.adm-nav-bar-right{flex:1}.adm-nav-bar-title{text-align:center;text-overflow:ellipsis;flex:auto;overflow:hidden}.adm-nav-bar-back{cursor:pointer;align-items:center;margin-right:16px;padding:6px 0;display:flex}.adm-nav-bar-back-arrow{margin-right:4px;font-size:24px}.adm-nav-bar-left{font-size:var(--adm-font-size-7);justify-content:flex-start;align-items:center;display:flex}.adm-nav-bar-title{white-space:nowrap;font-size:var(--adm-font-size-10);justify-content:center;padding:0 12px}.adm-nav-bar-right{text-align:right}.adm-progress-bar{--track-width:var(--adm-progress-bar-track-width,8px);--track-color:var(--adm-progress-bar-track-color,var(--adm-color-border));--fill-color:var(--adm-progress-bar-fill-color,var(--adm-color-primary));--text-width:var(--adm-progress-bar-text-width,40px);align-items:center;display:flex}.adm-progress-bar-trail{background:var(--track-color);height:var(--track-width);flex:auto;overflow:hidden}.adm-progress-bar-fill{background:var(--fill-color);height:var(--track-width);transition:width .3s}.adm-progress-bar-text{width:calc(var(--text-width) + 8px);color:var(--adm-color-weak);flex:none;padding-left:8px}.adm-progress-bar-rounded .adm-progress-bar-trail,.adm-progress-bar-rounded .adm-progress-bar-fill{border-radius:var(--track-width)}.adm-radio{--icon-size:22px;--font-size:var(--adm-font-size-9);--gap:8px;vertical-align:text-bottom;cursor:pointer;justify-content:flex-start;align-items:center;display:inline-flex}.adm-radio input[type=radio]{display:none}.adm-radio .adm-radio-icon{border:1px solid var(--adm-color-light);border-radius:var(--icon-size);box-sizing:border-box;width:var(--icon-size);height:var(--icon-size);color:var(--adm-color-text-light-solid);flex:none}.adm-radio .adm-radio-icon>svg{width:100%;height:100%;display:block}.adm-radio.adm-radio-block{display:flex}.adm-radio.adm-radio-checked .adm-radio-icon{border-color:var(--adm-color-primary);background-color:var(--adm-color-primary)}.adm-radio.adm-radio-disabled{cursor:not-allowed}.adm-radio.adm-radio-disabled .adm-radio-content{opacity:.4}.adm-radio.adm-radio-disabled .adm-radio-icon{color:var(--adm-color-light);border-color:var(--adm-color-light);background-color:var(--adm-color-fill-content)}.adm-radio .adm-radio-custom-icon{font-size:var(--icon-size)}.adm-radio-content{font-size:var(--font-size);padding-left:var(--gap);flex:0 auto}.adm-tab-bar-wrap{flex-wrap:nowrap;justify-content:flex-start;align-items:stretch;min-height:48px;display:flex;overflow:hidden}.adm-tab-bar-item{color:var(--adm-color-text-secondary);white-space:nowrap;cursor:pointer;flex-direction:column;flex:1;justify-content:center;align-items:center;width:min-content;padding:4px 8px;display:flex;position:relative}.adm-tab-bar-item-icon{height:24px;font-size:24px;line-height:1}.adm-tab-bar-item-title{font-size:var(--adm-font-size-2);line-height:15px}.adm-tab-bar-item-title-with-icon{margin-top:2px}.adm-tab-bar-item-active{color:var(--adm-color-primary)}.adm-tab-bar-icon-badge{--top:6px}.adm-tab-bar-title-badge{--right:-2px;--top:-2px}.adm-tag{--border-radius:var(--adm-tag-border-radius,2px);font-size:var(--adm-font-size-3);background:var(--background-color);color:var(--text-color);white-space:nowrap;border-radius:var(--border-radius);border:1px solid var(--border-color);box-sizing:border-box;padding:2px 4px;font-weight:400;line-height:1;display:inline-block}.adm-tag-round{border-radius:100px}.adm-text-area{--font-size:var(--adm-font-size-9);--color:var(--adm-color-text);--placeholder-color:var(--adm-color-light);--disabled-color:var(--adm-color-weak);--text-align:left;--count-text-align:right;width:100%;max-width:100%;max-height:100%;position:relative}.adm-text-area-element{font-family:var(--adm-font-family);resize:none;box-sizing:border-box;width:100%;max-width:100%;max-height:100%;color:var(--color);font-size:var(--font-size);appearance:none;min-height:1.5em;text-align:var(--text-align);background:0 0;border:0;outline:none;flex:auto;margin:0;padding:0;line-height:1.5;display:block}.adm-text-area-element::placeholder{color:var(--placeholder-color);font-family:inherit}.adm-text-area-element:-webkit-autofill{background-color:#0000}.adm-text-area-element:disabled{color:var(--disabled-color);cursor:not-allowed;opacity:1;-webkit-text-fill-color:var(--disabled-color)}.adm-text-area-element:read-only{cursor:default}.adm-text-area-element:invalid{box-shadow:none}.adm-text-area-element::-ms-clear{display:none}.adm-text-area-element-hidden{visibility:hidden;z-index:-1000;position:absolute;top:0;left:0}.adm-text-area-count{text-align:var(--count-text-align);color:var(--adm-color-weak);font-size:var(--adm-font-size-9);padding-top:8px}.adm-toast-mask .adm-toast-wrap{text-align:center;width:100%;height:100%;position:fixed;top:0;left:0}.adm-toast-mask .adm-toast-main{color:#fff;word-break:break-all;pointer-events:all;width:auto;max-width:204px;max-height:70%;font-size:var(--adm-font-size-7);box-sizing:border-box;text-align:initial;background-color:#000000b3;border-radius:8px;line-height:1.5;display:inline-block;position:relative;top:50%;overflow:auto;transform:translateY(-50%)}.adm-toast-mask .adm-toast-main-text{min-width:0;padding:12px}.adm-toast-mask .adm-toast-main-icon{min-width:150px;padding:35px 12px}.adm-toast-mask .adm-toast-main-icon .adm-toast-icon{text-align:center;margin-bottom:8px;font-size:36px;line-height:1}.adm-toast-loading{--size:48px;margin:0 auto 8px}
