@font-face{font-display:block;font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2) format("woff2"),url(/assets/KaTeX_AMS-Regular-DMm9YOAa.woff) format("woff"),url(/assets/KaTeX_AMS-Regular-DRggAlZN.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff) format("woff"),url(/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff) format("woff"),url(/assets/KaTeX_Fraktur-Regular-CB_wures.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Main-Bold-Cx986IdX.woff2) format("woff2"),url(/assets/KaTeX_Main-Bold-Jm3AIy58.woff) format("woff"),url(/assets/KaTeX_Main-Bold-waoOVXN0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2) format("woff2"),url(/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff) format("woff"),url(/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2) format("woff2"),url(/assets/KaTeX_Main-Italic-BMLOBm91.woff) format("woff"),url(/assets/KaTeX_Main-Italic-3WenGoN9.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Main-Regular-B22Nviop.woff2) format("woff2"),url(/assets/KaTeX_Main-Regular-Dr94JaBh.woff) format("woff"),url(/assets/KaTeX_Main-Regular-ypZvNtVU.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2) format("woff2"),url(/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff) format("woff"),url(/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Math-Italic-t53AETM-.woff2) format("woff2"),url(/assets/KaTeX_Math-Italic-DA0__PXp.woff) format("woff"),url(/assets/KaTeX_Math-Italic-flOr_0UB.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:700;src:url(/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff) format("woff"),url(/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:italic;font-weight:400;src:url(/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff) format("woff"),url(/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:400;src:url(/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff) format("woff"),url(/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Script-Regular-D3wIWfF6.woff2) format("woff2"),url(/assets/KaTeX_Script-Regular-D5yQViql.woff) format("woff"),url(/assets/KaTeX_Script-Regular-C5JkGWo-.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2) format("woff2"),url(/assets/KaTeX_Size1-Regular-C195tn64.woff) format("woff"),url(/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2) format("woff2"),url(/assets/KaTeX_Size2-Regular-oD1tc_U0.woff) format("woff"),url(/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAA4oAA4AAAAAHbQAAA3TAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAABmAAgRQIDgmcDBEICo1oijYBNgIkA14LMgAEIAWJAAeBHAyBHBvbGiMRdnO0IkRRkiYDgr9KsJ1NUAf2kILNxgUmgqIgq1P89vcbIcmsQbRps3vCcXdYOKSWEPEKgZgQkprQQsxIXUgq0DqpGKmIvrgkeVGtEQD9DzAO29fM9jYhxZEsL2FeURH2JN4MIcTdO049NCVdxQ/w9NrSYFEBKTDKpLKfNkCGDc1RwjZLQcm3vqJ2UW9Xfa3tgAHz6ivp6vgC2yD4/6352ndnN0X0TL7seypkjZlMsjmZnf0Mm5Q+JykRWQBKCVCVPbARPXWyQtb5VgLB6Biq7/Uixcj2WGqdI8tGSgkuRG+t910GKP2D7AQH0DB9FMDW/obJZ8giFI3Wg8Cvevz0M+5m0rTh7XDBlvo9Y4vm13EXmfttwI4mBo1EG15fxJhUiCLbiiyCf/ZA6MFAhg3pGIZGdGIVjtPn6UcMk9A/UUr9PhoNsCENw1APAq0gpH73e+M+0ueyHbabc3vkbcdtzcf/fiy+NxQEjf9ud/ELBHAXJ0nk4z+MXH2Ev/kWyV4k7SkvpPc9Qr38F6RPWnM9cN6DJ0AdD1BhtgABtmoRoFCvPsBAumNm6soZG2Gk5GyVTo2sJncSyp0jQTYoR6WDvTwaaEcHsxHfvuWhHA3a6bN7twRKtcGok6NsCi7jYRrM2jExsUFMxMQYuJbMhuWNOumEJy9hi29Dmg5zMp/A5+hhPG19j1vBrq8JTLr8ki5VLPmG/PynJHVul440bxg5xuymHUFPBshC+nA9I1FmwbRBTNHAcik3Oae0cxKoI3MOriM42UrPe51nsaGxJ+WfXubAsP84aabUlQSJ1IiE0iPETLUU4CATgfXSCSpuRFRmCGbO+wSpAnzaeaCYW1VNEysRtuXCEL1kUFUbbtMv3Tilt/1c11jt3Q5bbMa84cpWipp8Elw3MZhOHsOlwwVUQM3lAR35JiFQbaYCRnMF2lxAWoOg2gyoIV4PouX8HytNIfLhqpJtXB4vjiViUI8IJ7bkC4ikkQvKksnOTKICwnqWSZ9YS5f0WCxmpgjbIq7EJcM4aI2nmhLNY2JIUgOjXZFWBHb+x5oh6cwb0Tv1ackHdKi0I9OO2wE9aogIOn540CCCziyhN+IaejtgAONKznHlHyutPrHGwCx9S6B8kfS4Mfi4Eyv7OU730bT1SCBjt834cXsf43zVjPUqqJjgrjeGnBxSG4aYAKFuVbeCfkDIjAqMb6yLNIbCuvXhMH2/+k2vkNpkORhR59N1CkzoOENvneIosjYmuTxlhUzaGEJQ/iWqx4dmwpmKjrwTiTGTCVozNAYqk/zXOndWxuWSmJkQpJw3pK5KX6QrLt5LATMqpmPAQhkhK6PUjzHUn7E0gHE0kPE0iKkolgkUx9SZmVAdDgpffdyJKg3k7VmzYGCwVXGz/tXmkOIp+vcWs+EMuhhvN0h9uhfzWJziBQmCREGSIFmQIkgVpAnSBRmC//6hkLZwaVhwxlrJSOdqlFtOYxlau9F2QN5Y98xmIAsiM1HVp2VFX+DHHGg6Ecjh3vmqtidX3qHI2qycTk/iwxSt5UzTmEP92ZBnEWTk4Mx8Mpl78ZDokxg/KWb+Q0QkvdKVmq3TMW+RXEgrsziSAfNXFMhDc60N5N9jQzjfO0kBKpUZl0ZmwJ41j/B9Hz6wmRaJB84niNmQrzp9eSlQCDDzazGDdVi3P36VZQ+Jy4f9UBNp+3zTjqI4abaFAm+GShVaXlsGdF3FYzZcDI6cori4kMxUECl9IjJZpzkvitAoxKue+90pDMvcKRxLl53TmOKCmV/xRolNKSqqUxc6LStOETmFOiLZZptlZepcKiAzteG8PEdpnQpbOMNcMsR4RR2Bs0cKFEvSmIjAFcnarqwUL4lDhHmnVkwu1IwshbiCcgvOheZuYyOteufZZwlcTlLgnZ3o/WcYdzZHW/WGaqaVfmTZ1aWCceJjkbZqsfbkOtcFlUZM/jy+hXHDbaUobWqqXaeWobbLO99yG5N3U4wxco0rQGGcOLASFMXeJoham8M+/x6O2WywK2l4HGbq1CoUyC/IZikQhdq3SiuNrvAEj0AVu9x2x3lp/xWzahaxidezFVtdcb5uEnzyl0ZmYiuKI0exvCd4Xc9CV1KB0db00z92wDPde0kukbvZIWN6jUWFTmPIC/Y4UPCm8UfDTFZpZNon1qLFTkBhxzB+FjQRA2Q/YRJT8pQigslMaUpFyAG8TMlXigiqmAZX4xgijKjRlGpLE0GdplRfCaJo0JQaSxNBk6ZmMzcya0FmrcisDdn0Q3HI2sWSppYigmlM1XT/kLQZSNpMJG0WkjYbSZuDpM1F0uYhFc1HxU4m1QJjDK6iL0S5uSj5rgXc3RejEigtcRBtqYPQsiTskmO5vosV+q4VGIKbOkDg0jtRrq+Em1YloaTFar3EGr1EUC8R0kus1Uus00usL97ABr2BjXoDm/QGNhuWtMVBKOwg/i78lT7hBsAvDmwHc/ao3vmUbBmhjeYySZNWvGkfZAgISDSaDo1SVpzGDsAEkF8B+gEapViUoZgUWXcRIGFZNm6gWbAKk0bp0k1MHG9fLYtV4iS2SmLEQFARzRcnf9PUS0LVn05/J9MiRRBU3v2IrvW974v4N00L7ZMk0wXP1409CHo/an8zTRHD3eSJ6m8D4YMkZNl3M79sqeuAsr/m3f+8/yl7A50aiAEJgeBeMWzu7ui9UfUBCe2TIqZIoOd/3/udRBOQidQZUERzb2/VwZN1H/Sju82ew2H2Wfr6qvfVf3hqwDvAIpkQVFy4B9Pe9e4/XvPeceu7h3dvO56iJPf0+A6cqA2ip18ER+iFgggiuOkvj24bby0N9j2UHIkgqIt+sVgfodC4YghLSMjSZbH0VR/6dMDrYJeKHilKTemt6v6kvzvn3/RrdWtr0GoN/xL+Sex/cPYLUpepx9cz/D46UPU5KXgAQa+NDps1v6J3xP1i2HtaDB0M9aX2deA7SYff//+gUCovMmIK/qfsFcOk+4Y5ZN97XlG6zebqtMbKgeRFi51vnxTQYBUik2rS/Cn6PC8ADR8FGxsRPB82dzfND90gIcshOcYUkfjherBz53odpm6TP8txlwOZ71xmfHHOvq053qFF/MRlS3jP0ELudrf2OeN8DHvp6ZceLe8qKYvWz/7yp0u4dKPfli3CYq0O13Ih71mylJ80tOi10On8wi+F4+LWgDPeJ30msSQt9/vkmHq9/Lvo2b461mP801v3W4xTcs6CbvF9UDdrSt+A8OUbpSh55qAUFXWznBBfdeJ8a4d7ugT5tvxUza3h9m4H7ptTqiG4z0g5dc0X29OcGlhpGFMpQo9ytTS+NViZpNdvU4kWx+LKxNY10kQ1yqGXrhe4/1nvP7E+nd5A92TtaRplbHSqoIdOqtRWti+fkB5/n1+/VvCmz12pG1kpQWsfi1ftlBobm0bpngs16CHkbIwdLnParxtTV3QYRlfJ0KFskH7pdN/YDn+yRuSd7sNH3aO0DYPggk6uWuXrfOc+fa3VTxFVvKaNxHsiHmsXyCLIE5yuOeN3/Jdf8HBL/5M6shjyhxHx9BjB1O0+4NLOnjLLSxwO7ukN4jMbOIcD879KLSi6Pk61Oqm2377n8079PXEEQ7cy7OKEC9nbpet118fxweTafpt69x/Bt8UqGzNQt7aelpc44dn5cqhwf71+qKp/Zf/+a0zcizOUWpl/iBcSXip0pplkatCchoH5c5aUM8I7/dWxAej8WicPL1URFZ9BDJelUwEwTkGqUhgSlydVes95YdXvhh9Gfz/aeFWvgVb4tuLbcv4+wLdutVZv/cUonwBD/6eDlE0aSiKK/uoH3+J1wDE/jMVqY2ysGufN84oIXB0sPzy8ollX/LegY74DgJXJR57sn+VGza0x3DnuIgABFM15LmajjjsNlYj+JEZGbuRYcAMOWxFkPN2w6Wd46xo4gVWQR/X4lyI/R6K/YK0110GzudPRW7Y+UOBGTfNNzHeYT0fiH0taunBpq9HEW8OKSaBGj21L0MqenEmNRWBAWDWAk4CpNoEZJ2tTaPFgbQYj8HxtFilErs3BTRwT8uO1NXQaWfIotchmPkAF5mMBAliEmZiOGVgCG9LgRzpscMAOOwowlT3JhusdazXGSC/hxR3UlmWVwWHpOIKheqONvjyhSiTHIkVUco5bnji8m//zL7PKaT1Vl5I6UE609f+gkr6MZKVyKc7zJRmCahLsdlyA5fdQkRSan9LgnnLEyGSkaKJCJog0wAgvepWBt80+1yKln1bMVtCljfNWDueKLsWwaEbBSfSPTEmVRsUcYYMnEjcjeyCZzBXK9E9BYBXLKjOSpUDR+nEV3TFSUdQaz+ot98QxgXwx0GQ+EEUAKB2qZPkQQ0GqFD8UPFMqyaCHM24BZmSGic9EYMagKizOw9Hz50DMrDLrqqLkTAhplMictiCAx5S3BIUQdeJeLnBy2CNtMfz6cV4u8XKoFZQesbf9YZiIERiHjaNodDW6LgcirX/mPnJIkBGDUpTBhSa0EIr38D5hCIszhCM8URGBqImoWjpvpt1ebu/v3Gl3qJfMnNM+9V+kiRFyROTPHQWOcs1dNW94/ukKMPZBvDi55i5CttdeJz84DLngLqjcdwEZ87bFFR8CIG35OAkDVN6VRDZ7aq67NteYqZ2lpT8oYB2CytoBd6VuAx4WgiAsnuj3WohG+LugzXiQRDeM3XYXlULv4dp5VFYC) format("woff2"),url(/assets/KaTeX_Size3-Regular-CTq5MqoE.woff) format("woff"),url(/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2) format("woff2"),url(/assets/KaTeX_Size4-Regular-BF-4gkZK.woff) format("woff"),url(/assets/KaTeX_Size4-Regular-DWFBv043.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2) format("woff2"),url(/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff) format("woff"),url(/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf) format("truetype")}.layout-container>.header,.chat-view-container>.header,.image-document-view>.header{display:none!important}.pdf-split-left .header{display:flex!important}.layout-container,.layout-content{height:100vh}.global-notification-container{display:flex;flex-direction:column;align-items:flex-end;gap:8px;padding:20px;pointer-events:none}.global-notification{position:relative;min-width:280px;max-width:360px;transform:translate(100%);opacity:0;transition:transform .3s ease-out,opacity .3s ease-out;pointer-events:auto}.global-notification.visible{transform:translate(0);opacity:1}.global-notification.hidden{transform:translate(100%);opacity:0}.global-notification .notification-content{background:#fff;border-radius:12px;padding:12px 14px;box-shadow:0 4px 20px #0000001f,0 0 0 1px #0000000d;display:flex;align-items:center;gap:12px}.global-notification .notification-icon{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;color:#fff;flex-shrink:0}.global-notification.success .notification-icon{background:#22c55e}.global-notification.error .notification-icon{background:#ef4444}.global-notification.info .notification-icon{background:#e67e22}.global-notification .notification-message{flex:1;min-width:0}.global-notification .notification-title{display:block;font-size:14px;font-weight:600;color:#1a1a1a;line-height:1.3}.global-notification .notification-subtitle{display:block;font-size:13px;color:#6b6b6b;line-height:1.3}.notification-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.notification-action-btn{padding:6px 12px;font-size:13px;font-weight:600;border-radius:6px;cursor:pointer;transition:all .15s ease;border:none;white-space:nowrap;font-family:inherit}.notification-action-btn:focus{outline:none}.notification-action-btn:active{transform:scale(.97)}.notification-action-btn--primary{background:#e67e22;color:#fff}.notification-action-btn--primary:hover{background:#d97706}.notification-action-btn--secondary{background:transparent;color:#6b6b6b;padding:6px 8px}.notification-action-btn--secondary:hover{background:#f5f4f2}.global-notification .notification-close{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:6px;cursor:pointer;color:#8c8c8c;transition:all .15s ease;flex-shrink:0;font-size:18px}.global-notification .notification-close:hover{background:#f5f4f2;color:#1a1a1a}@media (max-width: 640px){.global-notification-container{padding:12px;align-items:stretch}.global-notification{max-width:none;min-width:auto;width:100%}.global-notification .notification-content{padding:10px 12px}}@media (prefers-reduced-motion: reduce){.global-notification{transition:opacity .01ms}}.fullwidth-toolbar{display:flex;align-items:center;justify-content:center;gap:.5rem;position:relative;width:100%}.toolbar-left,.toolbar-center,.toolbar-right{display:flex;align-items:center;gap:.5rem}.toolbar-center{justify-content:center}.toolbar-separator{width:1px;height:16px;background:#e0e7ef;margin:0 .25rem}.toolbar-btn{background:none;border:none;border-radius:4px;padding:.2rem .4rem;font-size:.9rem;cursor:pointer;color:#222;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s}.toolbar-btn:hover{background:#e0e7ef;color:#222}.toolbar-btn.active{background:#ecbebb;color:#fff}.toolbar-btn:disabled{opacity:.4;cursor:not-allowed}.toolbar-icon{font-size:.9rem;display:flex;align-items:center;justify-content:center}.color-dot{width:16px;height:16px;min-width:16px;min-height:16px;border-radius:50%;border:2px solid #e0e7ef;margin-right:.25rem;cursor:pointer;box-sizing:border-box;transition:transform .2s ease;display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;flex-shrink:0}.color-dot:hover{transform:scale(1.1)}.size-dot{background:#222;border-radius:50%;display:inline-block;margin-right:.25rem;cursor:pointer;transition:transform .2s ease}.size-dot:hover{transform:scale(1.1)}.toolbar-color-picker{cursor:pointer;border-radius:4px;transition:transform .2s ease}.toolbar-color-picker:hover{transform:scale(1.05)}.toolbar-settings input[type=color]{width:32px;height:32px;border:none;background:none;margin-right:.5rem}.font-dropdown,.font-size-dropdown{font-size:10px!important;padding:2px 6px!important;width:auto!important;min-width:50px;border:1px solid #e0e7ef!important;border-radius:4px!important;margin-right:6px;cursor:pointer;background-color:#fff!important;color:#333!important;line-height:normal!important}.font-dropdown{min-width:80px}.font-size-dropdown{min-width:50px}.toolbar-shapes-dropdown{position:relative}.shapes-dropdown-menu{position:absolute;top:110%;left:0;background:#fff;border-radius:12px;box-shadow:0 2px 12px #0000001f;padding:.5rem 0;display:flex;flex-direction:column;min-width:60px;z-index:200}.shapes-dropdown-menu .toolbar-btn{margin:.2rem 0;width:48px;height:48px;justify-content:center}.active-tools-bubble{position:fixed;top:40px;left:0;right:0;width:50%;display:flex;justify-content:center;padding-top:8px;z-index:1000;pointer-events:none;animation:slideDown .2s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.active-tools-content{background:#fff;border-radius:12px;box-shadow:0 4px 16px #00000026,0 2px 8px #00000014;padding:12px 16px;display:flex;align-items:center;gap:12px;border:1px solid #e0e7ef;min-width:200px;max-width:600px;pointer-events:auto}.active-tools-content>*{flex-shrink:0}.header{display:flex;align-items:center;justify-content:space-between;padding:0 10px;height:40px;background:#fff;border-bottom:1px solid #e5e7eb;box-shadow:0 1px 3px #0000001a;flex-shrink:0;z-index:10;position:relative;overflow:hidden;overscroll-behavior:contain;visibility:visible!important;opacity:1!important;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.header-left{display:flex;align-items:center;gap:12px;flex:0 0 150px}.header-right{display:flex;align-items:center;gap:8px;flex:0 0 150px;justify-content:flex-end}.header-right>*:last-child{margin-left:8px}.header-center{display:flex;justify-content:center;align-items:center;height:100%;gap:12px;padding:0 8px;width:100%;overflow-x:visible;overflow-y:visible;scrollbar-width:none;-ms-overflow-style:none}.header-center::-webkit-scrollbar{display:none}.header-center>*{flex-shrink:0}.header-section{display:flex;align-items:center;justify-content:center;gap:4px}.header-section:not(:last-child):after{content:"";width:1px;height:20px;background-color:#e5e7eb;margin-left:8px}.header-zoom{justify-content:center}.header-undo-redo{min-width:70px;justify-content:center}.header-tools{flex:1;position:relative;justify-content:center}.header-title{font-size:25px;font-weight:700;color:#fff;margin:0;letter-spacing:.5px}.header .header-button{display:flex!important;align-items:center!important;justify-content:center!important;width:24px!important;height:24px!important;border:none!important;border-radius:4px!important;background-color:transparent!important;color:#666!important;font-size:10px!important;font-weight:500!important;cursor:pointer!important;transition:all .2s ease!important;padding:0!important}.header .header-button img{opacity:1!important;visibility:visible!important;filter:none!important}.header .header-mobile-button{display:flex!important;align-items:center!important;justify-content:center!important;width:24px!important;height:24px!important;border:none!important;border-radius:4px!important;background-color:transparent!important;color:#666!important;cursor:pointer!important;transition:all .2s ease!important;padding:0!important}.header .header-mobile-button img{opacity:1!important;visibility:visible!important;filter:none!important}.header .header-mobile-button:hover{background-color:#f8f9fa!important}.header .header-button:hover{background-color:#f8f9fa!important;color:#333!important;transform:translateY(-1px);transition:all .2s ease}.header .header-button:active{transform:translateY(0)}.header .header-button.bug-report-button{color:#dc2626!important}.header .header-button.bug-report-button:hover{background-color:#fee2e2!important;color:#b91c1c!important;transform:translateY(-1px)}.header .header-button.bug-report-button:active{transform:translateY(0)}.header .image-action-button:hover{transform:translateY(-1px);transition:all .2s ease}.header .image-action-button:active{transform:translateY(0)}.header .header-section:has(button[title=Console]) .header-button:hover{background-color:#dbeafe!important;color:#1e40af!important}.header .header-section:has(button[title="Access on Mobile"]) .header-button:hover{background-color:#e0e7ff!important;color:#4338ca!important}.header .header-section:has(button[title="Add Image"]) .header-button:hover{background-color:#ffedd5!important;color:#c2410c!important}.header .header-section:has(button[title="Upload Work"]) .header-button:hover{background-color:#d1fae5!important;color:#047857!important}.header .header-section:has(button[title="New Page"]) .header-button:hover{background-color:#f3e8ff!important;color:#7c3aed!important}.header-button:active{background-color:#f1f3f4;transform:scale(.98)}.header .image-action-button{color:#000!important}.mobile-images-button{position:relative}.mobile-images-button:hover{background-color:#f3f4f6;transform:translateY(-1px)}.mobile-images-button img{opacity:.7;transition:opacity .2s}.mobile-images-button:hover img{opacity:1}.menu-button{font-size:18px}.new-canvas-button,.external-link-button{font-size:14px}.header-logo{display:flex;align-items:center;height:100%}.header-logo-text{font-size:16px;font-weight:800;color:#333;margin-left:4px}.header-mobile-button{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:#ef44440d;border-radius:6px;cursor:pointer;transition:all .2s ease}.header-mobile-button:hover{background:#ef444426;transform:translateY(-1px)}.header-mobile-button:active{transform:translateY(0)}.header-mobile-button img{filter:brightness(0) saturate(100%) invert(41%) sepia(84%) saturate(1839%) hue-rotate(342deg) brightness(101%) contrast(101%)}.logo-image{height:100px;width:auto;-o-object-fit:contain;object-fit:contain;margin-top:8px}@media (max-width: 600px){.logo-image{max-height:60px}}.header-toolbar{background:none;border-radius:0;box-shadow:none;padding:0;margin:0;display:flex;align-items:center;gap:.75rem}.panel-button{position:relative;transition:all .2s ease}.panel-button.active{background-color:#e3f2fd;border-color:#2196f3;color:#1976d2}.panel-button.active:after{content:"";position:absolute;bottom:-2px;left:50%;transform:translate(-50%);width:4px;height:4px;background-color:#2196f3;border-radius:50%}.home-button{transition:all .2s ease}.home-button:hover{background-color:#f8f9fa;border-color:#d0d7de}@media (max-width: 768px){.header-left{flex:0 0 100px}.header-right{flex:0 0 120px;gap:6px}.header-button{width:28px;height:28px}.header-button img{width:14px!important;height:14px!important}.header-center{gap:8px;padding:0 4px;max-width:calc(100% - 240px)}.header-section{gap:2px}.header-section:not(:last-child):after{margin-left:4px}}@media (max-width: 480px){.header-left{flex:0 0 80px}.header-right{flex:0 0 100px}.header-center{gap:4px;max-width:calc(100% - 200px)}.header-section:not(:last-child):after{display:none}}.age-verification-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:50;padding:1rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.age-verification-modal{background-color:#fff;border-radius:1rem;padding:2rem;max-width:28rem;width:100%;margin:0 1rem;max-height:90vh;overflow-y:auto;box-shadow:0 25px 50px -12px #00000040;position:relative;z-index:10;border:1px solid #f3f4f6}.age-verification-header{text-align:center;margin-bottom:1.5rem}.age-verification-icon{width:4rem;height:4rem;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem}.age-verification-icon.blue{background:linear-gradient(135deg,#e57800,#cc6a00)}.age-verification-icon.orange{background:linear-gradient(135deg,#f97316,#ef4444)}.age-verification-icon.green{background:linear-gradient(135deg,#10b981,#14b8a6)}.age-verification-icon.purple{background:linear-gradient(135deg,#8b5cf6,#a855f7)}.age-verification-icon svg{width:2rem;height:2rem;color:#fff}.age-verification-title{font-size:1.5rem;font-weight:700;color:#111827;margin-bottom:.5rem}.age-verification-subtitle{color:#6b7280;font-size:.875rem;line-height:1.5}.age-verification-error{margin-bottom:1.5rem;padding:1rem;background-color:#fef2f2;border:1px solid #fecaca;color:#dc2626;border-radius:.75rem;display:flex;align-items:center}.age-verification-error svg{width:1.25rem;height:1.25rem;margin-right:.5rem}.age-verification-field{margin-bottom:1.5rem}.age-verification-label{display:block;font-size:.875rem;font-weight:600;color:#374151;margin-bottom:.75rem}.age-verification-input{width:100%;padding:1rem;border:2px solid #e5e7eb;border-radius:.75rem;font-size:1rem;color:#111827;transition:all .2s ease}.age-verification-input:focus{outline:none;border-color:#e57800;box-shadow:0 0 0 3px #e578001a}.age-verification-buttons{display:flex;gap:1rem}.age-verification-button{flex:1;padding:1rem 1.5rem;border-radius:.75rem;font-weight:600;font-size:.875rem;transition:all .2s ease;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center}.age-verification-button.primary{background:linear-gradient(135deg,#e57800,#cc6a00);color:#fff;box-shadow:0 10px 15px -3px #0000001a}.age-verification-button.primary:hover{background:linear-gradient(135deg,#cc6a00,#b35e00);box-shadow:0 20px 25px -5px #0000001a;transform:translateY(-2px)}.age-verification-button.primary:disabled{background:linear-gradient(135deg,#d1d5db,#9ca3af);color:#6b7280;cursor:not-allowed;transform:none;box-shadow:none;opacity:.5}.age-verification-button.primary:disabled:hover{background:linear-gradient(135deg,#d1d5db,#9ca3af);transform:none;box-shadow:none}.age-verification-button.orange{background:linear-gradient(135deg,#f97316,#ef4444);color:#fff;box-shadow:0 10px 15px -3px #0000001a}.age-verification-button.orange:hover{background:linear-gradient(135deg,#ea580c,#dc2626);box-shadow:0 20px 25px -5px #0000001a;transform:translateY(-2px)}.age-verification-button.orange:disabled{background:linear-gradient(135deg,#d1d5db,#9ca3af);color:#6b7280;cursor:not-allowed;transform:none;box-shadow:none;opacity:.5}.age-verification-button.orange:disabled:hover{background:linear-gradient(135deg,#d1d5db,#9ca3af);transform:none;box-shadow:none}.age-verification-button.green{background:linear-gradient(135deg,#10b981,#14b8a6);color:#fff;box-shadow:0 10px 15px -3px #0000001a}.age-verification-button.green:hover{background:linear-gradient(135deg,#059669,#0d9488);box-shadow:0 20px 25px -5px #0000001a;transform:translateY(-2px)}.age-verification-button.green:disabled{background:linear-gradient(135deg,#d1d5db,#9ca3af);color:#6b7280;cursor:not-allowed;transform:none;box-shadow:none;opacity:.5}.age-verification-button.green:disabled:hover{background:linear-gradient(135deg,#d1d5db,#9ca3af);transform:none;box-shadow:none}.age-verification-button.secondary{background-color:#f3f4f6;color:#374151}.age-verification-button.secondary:hover{background-color:#e5e7eb}.age-verification-terms{max-height:15rem;overflow-y:auto;margin-bottom:1.5rem;padding:1.5rem;border:2px solid #f3f4f6;border-radius:.75rem;font-size:.875rem;background-color:#f9fafb}.age-verification-terms h3{font-weight:700;color:#111827;margin-bottom:.75rem;font-size:1.25rem;text-align:center}.age-verification-terms h4{font-weight:700;color:#111827;margin-top:1.5rem;margin-bottom:.75rem;font-size:1rem}.age-verification-terms .date{color:#7f8c8d;font-style:italic;text-align:center;margin-bottom:1.5rem}.age-verification-tabs{display:flex;margin-bottom:1.5rem;border-bottom:2px solid #e5e7eb}.age-verification-tab{flex:1;padding:.75rem 1rem;background:none;border:none;font-size:.875rem;font-weight:500;color:#6b7280;cursor:pointer;transition:all .2s ease;border-bottom:2px solid transparent;margin-bottom:-2px}.age-verification-tab:hover{color:#374151;background-color:#f9fafb}.age-verification-tab.active{color:#e57800;border-bottom-color:#e57800;background-color:#fff5eb}.age-verification-checkboxes{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.5rem}.age-verification-terms p{margin-bottom:1rem;color:#374151;line-height:1.5}.age-verification-terms .italic{font-style:italic;color:#6b7280}.terms-preview h4{font-weight:600;color:#111827;margin-bottom:.75rem;font-size:.875rem}.terms-preview ul{margin-bottom:1rem;padding-left:1rem}.terms-preview li{margin-bottom:.5rem;color:#374151;font-size:.875rem}.terms-links{margin-top:1rem;display:flex;flex-direction:column;gap:.5rem}.terms-link{color:#e57800;text-decoration:none;font-size:.875rem;font-weight:500;padding:.5rem;border:1px solid #FFD9A8;border-radius:.5rem;background-color:#fff5eb;text-align:center;transition:all .2s ease}.terms-link:hover{background-color:#ffd9a8;border-color:#e57800;color:#cc6a00}.age-verification-checkbox-container{display:flex;align-items:center;margin-bottom:.5rem;padding:1rem;background-color:#eff6ff;border:1px solid #bfdbfe;border-radius:.75rem}.age-verification-checkbox{display:flex;align-items:center;margin-bottom:.75rem;padding:.75rem;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;cursor:pointer;transition:all .2s ease}.age-verification-checkbox:hover{background-color:#eff6ff;border-color:#bfdbfe}.age-verification-checkbox input[type=checkbox]{margin-right:.75rem;width:1.25rem;height:1.25rem;color:#e57800;border-color:#cbd5e1;border-radius:.25rem;cursor:pointer}.age-verification-checkbox input[type=checkbox]:focus{outline:none;border-color:#e57800;box-shadow:0 0 0 3px #e578001a}.age-verification-checkbox span,.age-verification-checkbox-label{font-size:.875rem;color:#374151;font-weight:500}.age-verification-loading{display:flex;align-items:center;justify-content:center}.age-verification-loading svg{animation:spin 1s linear infinite;margin-right:.75rem;width:1.25rem;height:1.25rem}@media (max-width: 640px){.age-verification-modal{margin:0 .5rem;padding:1.5rem}.age-verification-buttons{flex-direction:column}.age-verification-button{width:100%}}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px}.loading-fullscreen{position:fixed;top:0;left:0;right:0;bottom:0;background:#fffffff2;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px}.loading-text{font-size:14px;color:#666;font-weight:500;text-align:center;margin-top:8px}.loading-sm{--size: 16px;--border-width: 2px}.loading-md{--size: 24px;--border-width: 3px}.loading-lg{--size: 32px;--border-width: 4px}.loading-xl{--size: 48px;--border-width: 5px}.spinner-container{position:relative;width:var(--size);height:var(--size)}.spinner-ring{position:absolute;width:100%;height:100%;border:var(--border-width) solid transparent;border-top:var(--border-width) solid var(--loading-color, #667eea);border-radius:50%;animation:spinner-rotate 1.2s linear infinite}.spinner-ring:nth-child(2){animation-delay:-.4s;border-top-color:#667eea99}.spinner-ring:nth-child(3){animation-delay:-.8s;border-top-color:#667eea4d}@keyframes spinner-rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.dots-container{display:flex;gap:4px;align-items:center}.dot{width:calc(var(--size) / 4);height:calc(var(--size) / 4);background:var(--loading-color, #667eea);border-radius:50%;animation:dots-bounce 1.4s ease-in-out infinite both}.dot:nth-child(1){animation-delay:-.32s}.dot:nth-child(2){animation-delay:-.16s}.dot:nth-child(3){animation-delay:0s}@keyframes dots-bounce{0%,80%,to{transform:scale(.8);opacity:.5}40%{transform:scale(1);opacity:1}}.pulse-container{display:flex;align-items:center;justify-content:center}.pulse-circle{width:var(--size);height:var(--size);background:var(--loading-color, #667eea);border-radius:50%;animation:pulse-scale 1.5s ease-in-out infinite}@keyframes pulse-scale{0%{transform:scale(.8);opacity:.8}50%{transform:scale(1.2);opacity:.4}to{transform:scale(.8);opacity:.8}}.skeleton-container{display:flex;flex-direction:column;gap:8px;width:200px}.skeleton-line{height:12px;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;border-radius:6px;animation:skeleton-shimmer 1.5s ease-in-out infinite}.skeleton-line:nth-child(1){width:100%}.skeleton-line:nth-child(2){width:80%}.skeleton-line:nth-child(3){width:60%}@keyframes skeleton-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.wave-container{display:flex;gap:3px;align-items:flex-end;height:var(--size)}.wave-bar{width:calc(var(--size) / 8);background:var(--loading-color, #667eea);border-radius:2px;animation:wave-animate 1.2s ease-in-out infinite}.wave-bar:nth-child(1){animation-delay:-1.2s}.wave-bar:nth-child(2){animation-delay:-1.1s}.wave-bar:nth-child(3){animation-delay:-1s}.wave-bar:nth-child(4){animation-delay:-.9s}.wave-bar:nth-child(5){animation-delay:-.8s}@keyframes wave-animate{0%,40%,to{transform:scaleY(.4)}20%{transform:scaleY(1)}}.bounce-container{display:flex;align-items:center;justify-content:center;height:var(--size)}.bounce-ball{width:calc(var(--size) / 2);height:calc(var(--size) / 2);background:var(--loading-color, #667eea);border-radius:50%;animation:bounce-animate 1.4s ease-in-out infinite}@keyframes bounce-animate{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.ripple-container{position:relative;width:var(--size);height:var(--size)}.ripple-circle{position:absolute;width:100%;height:100%;border:2px solid var(--loading-color, #667eea);border-radius:50%;animation:ripple-expand 1.5s ease-out infinite}.ripple-circle:nth-child(2){animation-delay:.5s}.ripple-circle:nth-child(3){animation-delay:1s}@keyframes ripple-expand{0%{transform:scale(0);opacity:1}to{transform:scale(1);opacity:0}}.shimmer-container{display:flex;flex-direction:column;gap:8px;width:200px}.shimmer-line{height:12px;background:linear-gradient(90deg,#667eea1a,#667eea4d,#667eea1a);background-size:200% 100%;border-radius:6px;animation:shimmer-slide 2s ease-in-out infinite}.shimmer-line:nth-child(1){width:100%}.shimmer-line:nth-child(2){width:80%;animation-delay:.2s}.shimmer-line:nth-child(3){width:60%;animation-delay:.4s}@keyframes shimmer-slide{0%{background-position:-200% 0}to{background-position:200% 0}}@media (max-width: 768px){.loading-container{gap:8px}.loading-text{font-size:12px}.skeleton-container,.shimmer-container{width:150px}}@media (prefers-color-scheme: dark){.loading-fullscreen{background:#000c}.loading-text{color:#ccc}.skeleton-line{background:linear-gradient(90deg,#333 25%,#444,#333 75%)}.shimmer-line{background:linear-gradient(90deg,#667eea33,#667eea66,#667eea33)}}.credit-display{display:flex;align-items:center;gap:8px;font-size:14px;color:#6b7280;margin-left:auto}.credit-count{font-weight:500;color:#374151}.buy-more-button{background:none;border:none;color:#2563eb;font-size:14px;font-weight:500;cursor:pointer;padding:4px 8px;border-radius:4px;transition:all .2s ease;text-decoration:underline}.buy-more-button:hover{background-color:#2563eb1a;color:#1d4ed8}.buy-more-button:active{transform:translateY(1px)}.credit-display.loading{opacity:.6}.credit-loading-spinner{width:16px;height:16px;border:2px solid #e5e7eb;border-top:2px solid #2563eb;border-radius:50%;animation:spin 1s linear infinite}.image-document-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000bf;display:flex;align-items:center;justify-content:center;z-index:10000;padding:1rem}.image-document-modal{background:#fff;border-radius:12px;max-width:600px;width:100%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d}.image-document-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;border-bottom:1px solid #E5E7EB}.image-document-modal-header h3{margin:0;font-size:1.25rem;font-weight:600;color:#0e1116}.image-document-modal-close{background:none;border:none;font-size:2rem;line-height:1;cursor:pointer;color:#64748b;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s ease}.image-document-modal-close:hover{background-color:#f8fafc;color:#0e1116}.image-document-modal-content{flex:1;overflow-y:auto;padding:1.5rem}.image-document-preview{margin-bottom:1.5rem;text-align:center;background:#f8fafc;border-radius:8px;padding:1rem;border:1px solid #E5E7EB}.image-document-preview img{max-width:100%;max-height:400px;border-radius:6px;box-shadow:0 2px 8px #00000014}.image-document-text-input{margin-bottom:1.5rem}.image-document-text-input label{display:block;font-size:.875rem;font-weight:600;color:#0e1116;margin-bottom:.5rem}.image-document-text-input textarea{width:100%;padding:.75rem;border:1px solid #E5E7EB;border-radius:6px;font-size:.9375rem;font-family:inherit;resize:vertical;transition:border-color .2s ease,box-shadow .2s ease}.image-document-text-input textarea:focus{outline:none;border-color:#e57800;box-shadow:0 0 0 3px #e578001a}.image-document-buttons{display:flex;gap:.75rem;justify-content:flex-end}.image-document-button{padding:.75rem 1.5rem;border-radius:8px;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s ease;border:none}.image-document-cancel{background:#fff;color:#64748b;border:1px solid #E5E7EB}.image-document-cancel:hover{background:#f8fafc;color:#0e1116}.image-document-analyze{background:#e57800;color:#fff}.image-document-analyze:hover{background:#cc6a00;box-shadow:0 4px 12px #e5780040}.custom-notification{position:fixed;top:20px;left:50%;z-index:10002;max-width:400px;min-width:300px;transform:translate(-50%) translateY(-100%);transition:transform .3s cubic-bezier(.4,0,.2,1)}.custom-notification.visible{transform:translate(-50%) translateY(0)}.custom-notification.hidden{transform:translate(-50%) translateY(-100%)}.notification-content{background:#fff;border-radius:12px;box-shadow:0 10px 25px #00000026;border:1px solid #e5e7eb;padding:16px;display:flex;align-items:center;gap:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.notification-icon{font-size:20px;flex-shrink:0}.notification-message{flex:1;font-size:14px;font-weight:500;color:#374151;line-height:1.4}.notification-close{background:none;border:none;font-size:18px;color:#9ca3af;cursor:pointer;padding:4px;border-radius:4px;transition:all .2s;flex-shrink:0}.notification-close:hover{color:#6b7280;background:#f3f4f6}.custom-notification.success .notification-content{border-left:4px solid #10b981}.custom-notification.error .notification-content{border-left:4px solid #ef4444}.custom-notification.info .notification-content{border-left:4px solid #3b82f6}@media (max-width: 640px){.custom-notification{top:10px;left:10px;right:10px;max-width:none;min-width:auto;transform:translateY(-100%)}.custom-notification.visible{transform:translateY(0)}.custom-notification.hidden{transform:translateY(-100%)}.notification-content{padding:12px}.notification-message{font-size:13px}}.lightbox-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000e6;display:flex;align-items:center;justify-content:center;z-index:1000;animation:lightbox-fade-in .2s ease-out}@keyframes lightbox-fade-in{0%{opacity:0}to{opacity:1}}.lightbox-image{max-width:90vw;max-height:90vh;-o-object-fit:contain;object-fit:contain;border-radius:4px;animation:lightbox-scale-in .2s ease-out}@keyframes lightbox-scale-in{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.lightbox-close{position:absolute;top:20px;right:20px;background:#ffffff1a;border:none;border-radius:50%;color:#fff;font-size:32px;line-height:1;width:48px;height:48px;cursor:pointer;transition:background .2s}.lightbox-close:hover{background:#fff3}.lightbox-close:focus{outline:2px solid white;outline-offset:2px}.camera-options-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.camera-options-modal{background:#fff;border-radius:16px;padding:0;max-width:320px;width:90%;max-height:90vh;overflow:hidden;box-shadow:0 20px 25px -5px #0000004d;animation:modalSlideIn .3s ease-out}.camera-options-header{display:flex;align-items:center;justify-content:space-between;padding:20px;border-bottom:1px solid #e5e7eb}.camera-options-header h3{margin:0;font-size:18px;font-weight:600;color:#111827}.camera-options-close{background:none;border:none;font-size:24px;color:#6b7280;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:all .2s ease}.camera-options-close:hover{background:#0000000d;color:#374151}.camera-options-content{padding:20px}.camera-options-content p{margin:0 0 20px;color:#6b7280;font-size:14px}.camera-options-buttons{display:flex;flex-direction:column;gap:12px}.camera-option-button{display:flex;align-items:center;gap:16px;padding:16px;background:#f9fafb;border:2px solid #e5e7eb;border-radius:12px;cursor:pointer;transition:all .2s ease;font-family:inherit;text-align:left;width:100%}.camera-option-button:hover{background:#f3f4f6;border-color:#d1d5db;transform:translateY(-1px)}.camera-option-button:active{transform:translateY(0)}.camera-option-take-photo{border-color:#ef4444;background:linear-gradient(135deg,#fef2f2,#fee2e2)}.camera-option-take-photo:hover{border-color:#dc2626;background:linear-gradient(135deg,#fee2e2,#fecaca)}.camera-option-upload{border-color:#3b82f6;background:linear-gradient(135deg,#eff6ff,#dbeafe)}.camera-option-upload:hover{border-color:#2563eb;background:linear-gradient(135deg,#dbeafe,#bfdbfe)}.camera-option-icon{font-size:32px;flex-shrink:0}.camera-option-text{flex:1}.camera-option-text strong{display:block;font-size:16px;font-weight:600;color:#111827;margin-bottom:4px}.camera-option-text small{display:block;font-size:13px;color:#6b7280}.camera-options-footer{padding:20px;border-top:1px solid #e5e7eb}.camera-cancel-button{width:100%;padding:12px;background:#f3f4f6;border:1px solid #d1d5db;border-radius:8px;font-family:inherit;font-size:14px;font-weight:500;color:#374151;cursor:pointer;transition:all .2s ease}.camera-cancel-button:hover{background:#e5e7eb;border-color:#9ca3af}.mobile-camera-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000;z-index:10001;display:flex;flex-direction:column}.mobile-camera-container{display:flex;flex-direction:column;height:100%;position:relative}.mobile-camera-view{flex:1;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.mobile-camera-video{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.mobile-camera-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;color:#fff;text-align:center}.loading-spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.3);border-top:3px solid white;border-radius:50%;animation:spin 1s linear infinite}.mobile-camera-error{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;color:#fff;text-align:center;padding:20px}.retry-button{padding:12px 24px;background:#ef4444;color:#fff;border:none;border-radius:8px;font-family:inherit;font-weight:500;cursor:pointer;transition:all .2s ease}.retry-button:hover{background:#dc2626}.mobile-camera-guides{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:80%;max-width:300px;aspect-ratio:1;pointer-events:none}.camera-guide-corners{position:relative;width:100%;height:100%}.guide-corner{position:absolute;width:20px;height:20px;border:2px solid rgba(255,255,255,.8)}.guide-corner.top-left{top:0;left:0;border-right:none;border-bottom:none;border-top-left-radius:4px}.guide-corner.top-right{top:0;right:0;border-left:none;border-bottom:none;border-top-right-radius:4px}.guide-corner.bottom-left{bottom:0;left:0;border-right:none;border-top:none;border-bottom-left-radius:4px}.guide-corner.bottom-right{bottom:0;right:0;border-left:none;border-top:none;border-bottom-right-radius:4px}.mobile-camera-controls{display:flex;align-items:center;justify-content:space-between;padding:20px;background:#000c;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.camera-control-button{background:none;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;border-radius:50%}.camera-close-button,.camera-switch-button{width:48px;height:48px;background:#fff3;font-size:20px;color:#fff}.camera-close-button:hover,.camera-switch-button:hover{background:#ffffff4d;transform:scale(1.05)}.camera-control-button:disabled{opacity:.5;cursor:not-allowed}.camera-capture-button{width:80px;height:80px;background:none;padding:0}.capture-button-ring{width:80px;height:80px;border:4px solid white;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s ease;background:#ffffff1a}.capture-button-center{width:60px;height:60px;background:#fff;border-radius:50%;transition:all .2s ease}.camera-capture-button:hover .capture-button-ring{border-color:#ef4444;background:#ef444433}.camera-capture-button:hover .capture-button-center{background:#ef4444;transform:scale(.9)}.camera-capture-button:active .capture-button-center{transform:scale(.8)}.mobile-camera-info{position:absolute;top:20px;left:50%;transform:translate(-50%);background:#0009;color:#fff;padding:8px 16px;border-radius:20px;font-size:14px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);pointer-events:none}.camera-type-indicator{display:flex;align-items:center;gap:8px}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width: 480px){.camera-options-modal{width:95%;max-width:none}.camera-options-header,.camera-options-content,.camera-options-footer{padding:16px}.camera-option-button{padding:14px;gap:12px}.camera-option-icon{font-size:28px}.mobile-camera-controls{padding:16px}.camera-capture-button,.capture-button-ring{width:70px;height:70px}.capture-button-center{width:50px;height:50px}.camera-close-button,.camera-switch-button{width:44px;height:44px;font-size:18px}}@media (orientation: landscape) and (max-height: 500px){.mobile-camera-controls{padding:12px 20px}.mobile-camera-info{top:12px}.camera-guide-corners{max-width:200px}}@-webkit-keyframes marching-ants{0%{background-position:0 0,0 100%,0 0,100% 0}to{background-position:20px 0,-20px 100%,0 -20px,100% 20px}}@keyframes marching-ants{0%{background-position:0 0,0 100%,0 0,100% 0}to{background-position:20px 0,-20px 100%,0 -20px,100% 20px}}:root{--rc-drag-handle-size: 12px;--rc-drag-handle-mobile-size: 24px;--rc-drag-handle-bg-colour: rgba(0, 0, 0, .2);--rc-drag-bar-size: 6px;--rc-border-color: rgba(255, 255, 255, .7);--rc-focus-color: #0088ff}.ReactCrop{position:relative;display:inline-block;cursor:crosshair;max-width:100%}.ReactCrop *,.ReactCrop *:before,.ReactCrop *:after{-webkit-box-sizing:border-box;box-sizing:border-box}.ReactCrop--disabled,.ReactCrop--locked{cursor:inherit}.ReactCrop__child-wrapper{overflow:hidden;max-height:inherit}.ReactCrop__child-wrapper>img,.ReactCrop__child-wrapper>video{display:block;max-width:100%;max-height:inherit}.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>img,.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>video{-ms-touch-action:none;touch-action:none}.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__crop-selection{-ms-touch-action:none;touch-action:none}.ReactCrop__crop-mask{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;width:calc(100% + .5px);height:calc(100% + .5px)}.ReactCrop__crop-selection{position:absolute;top:0;left:0;-webkit-transform:translateZ(0);transform:translateZ(0);cursor:move}.ReactCrop--disabled .ReactCrop__crop-selection{cursor:inherit}.ReactCrop--circular-crop .ReactCrop__crop-selection{border-radius:50%}.ReactCrop--circular-crop .ReactCrop__crop-selection:after{pointer-events:none;content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border:1px solid var(--rc-border-color);opacity:.3}.ReactCrop--no-animate .ReactCrop__crop-selection{outline:1px dashed white}.ReactCrop__crop-selection:not(.ReactCrop--no-animate .ReactCrop__crop-selection){-webkit-animation:marching-ants 1s;animation:marching-ants 1s;background-image:-webkit-gradient(linear,left top,right top,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,right top,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,left bottom,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,left bottom,color-stop(50%,#fff),color-stop(50%,#444));background-image:linear-gradient(to right,#fff 50%,#444 50%),linear-gradient(to right,#fff 50%,#444 50%),linear-gradient(to bottom,#fff 50%,#444 50%),linear-gradient(to bottom,#fff 50%,#444 50%);background-size:10px 1px,10px 1px,1px 10px,1px 10px;background-position:0 0,0 100%,0 0,100% 0;background-repeat:repeat-x,repeat-x,repeat-y,repeat-y;color:#fff;-webkit-animation-play-state:running;animation-play-state:running;-webkit-animation-timing-function:linear;animation-timing-function:linear;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite}.ReactCrop__crop-selection:focus{outline:2px solid var(--rc-focus-color);outline-offset:-1px}.ReactCrop--invisible-crop .ReactCrop__crop-mask,.ReactCrop--invisible-crop .ReactCrop__crop-selection{display:none}.ReactCrop__rule-of-thirds-vt:before,.ReactCrop__rule-of-thirds-vt:after,.ReactCrop__rule-of-thirds-hz:before,.ReactCrop__rule-of-thirds-hz:after{content:"";display:block;position:absolute;background-color:#fff6}.ReactCrop__rule-of-thirds-vt:before,.ReactCrop__rule-of-thirds-vt:after{width:1px;height:100%}.ReactCrop__rule-of-thirds-vt:before{left:33.3333333333%}.ReactCrop__rule-of-thirds-vt:after{left:66.6666666667%}.ReactCrop__rule-of-thirds-hz:before,.ReactCrop__rule-of-thirds-hz:after{width:100%;height:1px}.ReactCrop__rule-of-thirds-hz:before{top:33.3333333333%}.ReactCrop__rule-of-thirds-hz:after{top:66.6666666667%}.ReactCrop__drag-handle{position:absolute;width:var(--rc-drag-handle-size);height:var(--rc-drag-handle-size);background-color:var(--rc-drag-handle-bg-colour);border:1px solid var(--rc-border-color)}.ReactCrop__drag-handle:focus{background:var(--rc-focus-color)}.ReactCrop .ord-nw{top:0;left:0;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);cursor:nw-resize}.ReactCrop .ord-n{top:0;left:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);cursor:n-resize}.ReactCrop .ord-ne{top:0;right:0;-webkit-transform:translate(50%,-50%);transform:translate(50%,-50%);cursor:ne-resize}.ReactCrop .ord-e{top:50%;right:0;-webkit-transform:translate(50%,-50%);transform:translate(50%,-50%);cursor:e-resize}.ReactCrop .ord-se{bottom:0;right:0;-webkit-transform:translate(50%,50%);transform:translate(50%,50%);cursor:se-resize}.ReactCrop .ord-s{bottom:0;left:50%;-webkit-transform:translate(-50%,50%);transform:translate(-50%,50%);cursor:s-resize}.ReactCrop .ord-sw{bottom:0;left:0;-webkit-transform:translate(-50%,50%);transform:translate(-50%,50%);cursor:sw-resize}.ReactCrop .ord-w{top:50%;left:0;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);cursor:w-resize}.ReactCrop__disabled .ReactCrop__drag-handle{cursor:inherit}.ReactCrop__drag-bar{position:absolute}.ReactCrop__drag-bar.ord-n{top:0;left:0;width:100%;height:var(--rc-drag-bar-size);-webkit-transform:translateY(-50%);transform:translateY(-50%)}.ReactCrop__drag-bar.ord-e{right:0;top:0;width:var(--rc-drag-bar-size);height:100%;-webkit-transform:translate(50%);transform:translate(50%)}.ReactCrop__drag-bar.ord-s{bottom:0;left:0;width:100%;height:var(--rc-drag-bar-size);-webkit-transform:translateY(50%);transform:translateY(50%)}.ReactCrop__drag-bar.ord-w{top:0;left:0;width:var(--rc-drag-bar-size);height:100%;-webkit-transform:translate(-50%);transform:translate(-50%)}.ReactCrop--new-crop .ReactCrop__drag-bar,.ReactCrop--new-crop .ReactCrop__drag-handle,.ReactCrop--fixed-aspect .ReactCrop__drag-bar,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-n,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-e,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-s,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-w{display:none}@media (pointer: coarse){.ReactCrop .ord-n,.ReactCrop .ord-e,.ReactCrop .ord-s,.ReactCrop .ord-w{display:none}.ReactCrop__drag-handle{width:var(--rc-drag-handle-mobile-size);height:var(--rc-drag-handle-mobile-size)}}.image-crop-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:10001}.image-crop-modal{background-color:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;width:90%;max-width:600px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;animation:image-crop-fade-in .2s ease-out}@keyframes image-crop-fade-in{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.image-crop-header{display:flex;align-items:center;justify-content:space-between;padding:15px 20px;border-bottom:1px solid #eaeaea}.image-crop-header h3{margin:0;font-size:18px;font-weight:500;color:#333}.image-crop-close{background:none;border:none;font-size:24px;color:#999;cursor:pointer;padding:0;margin:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%}.image-crop-close:hover{color:#333;background-color:#f5f5f5}.image-crop-content{padding:15px 20px;overflow-y:auto}.image-crop-content p{margin-top:0;margin-bottom:15px;color:#555}.image-crop-container{border:1px solid #eaeaea;border-radius:4px;overflow:hidden;margin-bottom:10px;max-height:400px;display:flex;align-items:center;justify-content:center;background-color:#f9f9f9}.image-crop-container .ReactCrop{max-width:100%;max-height:400px}.image-crop-container .ReactCrop__crop-selection{border:2px solid #000000!important;background:#007aff1a!important}.image-crop-container .ReactCrop__drag-handle{background:#000!important;border:2px solid rgb(255,255,255)!important;width:8px!important;height:8px!important;border-radius:2!important}@media (max-width: 768px){.image-crop-container .ReactCrop__drag-handle{width:12px!important;height:12px!important}}.image-crop-actions{display:flex;justify-content:flex-end;padding:15px 20px;border-top:1px solid #eaeaea}.image-crop-button{padding:8px 16px;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s}.image-crop-cancel{background-color:#fff;border:1px solid #ddd;color:#555;margin-right:10px}.image-crop-cancel:hover{background-color:#f5f5f5}.image-crop-confirm{background-color:#2196f3;border:1px solid #2196F3;color:#fff}.image-crop-confirm:hover:not(:disabled){background-color:#1976d2}.image-crop-confirm:disabled{background-color:#ccc;border:1px solid #ccc;cursor:not-allowed}@media (max-width: 768px){.image-crop-modal{width:95%;max-width:none;max-height:95vh}.image-crop-container{height:300px}.image-crop-actions{padding:15px}.image-crop-button{padding:14px 20px;font-size:16px}}@media (hover: none) and (pointer: coarse){.image-crop-button:active{transform:scale(.98)}.image-crop-close:active{background-color:#e8e8e8}}@media (prefers-contrast: high){.image-crop-container .ReactCrop__crop-selection,.image-crop-container .ReactCrop__drag-handle{border-width:3px!important}}@media (prefers-reduced-motion: reduce){.image-crop-modal{animation:none}.image-crop-button,.image-crop-close{transition:none}}.test-account-button{width:100%;padding:12px 24px;font-size:15px;font-weight:500;border-radius:8px;border:1.5px solid var(--signin-brand-orange, hsl(25, 100%, 45%));background:transparent;color:var(--signin-brand-orange, hsl(25, 100%, 45%));cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;transition:all .2s ease;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.test-account-button:hover:not(:disabled){background:var(--signin-brand-orange-light, hsl(30, 100%, 96%));border-color:var(--signin-brand-orange-hover, hsl(25, 100%, 40%))}.test-account-button:disabled{opacity:.5;cursor:not-allowed;border-color:#dadce0;color:#9aa0a6}.test-account-button:focus-visible{outline:2px solid var(--signin-brand-orange, hsl(25, 100%, 45%));outline-offset:2px}.test-account-spinner{width:18px;height:18px;border:2px solid var(--signin-brand-orange-light, hsl(30, 100%, 96%));border-top-color:var(--signin-brand-orange, hsl(25, 100%, 45%));border-radius:50%;animation:test-account-spin .6s linear infinite}@keyframes test-account-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.test-account-subtitle{text-align:center;font-size:.8rem;color:var(--signin-text-light, hsl(214, 17%, 66%));margin-top:.5rem;margin-bottom:0}.test-account-limit-text{text-align:center;font-size:.8rem;color:var(--signin-text-muted, hsl(215, 16%, 35%));margin-top:.5rem;margin-bottom:0}.test-account-error{text-align:center;font-size:.8rem;color:#d93025;margin-top:.5rem;margin-bottom:0}.test-account-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:10000;animation:test-account-overlay-in .2s ease}@keyframes test-account-overlay-in{0%{opacity:0}to{opacity:1}}.test-account-dialog{background:#fff;border-radius:16px;padding:1.5rem;max-width:400px;width:90vw;box-shadow:0 8px 32px #00000029;animation:test-account-dialog-in .25s ease}@keyframes test-account-dialog-in{0%{opacity:0;transform:scale(.95) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.test-account-dialog-title{font-size:1.125rem;font-weight:600;color:var(--signin-text-primary, hsl(220, 24%, 7%));margin:0 0 .75rem}.test-account-dialog-text{font-size:.9rem;color:var(--signin-text-muted, hsl(215, 16%, 35%));line-height:1.5;margin:0 0 1.25rem}.test-account-dialog-actions{display:flex;gap:.75rem;justify-content:flex-end}.test-account-dialog-cancel{padding:8px 16px;font-size:.875rem;font-weight:500;border-radius:8px;border:1px solid #dadce0;background:#fff;color:var(--signin-text-muted, hsl(215, 16%, 35%));cursor:pointer;transition:background .15s ease}.test-account-dialog-cancel:hover{background:#f8f9fa}.test-account-dialog-confirm{padding:8px 16px;font-size:.875rem;font-weight:500;border-radius:8px;border:none;background:var(--signin-brand-orange, hsl(25, 100%, 45%));color:#fff;cursor:pointer;transition:background .15s ease}.test-account-dialog-confirm:hover{background:var(--signin-brand-orange-hover, hsl(25, 100%, 40%))}.signin-divider{display:flex;align-items:center;gap:1rem;margin:1.25rem 0;width:100%}.signin-divider:before,.signin-divider:after{content:"";flex:1;height:1px;background:#0000001a}.signin-divider span{font-size:.8rem;color:var(--signin-text-light, hsl(214, 17%, 66%));font-weight:500;text-transform:lowercase}:root{--signin-brand-orange: hsl(25, 100%, 45%);--signin-brand-orange-hover: hsl(25, 100%, 40%);--signin-brand-orange-light: hsl(30, 100%, 96%);--signin-brand-gold: hsl(45, 89%, 61%);--signin-text-primary: hsl(220, 24%, 7%);--signin-text-muted: hsl(215, 16%, 35%);--signin-text-light: hsl(214, 17%, 66%);--signin-surface: hsl(0, 0%, 100%);--signin-background: hsl(0, 0%, 98%)}.signin-bg{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#fafafa,#fffaf5,#fffbf0);position:relative;overflow:hidden}.signin-bg-decorations{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none}.signin-bg-blob{position:absolute;border-radius:50%;filter:blur(80px)}.signin-bg-blob-1{top:-10rem;right:-10rem;width:30rem;height:30rem;background:var(--signin-brand-orange);opacity:.15}.signin-bg-blob-2{bottom:-10rem;left:-10rem;width:35rem;height:35rem;background:var(--signin-brand-gold);opacity:.1}.signin-card{background:#ffffffe6;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:24px;box-shadow:0 8px 32px #00000014,0 1px 2px #0000000d;border:1px solid rgba(255,255,255,.5);padding:3rem 2.5rem 2.5rem;display:flex;flex-direction:column;align-items:center;min-width:420px;max-width:90vw;position:relative;z-index:10}@media (max-width: 480px){.signin-card{min-width:90vw;padding:2.5rem 2rem 2rem}}.signin-logo{width:72px;height:72px;margin-bottom:1.5rem;border-radius:16px;box-shadow:0 4px 12px #0000001a}.signin-title{font-size:2rem;font-weight:700;margin-bottom:.75rem;color:var(--signin-text-primary);text-align:center;letter-spacing:-.02em}.signin-subtitle{font-size:1rem;color:var(--signin-text-muted);margin-bottom:2rem;text-align:center;line-height:1.5;max-width:320px}.signin-buttons-container{width:100%}.signin-footer{margin-top:2rem;padding-top:1.5rem;border-top:1px solid rgba(0,0,0,.06);width:100%}.signin-features{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem}.signin-feature{font-size:.875rem;color:var(--signin-text-light);font-weight:500}.test-expired-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#000000bf;display:flex;align-items:center;justify-content:center;z-index:10001;padding:20px;cursor:not-allowed}.test-expired-modal{background:#fff;border-radius:16px;box-shadow:0 25px 50px -12px #0000004d,0 0 0 1px #0000000d;width:440px;max-width:90vw;max-height:85vh;overflow-y:auto;animation:testExpiredSlideIn .3s ease-out;cursor:default}@keyframes testExpiredSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.test-expired-header{padding:24px 28px 0}.test-expired-title{margin:0;font-size:22px;font-weight:700;color:#0f172a;letter-spacing:-.02em}.test-expired-body{padding:16px 28px 24px}.test-expired-centered{display:flex;flex-direction:column;align-items:center;text-align:center;padding:40px 28px}.test-expired-message{font-size:15px;color:#475569;line-height:1.6;margin:0 0 24px}.test-expired-cta-primary{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;padding:14px 24px;font-size:15px;font-weight:600;border-radius:10px;border:none;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px #3b82f64d;margin-bottom:12px}.test-expired-cta-primary:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-1px);box-shadow:0 6px 16px #3b82f666}.test-expired-cta-primary:active{transform:translateY(0)}.test-expired-google-icon{flex-shrink:0}.test-expired-cta-secondary{width:100%;padding:12px 24px;font-size:14px;font-weight:500;border-radius:10px;border:1.5px solid #e2e8f0;background:#fff;color:#475569;cursor:pointer;transition:all .2s ease;margin-bottom:8px}.test-expired-cta-secondary:hover:not(:disabled){background:#f8fafc;border-color:#cbd5e1}.test-expired-cta-secondary:disabled{opacity:.5;cursor:not-allowed}.test-expired-limit-note{font-size:12px;color:#94a3b8;text-align:center;margin:4px 0 8px}.test-expired-cta-text{width:100%;padding:8px;font-size:13px;font-weight:500;border:none;background:transparent;color:#94a3b8;cursor:pointer;transition:color .15s ease}.test-expired-cta-text:hover{color:#64748b}.test-expired-footer{padding:16px 28px;border-top:1px solid #f1f5f9}.test-expired-support{margin:0;font-size:12px;color:#94a3b8;text-align:center}.test-expired-spinner{width:36px;height:36px;border:3px solid #e2e8f0;border-top-color:#3b82f6;border-radius:50%;animation:testExpiredSpin .7s linear infinite;margin-bottom:16px}@keyframes testExpiredSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.test-expired-success-icon{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;font-size:24px;font-weight:700;display:flex;align-items:center;justify-content:center;margin-bottom:16px;box-shadow:0 4px 12px #22c55e4d}.test-expired-success-title{font-size:20px;font-weight:700;color:#0f172a;margin:0 0 8px}.test-expired-error{font-size:14px;color:#dc2626;margin:0 0 16px;text-align:center}@media (max-width: 480px){.test-expired-modal{width:auto;margin:10px}.test-expired-header,.test-expired-body,.test-expired-footer{padding-left:20px;padding-right:20px}}.demo-practice-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#000000bf;display:flex;align-items:center;justify-content:center;z-index:10001;padding:20px;cursor:not-allowed}.demo-practice-modal{background:#fff;border-radius:16px;box-shadow:0 25px 50px -12px #0000004d,0 0 0 1px #0000000d;width:420px;max-width:90vw;padding:36px 32px 28px;text-align:center;animation:demoPracticeSlideIn .3s ease-out;cursor:default}@keyframes demoPracticeSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.demo-practice-icon{width:56px;height:56px;border-radius:14px;background:linear-gradient(135deg,#fff5eb,#ffd1a3);color:#e66000;display:flex;align-items:center;justify-content:center;margin:0 auto 20px}.demo-practice-title{margin:0 0 12px;font-size:22px;font-weight:700;color:#0f172a;letter-spacing:-.02em}.demo-practice-message{font-size:15px;color:#475569;line-height:1.6;margin:0 0 28px}.demo-practice-cta{width:100%;padding:14px 24px;font-size:15px;font-weight:600;border-radius:10px;border:none;background:linear-gradient(135deg,#ff6a00,#e66000);color:#fff;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px #e578004d}.demo-practice-cta:hover{background:linear-gradient(135deg,#e66000,#c50);transform:translateY(-1px);box-shadow:0 6px 16px #e5780066}.demo-practice-cta:active{transform:translateY(0)}@media (max-width: 480px){.demo-practice-modal{width:auto;margin:10px;padding:28px 20px 24px}}.settings-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:9999;padding:20px}.settings-modal-container{position:relative;width:640px;max-width:calc(100vw - 40px);height:540px;max-height:80vh;background:#fff;border-radius:10px;box-shadow:0 6px 24px #0000001f;display:flex;overflow:hidden}.settings-modal-close{position:absolute;top:12px;left:12px;width:24px;height:24px;border-radius:5px;border:none;background:transparent;color:#6b7280;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease;z-index:10}.settings-modal-close:hover{background:#f3f4f6;color:#111827}.settings-modal-sidebar{width:140px;background:#fff;border-right:1px solid #e5e7eb;padding:48px 12px 20px;display:flex;flex-direction:column;gap:2px}.settings-modal-title{display:none}.settings-sidebar-nav{display:flex;flex-direction:column;gap:0}.settings-sidebar-item{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:5px;border:none;background:transparent;color:#374151;font-size:13px;font-weight:400;cursor:pointer;transition:background .15s ease;text-align:left;width:100%}.settings-sidebar-item:hover{background:#f9fafb}.settings-sidebar-item.active{background:transparent;color:#111827;font-weight:600}.settings-sidebar-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:16px;height:16px;color:inherit}.settings-sidebar-label{flex:1}.settings-modal-content{flex:1;overflow-y:auto;padding:24px 32px 32px;background:#fff}.settings-modal-content:focus{outline:none}.settings-section-content{max-width:100%}.settings-section-header{margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #e5e7eb}.settings-section-header h2{font-size:16px;font-weight:600;color:#111827;margin:0}.settings-section-description{font-size:12px;color:#6b7280;margin:0;line-height:1.5}.settings-plan-row{display:flex;align-items:center;justify-content:space-between;padding:16px 0;margin-bottom:20px;border-bottom:1px solid #e5e7eb}.settings-plan-info{flex:1}.settings-plan-label{font-size:13px;font-weight:400;color:#111827;margin-bottom:3px}.settings-plan-description{font-size:12px;color:#6b7280}.settings-delete-row{display:flex;align-items:center;justify-content:space-between;padding:16px 0;border-top:1px solid #e5e7eb;margin-top:20px}.settings-delete-label{font-size:13px;font-weight:400;color:#111827}.settings-benefits{margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid #e5e7eb}.settings-benefits-title{font-size:13px;font-weight:600;color:#111827;margin-bottom:12px}.settings-benefits-list{display:flex;flex-direction:column;gap:10px}.settings-benefit-item{display:flex;align-items:flex-start;gap:10px;font-size:13px;color:#374151;line-height:1.5}.settings-benefit-icon{flex-shrink:0;width:16px;height:16px;display:flex;align-items:center;justify-content:center;color:#6b7280}.settings-payment-section{margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid #e5e7eb}.settings-payment-row{display:flex;align-items:center;justify-content:space-between}.settings-payment-info{flex:1}.settings-payment-label{font-size:13px;font-weight:400;color:#111827;margin-bottom:3px}.settings-payment-link{font-size:12px;color:#6b7280;text-decoration:none}.settings-payment-link:hover{text-decoration:underline;color:#111827}.settings-group{margin-bottom:20px;padding-bottom:0;border-bottom:none}.settings-group:last-of-type{border-bottom:none;margin-bottom:0}.settings-group-title{font-size:13px;font-weight:600;color:#111827;margin:0 0 10px}.settings-group-description{font-size:12px;color:#6b7280;margin:0 0 10px;line-height:1.5}.settings-item{margin-bottom:10px}.settings-item:last-child{margin-bottom:0}.settings-item-label{font-size:12px;font-weight:500;color:#374151;margin-bottom:5px}.settings-item-value{font-size:13px;color:#111827}.settings-item-description{font-size:12px;color:#6b7280;margin:5px 0 0;line-height:1.5}.settings-item-content{display:flex;align-items:center;gap:10px;margin-bottom:5px}.subscription-tier-badge{padding:3px 8px;border-radius:4px;color:#fff;font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:.3px;display:inline-block}.credits-display{font-size:20px;font-weight:600;margin-bottom:5px}.credits-number{color:#111827}.credits-max{color:#9ca3af;font-size:16px}.settings-button-primary{display:inline-flex;align-items:center;gap:6px;background:#111827;color:#fff;border:none;border-radius:5px;padding:7px 14px;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease}.settings-button-primary:hover{background:#1f2937}.settings-button-danger{display:inline-flex;align-items:center;gap:6px;background:transparent;color:#dc2626;border:none;border-radius:5px;padding:0;font-size:13px;font-weight:400;cursor:pointer;transition:all .15s ease}.settings-button-danger:hover{text-decoration:underline}.settings-button-delete{display:inline-flex;align-items:center;justify-content:center;background:#fff;color:#dc2626;border:1px solid #dc2626;border-radius:5px;padding:7px 14px;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease;min-width:70px}.settings-button-delete:hover{background:#fef2f2}.settings-button-manage{display:inline-flex;align-items:center;justify-content:center;background:#fff;color:#111827;border:1px solid #d1d5db;border-radius:5px;padding:7px 14px;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease;min-width:70px}.settings-button-manage:hover{background:#f9fafb;border-color:#9ca3af}.settings-button-signout{width:100%;background:#111827;color:#fff;border:none;border-radius:5px;padding:8px 20px;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease}.settings-button-signout:hover{background:#1f2937}.settings-link-button{display:flex;align-items:flex-start;gap:10px;width:100%;padding:12px 0;border:none;border-bottom:1px solid #e5e7eb;border-radius:0;background:transparent;color:#374151;font-size:13px;font-weight:400;cursor:pointer;transition:background .15s ease;margin-bottom:0;text-align:left}.settings-link-button:last-child{border-bottom:none}.settings-link-button:hover{background:transparent}.settings-link-button>span{flex:1}.settings-link-content{flex:1;display:flex;flex-direction:column;gap:3px;text-align:left}.settings-link-title{font-weight:400;color:#111827;font-size:13px}.settings-link-description{font-size:12px;color:#6b7280;font-weight:400;line-height:1.4}.settings-external-icon{color:#9ca3af;flex-shrink:0;margin-top:2px}.settings-footer{margin-top:24px;padding-top:20px;border-top:1px solid #e5e7eb}.settings-info-box{background:transparent;border:none;border-radius:0;padding:0}.settings-info-text{margin:0;font-size:12px;color:#6b7280;line-height:1.6}.settings-email-link{color:#111827;text-decoration:none;font-weight:400}.settings-email-link:hover{text-decoration:underline}.settings-loading{padding:32px;text-align:center;color:#9ca3af;font-size:13px}.learning-prefs-info{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;background:#f0f9ff;border:1px solid #bae6fd;border-radius:8px;margin-bottom:20px;font-size:12px;color:#0369a1;line-height:1.5}.learning-prefs-info-icon{flex-shrink:0;margin-top:1px;color:#0284c7}.learning-prefs-list{display:flex;flex-direction:column;gap:10px;margin-bottom:16px}.learning-pref-item{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;background:#fafafa;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .15s ease}.learning-pref-item:hover{background:#f5f5f5;border-color:#d1d5db}.learning-pref-item.selected{background:#f0fdf4;border-color:#86efac}.learning-pref-checkbox{position:relative;flex-shrink:0;margin-top:2px}.learning-pref-checkbox input{position:absolute;opacity:0;width:0;height:0}.learning-pref-checkmark{display:block;width:18px;height:18px;border:2px solid #d1d5db;border-radius:4px;background:#fff;transition:all .15s ease}.learning-pref-checkbox input:checked+.learning-pref-checkmark{background:#22c55e;border-color:#22c55e}.learning-pref-checkbox input:checked+.learning-pref-checkmark:after{content:"";position:absolute;left:6px;top:2px;width:5px;height:10px;border:solid white;border-width:0 2px 2px 0;transform:rotate(45deg)}.learning-pref-checkbox input:focus+.learning-pref-checkmark{box-shadow:0 0 0 2px #22c55e33}.learning-pref-checkbox input:disabled+.learning-pref-checkmark{opacity:.5;cursor:not-allowed}.learning-pref-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;color:#6b7280}.learning-pref-item.selected .learning-pref-icon{background:#dcfce7;border-color:#86efac;color:#15803d}.learning-pref-content{flex:1;min-width:0}.learning-pref-label{font-size:13px;font-weight:500;color:#111827;margin-bottom:3px}.learning-pref-description{font-size:12px;color:#6b7280;line-height:1.4}.learning-prefs-status{min-height:20px;margin-bottom:16px}.learning-prefs-saving{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:#6b7280}.learning-prefs-spinner{animation:spin 1s linear infinite}.learning-prefs-saved{font-size:12px;color:#15803d}.learning-prefs-error{font-size:12px;color:#dc2626}.learning-prefs-footer{padding-top:16px;border-top:1px solid #e5e7eb}@media (max-width: 768px){.learning-pref-item{padding:12px 14px}.learning-pref-icon{width:28px;height:28px}.learning-prefs-info{padding:10px 12px}.settings-modal-container{flex-direction:column;height:100vh;max-height:100vh;border-radius:0}.settings-modal-close{top:12px;left:12px}.settings-modal-sidebar{width:100%;padding:52px 16px 16px;border-right:none;border-bottom:1px solid #e5e7eb}.settings-sidebar-nav{flex-direction:row;overflow-x:auto;gap:4px;-webkit-overflow-scrolling:touch}.settings-sidebar-item{flex-shrink:0;white-space:nowrap}.settings-modal-content{padding:20px 16px 24px}.settings-section-header{padding-bottom:16px;margin-bottom:20px}.settings-section-header h2{font-size:18px}.settings-plan-row{flex-direction:column;align-items:flex-start;gap:12px;padding:16px 0}.settings-delete-row{flex-direction:row;padding:16px 0}.settings-plan-row .settings-button-primary,.settings-plan-row .settings-button-manage{width:100%}.settings-payment-row{flex-direction:column;align-items:flex-start;gap:12px}.settings-payment-row .settings-button-manage{width:100%}.settings-benefits{margin-bottom:24px;padding-bottom:24px}.settings-benefits-title,.settings-benefit-item{font-size:13px}}.grade-level-disclaimer{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;background:#fef3c7;border:1px solid #fcd34d;border-radius:8px;margin-bottom:20px}.grade-level-disclaimer-icon{flex-shrink:0;margin-top:2px;color:#d97706}.grade-level-disclaimer-content{display:flex;flex-direction:column;gap:4px}.grade-level-disclaimer-title{font-size:13px;font-weight:600;color:#92400e}.grade-level-disclaimer-text{font-size:12px;color:#a16207;line-height:1.5}.grade-level-selector{display:flex;flex-direction:column;gap:20px;margin-bottom:16px}.grade-level-group{display:flex;flex-direction:column;gap:8px}.grade-level-group-title{font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.grade-level-options{display:flex;flex-wrap:wrap;gap:8px}.grade-level-option{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;background:#fafafa;border:1px solid #e5e7eb;border-radius:6px;cursor:pointer;transition:all .15s ease;font-size:13px;color:#374151}.grade-level-option:hover{background:#f5f5f5;border-color:#d1d5db}.grade-level-option.selected{background:#ecfdf5;border-color:#6ee7b7;color:#065f46}.grade-level-option:disabled{opacity:.5;cursor:not-allowed}.grade-level-option-icon{color:inherit}.grade-level-option-label{font-weight:400}.grade-level-option.selected .grade-level-option-label{font-weight:500}.grade-level-check{color:#10b981;margin-left:2px}.grade-level-status{min-height:20px;margin-bottom:16px}.grade-level-saving{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:#6b7280}.grade-level-spinner{animation:spin 1s linear infinite}.grade-level-saved{font-size:12px;color:#15803d}.grade-level-error{font-size:12px;color:#dc2626}.grade-level-footer{padding-top:16px;border-top:1px solid #e5e7eb}@media (max-width: 768px){.grade-level-disclaimer{padding:12px 14px}.grade-level-options{flex-direction:column}.grade-level-option{width:100%;justify-content:space-between}}.ai-transparency-acknowledged-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;background:#f0fdf4;border:1px solid #86efac;border-radius:6px;font-size:12px;color:#15803d;font-weight:500}.ai-transparency-points-list{display:flex;flex-direction:column;gap:12px;margin-top:12px}.ai-transparency-settings-point{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;background:#fafafa;border:1px solid #e5e7eb;border-radius:8px}.ai-transparency-settings-point-number{flex-shrink:0;width:22px;height:22px;background:#e5e7eb;border-radius:5px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;color:#374151}.ai-transparency-settings-point-content{flex:1;display:flex;flex-direction:column;gap:3px}.ai-transparency-settings-point-title{font-size:13px;font-weight:500;color:#111827}.ai-transparency-settings-point-description{font-size:12px;color:#6b7280;line-height:1.5}@media (max-width: 768px){.ai-transparency-settings-point{padding:10px 12px}.ai-transparency-settings-point-number{width:20px;height:20px;font-size:10px}.ai-transparency-settings-point-title{font-size:12px}.ai-transparency-settings-point-description{font-size:11px}}.ai-transparency-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:10000;padding:1rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.ai-transparency-container{background-color:#fff;border-radius:1rem;padding:2rem;max-width:28rem;width:100%;margin:0 1rem;max-height:90vh;overflow-y:auto;box-shadow:0 25px 50px -12px #00000040;position:relative;z-index:10;border:1px solid #f3f4f6}.ai-transparency-header{text-align:center;margin-bottom:1.5rem}.ai-transparency-icon-wrapper{width:4rem;height:4rem;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem;background:linear-gradient(135deg,#e57800,#cc6a00)}.ai-transparency-icon-wrapper svg{width:2rem;height:2rem;color:#fff}.ai-transparency-title{font-size:1.25rem;font-weight:700;color:#111827;margin:0 0 .5rem;line-height:1.3}.ai-transparency-description{font-size:.875rem;color:#6b7280;margin:0;line-height:1.5}.ai-transparency-content{margin-bottom:1.25rem;display:flex;flex-direction:column;gap:.75rem}.ai-transparency-point{display:flex;align-items:flex-start;gap:.75rem;padding:.875rem;background-color:#fff5eb;border:1px solid #FFD9A8;border-radius:.75rem}.ai-transparency-point-number{flex-shrink:0;width:1.5rem;height:1.5rem;background:linear-gradient(135deg,#e57800,#cc6a00);border-radius:.375rem;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600;color:#fff}.ai-transparency-point-content{flex:1;min-width:0}.ai-transparency-point-title{font-size:.875rem;font-weight:600;color:#111827;margin:0 0 .25rem}.ai-transparency-point-description{font-size:.8125rem;color:#6b7280;margin:0;line-height:1.5}.ai-transparency-learn-more{display:flex;align-items:center;justify-content:center;gap:.375rem;width:100%;padding:.5rem;margin-bottom:1rem;background:transparent;border:1px solid #FFD9A8;border-radius:.5rem;color:#e57800;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.ai-transparency-learn-more:hover{background-color:#fff5eb;border-color:#e57800;color:#cc6a00}.ai-transparency-footer{text-align:center}.ai-transparency-acknowledge-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;background:linear-gradient(135deg,#e57800,#cc6a00);color:#fff;border:none;border-radius:.75rem;padding:1rem 1.5rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 10px 15px -3px #0000001a}.ai-transparency-acknowledge-btn:hover:not(:disabled){background:linear-gradient(135deg,#cc6a00,#b35e00);box-shadow:0 20px 25px -5px #0000001a;transform:translateY(-2px)}.ai-transparency-acknowledge-btn:disabled{background:linear-gradient(135deg,#d1d5db,#9ca3af);color:#6b7280;cursor:not-allowed;transform:none;box-shadow:none;opacity:.5}.ai-transparency-settings-note{font-size:.75rem;color:#9ca3af;margin:.75rem 0 0}@media (max-width: 640px){.ai-transparency-container{margin:0 .5rem;padding:1.5rem}.ai-transparency-icon-wrapper{width:3.5rem;height:3.5rem}.ai-transparency-icon-wrapper svg{width:1.75rem;height:1.75rem}.ai-transparency-title{font-size:1.125rem}.ai-transparency-point{padding:.75rem;gap:.625rem}.ai-transparency-point-number{width:1.375rem;height:1.375rem;font-size:.6875rem}.ai-transparency-point-title{font-size:.8125rem}.ai-transparency-point-description{font-size:.75rem}.ai-transparency-acknowledge-btn{padding:.875rem 1.25rem}}.unified-loading-container{display:flex;align-items:center;justify-content:center;height:100%;width:100%;background:transparent}.unified-loading-content{display:flex;flex-direction:column;align-items:center;gap:20px}.unified-loading-logo-wrapper{position:relative;width:80px;height:80px;display:flex;align-items:center;justify-content:center}.unified-loading-logo{width:60px;height:60px;-o-object-fit:contain;object-fit:contain;z-index:2;animation:float 3s ease-in-out infinite;filter:drop-shadow(0 4px 12px rgba(0,0,0,.1))}@keyframes float{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-10px) scale(1.05)}}.unified-loading-message{font-size:16px;font-weight:500;color:#475569;text-align:center;letter-spacing:.02em}.unified-loading-dots{display:flex;gap:6px;align-items:center;height:20px}.unified-loading-dots .dot{width:8px;height:8px;background:#667eea;border-radius:50%;animation:bounce 1.4s infinite ease-in-out both}.unified-loading-dots .dot:nth-child(1){animation-delay:-.32s}.unified-loading-dots .dot:nth-child(2){animation-delay:-.16s}@keyframes bounce{0%,80%,to{transform:scale(.8);opacity:.5}40%{transform:scale(1.2);opacity:1}}@media (max-width: 768px){.unified-loading-logo-wrapper{width:60px;height:60px}.unified-loading-logo{width:48px;height:48px}.unified-loading-message{font-size:14px}.unified-loading-dots .dot{width:6px;height:6px}}.marketing-landing-page{--brand-orange: 25 100% 45%;--brand-orange-hover: 25 100% 40%;--brand-orange-accent: 25 100% 63%;--brand-orange-tint: 30 100% 96%;--brand-orange-border: 30 100% 82%;--brand-gold: 45 89% 61%;--brand-gold-dark: 45 72% 48%;--brand-gold-darker: 40 39% 40%;--brand-gold-light: 45 100% 95%;--brand-gold-very-light: 48 100% 97%;--text-primary: 220 24% 7%;--text-muted: 215 16% 35%;--text-light: 214 17% 66%;--text-neutral: 0 0% 18%;--brand-navy: 220 24% 7%;--surface: 0 0% 100%;--background: 0 0% 98%;--muted: 0 0% 98%;--soft-gray: 215 16% 35%;--border: 220 13% 91%;--border-light: 0 0% 94%;--track: 210 17% 93%;--subtle: 210 20% 98%;--inactive: 214 20% 83%;--ai-bubble-bg: 30 100% 98%;--ai-bubble-border: 25 100% 45%;--focus-ring: 45 89% 61%;--gradient-hero: linear-gradient(135deg, hsl(0 0% 98%), hsl(0 0% 96%));--gradient-orange: linear-gradient(135deg, hsl(25 100% 63%), hsl(30 90% 65%));--gradient-gold: linear-gradient(90deg, hsl(45 72% 48%) 0%, hsl(45 89% 61%) 100%);--gradient-achievement: linear-gradient(135deg, hsl(45 100% 95%) 0%, hsl(48 100% 97%) 100%);--shadow-card: 0 8px 30px -8px hsl(220 24% 7% / .15);--shadow-glow: 0 0 30px hsl(25 100% 45% / .3)}.marketing-landing-page{min-height:100vh;font-family:Inter,Segoe UI,Arial,sans-serif;line-height:1.6;color:hsl(var(--brand-navy));width:100%;overflow-x:hidden}.marketing-landing-page{scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.3) transparent}.marketing-landing-page::-webkit-scrollbar{width:8px}.marketing-landing-page::-webkit-scrollbar-track{background:transparent}.marketing-landing-page::-webkit-scrollbar-thumb{background-color:#0000004d;border-radius:4px}.marketing-landing-page::-webkit-scrollbar-thumb:hover{background-color:#00000080}@media (min-width: 768px){.marketing-header{padding:.625rem 2rem!important}}:root{--app-background-color: rgb(228, 227, 227);--side-panel-width: 0px}.layout-container{display:flex;flex-direction:column;min-height:100vh;position:relative;width:100%;background:var(--app-background-color)}html,body{min-height:100vh;margin:0;padding:0;background:var(--app-background-color)}.header{flex-shrink:0;overflow:hidden}.layout-main{flex:1;min-height:0;overflow:hidden;position:relative;display:flex;flex-direction:column}.layout-main.panels-open{overflow:hidden}.content-area,.page-scroll-wrapper{background:var(--app-background-color)!important}.page-scroll-wrapper>div{background:transparent!important}.content-area *:not(.page-scroll-wrapper>div>div){background-color:transparent!important}.content-area::-webkit-scrollbar{width:8px;height:0px}.content-area::-webkit-scrollbar-track{background:transparent;border-radius:4px}.content-area::-webkit-scrollbar-thumb{background-color:#0000001a!important;border-radius:4px;opacity:0!important;visibility:hidden!important;-webkit-transition:opacity 1s ease-out,visibility 1s ease-out!important;transition:opacity 1s ease-out,visibility 1s ease-out!important}.content-area.scrollbar-visible::-webkit-scrollbar-thumb{opacity:1!important;visibility:visible!important;-webkit-transition:opacity .1s ease-in,visibility .1s ease-in!important;transition:opacity .1s ease-in,visibility .1s ease-in!important}.content-area::-webkit-scrollbar-thumb:hover{background-color:#0000004d!important}.chat-view-container{position:fixed;top:0;left:var(--side-panel-width, 0px);right:0;bottom:0;display:flex;flex-direction:column;width:calc(100% - var(--side-panel-width, 0px));overflow:hidden;transition:left .3s cubic-bezier(.4,0,.2,1),width .3s cubic-bezier(.4,0,.2,1)}.app-background{background:#6b6b6b;min-height:100vh;width:100%}.layout-content{height:100vh;position:relative;padding-top:0;background:var(--app-background-color);width:100%}.main-content{height:100vh;position:relative;background:inherit}.canvas-container{height:100%;width:100%;background:inherit;position:relative;pointer-events:auto}.pdf-split-layout{display:flex;position:fixed;top:0;left:var(--side-panel-width, 0px);right:0;bottom:0;width:calc(100% - var(--side-panel-width, 0px));height:100vh;transition:left .3s cubic-bezier(.4,0,.2,1),width .3s cubic-bezier(.4,0,.2,1)}.pdf-split-left{flex:1;width:50%;height:100vh;display:flex;flex-direction:column;background:var(--app-background-color);border-right:1px solid #E0E0E0;overflow:hidden;position:relative;z-index:1}.pdf-split-right{flex:1;width:50%;height:100%;overflow:hidden;background:#fff}.pdf-content{width:100%;flex:1;min-height:0;position:relative;display:flex;flex-direction:column}.pdf-content .canvas-container{flex:1;min-height:0;position:relative;overflow:hidden}.pdf-content .content-area{height:100%!important;width:100%!important;overflow-y:auto!important;overflow-x:hidden!important;position:absolute!important;top:0!important;left:0!important;-webkit-overflow-scrolling:touch}.pdf-split-left .page-scroll-wrapper{width:-moz-fit-content!important;width:fit-content!important;max-width:100%;margin:0 auto;overflow-x:hidden!important}.pdf-split-left .content-area{max-width:100%!important;overflow-x:hidden!important}.pdf-split-left .header{position:relative!important;width:100%!important;left:auto!important;right:auto!important;top:auto!important;flex-shrink:0;overflow:visible;z-index:10;pointer-events:auto;justify-content:center!important}.pdf-split-layout .header{pointer-events:none!important}.pdf-split-left>.header{pointer-events:auto!important}.pdf-split-left .header-left,.pdf-split-left .header-mobile,.pdf-split-left .header-bug-report,.pdf-split-left .header-right{display:none!important}.pdf-split-left .header-center{position:static!important;transform:none!important;left:auto!important;flex:1;max-width:100%;overflow:visible;display:flex;align-items:center}@media (max-width: 1366px){.chat-view-container{padding-bottom:env(safe-area-inset-bottom,0px)}.pdf-split-layout{height:auto}.pdf-split-left,.pdf-split-right{height:100%}}@media (max-width: 768px){.pdf-split-layout{flex-direction:column}.pdf-split-left,.pdf-split-right{width:100%;height:50%}}.chat-window{display:flex;flex-direction:column;flex:1;min-height:0;min-width:0;max-width:100%;background:#f5f6fa;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;position:relative;overflow:hidden}.chat-header{background:#fff;border-bottom:1px solid rgba(0,0,0,.06);padding:16px 24px;display:flex;align-items:center;justify-content:space-between;height:64px;flex-shrink:0}.header-title{font-size:16px;font-weight:600;color:#1f2937;margin:0;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.header-description{font-size:14px;color:#6b7280;margin:0;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.messages-container{flex:1;height:100%;min-height:0;min-width:0;max-width:100%;overflow-y:auto;overflow-x:hidden;padding:12px 20px 20px;background:#fff;scroll-behavior:smooth;overscroll-behavior:contain;box-sizing:border-box}.input-area{padding:16px 24px;padding-bottom:calc(16px + env(safe-area-inset-bottom,0px));background:#fff;border-top:1px solid rgba(0,0,0,.06);flex-shrink:0}.input-container{display:flex;gap:12px;align-items:flex-end}.input-field{flex:1;min-height:44px;max-height:120px;padding:12px 16px;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;line-height:1.5;resize:none;background:#fff;transition:all .2s ease}.input-field:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.send-button{padding:10px 16px;background:#6366f1;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:8px;flex-shrink:0}.send-button:hover{background:#4f46e5;transform:translateY(-1px)}.send-button:disabled{background:#e5e7eb;cursor:not-allowed;transform:none}.message{margin:8px 0;padding:12px 16px;border-radius:12px;font-size:14px;line-height:1.5;max-width:85%;animation:fadeIn .3s ease}.user-message{background:var(--theme-color, #ef4444);color:#fff;margin-left:auto;border-radius:12px 12px 4px}.assistant-message{background:#fff;color:#1f2937;margin-right:auto;border-radius:12px 12px 12px 4px;box-shadow:0 1px 2px #0000000d}.warning-banner{margin:12px 24px;padding:12px 16px;background:#fffbeb;border:1px solid #fcd34d;border-radius:8px;color:#92400e;font-size:13px;display:flex;align-items:center;gap:8px;animation:slideFadeIn .3s ease;flex-shrink:0}@keyframes slideFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.messages-container::-webkit-scrollbar{width:6px}.messages-container::-webkit-scrollbar-track{background:transparent}.messages-container::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}.messages-container::-webkit-scrollbar-thumb:hover{background:#9ca3af}.pdf-import-loading-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#ffffffe6;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:1000;border-radius:12px}.pdf-import-loading-content{display:flex;flex-direction:column;align-items:center;gap:12px;padding:24px;background:#fff;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}@media (max-width: 1366px){.input-area{padding-bottom:calc(16px + env(safe-area-inset-bottom,0px))}}@media (max-width: 640px){.chat-window{border-radius:0}.chat-header{padding:12px 16px}.messages-container{padding:16px}.input-area{padding:12px 16px;padding-bottom:calc(12px + env(safe-area-inset-bottom,0px))}.message{max-width:90%}}.chat-window__ask-teacher-row{display:flex;justify-content:flex-end;padding:8px 16px 0;background:transparent}@media (max-width: 640px){.chat-window__ask-teacher-row{padding:6px 12px 0}}.chat-header{background:#fff;padding:16px 24px;display:flex;align-items:center;justify-content:space-between;height:64px;flex-shrink:0;position:relative}.header-content{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.header-title{font-size:16px;font-weight:600;color:#1f2937;margin:0;line-height:1.4;background:none;border:none;cursor:pointer;padding:0;transition:color .2s,-webkit-text-decoration .2s;transition:text-decoration .2s,color .2s;transition:text-decoration .2s,color .2s,-webkit-text-decoration .2s}.header-title:hover{text-decoration:underline;color:#2563eb}.header-description{font-size:14px;color:#6b7280;margin:0;line-height:1.4}.header-actions{display:flex;align-items:center;gap:12px}.new-chat-button,.refresh-button{background:none;border:none;font-size:18px;cursor:pointer;padding:8px;border-radius:6px;transition:background-color .2s,transform .2s;display:flex;align-items:center;justify-content:center;min-width:36px;height:36px}.new-chat-button:hover,.refresh-button:hover{background-color:#0000000d;transform:scale(1.05)}.new-chat-button:active,.refresh-button:active{transform:scale(.95)}.new-chat-button{color:#10b981}.new-chat-button:hover{background-color:#10b9811a}.chat-close-button{position:absolute;top:10px;right:10px;background:none;border:none;color:#fff;font-size:20px;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s}.chat-close-button:hover{background-color:#fff3}.plan-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;display:flex;align-items:center;justify-content:center;padding:20px;animation:fadeIn .3s ease-out}.plan-modal{background:#fff;border-radius:20px;box-shadow:0 25px 50px #00000026;max-width:600px;width:100%;max-height:85vh;overflow-y:auto;position:relative;animation:slideUp .3s ease-out}.plan-modal-close{position:absolute;top:20px;right:20px;background:none;border:none;font-size:24px;color:#6b7280;cursor:pointer;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease;z-index:10}.plan-modal-close:hover{background:#f3f4f6;color:#374151}.plan-modal-header{padding:24px 40px 16px;text-align:center;border-bottom:1px solid #f3f4f6}.plan-modal-header h2{margin:0 0 8px;font-size:28px;font-weight:800;color:#111827;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.plan-modal-header p{margin:0 0 12px;color:#6b7280;font-size:16px;line-height:1.4}.plan-value-prop{background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #f59e0b;border-radius:12px;padding:12px 16px;margin:0;color:#92400e;font-size:14px;font-weight:600;line-height:1.3}.plan-modal-content{padding:20px 40px}.plan-selection{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:20px}.plan-card{border:2px solid #e5e7eb;border-radius:16px;padding:20px;cursor:pointer;transition:all .3s ease;position:relative;background:#fff;margin-top:20px}.plan-card:hover{border-color:#667eea;transform:translateY(-2px);box-shadow:0 8px 25px #667eea26}.plan-card.selected{border-color:#667eea;background:linear-gradient(135deg,#f8fafc,#f1f5f9);box-shadow:0 8px 25px #667eea33}.plan-card.popular{border-color:#f59e0b;background:linear-gradient(135deg,#fffbeb,#fef3c7)}.plan-badge{position:absolute;top:-15px;left:50%;transform:translate(-50%);background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;padding:8px 20px;border-radius:20px;font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 4px 16px #0000001a;z-index:2;border:2px solid white}.plan-name{font-size:18px;font-weight:700;color:#111827;margin-bottom:6px;text-align:center}.plan-price{font-size:28px;font-weight:900;color:#667eea;text-align:center;margin-bottom:4px}.plan-total{font-size:14px;color:#6b7280;text-align:center;margin-bottom:8px}.plan-savings{background:linear-gradient(135deg,#10b981,#059669);color:#fff;padding:6px 12px;border-radius:20px;font-size:12px;font-weight:700;text-align:center;margin-bottom:16px;display:block}.plan-features{list-style:none;padding:0;margin:0}.feature-item{display:flex;align-items:center;margin-bottom:6px;font-size:13px;color:#374151;line-height:1.3}.feature-item:before{content:"✓";background:#10b981;color:#fff;border-radius:50%;width:18px;height:18px;display:flex;align-items:center;justify-content:center;margin-right:10px;font-size:12px;font-weight:700;flex-shrink:0}.plan-details{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-radius:12px;padding:16px 20px;margin-bottom:20px;border:1px solid #e2e8f0}.plan-info h4{margin:0 0 12px;font-size:16px;font-weight:700;color:#111827;display:flex;align-items:center;gap:8px}.plan-info h4:before{content:"💎";font-size:20px}.plan-info ul{list-style:none;padding:0;margin:0}.plan-info li{font-size:13px;color:#4b5563;margin-bottom:6px;display:flex;align-items:center;gap:8px}.plan-info li:before{content:"•";color:#667eea;font-weight:700}.plan-modal-footer{padding:0 40px 24px;display:flex;flex-direction:column;gap:8px}.plan-modal-footer .button-group{display:flex;gap:12px}.plan-modal-btn{flex:1;padding:14px 20px;border-radius:12px;font-size:15px;font-weight:700;cursor:pointer;transition:all .3s ease;border:none;display:flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;min-height:48px;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;outline:none;position:relative;overflow:hidden}.plan-modal-btn:focus{outline:2px solid #667eea;outline-offset:2px}.plan-modal-btn.primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;position:relative;overflow:hidden;box-shadow:0 4px 12px #667eea4d}.plan-modal-btn.primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #667eea66}.plan-modal-btn.primary:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 8px #667eea4d}.plan-modal-btn.secondary{background:#f3f4f6;color:#6b7280;border:1px solid #e5e7eb;box-shadow:0 2px 4px #0000001a}.plan-modal-btn.secondary:hover:not(:disabled){background:#e5e7eb;color:#374151;transform:translateY(-1px);box-shadow:0 4px 8px #00000026}.plan-modal-btn.secondary:active:not(:disabled){transform:translateY(0);box-shadow:0 1px 2px #0000001a}.plan-modal-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.checkout-note{font-size:12px;color:#6b7280;text-align:center;margin:8px 0 0;padding:0}.plan-modal-footer-note{padding:12px 40px 16px;text-align:center;margin:0}.plan-modal-footer-note p{margin:0;font-size:13px;color:#6b7280;line-height:1.4;background:#f9fafb;padding:12px 16px;border-radius:8px;border-left:4px solid #667eea}.loading-spinner{width:18px;height:18px;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:spin 1s linear infinite}.trust-indicators{display:flex;justify-content:center;gap:20px;padding:12px 32px 16px;border-top:1px solid #f3f4f6;margin-top:4px}.trust-item{display:flex;align-items:center;gap:6px;font-size:12px;color:#6b7280}.trust-icon{font-size:14px}@media (max-width: 768px){.plan-modal{margin:0;border-radius:20px 20px 0 0;max-height:90vh}.plan-modal-header,.plan-modal-content,.plan-modal-footer{padding-left:20px;padding-right:20px}.plan-selection{grid-template-columns:1fr;gap:12px}.plan-modal-footer{flex-direction:column}.plan-modal-header h2{font-size:24px}.plan-modal-header p{font-size:14px}.plan-card{padding:16px;margin-top:16px}.plan-details{padding:12px 16px}}@media (max-width: 480px){.plan-modal-header,.plan-modal-content,.plan-modal-footer{padding-left:20px;padding-right:20px}.plan-modal-header{padding-top:32px}.plan-modal-footer{padding-bottom:32px}}.view-switcher{position:relative;display:flex;align-items:center}.view-switcher-btn{display:flex;align-items:center;justify-content:center;padding:6px 8px;background:transparent;border:1px solid #e0e0e0;border-radius:6px;cursor:pointer;color:#374151;transition:all .2s ease}.view-switcher-btn:hover{background:#f3f4f6;border-color:#d1d5db}.view-switcher-dropdown{position:absolute;top:100%;right:0;margin-top:4px;background:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;padding:4px;min-width:140px;z-index:1000;animation:dropdownFadeIn .15s ease}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.view-option{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;background:transparent;border:none;border-radius:6px;cursor:pointer;color:#374151;font-size:14px;text-align:left;transition:background .15s ease}.view-option:hover{background:#f3f4f6}.view-icon{display:flex;align-items:center;color:#6b7280}.view-label{flex:1;white-space:nowrap}.input-area{display:flex;flex-direction:column;align-items:center;width:100%;padding:20px 24px 0!important;background:transparent;border-top:none;position:relative;margin:0;padding-bottom:calc(8px + env(safe-area-inset-bottom,0px))!important}.modern-chat-component .input-area{padding:0 24px!important;margin:20px 0 0!important;padding-bottom:calc(8px + env(safe-area-inset-bottom,0px))!important;background:transparent;border-top:none}.modern-input-area-floating{display:flex!important;flex-direction:column!important;align-items:center!important;width:100%!important;padding:0 24px!important;margin:20px 0 0!important;padding-bottom:calc(8px + env(safe-area-inset-bottom,0px))!important;background:transparent!important;border-top:none!important;border:none!important;position:relative!important}.modern-chat-component .modern-input-area-floating{padding:0 24px!important;margin:20px 0 0!important;padding-bottom:calc(15px + env(safe-area-inset-bottom,0px))!important;background:transparent!important;border:none!important;border-top:none!important}.input-area:before{display:none}.chat-input-pill{display:flex;align-items:center;width:100%;max-width:800px;height:auto;min-height:48px;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:9999px;padding:12px 16px;box-shadow:0 2px 6px #0000000f;margin:0 auto;position:relative;overflow:visible;align-self:flex-start}.chat-input-pill.has-chips{flex-direction:column;height:auto;min-height:48px;border-radius:24px;padding:12px;gap:8px;align-items:stretch;transform-origin:top center}.chat-input-pill.has-image{flex-direction:column;height:auto;min-height:48px;border-radius:24px;padding:12px;gap:12px;align-items:stretch}.chat-input-pill.has-multiline-text{border-radius:24px;padding:8px 6px;align-items:flex-start}.image-previews-container{display:flex;gap:8px;overflow-x:auto;overflow-y:hidden;padding:4px 0 8px;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.3) rgba(0,0,0,.1)}.image-previews-container::-webkit-scrollbar{height:8px}.image-previews-container::-webkit-scrollbar-track{background:#0000000d;border-radius:4px}.image-previews-container::-webkit-scrollbar-thumb{background:#0000004d;border-radius:4px}.image-previews-container::-webkit-scrollbar-thumb:hover{background:#0006}.chat-input-pill.has-image .left-action-section,.chat-input-pill.has-image .input-field-container,.chat-input-pill.has-image .input-actions{flex-shrink:0}.input-controls-row{display:flex;align-items:center;gap:8px;width:100%}.chat-input-pill.has-image.has-chips .input-controls-row{flex-direction:column;align-items:stretch}.chat-input-pill.has-image.has-chips .input-field-container{width:100%;flex:1}.chat-input-pill.has-image.has-chips .input-bottom-row{display:flex;flex-direction:row;align-items:center}.input-controls-row-default{display:contents}.input-controls-row-with-chips{display:flex;flex-direction:column;gap:8px;width:100%}.input-bottom-row{display:flex;align-items:center;gap:8px;justify-content:space-between;width:100%}.chat-input-pill.recording-mode{background:#f8fafc!important;border-color:#64748b33!important;box-shadow:0 4px 12px #64748b1a!important}.recording-mode,.recording-mode *{--theme-color: #64748b !important;--theme-color-dark: #475569 !important}.input-field-container{flex:1;position:relative;display:flex;align-items:center}.chat-input-field{flex:1;border:none;outline:none;background:transparent;font-size:15px;color:#000;padding:8px 12px;resize:none;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.5;overflow-y:hidden;min-height:36px;max-height:200px}.chat-input-field::-moz-placeholder{color:#0006}.chat-input-field::placeholder{color:#0006}.chat-input-field:disabled{background-color:transparent;cursor:not-allowed;opacity:.6}.left-action-section{display:flex;align-items:center;align-self:center;padding-left:4px}.input-actions{display:flex;align-items:center;align-self:center;gap:4px;padding-right:4px}.chat-action-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:transparent;border-radius:50%;cursor:pointer;color:#0009;transition:all .15s ease;padding:0;position:relative}.plus-btn:hover{background:#0000000a}.plus-btn:active{background:#00000014}.mic-btn{background:#0000000d;color:#000000b3;transition:all .2s ease}.mic-btn svg{display:block;margin:auto}.mic-btn:hover:not(:disabled){background:#0000001a;color:#000c}.mic-btn:active:not(:disabled){background:#00000026}.mic-btn img{filter:opacity(.7);transition:filter .2s ease}.mic-btn:hover img{filter:opacity(.8)}.hint-btn-tutoring{background:#3b82f614;color:#3b82f6;position:relative;transition:all .2s ease}.hint-btn-tutoring:hover:not(:disabled){background:#3b82f626;color:#2563eb}.hint-btn-tutoring:active:not(:disabled){background:#3b82f633}.hint-btn-tutoring .hint-count{position:absolute;top:-2px;right:-2px;background:#ef4444;color:#fff;border-radius:50%;width:16px;height:16px;font-size:10px;font-weight:600;display:flex;align-items:center;justify-content:center;border:2px solid white}.recording-mode{background:#ef4444;color:#fff;animation:recordingPulse 1.5s ease-in-out infinite}.recording-mode:hover:not(:disabled){background:#dc2626}@keyframes recordingPulse{0%,to{background:#ef4444;box-shadow:0 0 #ef444466}50%{background:#dc2626;box-shadow:0 0 0 4px #ef444433}}.send-btn{background:#acacac;color:#fff}.send-btn:hover:not(:disabled){background:#000}.send-btn:active:not(:disabled){background:#000}.send-btn:disabled{background:#e0e0e0;color:#0000004d;cursor:not-allowed}.send-btn.active{background:#000;color:#fff}.stop-mode{background:#af7171;color:#fff}.stop-mode:hover:not(:disabled){background:#dc2626}.stop-recording-btn{background:#64748b;color:#fff}.stop-recording-btn:hover:not(:disabled){background:#475569}.send-btn-recording{background:#000;color:#fff}.send-btn-recording:hover:not(:disabled){background:#374151}.transcribing-indicator{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;align-items:center;gap:8px;pointer-events:none;font-size:15px;color:#64748b;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}.transcribing-spinner{width:16px;height:16px;border:2px solid #e2e8f0;border-top:2px solid #64748b;border-radius:50%;animation:transcribingSpinner 1s linear infinite}.transcribing-text{font-weight:400;letter-spacing:.02em}@keyframes transcribingSpinner{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.voice-error-message{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);background:#fee2e2;border:1px solid #fecaca;border-radius:8px;padding:8px 12px;display:flex;align-items:center;gap:8px;max-width:300px;font-size:14px;color:#dc2626;box-shadow:0 2px 8px #0000001a;z-index:1001;animation:errorSlideIn .3s ease}.error-icon{font-size:16px;flex-shrink:0}.error-text{flex:1;line-height:1.4}.error-dismiss{background:none;border:none;color:#dc2626;font-size:18px;font-weight:700;cursor:pointer;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s ease;flex-shrink:0}.error-dismiss:hover{background:#dc26261a}@keyframes errorSlideIn{0%{opacity:0;transform:translate(-50%) translateY(10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.chat-input-field::-webkit-scrollbar{width:6px;height:6px}.chat-input-field::-webkit-scrollbar-track{background:transparent}.chat-input-field::-webkit-scrollbar-thumb{background-color:#0003;border-radius:3px}.chat-input-field::-webkit-scrollbar-thumb:hover{background-color:#0000004d}@media (max-width: 1366px){.input-area,.modern-input-area-floating{padding-bottom:calc(12px + env(safe-area-inset-bottom,0px))!important}}@media (max-width: 768px){.input-area{padding:12px 16px;padding-bottom:calc(12px + env(safe-area-inset-bottom,0px))!important}.chat-input-pill{max-width:calc(100% - 32px);height:44px}.chat-input-field{font-size:14px;padding:6px 10px}.chat-action-btn{width:30px;height:30px}}@media (max-width: 480px){.chat-input-pill{max-width:100%;height:42px;padding:3px 4px}.chat-input-field{font-size:14px;padding:6px 8px}.input-actions{gap:2px;padding-right:2px}}.chat-input-field{transition:height .1s ease}.plus-menu-popup{position:absolute;bottom:calc(100% + 8px);right:40px;background:#fff;border:1px solid rgba(0,0,0,.1);border-radius:12px;box-shadow:0 4px 16px #0000001f;padding:8px;z-index:1000;min-width:180px;animation:popupFadeIn .2s ease}@keyframes popupFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.plus-menu-content{display:flex;flex-direction:column;gap:4px}.plus-menu-item{display:flex;align-items:center;gap:12px;padding:10px 12px;background:transparent;border:none;border-radius:8px;cursor:pointer;transition:all .15s ease;width:100%;text-align:left;font-size:14px;color:#374151;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.plus-menu-item:hover{background:#0000000a}.plus-menu-item:active{background:#00000014}.plus-menu-section{margin-top:8px;padding-top:8px;border-top:1px solid rgba(0,0,0,.06)}.plus-menu-section-label{padding:8px 16px 4px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#00000080;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.menu-icon{font-size:18px;width:24px;text-align:center;flex-shrink:0}.menu-label{flex:1;font-weight:500}.chat-input-card,.toolbar-row,.input-row,.input-divider,.message-input,.send-button{display:none}.correct-state{animation:correctStateAppear .4s ease-out}@keyframes correctStateAppear{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.success-panel-compact{background:linear-gradient(135deg,#10b981,#059669);border:1px solid #10b981;border-radius:16px;color:#fff;padding:16px;box-shadow:0 4px 20px #10b9814d;width:100%;max-width:800px;margin:0 auto;display:flex;flex-direction:column;gap:12px}.success-header-compact{display:flex;align-items:center;gap:12px}.success-icon-svg{color:#fff;flex-shrink:0;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}.success-text-compact{flex:1;display:flex;flex-direction:column;gap:2px}.success-text-compact h4{margin:0;font-size:16px;font-weight:600;color:#fff}.success-xp-compact{font-size:12px;color:#fffc}.success-actions-compact{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.success-action-btn-compact{display:flex;align-items:center;gap:6px;padding:10px 12px;border:1.5px solid rgba(255,255,255,.25);border-radius:10px;background:#ffffff1a;color:#fff;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);white-space:nowrap}.success-action-btn-compact:hover{background:#fff3;border-color:#fff6;transform:translateY(-1px);box-shadow:0 2px 8px #00000026}.success-action-btn-compact.primary{background:#ffffff26;border-color:#ffffff59;font-weight:600}.success-action-btn-compact.primary:hover{background:#ffffff40}.success-action-btn-compact.refresh{background:#ffffff14}.success-action-btn-compact.refresh:hover{background:#ffffff2e}.success-action-btn-compact svg{flex-shrink:0;opacity:.9}.success-action-btn-compact.completed{background:#ffffff0d;border-color:#ffffff26;opacity:.6;cursor:not-allowed}.success-action-btn-compact.completed:hover{background:#ffffff0d;border-color:#ffffff26;transform:none;box-shadow:none}.success-action-btn-compact.completed svg{color:#fffc}@media (max-width: 640px){.success-actions-compact{grid-template-columns:1fr;gap:6px}.success-panel-compact{padding:14px;border-radius:14px}.success-action-btn-compact{padding:12px;justify-content:center}}@media (max-width: 480px){.success-header-compact{gap:10px}.success-text-compact h4{font-size:15px}.success-action-btn-compact{font-size:12px;gap:5px}.success-action-btn-compact svg{width:14px;height:14px}}.reflection-state{animation:reflectionStateAppear .4s ease-out}@keyframes reflectionStateAppear{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.reflection-panel-compact{background:linear-gradient(135deg,#6366f1,#8b5cf6);border:1px solid rgba(99,102,241,.2);border-radius:24px;padding:20px 24px;box-shadow:0 8px 32px #6366f126;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);width:100%;max-width:800px;position:relative;color:#fff;margin:0 auto}.reflection-header-compact{display:flex;align-items:flex-start;gap:16px;margin-bottom:20px}.reflection-icon-svg{background:#ffffff26;border-radius:12px;padding:8px;color:#fff;flex-shrink:0}.reflection-text-compact h4{margin:0 0 6px;font-size:18px;font-weight:600;color:#fff}.reflection-prompt-compact{font-size:14px;color:#fffc;line-height:1.5}.reflection-input-container{position:relative;margin-bottom:20px}.reflection-textarea{width:100%;padding:16px;border:1px solid rgba(255,255,255,.2);border-radius:12px;background:#ffffff1a;color:#fff;font-size:14px;line-height:1.6;resize:vertical;min-height:120px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .2s ease}.reflection-textarea:focus{outline:none;border-color:#fff6;background:#ffffff26;box-shadow:0 0 0 3px #ffffff1a}.reflection-textarea::-moz-placeholder{color:#fff9}.reflection-textarea::placeholder{color:#fff9}.reflection-recording-indicator{position:absolute;top:16px;left:16px;right:16px;display:flex;align-items:center;gap:12px;background:#ffffff1a;padding:12px 16px;border-radius:8px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.recording-text{font-size:14px;color:#ffffffe6;font-weight:500}.reflection-processing-indicator{display:flex;align-items:center;gap:8px;margin-top:8px;color:#fffc;font-size:14px}.processing-text{color:#fffc}.reflection-error-message{display:flex;align-items:center;gap:8px;margin-top:8px;padding:8px 12px;background:#ef444433;border:1px solid rgba(239,68,68,.3);border-radius:8px;color:#fecaca;font-size:13px}.reflection-error-message .error-dismiss{background:none;border:none;color:#fecaca;cursor:pointer;font-size:18px;margin-left:auto;padding:0;line-height:1}.reflection-actions-compact{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.reflection-action-btn-compact{display:flex;align-items:center;gap:8px;padding:10px 16px;border:1px solid rgba(255,255,255,.2);border-radius:12px;background:#ffffff1a;color:#fff;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);text-decoration:none;white-space:nowrap}.reflection-action-btn-compact:hover{background:#fff3;border-color:#ffffff4d;transform:translateY(-1px)}.reflection-action-btn-compact:disabled{opacity:.5;cursor:not-allowed;transform:none}.reflection-action-btn-compact.mic-btn{background:#22c55e33;border-color:#22c55e4d;color:#bbf7d0}.reflection-action-btn-compact.mic-btn:hover{background:#22c55e4d;border-color:#22c55e66}.reflection-action-btn-compact.cancel{background:#ef444433;border-color:#ef44444d;color:#fecaca}.reflection-action-btn-compact.cancel:hover{background:#ef44444d;border-color:#ef444466}.reflection-action-btn-compact.primary{background:#fff3;border-color:#fff6;color:#fff;font-weight:600}.reflection-action-btn-compact.primary:hover{background:#ffffff4d;border-color:#ffffff80}.reflection-action-btn-compact svg{width:16px;height:16px;flex-shrink:0}@media (max-width: 640px){.reflection-panel-compact{padding:16px 20px;margin:0 8px;border-radius:20px}.reflection-header-compact{gap:12px;margin-bottom:16px}.reflection-text-compact h4{font-size:16px}.reflection-actions-compact{gap:8px}.reflection-action-btn-compact{padding:8px 12px;font-size:13px}.reflection-action-btn-compact svg{width:14px;height:14px}}.chat-input-pill-wrapper{display:flex;flex-direction:column;width:100%;max-width:800px;position:relative;border-radius:16px;box-shadow:0 2px 6px #0000000f}.chat-input-pill-wrapper .chat-input-pill{border-radius:16px 16px 0 0!important;border-bottom:none;background:#fff!important;box-shadow:none!important;padding:4px 6px 0!important;min-height:40px!important}.chat-input-pill-wrapper .input-controls-row-default{margin-bottom:0!important;padding-bottom:0!important}.chat-input-pill-wrapper .chat-input-field{padding-bottom:2px!important;min-height:24px!important}.chat-input-pill-wrapper .input-field-container{margin-bottom:0!important;padding-bottom:0!important}.input-action-toolbar{display:flex;align-items:center;justify-content:space-between;padding:2px 12px 8px;border:1px solid rgba(0,0,0,.08);border-top:none;background:#fff;gap:12px;border-radius:0 0 16px 16px;box-shadow:0 2px 6px #0000000f}.toolbar-left{display:flex;align-items:center;gap:0px!important;flex:1;min-width:0}.toolbar-right{display:flex;align-items:center;gap:12px;flex-shrink:0}.toolbar-mic-send-button{width:36px;height:36px;padding:0;background:#000;border:none;border-radius:50%;cursor:pointer;color:#fff;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.toolbar-mic-send-button:hover:not(:disabled){background:#2a2a2a;transform:scale(1.05)}.toolbar-mic-send-button:active:not(:disabled){transform:scale(.95)}.toolbar-mic-send-button:disabled{background:#0000001a;color:#0000004d;cursor:not-allowed}.toolbar-stop-recording-button{width:36px;height:36px;padding:0;background:#ef4444;border:none;border-radius:50%;cursor:pointer;color:#fff;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.toolbar-stop-recording-button:hover{background:#dc2626;transform:scale(1.05)}.toolbar-stop-recording-button:active{transform:scale(.95)}.toolbar-send-recording-button{width:36px;height:36px;padding:0;background:#10b981;border:none;border-radius:50%;cursor:pointer;color:#fff;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.toolbar-send-recording-button:hover{background:#059669;transform:scale(1.05)}.toolbar-send-recording-button:active{transform:scale(.95)}.check-work-toolbar-button{height:36px;padding:0 14px;background:none;border:1px solid #E5E7EB;border-radius:8px;cursor:pointer;color:#1f2937;font-size:14px;font-weight:500;white-space:nowrap;transition:all .15s ease;line-height:1}.check-work-toolbar-button:hover{background:#f3f4f6;color:#374151;border-color:#d1d5db}.check-work-toolbar-button:active{background:#e5e7eb}@media (max-width: 768px){.input-action-toolbar{padding:10px 14px}.toolbar-left{gap:10px}.toolbar-right{gap:14px}.toolbar-mic-send-button,.toolbar-stop-recording-button,.toolbar-send-recording-button{width:40px;height:40px}.check-work-toolbar-button{padding:6px 12px;font-size:12px}}.audio-waveform{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;gap:8px;padding:8px 12px}.waveform-container{display:flex;align-items:center;justify-content:center;gap:2px;height:20px;width:100%;max-width:200px}.waveform-bar{background:linear-gradient(to top,#64748b,#94a3b8,#cbd5e1)!important;width:2px;min-height:3px;border-radius:1px;transition:height .05s ease-out;animation:waveformPulse 1.5s ease-in-out infinite}.waveform-bar:nth-child(odd){animation-delay:.1s}.waveform-bar:nth-child(2n){animation-delay:.2s}@keyframes waveformPulse{0%,to{opacity:.8;transform:scaleY(.9)}50%{opacity:1;transform:scaleY(1.1)}}.recording-indicator{display:flex;align-items:center;gap:6px;font-size:12px;color:#64748b;font-weight:500}.recording-dot{width:8px;height:8px;background:#64748b!important;border-radius:50%;animation:recordingBlink 1s ease-in-out infinite}@keyframes recordingBlink{0%,to{opacity:1;transform:scale(1)}50%{opacity:.3;transform:scale(.8)}}.recording-text{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;letter-spacing:.5px}@media (max-width: 768px){.waveform-container{max-width:250px;height:28px}.waveform-bar{width:2px}.recording-indicator{font-size:11px}.recording-dot{width:6px;height:6px}}@media (max-width: 480px){.waveform-container{max-width:200px;height:24px;gap:1px}.waveform-bar{width:2px}}.smart-symbols-island{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);width:-moz-fit-content;width:fit-content;max-width:100%;height:56px;display:inline-flex;align-items:center;gap:8px;overflow:visible;background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(0,0,0,.1);border-radius:28px;padding:8px 12px;box-shadow:0 4px 6px #0000000d,0 1px 3px #0000001a;z-index:100;pointer-events:auto;-webkit-user-select:none;-moz-user-select:none;user-select:none}.symbols-container{display:flex;flex-wrap:nowrap;gap:6px;align-items:center;width:-moz-fit-content;width:fit-content;scrollbar-width:none;-ms-overflow-style:none}.symbols-container::-webkit-scrollbar{display:none}.symbol-button{border:none;margin:0;padding:0;background:none;outline:none;font-family:inherit;background:#3b82f61a;border:1px solid rgba(59,130,246,.2);border-radius:8px;width:44px;height:40px;flex:0 0 44px;font-size:16px;font-weight:500;color:#1e40af;line-height:1;cursor:pointer;transition:all .15s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none;overflow:hidden;display:flex;align-items:center;justify-content:center}.symbol-button:hover{background:#3b82f633;border-color:#3b82f666;transform:scale(1.05)}.symbol-button:focus-visible{outline:2px solid #3b82f6;outline-offset:2px}.symbol-button:active{transform:scale(.98)}.close-button{display:flex;align-items:center;justify-content:center;background:#ef44441a;border:1px solid rgba(239,68,68,.2);border-radius:6px;width:28px;height:28px;min-width:28px;min-height:28px;padding:0;color:#dc2626;cursor:pointer;transition:all .15s ease;flex-shrink:0;outline:none}.close-button:hover{background:#ef444433;border-color:#ef444466}.close-button:focus-visible{outline:2px solid #ef4444;outline-offset:2px}.close-button:active{transform:scale(.9)}@media (max-width: 768px){.smart-symbols-island{display:none}.symbol-button{font-size:14px;width:38px;height:36px;min-width:38px;min-height:36px;padding:0}.symbols-container{gap:4px}.close-button{width:24px;height:24px;min-width:24px;min-height:24px}.close-button svg{width:12px;height:12px}}@media (prefers-color-scheme: dark){.smart-symbols-island{background:#1f2937f2;border-color:#ffffff1a}.symbol-button{background:#3b82f633;border-color:#3b82f64d;color:#93c5fd}.symbol-button:hover{background:#3b82f64d;border-color:#3b82f680}.close-button{background:#ef444433;border-color:#ef44444d;color:#fca5a5}.close-button:hover{background:#ef44444d;border-color:#ef444480}}.qr-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .2s ease-out}.qr-modal-content{background:#fff;border-radius:16px;max-width:500px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease-out}.qr-modal-header{display:flex;align-items:center;justify-content:space-between;padding:24px 24px 16px;border-bottom:1px solid #e5e7eb}.qr-modal-header h3{margin:0;font-size:20px;font-weight:600;color:#111827}.qr-close-btn{background:none;border:none;padding:8px;cursor:pointer;color:#6b7280;border-radius:6px;transition:all .2s;display:flex;align-items:center;justify-content:center}.qr-close-btn:hover{background:#f3f4f6;color:#374151}.qr-modal-body{padding:24px}.qr-instructions{text-align:center;margin-bottom:24px}.qr-instructions p{margin:0;color:#6b7280;font-size:15px}.qr-code-container{display:flex;justify-content:center;align-items:center;min-height:300px;background:#f9fafb;border-radius:12px;padding:20px;margin-bottom:24px}.qr-code-image{width:300px;height:300px;border-radius:8px;background:#fff;padding:8px}.qr-loading{text-align:center}.qr-spinner{width:40px;height:40px;border:3px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:spin .8s linear infinite;margin:0 auto 12px}.qr-loading p{margin:0;color:#6b7280;font-size:14px}.qr-alternative{margin-top:24px}.qr-divider{text-align:center;position:relative;margin:0 0 16px}.qr-divider:before,.qr-divider:after{content:"";position:absolute;top:50%;width:40%;height:1px;background:#e5e7eb}.qr-divider:before{left:0}.qr-divider:after{right:0}.qr-divider span{background:#fff;padding:0 12px;color:#9ca3af;font-size:13px}.qr-url-container{display:flex;gap:8px}.qr-url-input{flex:1;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:13px;color:#374151;background:#f9fafb;font-family:monospace}.qr-url-input:focus{outline:none;border-color:#3b82f6;background:#fff}.qr-copy-btn{padding:10px 20px;background:#3b82f6;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.qr-copy-btn:hover{background:#2563eb;transform:translateY(-1px)}.qr-copy-btn:active{transform:translateY(0)}.qr-waiting{margin-top:24px;text-align:center;padding:16px;background:#f0f9ff;border-radius:8px;border:1px solid #bfdbfe}.qr-pulse{width:12px;height:12px;background:#3b82f6;border-radius:50%;margin:0 auto 8px;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.5);opacity:.5}}.qr-waiting p{margin:0;color:#1e40af;font-size:14px;font-weight:500}@media (max-width: 640px){.qr-modal-content{width:95%;border-radius:12px}.qr-code-container{min-height:250px}.qr-code-image{width:250px;height:250px}}.gallery-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .2s ease-out}.gallery-modal-content{background:#fff;border-radius:16px;max-width:800px;width:90%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease-out}.gallery-modal-header{display:flex;align-items:center;justify-content:space-between;padding:24px 24px 16px;border-bottom:1px solid #e5e7eb;flex-shrink:0}.gallery-modal-header h3{margin:0;font-size:20px;font-weight:600;color:#111827}.gallery-header-actions{display:flex;align-items:center;gap:12px}.gallery-select-all-btn{padding:8px 16px;background:#f3f4f6;color:#374151;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.gallery-select-all-btn:hover{background:#e5e7eb}.gallery-close-btn{background:none;border:none;padding:8px;cursor:pointer;color:#6b7280;border-radius:6px;transition:all .2s;display:flex;align-items:center;justify-content:center}.gallery-close-btn:hover{background:#f3f4f6;color:#374151}.gallery-modal-body{padding:24px;overflow-y:auto;flex:1;min-height:0}.gallery-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;color:#9ca3af}.gallery-empty svg{margin-bottom:16px;opacity:.5}.gallery-empty p{margin:0 0 8px;font-size:16px;font-weight:500;color:#6b7280}.gallery-empty span{font-size:14px;color:#9ca3af}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;max-width:750px;margin:0 auto}.gallery-item{position:relative;border-radius:12px;overflow:hidden;cursor:pointer;border:3px solid transparent;transition:all .2s;background:#f9fafb;display:flex;align-items:center;justify-content:center;min-height:100px;max-height:200px}.gallery-item:hover{border-color:#3b82f6;transform:scale(1.02)}.gallery-item.selected{border-color:#3b82f6}.gallery-item img{width:100%;height:auto;max-height:200px;-o-object-fit:contain;object-fit:contain}.gallery-item-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#0000001a;display:flex;align-items:flex-start;justify-content:flex-end;padding:8px;opacity:0;transition:opacity .2s}.gallery-item:hover .gallery-item-overlay,.gallery-item.selected .gallery-item-overlay{opacity:1}.gallery-checkbox{width:24px;height:24px;border:2px solid white;border-radius:6px;background:#0000004d;display:flex;align-items:center;justify-content:center;transition:all .2s}.gallery-item.selected .gallery-checkbox{background:#3b82f6;border-color:#3b82f6}.gallery-modal-footer{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;border-top:1px solid #e5e7eb;flex-shrink:0}.gallery-selection-count{font-size:14px;color:#6b7280;font-weight:500}.gallery-footer-actions{display:flex;gap:12px}.gallery-cancel-btn{padding:10px 20px;background:#f3f4f6;color:#374151;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.gallery-cancel-btn:hover{background:#e5e7eb}.gallery-confirm-btn{padding:10px 24px;background:#3b82f6;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.gallery-confirm-btn:hover:not(:disabled){background:#2563eb;transform:translateY(-1px)}.gallery-confirm-btn:active:not(:disabled){transform:translateY(0)}.gallery-confirm-btn:disabled{background:#9ca3af;cursor:not-allowed;opacity:.5}@media (max-width: 768px){.gallery-modal-content{width:95%;border-radius:12px}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:10px}.gallery-item{min-height:80px;max-height:150px}.gallery-item img{max-height:150px}.gallery-modal-header{padding:20px 16px 12px}.gallery-modal-body{padding:16px}.gallery-modal-footer{padding:12px 16px}}@media (max-width: 480px){.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:8px}.gallery-item{min-height:70px;max-height:120px}.gallery-item img{max-height:120px}.gallery-select-all-btn{font-size:13px;padding:6px 12px}}.plus-menu-container{position:relative;display:inline-block}.plus-menu-button{background:none;border:none;padding:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s ease}.plus-menu-button:hover{background-color:#0000000d}.plus-menu-button:active{background-color:#0000001a}.plus-menu-dropdown{position:absolute;bottom:100%;left:0;margin-bottom:8px;background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000026;padding:8px;min-width:220px;z-index:99999;animation:slideUp .2s ease;pointer-events:auto}.plus-menu-item{width:100%;display:flex;align-items:center;gap:12px;padding:10px 12px;background:none;border:none;border-radius:8px;cursor:pointer;transition:background-color .15s ease;text-align:left;font-size:14px;color:#1f2937}.plus-menu-item:hover{background-color:#f3f4f6}.plus-menu-item:active{background-color:#e5e7eb}.menu-icon{display:flex;align-items:center;justify-content:center;color:#6b7280;flex-shrink:0}.menu-label{font-weight:500;flex:1}@media (max-width: 768px){.plus-menu-dropdown{min-width:200px}.plus-menu-item{font-size:13px;padding:8px 10px}}.tools-menu-container{position:relative;display:inline-block}.tools-menu-button{width:36px;height:36px;padding:0;background:transparent;border:none;border-radius:8px;cursor:pointer;color:#1f2937;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.tools-menu-button:hover{background:#f3f4f6}.tools-menu-button:active{background:#e5e7eb}.tools-menu-dropdown{position:absolute;bottom:calc(100% + 8px);left:0;background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000026;padding:8px;z-index:1000;min-width:220px;overflow:hidden;animation:slideUp .2s ease}.tools-menu-item{display:flex;align-items:center;gap:12px;padding:10px 12px;width:100%;border:none;background:none;cursor:pointer;border-radius:8px;transition:background-color .15s ease;text-align:left;color:#1f2937;font-size:14px}.tools-menu-item:hover{background:#f3f4f6}.tools-menu-item:active{background:#e5e7eb}.menu-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;pointer-events:none}.menu-label{flex:1;font-size:13px;font-weight:500;pointer-events:none}@keyframes slideUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.tools-menu-button{width:40px;height:40px}.tools-menu-dropdown{min-width:200px}.tools-menu-item{padding:12px 16px}.menu-label{font-size:14px}}.image-attachment-preview{flex-shrink:0;display:flex;justify-content:flex-start}.image-preview-container{position:relative;display:inline-flex;line-height:0}.preview-image{display:block;width:80px;height:80px;-o-object-fit:cover;object-fit:cover;border-radius:6px}.preview-actions{position:absolute;top:4px;right:4px;display:flex;gap:4px}.preview-action-btn{width:24px;height:24px;border-radius:50%;background:#000000b3;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.preview-action-btn:hover{background:#000000e6;transform:scale(1.05)}.preview-action-btn:active{transform:scale(.95)}.preview-action-btn svg{width:12px;height:12px}.pdf-attachment-preview-horizontal{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:8px 12px;max-width:280px;position:relative}.pdf-icon-box{flex-shrink:0;width:36px;height:36px;background:#fee2e2;border-radius:6px;display:flex;align-items:center;justify-content:center}.pdf-icon-box svg{color:#dc2626}.pdf-text-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;align-items:flex-start}.pdf-file-name{font-size:13px;font-weight:500;color:#1f2937;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%;max-width:100%}.pdf-file-label{font-size:11px;color:#6b7280;text-transform:uppercase;font-weight:500}.pdf-remove-btn{flex-shrink:0;width:20px;height:20px;border-radius:50%;background:#f3f4f6;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;color:#6b7280}.pdf-remove-btn:hover{background:#e5e7eb;color:#1f2937}.pdf-preview-icon{display:flex;flex-direction:column;align-items:center;justify-content:center;width:80px;height:80px;background:#f3f4f6;border-radius:6px;padding:8px;gap:4px}.pdf-preview-icon svg{width:32px;height:32px;color:#ef4444}@media (max-width: 768px){.preview-image,.pdf-preview-icon{width:70px;height:70px}.preview-action-btn{width:24px;height:24px}.preview-action-btn svg{width:12px;height:12px}}:root{--standard-glow-duration: 2s;--standard-border-pulse-duration: 2s;--standard-spin-duration: 1s;--standard-fade-duration: .2s;--standard-glow-animation: standardGlow 2s ease-in-out infinite;--standard-border-pulse-animation: standardBorderPulse 2s ease-in-out infinite;--standard-spin-animation: standardSpin 1s linear infinite;--standard-fade-animation: fadeInScale .2s ease-out}@keyframes standardGlow{0%,to{box-shadow:0 0 5px var(--theme-color-glow, rgba(74, 105, 189, .3))}50%{box-shadow:0 0 15px var(--theme-color-glow, rgba(74, 105, 189, .7))}}@keyframes standardBorderPulse{0%,to{border-color:var(--theme-color, #4a69bd);box-shadow:0 0 5px var(--theme-color-glow, rgba(74, 105, 189, .3))}50%{border-color:var(--theme-color-light, #6c7ae0);box-shadow:0 0 15px var(--theme-color-glow, rgba(74, 105, 189, .7))}}@keyframes standardSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.highlighted{border-color:var(--theme-color, #4a69bd);animation:var(--standard-border-pulse-animation)}.highlighted.glow{animation:var(--standard-glow-animation)}.highlighted.pulse{animation:var(--standard-border-pulse-animation)}.loading-spinner{animation:var(--standard-spin-animation)}.toolbar-popup{background-color:#fff;border:1px solid #ddd;border-radius:6px;box-shadow:0 4px 12px #00000026;overflow:hidden;display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;box-sizing:border-box!important;word-wrap:break-word;overflow-wrap:break-word}.popup-header{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;border-bottom:1px solid #eee;background:linear-gradient(135deg,var(--theme-color, #4a69bd) 0%,var(--theme-color-dark, #3b529a) 100%);color:#fff}.popup-title{font-weight:500;font-size:14px;color:#fff}.popup-close{background:none;border:none;cursor:pointer;color:#fffc;font-size:16px;padding:0;display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;transition:all .2s ease}.popup-close:hover{background-color:#ffffff1a;color:#fff}.popup-instructions{padding:10px 12px;background-color:#fff;border-bottom:1px solid var(--theme-color-border, rgba(74, 105, 189, .15));font-size:12px;color:var(--theme-color, #4a69bd);line-height:1.4}.popup-tabs{display:flex;overflow-x:auto;background-color:#f0f0f0;border-bottom:1px solid #ddd;flex-shrink:0;min-height:40px}.popup-tab{padding:4px 12px;font-size:12px;white-space:nowrap;cursor:pointer;border:none;background:none;color:#555;transition:all .2s ease;line-height:1;height:auto}.popup-tab:hover{background-color:#e5e5e5}.popup-tab.active{background-color:#fff;color:var(--theme-color, #4a69bd);font-weight:500;border-bottom:2px solid var(--theme-color, #4a69bd)}.popup-content{flex:1;overflow-y:auto;padding:12px;box-sizing:border-box;width:100%}.popup-content::-webkit-scrollbar{width:6px;height:6px}.popup-content::-webkit-scrollbar-track{background:transparent;border-radius:3px}.popup-content::-webkit-scrollbar-thumb{background-color:#0003;border-radius:3px;-webkit-transition:background-color .3s;transition:background-color .3s}.popup-content::-webkit-scrollbar-thumb:hover{background-color:#0006}.popup-button{padding:10px 12px;border:1px solid #ddd;border-radius:4px;background-color:#fff;font-size:13px;cursor:pointer;transition:all .2s ease;width:100%;box-sizing:border-box;word-wrap:break-word;overflow-wrap:break-word;white-space:normal;text-align:left}.popup-button:hover{background-color:#f5f5f5;border-color:#bbb}.popup-button:active{background-color:#eee;transform:translateY(1px)}.popup-loading,.popup-error,.popup-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px 0;text-align:center}.popup-loading p,.popup-error p,.popup-empty-state p{color:#666;font-size:14px;margin:10px 0}.popup-error p{color:#e74c3c}.popup-spinner-container{display:flex;justify-content:center;align-items:center;margin-bottom:10px}.popup-spinner{width:40px;height:40px;border:3px solid rgba(74,105,189,.1);border-radius:50%;border-top-color:var(--theme-color, #4a69bd);animation:var(--standard-spin-animation)}.math-symbols-popup{width:360px!important;max-width:360px!important;min-width:360px!important;max-height:350px;box-sizing:border-box!important}.math-symbols-section{display:flex;flex-wrap:wrap;gap:6px}.math-symbol-button{display:flex;align-items:center;justify-content:center;min-width:32px;height:32px;padding:0 6px;border:1px solid #ddd;border-radius:4px;background-color:#fff;font-size:14px;cursor:pointer;transition:all .2s ease}.math-symbol-button:hover{background-color:#f5f5f5;border-color:#bbb}.math-symbol-button:active{background-color:#eee;transform:translateY(1px)}.scientific-calculator-advanced{background:#fff;border-radius:12px;box-shadow:0 4px 24px #00000026;padding:0;width:100%;font-family:Inter,Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;position:relative;overflow:hidden;display:flex;flex-direction:column;height:100%}:root{--primary-text: #202124;--secondary-text: #5F6368;--border-light: #DADCE0;--border-medium: #E6E8F0;--button-white: #FFFFFF;--button-gray: #E6E6E6;--button-gray-border: #CFCFCF;--accent-blue: #1A73E8;--disabled-opacity: .38;--base-spacing: 8px;--button-radius: 12px;--pill-radius: 16px}.popup-header.calculator-drag-handle{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#f8fafc;border-bottom:1px solid var(--border-light);cursor:move;-webkit-user-select:none;-moz-user-select:none;user-select:none;flex-shrink:0}.drag-title{font-size:14px;font-weight:600;color:var(--primary-text)}.drag-grip{color:var(--secondary-text);display:flex;align-items:center;justify-content:center;opacity:.6}.drag-grip:hover{opacity:1}.calculator-top-bar{height:48px;background:#fff;border-bottom:1px solid var(--border-light);display:flex;align-items:center;padding:0 12px;flex-shrink:0}.expression-section{display:flex;align-items:center;width:100%;gap:12px}.expression-input{flex:1;border:none;outline:none;background:transparent;font-size:16px;color:var(--primary-text);font-family:JetBrains Mono,SF Mono,Consolas,monospace;padding:8px 0}.expression-input::-moz-placeholder{color:var(--secondary-text);opacity:.7}.expression-input::placeholder{color:var(--secondary-text);opacity:.7}.result-section{color:var(--primary-text);font-weight:600;font-size:16px;font-family:JetBrains Mono,SF Mono,Consolas,monospace;white-space:nowrap}.copy-btn{width:32px;height:32px;border-radius:50%;background:#f8f9fa;border:1px solid var(--border-light);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease;flex-shrink:0}.copy-btn:hover{background:#f1f3f4;transform:scale(1.05)}.copy-btn:active{transform:scale(.95)}.calculator-toolbar{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-bottom:1px solid var(--border-medium);background:#fafbfc;flex-shrink:0}.toolbar-left{display:flex;align-items:center;gap:24px}.toolbar-right{display:flex;align-items:center;gap:8px}.tab{background:none;border:none;font-size:14px;font-weight:500;color:var(--secondary-text);cursor:pointer;padding:8px 0;position:relative;transition:color .15s ease;text-transform:lowercase}.tab:hover{color:var(--primary-text)}.tab.active{color:var(--primary-text);font-weight:600}.tab.active:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:2px;background:var(--accent-blue);border-radius:1px}.angle-toggle{display:flex;gap:6px}.angle-btn{padding:6px 16px;border:1px solid var(--border-light);background:#fff;color:var(--secondary-text);font-size:12px;font-weight:500;border-radius:var(--pill-radius);cursor:pointer;transition:all .15s ease;min-width:64px;text-align:center}.angle-btn:hover{background:#f8f9fa}.angle-btn.active{background:var(--accent-blue);color:#fff;border-color:var(--accent-blue)}.toolbar-btn{width:32px;height:32px;border:none;background:transparent;color:var(--secondary-text);cursor:pointer;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.toolbar-btn:hover:not(:disabled){background:#00000014;color:var(--primary-text)}.toolbar-btn:disabled{opacity:var(--disabled-opacity);cursor:not-allowed}.toolbar-btn-text{background:none;border:none;color:var(--secondary-text);font-size:12px;cursor:pointer;padding:6px 8px;border-radius:4px;transition:all .15s ease}.toolbar-btn-text:hover{background:#00000014;color:var(--primary-text)}.abc-modifiers{display:flex;align-items:center;justify-content:space-between;padding:6px 12px;background:#f8f9fa;border-bottom:1px solid var(--border-medium);flex-shrink:0}.modifier-btn{padding:4px 8px;border:1px solid var(--border-light);background:#fff;color:var(--secondary-text);font-size:11px;font-weight:500;border-radius:4px;cursor:pointer;transition:all .15s ease}.modifier-btn:hover{background:#f1f3f4}.modifier-btn.active{background:var(--accent-blue);color:#fff;border-color:var(--accent-blue)}.page-controls{display:flex;align-items:center;gap:8px}.page-btn{width:24px;height:24px;border:none;background:#fff;color:var(--secondary-text);border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease;border:1px solid var(--border-light)}.page-btn:hover{background:#f1f3f4}.page-indicator{font-size:11px;color:var(--secondary-text);min-width:50px;text-align:center}.calculator-mode-toggle{padding:6px 12px;background:#f8f9fa;border-bottom:1px solid var(--border-medium);flex-shrink:0}.mode-tabs{display:flex;gap:4px}.mode-tab{padding:6px 12px;border:none;border-radius:6px;background:transparent;color:#6b7280;font-size:12px;font-weight:500;cursor:pointer;transition:all .15s ease}.mode-tab:hover{background:#e5e7eb;color:#374151}.mode-tab.active{background:var(--accent-blue);color:#fff}.keypad-grid{display:grid;grid-template-columns:2fr 2fr 1fr 2fr;gap:6px;padding:8px;background:#fff;flex:1;align-content:stretch;min-height:0;width:100%}.keypad-block{display:flex;flex-direction:column;gap:6px;height:100%;width:100%;min-height:0}.keypad-row{display:flex;gap:6px;flex:1;min-height:0;width:100%}.keypad-btn{flex:1;min-height:28px;width:100%;border-radius:8px;border:1px solid var(--border-light);font-size:14px;font-weight:500;cursor:pointer;transition:all .15s ease;display:flex;align-items:center;justify-content:center;position:relative;outline:none}.keypad-btn:hover{transform:translateY(-1px);box-shadow:0 2px 8px #0000001f}.keypad-btn:active{transform:translateY(0);box-shadow:0 1px 3px #0000001f}.keypad-btn:focus{box-shadow:0 0 0 2px #1a73e866}.f-block-container .keypad-btn{background:var(--button-white);color:var(--primary-text);border-color:var(--border-light)}.f-block-container .keypad-btn:hover{background:#f8f9fa}.n-btn{background:var(--button-gray)!important;color:var(--primary-text)!important;border-color:var(--button-gray-border)!important;font-weight:600}.n-btn:hover{background:#d9d9d9!important}.o-block{display:flex;flex-direction:column;gap:6px;height:100%;width:100%}.o-btn{background:var(--button-white)!important;color:var(--primary-text)!important;border-color:var(--border-light)!important;font-size:20px;font-weight:400}.o-btn:hover{background:#f8f9fa!important}.u-block .keypad-row:nth-child(1) .keypad-btn,.u-block .keypad-row:nth-child(2) .keypad-btn{background:var(--button-white);color:var(--primary-text);border-color:var(--border-light)}.u-block .keypad-row:nth-child(1) .keypad-btn:hover,.u-block .keypad-row:nth-child(2) .keypad-btn:hover{background:#f8f9fa}.delete-btn{background:var(--button-gray)!important;border-color:var(--button-gray-border)!important}.delete-btn:hover{background:#d9d9d9!important}.spacer-btn{background:var(--button-gray)!important;border-color:var(--button-gray-border)!important;cursor:default;opacity:.5}.spacer-btn:hover{transform:none;box-shadow:none;background:var(--button-gray)!important}.delete-icon{display:flex;align-items:center;justify-content:center}.delete-square{width:18px;height:18px;background:#333;color:#fff;border-radius:3px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700}.enter-btn{grid-column:span 2;background:var(--accent-blue)!important;color:#fff!important;border-color:var(--accent-blue)!important;font-weight:600;width:100%}.enter-btn:hover{background:#1557b0!important}.fraction-display{display:flex;flex-direction:column;align-items:center;font-size:12px;line-height:1}.fraction-num,.fraction-den{font-weight:500}.fraction-line{width:12px;height:1px;background:currentColor;margin:1px 0}.calculator-close-btn{position:absolute;top:12px;right:12px;width:28px;height:28px;border:none;background:#f8f9fa;color:var(--secondary-text);border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;transition:all .15s ease;z-index:10}.calculator-close-btn:hover{background:#e8eaed;color:var(--primary-text)}.toast{position:absolute;bottom:16px;left:50%;transform:translate(-50%);background:#000c;color:#fff;padding:8px 16px;border-radius:20px;font-size:12px;z-index:100;animation:toastFadeIn .3s ease}@keyframes toastFadeIn{0%{opacity:0;transform:translate(-50%) translateY(8px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.scientific-calculator-advanced{container-type:inline-size}.scientific-calculator-advanced[data-embedded=true]{border-radius:0;box-shadow:none;max-width:none!important;min-width:auto!important;width:100%!important}.scientific-calculator-advanced[data-embedded=false]{width:100%!important;height:100%!important;max-width:none!important;min-width:400px!important;min-height:300px!important}.scientific-calculator-advanced[data-embedded=true] .calculator-top-bar,.scientific-calculator-advanced[data-embedded=true] .calculator-toolbar,.scientific-calculator-advanced[data-embedded=true] .abc-modifiers,.scientific-calculator-advanced[data-embedded=true] .calculator-mode-toggle,.scientific-calculator-advanced[data-embedded=true] .keypad-grid{width:100%!important}.scientific-calculator-advanced[data-embedded=true] .keypad-btn{flex:1 1 auto!important;min-width:0!important;width:auto!important;min-height:24px!important;font-size:12px!important}.scientific-calculator-advanced[data-embedded=true] .keypad-row,.scientific-calculator-advanced[data-embedded=true] .keypad-block{width:100%!important;flex:1!important}.scientific-calculator-advanced[data-embedded=false] .keypad-btn{flex:1 1 auto!important;min-width:0!important;width:auto!important;min-height:32px!important}.scientific-calculator-advanced[data-embedded=false] .keypad-row,.scientific-calculator-advanced[data-embedded=false] .keypad-block,.scientific-calculator-advanced[data-embedded=false] .keypad-grid{width:100%!important;flex:1!important}@container (max-width: 500px){.scientific-calculator-advanced[data-embedded=true]{min-width:100%;border-radius:8px;box-shadow:none}.keypad-btn{min-height:26px;min-width:45px;font-size:12px}.calculator-top-bar{height:44px}.expression-input,.result-section{font-size:13px}.keypad-grid{gap:4px;padding:8px}.toolbar-left,.tabs{gap:8px}.angle-btn{min-width:45px;padding:4px 8px;font-size:11px}}@media (max-width: 768px){.scientific-calculator-advanced{max-width:95vw}.keypad-btn{min-height:30px;min-width:50px;font-size:13px}.calculator-top-bar{height:48px}.expression-input,.result-section{font-size:13px}}@media (max-width: 480px){.keypad-btn{min-height:28px;min-width:45px;font-size:12px}.keypad-grid{gap:3px;padding:6px}.toolbar-left,.tabs{gap:12px}}.graph-canvas{display:block;width:100%;height:100%;background:#fff;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:cursor .15s ease}.graph-canvas.dragging{cursor:grabbing!important}.graph-canvas:focus{outline:2px solid #1A73E8;outline-offset:2px}:root{--gc-primary-color: #1A73E8;--gc-primary-hover: #1765CC;--gc-text-primary: #202124;--gc-text-secondary: #5F6368;--gc-border-color: #DADCE0;--gc-divider-color: #E6E8F0;--gc-canvas-bg: #FFFFFF;--gc-panel-bg: #FAFBFC;--gc-radius-button: 8px;--gc-radius-small: 6px;--gc-base-unit: 8px;--gc-hover-tint: rgba(0, 0, 0, .04);--gc-pressed-tint: rgba(0, 0, 0, .08);--gc-focus-ring: rgba(26, 115, 232, .4)}.graphing-calculator{width:1200px;height:800px;background:var(--gc-canvas-bg);border-radius:12px;display:flex;flex-direction:column;box-shadow:0 8px 32px #0003;overflow:hidden;position:relative;z-index:10000;border:1px solid var(--gc-border-color)}.top-bar{height:56px;display:flex;align-items:center;justify-content:space-between;padding:0 16px;background:var(--gc-canvas-bg);border-bottom:1px solid var(--gc-divider-color);flex-shrink:0}.graphing-calculator-drag-handle{cursor:grab}.graphing-calculator-drag-handle:active{cursor:grabbing}.left-cluster,.right-cluster{display:flex;align-items:center;gap:12px}.menu-btn{width:32px;height:32px;border:none;background:none;border-radius:var(--gc-radius-small);display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--gc-text-secondary);transition:background-color .15s ease}.menu-btn:hover{background-color:var(--gc-hover-tint)}.graph-title{border:none;font-size:16px;font-weight:600;color:var(--gc-text-primary);background:none;outline:none;padding:4px 8px;border-radius:4px;min-width:200px;transition:background-color .15s ease}.graph-title:focus{background-color:var(--gc-panel-bg);box-shadow:0 0 0 2px var(--gc-focus-ring)}.toolbar-btn{width:32px;height:32px;border:none;background:none;border-radius:var(--gc-radius-small);display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--gc-text-secondary);transition:background-color .15s ease}.toolbar-btn:hover{background-color:var(--gc-hover-tint)}.close-btn{width:32px;height:32px;border:none;background:none;border-radius:var(--gc-radius-small);display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--gc-text-secondary);transition:all .15s ease}.close-btn:hover{background-color:#ea43351a;color:#ea4335}.main-content{flex:1;display:flex;min-height:0}.expressions-pane{width:360px;background:var(--gc-panel-bg);border-right:1px solid var(--gc-divider-color);display:flex;flex-direction:column;flex-shrink:0}.pane-header{height:48px;display:flex;align-items:center;padding:0 16px;border-bottom:1px solid var(--gc-divider-color);flex-shrink:0}.tabs{display:flex;gap:20px}.tab{border:none;background:none;font-size:14px;color:var(--gc-text-secondary);cursor:pointer;padding:8px 0;position:relative;transition:color .15s ease}.tab:hover{color:var(--gc-text-primary)}.tab.active{color:var(--gc-primary-color)}.tab.active:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--gc-primary-color)}.mode-toggle{display:flex;gap:4px;margin-left:auto;background:var(--gc-panel-bg);border-radius:var(--gc-radius-small);padding:2px}.mode-tab{padding:6px 12px;border:none;border-radius:4px;background:transparent;color:var(--gc-text-secondary);font-size:12px;font-weight:500;cursor:pointer;transition:all .15s ease}.mode-tab:hover{background:var(--gc-hover-tint);color:var(--gc-text-primary)}.mode-tab.active{background:var(--gc-primary-color);color:#fff}.add-item-bar{height:48px;display:flex;align-items:center;justify-content:space-between;padding:0 16px;border-bottom:1px solid var(--gc-divider-color);position:relative;flex-shrink:0}.add-item-btn{height:32px;padding:0 12px;border:1px solid var(--gc-border-color);background:var(--gc-canvas-bg);border-radius:16px;font-size:13px;color:var(--gc-text-primary);cursor:pointer;transition:all .15s ease}.add-item-btn:hover{background-color:var(--gc-hover-tint);border-color:var(--gc-text-secondary)}.more-options-btn{width:32px;height:32px;border:none;background:none;border-radius:16px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--gc-text-secondary);transition:background-color .15s ease}.more-options-btn:hover{background-color:var(--gc-hover-tint)}.add-item-popover{position:absolute;top:100%;left:16px;width:280px;background:var(--gc-canvas-bg);border:1px solid var(--gc-border-color);border-radius:var(--gc-radius-button);box-shadow:0 4px 12px #00000026;z-index:1000;overflow:hidden}.popover-item{width:100%;height:40px;border:none;background:none;display:flex;align-items:center;gap:12px;padding:0 16px;cursor:pointer;font-size:14px;color:var(--gc-text-primary);transition:background-color .15s ease}.popover-item:hover{background-color:var(--gc-hover-tint)}.popover-item.active{background-color:var(--gc-primary-color);color:#fff}.item-icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-weight:600;flex-shrink:0}.expressions-list{flex:1;overflow-y:auto;padding:calc(var(--gc-base-unit) * 2) 0}.empty-state{padding:40px 20px;text-align:center;color:var(--gc-text-secondary)}.expression-row{min-height:44px;display:flex;align-items:center;gap:var(--gc-base-unit);padding:0 12px;margin:2px 8px;border-radius:var(--gc-radius-small);cursor:pointer;transition:background-color .15s ease}.expression-row:hover{background-color:var(--gc-hover-tint)}.expression-row.selected{background-color:#1a73e81a;border-left:2px solid var(--gc-primary-color)}.expression-row.hidden{opacity:.6}.drag-handle{width:16px;height:16px;display:flex;align-items:center;justify-content:center;cursor:grab;color:var(--gc-text-secondary);flex-shrink:0}.drag-handle:active{cursor:grabbing}.color-swatch{width:18px;height:18px;border:none;border-radius:50%;cursor:pointer;position:relative;flex-shrink:0;transition:transform .15s ease}.color-swatch:hover{transform:scale(1.1)}.hidden-indicator{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:var(--gc-text-secondary);font-size:14px;line-height:1}.math-field{flex:1;border:none;background:none;outline:none;font-size:14px;color:var(--gc-text-primary);padding:4px;border-radius:4px;font-family:Courier New,monospace}.math-field:focus{background-color:#fffc;box-shadow:0 0 0 1px var(--gc-primary-color)}.row-actions{display:flex;gap:4px;opacity:0;transition:opacity .15s ease;flex-shrink:0}.expression-row:hover .row-actions,.expression-row.selected .row-actions{opacity:1}.action-btn{width:28px;height:28px;border:none;background:none;border-radius:4px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--gc-text-secondary);transition:all .15s ease}.action-btn:hover{background-color:var(--gc-hover-tint);color:var(--gc-text-primary)}.graph-pane{flex:1;position:relative;background:var(--gc-canvas-bg);min-height:0}.graph-canvas{width:100%;height:100%;display:block}.floating-controls{position:absolute;top:16px;right:16px;display:flex;flex-direction:column;gap:12px;z-index:100}.control-btn{width:40px;height:40px;border:none;background:var(--gc-canvas-bg);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--gc-text-secondary);box-shadow:0 2px 8px #0000001a;transition:all .15s ease}.control-btn:hover{background-color:var(--gc-hover-tint);transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.math-keyboard-toggle{position:absolute;bottom:16px;left:16px;width:40px;height:40px;border:none;background:var(--gc-primary-color);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#fff;box-shadow:0 2px 8px #1a73e84d;transition:all .15s ease;z-index:100}.math-keyboard-toggle:hover{background-color:var(--gc-primary-hover);transform:translateY(-1px);box-shadow:0 4px 12px #1a73e866}.math-keyboard{position:absolute;bottom:0;left:0;right:0;height:280px;background:var(--gc-canvas-bg);border-top:1px solid var(--gc-divider-color);padding:16px;display:flex;flex-direction:column;gap:var(--gc-base-unit);box-shadow:0 -4px 12px #0000001a}.keyboard-row{display:flex;gap:var(--gc-base-unit);flex:1}.keyboard-key{flex:1;border:1px solid var(--gc-border-color);background:var(--gc-canvas-bg);border-radius:var(--gc-radius-small);font-size:16px;color:var(--gc-text-primary);cursor:pointer;transition:all .15s ease;display:flex;align-items:center;justify-content:center;font-weight:500}.keyboard-key:hover{background-color:var(--gc-hover-tint);border-color:var(--gc-text-secondary)}.keyboard-key:active{background-color:var(--gc-pressed-tint)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:2000;display:flex;align-items:center;justify-content:center;padding:16px}.graph-settings-modal{width:100%;max-width:420px;background:var(--gc-canvas-bg);border-radius:var(--gc-radius-button);box-shadow:0 8px 24px #0003;overflow:hidden}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--gc-divider-color)}.modal-header h3{margin:0;font-size:18px;font-weight:600;color:var(--gc-text-primary)}.modal-content{padding:24px}.settings-section{margin-bottom:24px}.settings-section:last-child{margin-bottom:0}.settings-section h4{margin:0 0 16px;font-size:16px;font-weight:600;color:var(--gc-text-primary)}.input-group{display:flex;align-items:center;gap:12px;margin-bottom:12px}.input-group:last-child{margin-bottom:0}.input-group label{min-width:60px;font-size:14px;color:var(--gc-text-secondary);font-weight:500}.input-group input{flex:1;height:36px;padding:0 12px;border:1px solid var(--gc-border-color);border-radius:var(--gc-radius-small);font-size:14px;color:var(--gc-text-primary);background:var(--gc-canvas-bg);transition:border-color .15s ease}.input-group input:focus{outline:none;border-color:var(--gc-primary-color);box-shadow:0 0 0 2px #1a73e833}.modal-footer{display:flex;gap:12px;justify-content:flex-end;padding:20px 24px;border-top:1px solid var(--gc-divider-color);background:var(--gc-panel-bg)}.btn{height:36px;padding:0 16px;border-radius:var(--gc-radius-button);font-size:14px;font-weight:500;cursor:pointer;transition:all .15s ease;border:none;display:flex;align-items:center;justify-content:center}.btn.secondary{background:transparent;color:var(--gc-text-secondary);border:1px solid var(--gc-border-color)}.btn.secondary:hover{background-color:var(--gc-hover-tint);border-color:var(--gc-text-secondary)}.btn.primary{background:var(--gc-primary-color);color:#fff}.btn.primary:hover{background-color:var(--gc-primary-hover)}@media (max-width: 768px){.graphing-calculator{border-radius:0;height:100vh;max-height:none}.expressions-pane{width:100%;max-width:300px}.math-keyboard{height:240px;padding:12px}.keyboard-key{font-size:14px}}button:focus-visible,input:focus-visible{outline:2px solid var(--gc-primary-color);outline-offset:2px}.expression-row{animation:slideIn .2s ease-out}@keyframes slideIn{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.expressions-list,.graph-pane{transition:all .3s ease}.expressions-list::-webkit-scrollbar{width:8px}.expressions-list::-webkit-scrollbar-track{background:var(--gc-panel-bg)}.expressions-list::-webkit-scrollbar-thumb{background:var(--gc-border-color);border-radius:4px}.expressions-list::-webkit-scrollbar-thumb:hover{background:var(--gc-text-secondary)}.messages-container{flex:1;height:100%;min-height:0;padding:12px 20px 20px;--messages-bottom-buffer: 48px;overflow-y:auto;display:flex;flex-direction:column;gap:0;position:relative;background-color:#fff;border-radius:0;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.2) transparent;scroll-behavior:smooth;overscroll-behavior:contain;will-change:scroll-position;cursor:default}.messages-container:after{content:"";display:block;flex-shrink:0;height:var(--messages-bottom-buffer);pointer-events:none}.messages-container:hover{scrollbar-color:rgba(0,0,0,.4) transparent}.messages-container::-webkit-scrollbar{width:6px;height:6px}.messages-container::-webkit-scrollbar-track{background:transparent;border-radius:3px}.messages-container::-webkit-scrollbar-thumb{background-color:#0003;border-radius:3px;-webkit-transition:background-color .3s,opacity 1s ease-out;transition:background-color .3s,opacity 1s ease-out;opacity:0}.messages-container::-webkit-scrollbar-thumb:hover{background-color:#0006;opacity:1}.messages-container:hover::-webkit-scrollbar-thumb,.messages-container:active::-webkit-scrollbar-thumb,.messages-container:focus::-webkit-scrollbar-thumb{opacity:1;-webkit-transition:background-color .3s,opacity .1s ease-in;transition:background-color .3s,opacity .1s ease-in}.messages-container::-webkit-scrollbar-thumb{opacity:0;-webkit-transition:opacity 1s ease-out;transition:opacity 1s ease-out}.messages-container.scrollbar-visible::-webkit-scrollbar-thumb{opacity:1;-webkit-transition:opacity .1s ease-in;transition:opacity .1s ease-in}.messages-container:hover::-webkit-scrollbar-thumb{opacity:1;-webkit-transition:opacity .1s ease-in;transition:opacity .1s ease-in}.tool-text-message{display:flex;flex-direction:column;align-items:center;margin-bottom:16px;width:100%;max-width:800px;align-self:center;animation:fadeIn .15s ease-out}.tool-text-message .message-content{width:100%;max-width:100%;font-family:Söhne,-apple-system,BlinkMacSystemFont,Inter,Segoe UI,system-ui,sans-serif;font-size:16px;line-height:1.5;color:#1a1a1a;font-weight:400;letter-spacing:.01em;white-space:pre-wrap}.agent-switch-prompt{position:relative;display:flex;flex-direction:column;align-items:center;gap:16px;padding:20px 24px;margin:16px auto;max-width:600px;width:100%;background:linear-gradient(135deg,#fffffff2,#fffaf5e6);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1.5px solid rgba(229,120,0,.15);border-radius:16px;box-shadow:0 2px 10px -2px #e5780014,0 10px 30px -6px #e578001a,inset 0 1px #fff}.agent-switch-reason{font-size:.95rem;font-weight:500;color:#333;text-align:center;line-height:1.5}.agent-switch-buttons{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;width:100%}.agent-switch-button{border-radius:28px;padding:12px 28px;font-size:.925rem;font-weight:600;letter-spacing:.01em;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);border:none;min-width:140px}.agent-switch-button--switch{background:linear-gradient(135deg,#e57800,#cc6a00);color:#fff;box-shadow:0 2px 10px -2px #e578004d,0 10px 30px -6px #e5780033}.agent-switch-button--switch:hover{background:linear-gradient(135deg,#cc6a00,#b35900);transform:translateY(-2px) scale(1.02);box-shadow:0 4px 16px -3px #e5780066,0 16px 40px -8px #e5780040}.agent-switch-button--switch:active{transform:translateY(0) scale(.98)}.agent-switch-button--stay{background:linear-gradient(135deg,#ffffffe6,#fffaf5d9);backdrop-filter:blur(30px) saturate(180%);-webkit-backdrop-filter:blur(30px) saturate(180%);border:1.5px solid rgba(229,120,0,.2);color:#e57800;box-shadow:0 2px 10px -2px #e5780014,inset 0 1px #fff}.agent-switch-button--stay:hover{background:linear-gradient(135deg,#fffffffa,#fffaf5f2);border-color:#e5780059;color:#cc6a00;transform:translateY(-2px) scale(1.02);box-shadow:0 4px 16px -3px #e578001f,inset 0 1px #fff}.agent-switch-button--stay:active{transform:translateY(0) scale(.98)}.agent-switch-close{position:absolute;top:8px;right:8px;width:28px;height:28px;border-radius:50%;border:1px solid rgba(229,120,0,.15);background:#fffc;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);color:#e57800;font-size:18px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s cubic-bezier(.4,0,.2,1)}.agent-switch-close:hover{background:#fffffff2;border-color:#e578004d;color:#cc6a00;transform:scale(1.05)}.agent-switch-close:active{transform:scale(.95)}.user-message-container{display:flex;flex-direction:column;align-items:flex-end;margin-bottom:24px;width:100%;max-width:800px;align-self:center}.user-message-content{width:-moz-fit-content;width:fit-content;max-width:85%;display:flex;flex-direction:column;align-items:flex-end}.bot-message-container{display:flex;flex-direction:column;align-items:center;margin-bottom:48px;width:100%;max-width:800px;align-self:center;animation:fadeIn .1s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.bot-message-content{width:100%;max-width:100%}.user-message{background-color:#f3f4f6!important;color:#1a1a1a!important;border-radius:12px;padding:12px 16px;max-width:100%;width:-moz-fit-content;width:fit-content;margin-bottom:0;box-shadow:0 1px 2px #0000000d;border:1px solid #E5E7EB;word-break:break-word;font-size:15px!important;line-height:1.65;white-space:pre-wrap;text-align:left;font-family:Söhne,-apple-system,BlinkMacSystemFont,Inter,Segoe UI,system-ui,sans-serif}.user-message.has-attachments{padding:12px}.user-message.has-attachments .formatted-message-content{margin-top:8px}.user-message-images-standalone{display:flex;flex-direction:column;gap:8px;margin-bottom:12px;align-items:flex-end}.user-message-image-standalone{position:relative;border-radius:12px;overflow:hidden;background:#f5f5f5}.user-message-image-standalone .message-image-standalone{display:block;max-width:400px;max-height:400px;width:auto;height:auto;-o-object-fit:contain;object-fit:contain;border-radius:12px;cursor:pointer;transition:transform .2s}.user-message-image-standalone .message-image-standalone:hover{transform:scale(1.02)}.user-message-image-standalone.state-error .user-message-image-overlay{display:flex}.user-message-pdfs{display:flex;flex-direction:column;gap:8px;margin-bottom:8px}.user-message-images{display:flex;flex-direction:column;gap:8px;margin-bottom:12px;max-width:500px}.user-message-images.multiple-images{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.user-message-images:not(.multiple-images) .user-message-image-item{grid-column:1 / -1}.user-message-image-item{position:relative;overflow:hidden;border-radius:12px;background:#f5f5f5;display:flex;aspect-ratio:1 / 1}.user-message-image-item .message-image{width:100%;height:100%;flex:1;-o-object-fit:cover;object-fit:cover;display:block;border-radius:12px;max-height:300px;cursor:pointer;transition:transform .2s}.user-message-image-item .message-image:hover{transform:scale(1.02)}.user-message-images.multiple-images .message-image{max-height:200px}.user-message-image-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#11182773;color:#fff;font-size:13px;font-weight:500;letter-spacing:.02em;text-transform:none}.user-message-image-item.state-error .user-message-image-overlay{background:#dc2626a6}.user-message-image-item.state-ready .user-message-image-overlay{display:none}.user-message-images.attachment-grid{display:flex;flex-direction:column;gap:8px;width:100%;max-width:376px;margin:0}.user-message-images.attachment-grid:has(.pdf-attachment){width:auto!important;max-width:280px}.user-message-images.attachment-grid .attachment-row{display:flex;justify-content:flex-start;gap:8px}.user-message-images.attachment-grid .attachment-row:has(.pdf-attachment){justify-content:flex-start}.user-message-image-item.attachment-thumbnail{width:120px;height:120px;border-radius:10px;overflow:hidden;background:#f5f5f5;display:flex;align-items:center;justify-content:center}.user-message-image-item.attachment-thumbnail.pdf-attachment{width:auto!important;height:auto!important;min-width:200px;max-width:280px;aspect-ratio:unset!important;overflow:visible!important}.user-message-image-item.attachment-thumbnail .message-image{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;border-radius:0;transition:none}.user-message-image-item.attachment-thumbnail .message-image:hover{transform:none}.user-message-image-item.attachment-thumbnail.state-error .user-message-image-overlay{display:flex}.user-message.has-attachments .user-message-images+.formatted-message-content,.user-message.has-attachments .user-message-images+*{margin-top:8px}.user-message-image-item.pdf-attachment{background:#fff;border:1px solid #e5e7eb;border-radius:8px;width:auto;height:auto;min-width:200px;max-width:280px}.pdf-attachment-horizontal{display:flex;align-items:center;gap:8px;padding:8px 12px;width:100%;height:100%}.pdf-icon-box-chat{flex-shrink:0;width:36px;height:36px;background:#fee2e2;border-radius:6px;display:flex;align-items:center;justify-content:center}.pdf-icon-box-chat svg{color:#dc2626}.pdf-text-content-chat{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.pdf-file-name-chat{font-size:13px;font-weight:500;color:#1f2937;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pdf-file-label-chat{font-size:11px;color:#6b7280;text-transform:uppercase;font-weight:500}.user-message-image-item.pdf-attachment.state-error{background:#fee2e2;border-color:#dc2626}.user-message-image{margin-bottom:8px;border-radius:8px;overflow:hidden;background:#ffffff1a}.user-message-image .message-image{display:block;width:100%;max-width:300px;height:auto;border-radius:8px;cursor:pointer;transition:transform .2s}.user-message-image .message-image:hover{transform:scale(1.02)}.bot-message{background-color:transparent;color:#1a1a1a!important;border-radius:0;padding:0;align-self:center;max-width:100%;margin-bottom:0;box-shadow:none;word-break:break-word;font-family:Söhne,-apple-system,BlinkMacSystemFont,Inter,Segoe UI,system-ui,sans-serif;font-size:16px!important;line-height:1.5;font-weight:400;letter-spacing:.01em}.video-recommendations{margin-top:16px;padding:16px;background-color:#f8f9fa;border-radius:8px;border-left:4px solid var(--theme-color, #4965b5)}.video-recommendations h4{margin:0 0 12px;color:#2d3748;font-size:14px;font-weight:600}.video-list{display:flex;flex-direction:column;gap:8px}.video-item{background:#fff;border-radius:6px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.video-item a{display:block;padding:12px;text-decoration:none;color:inherit;transition:background-color .2s}.video-item a:hover{background-color:#f7fafc}.video-item strong{font-size:13px;font-weight:500;color:#2d3748;display:block;margin-bottom:4px}.video-item small{font-size:12px;color:#718096;line-height:1.4}.formatted-message-content{width:100%;color:#000!important}.formatted-message-content .katex{max-width:100%;overflow-x:auto;overflow-y:hidden;display:inline-block}.formatted-message-content .katex-display{max-width:100%;overflow-x:auto;overflow-y:hidden}.formatted-message-content p:has(.katex),.formatted-message-content div:has(.katex){overflow-x:auto;overflow-y:visible}@media (max-width: 600px){.formatted-message-content .katex,.formatted-message-content .katex-display{font-size:.9em}}@media (max-width: 400px){.formatted-message-content .katex,.formatted-message-content .katex-display{font-size:.85em}}.bot-message-container:has(.formatted-message-content){container-type:inline-size;container-name:message}@container message (max-width: 300px){.formatted-message-content .katex,.formatted-message-content .katex-display{font-size:.8em}}.formatted-message-content a{color:#4a69bd!important;text-decoration:none!important;font-weight:500!important;cursor:pointer!important;pointer-events:auto!important;-webkit-user-select:auto!important;-moz-user-select:auto!important;user-select:auto!important;-webkit-touch-callout:default!important;-webkit-tap-highlight-color:rgba(0,0,0,.1)!important;padding:4px 8px!important;border-radius:4px!important;background-color:#f8f9fa!important;border:1px solid #dee2e6!important;transition:all .2s ease!important;display:inline-block!important;margin:2px 0!important;position:relative!important;z-index:1000!important}.formatted-message-content a:hover{color:#fff!important;background-color:#4a69bd!important;text-decoration:none!important;border-color:#4a69bd!important}.formatted-message-content a:visited{color:#4a69bd!important}.formatted-message-content a:visited:hover{color:#fff!important}.video-recommendations-modern{margin:32px 0 24px;padding:0;pointer-events:auto}.video-tag-section-modern{margin-bottom:32px;pointer-events:auto}.video-section-header{display:flex;align-items:center;gap:8px;margin-bottom:20px;padding-bottom:12px;border-bottom:1px solid #E5E7EB}.video-section-header .header-icon{color:#6b7280;flex-shrink:0}.video-section-header h4{margin:0;font-size:16px;font-weight:500;color:#1f2937;letter-spacing:-.01em;font-family:Söhne,-apple-system,BlinkMacSystemFont,Inter,Segoe UI,system-ui,sans-serif}.video-grid{display:grid;grid-template-columns:1fr;gap:12px;pointer-events:auto}.video-card{display:flex;flex-direction:column;background:#fafafa;border-radius:8px;overflow:hidden;box-shadow:none;transition:all .2s ease;text-decoration:none;color:inherit;cursor:pointer;pointer-events:auto!important;border:1px solid #E5E7EB;-webkit-user-select:auto!important;-moz-user-select:auto!important;user-select:auto!important}.video-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000014;border-color:#9ca3af;text-decoration:none!important;background:#fff}.video-thumbnail{position:relative;width:100%;aspect-ratio:16 / 9;background:#f3f4f6;overflow:hidden}.video-thumbnail img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block;transition:transform .3s ease}.video-card:hover .video-thumbnail img{transform:scale(1.05)}.video-play-overlay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:64px;height:64px;background:#000000b3;border-radius:50%;display:flex;align-items:center;justify-content:center;opacity:.9;transition:all .3s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.video-card:hover .video-play-overlay{background:var(--theme-color, #4965b5);opacity:1;transform:translate(-50%,-50%) scale(1.1)}.video-play-overlay svg{color:#fff;margin-left:4px}.video-card-content{padding:12px 14px;display:flex;flex-direction:column;gap:8px}.video-card-title{margin:0;font-size:15px;font-weight:500;color:#1f2937;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;transition:color .2s ease;font-family:Söhne,-apple-system,BlinkMacSystemFont,Inter,Segoe UI,system-ui,sans-serif}.video-card:hover .video-card-title{color:#111827;text-decoration:none!important}.video-card-description{margin:0;font-size:14px;color:#6b7280;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;font-family:Söhne,-apple-system,BlinkMacSystemFont,Inter,Segoe UI,system-ui,sans-serif}.video-card-metadata{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.video-meta-chip{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:500;color:#6b7280;background:#f3f4f6;padding:4px 8px;border-radius:6px;white-space:nowrap;transition:all .2s ease}.video-meta-chip svg{flex-shrink:0;opacity:.7}.video-card:hover .video-meta-chip{background:#e5e7eb;color:#374151}.video-section-divider{height:1px;background:linear-gradient(to right,transparent,#e5e7eb 50%,transparent);margin:24px 0}.video-recommendations-footer{margin-top:16px;padding:12px 16px;background:#f9fafb;border-radius:8px;border-left:3px solid var(--theme-color, #4965b5)}.video-recommendations-footer p{margin:0;font-size:13px;color:#6b7280;font-style:italic;line-height:1.5}@media (min-width: 640px){.video-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}.video-recommendations{margin:32px 0 24px;padding:0;background-color:transparent;border-radius:0;border-left:none;pointer-events:auto}.video-tag-section{margin-bottom:16px;pointer-events:auto}.video-intro{margin-bottom:8px;color:inherit;font-size:14px;font-weight:500}.video-section{margin-bottom:8px;pointer-events:auto}.video-recommendation{margin-bottom:12px;padding:8px 0;border-bottom:1px solid #e5e5e5;pointer-events:auto}.video-recommendation:last-child{border-bottom:none;margin-bottom:0}.video-header{margin-bottom:6px;pointer-events:auto}.video-title-link{color:#4a69bd!important;text-decoration:none;font-weight:500;font-size:14px;line-height:1.4;display:inline-block;cursor:pointer!important;position:relative;z-index:1000;pointer-events:auto!important;-webkit-user-select:auto!important;-moz-user-select:auto!important;user-select:auto!important;-webkit-touch-callout:default!important;-webkit-tap-highlight-color:rgba(0,0,0,.1)!important;padding:4px 8px;border-radius:4px;background-color:#f8f9fa;border:1px solid #dee2e6;transition:all .2s ease}.video-title-link:hover{color:#fff!important;background-color:#4a69bd!important;text-decoration:none;cursor:pointer!important;border-color:#4a69bd}.video-explanation{margin:6px 0;font-size:13px;color:#000!important;font-style:italic;line-height:1.4}.video-metadata{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}.video-meta-item{font-size:11px;color:#000;background-color:#f8f9fa;padding:2px 6px;border-radius:10px;white-space:nowrap}.video-source{font-size:11px;font-weight:500;padding:2px 6px;border-radius:10px;white-space:nowrap}.video-source.database{background-color:#e8f4f8;color:#2c5aa0}.video-source.youtube{background-color:#ffebee;color:#c62828}.video-tag-separator{height:1px;background-color:#e0e0e0;margin:16px 0}.video-footer{margin-top:12px;font-size:12px;color:#000;font-style:italic}.message-text{white-space:pre-wrap}.formatted-message-content .latex-block{padding:8px;margin:8px 0;background-color:#f8f9fa;border-left:3px solid var(--theme-color, #ddd);overflow-x:auto;font-family:"Latin Modern Math","STIX Two Math",serif}.formatted-message-content .latex-inline{font-family:"Latin Modern Math","STIX Two Math",serif;font-style:italic;white-space:nowrap}.formatted-content h1,.formatted-content h2,.formatted-content h3,.formatted-content h4,.formatted-content h5,.formatted-content h6{margin-top:12px;margin-bottom:6px;color:#000!important}.formatted-message-content p,.formatted-message-content span,.formatted-message-content div,.formatted-message-content li,.formatted-message-content td,.formatted-message-content th{color:#000!important}.kami-reminder{font-size:14px!important;color:#6b7280!important;margin-top:24px;padding-top:0;border-top:none;font-style:italic;opacity:1;font-family:Söhne,-apple-system,BlinkMacSystemFont,Inter,Segoe UI,system-ui,sans-serif;line-height:1.6}.video-loading-indicator{display:flex;align-items:center;gap:12px;margin-top:24px;padding:16px 0;color:#6b7280;font-family:Söhne,-apple-system,BlinkMacSystemFont,Inter,Segoe UI,system-ui,sans-serif;font-size:15px;font-style:italic}.video-loading-indicator .spinner{width:16px;height:16px;border:2px solid #E5E7EB;border-top:2px solid #6B7280;border-radius:50%;animation:spin 1s linear infinite}.message-actions{display:flex!important;align-items:center!important;gap:8px!important;margin-top:16px!important;position:relative!important;width:-moz-fit-content!important;width:fit-content!important;flex-shrink:0!important;flex-grow:0!important;overflow:visible!important;opacity:1}.copy-button{display:flex!important;align-items:center!important;justify-content:center!important;width:28px!important;height:28px!important;min-width:28px!important;min-height:28px!important;border:none!important;border-radius:4px!important;background:transparent!important;color:#6b7280!important;cursor:pointer;transition:all .2s ease;position:relative;box-shadow:none!important;flex-shrink:0!important;padding:0}.user-message-container .message-actions button.copy-button{width:28px!important;min-width:28px!important;height:28px!important;min-height:28px!important}.copy-button:hover{background:#6b72801a!important;color:#374151!important}.copy-button svg,.copy-button svg path{color:#6b7280!important;stroke:#6b7280!important;flex-shrink:0;display:block;transition:all .2s ease}.copy-button:hover svg,.copy-button:hover svg path{color:#374151!important;stroke:#374151!important}.ask-teacher-action-button{display:flex!important;align-items:center!important;justify-content:center!important;width:28px!important;height:28px!important;min-width:28px!important;min-height:28px!important;border:none!important;border-radius:4px!important;background:transparent!important;color:#f97316!important;cursor:pointer;transition:all .2s ease;position:relative;box-shadow:none!important;flex-shrink:0!important;padding:0}.ask-teacher-action-button:hover{background:#f973161a!important;color:#ea580c!important}.ask-teacher-action-button:disabled{opacity:.5;cursor:not-allowed}.ask-teacher-action-button svg,.ask-teacher-action-button svg path{color:#f97316!important;stroke:#f97316!important;flex-shrink:0;display:block;transition:all .2s ease}.ask-teacher-action-button:hover svg,.ask-teacher-action-button:hover svg path{color:#ea580c!important;stroke:#ea580c!important}.copy-feedback{background:#6b7280;color:#fff;font-size:11px;padding:2px 6px;border-radius:4px;font-weight:500;animation:copyFeedback 1.5s ease-out;position:absolute;right:0;top:-24px;white-space:nowrap;z-index:10}@keyframes copyFeedback{0%{opacity:0;transform:translateY(5px)}15%{opacity:1;transform:translateY(0)}85%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-5px)}}.non-selectable{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}.bot-message-container.completed{opacity:1}.bot-message-container.completed .bot-message{background-color:transparent;border-left:none}.completion-indicator{display:flex;align-items:center;gap:6px;margin-bottom:16px;padding:8px 16px;background-color:#f0fdf4;border:1px solid #BBF7D0;border-radius:8px;color:#166534;font-size:13px;font-weight:500;width:-moz-fit-content;width:fit-content;font-family:Söhne,-apple-system,BlinkMacSystemFont,Inter,Segoe UI,system-ui,sans-serif}.completion-indicator svg{color:#16a34a;flex-shrink:0}.streaming-cursor{animation:blink 1s infinite;font-weight:400;color:#9ca3af;margin-left:2px}.provider-indicator{margin-top:12px;display:flex;align-items:center}.provider-badge{font-size:11px;color:#9ca3af;background-color:transparent;padding:0;border-radius:0;font-weight:400;text-transform:lowercase;font-family:Söhne,-apple-system,BlinkMacSystemFont,Inter,Segoe UI,system-ui,sans-serif;font-style:italic}.bot-message-container .bot-message{transition:opacity .2s ease}.bot-message-container .bot-message.streaming{background-color:transparent;border-left:none;opacity:.8}.streamdown-container{line-height:1.5;font-family:Söhne,-apple-system,BlinkMacSystemFont,Inter,Segoe UI,system-ui,sans-serif;font-size:16px;color:#1a1a1a!important;font-weight:400;letter-spacing:.01em}.streamdown-container p{margin-top:.6em;margin-bottom:.6em}.streamdown-container p:last-child{margin-bottom:0}.streamdown-container p:first-child{margin-top:0}.streamdown-container h1,.streamdown-container h2,.streamdown-container h3{margin-top:1.8em;margin-bottom:.6em}.streamdown-container h1:first-child,.streamdown-container h2:first-child,.streamdown-container h3:first-child{margin-top:0}.streamdown-container code{font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,Consolas,monospace;font-size:.9em;background:#f5f5f5;color:#1a1a1a;padding:2px 6px;border-radius:4px;border:1px solid #E5E7EB;font-weight:500;letter-spacing:-.02em}.streamdown-container pre code{display:block;padding:12px 16px;background:#fafafa;border:1px solid #E5E7EB;border-radius:6px;overflow-x:auto;font-size:.85em;line-height:1.6}.streamdown-container img,.streamdown-container td img,.streamdown-container th img{display:block!important;margin-left:0!important;margin-right:auto!important}.streamdown-container,.streamdown-container *,.streamdown-container p,.streamdown-container span,.streamdown-container div,.streamdown-container h1,.streamdown-container h2,.streamdown-container h3,.streamdown-container h4,.streamdown-container h5,.streamdown-container h6,.streamdown-container strong,.streamdown-container em,.streamdown-container li,.streamdown-container td,.streamdown-container th{color:#000!important}.bot-message-container .bot-message .streamdown-container strong,.bot-message-container .bot-message .streamdown-container b,.bot-message .streamdown-container strong,.bot-message .streamdown-container b,.streamdown-container strong,.streamdown-container b,div.bot-message strong,div.bot-message b{font-weight:700!important;font-family:inherit!important}.bot-message-container strong,.bot-message-container b{font-weight:700!important}.streamdown-container table{border-collapse:collapse!important;border:2px solid #333333!important;background-color:#fff!important;margin:16px 0!important;width:100%!important}.streamdown-container th,.streamdown-container td{border:1px solid #333333!important;padding:12px 16px!important;text-align:left!important;background-color:transparent!important}.streamdown-container th{background-color:#f5f5f5!important;font-weight:700!important;border-bottom:2px solid #333333!important}.streamdown-container tr:nth-child(2n){background-color:#fafafa!important}.streamdown-container tr:hover{background-color:#f0f0f0!important}.streamdown-container .katex,.streamdown-container .katex *,.streamdown-container .katex .mord,.streamdown-container .katex .mbin,.streamdown-container .katex .mrel,.streamdown-container .katex .mopen,.streamdown-container .katex .mclose,.streamdown-container .katex .mpunct{color:#000!important}.streaming-cursor{animation:blink 1s infinite;font-weight:700;color:var(--theme-color, #4965b5);margin-left:2px}.streamdown-container .mermaid{background-color:#fafafa!important;border:2px solid #e3f2fd!important;border-radius:12px!important;padding:20px!important;margin:16px 0!important;overflow-x:auto!important;text-align:center!important;box-shadow:0 2px 8px #0000001a!important}.streamdown-container .mermaid svg{max-width:100%!important;height:auto!important;display:block!important;margin:0 auto!important;filter:drop-shadow(0 1px 3px rgba(0,0,0,.1))!important}.streamdown-container .mermaid .nodeLabel{color:#212121!important;font-weight:500!important;font-size:14px!important}.streamdown-container .mermaid .edgeLabel{color:#455a64!important;font-weight:600!important;background-color:#ffffffe6!important;padding:2px 4px!important;border-radius:4px!important}.streamdown-container .mermaid-controls{display:flex!important;justify-content:flex-end!important;gap:8px!important;margin-top:8px!important}.streamdown-container .mermaid-controls button{background-color:#f8f9fa!important;border:1px solid #dee2e6!important;border-radius:4px!important;padding:4px 8px!important;font-size:12px!important;color:#495057!important;cursor:pointer!important;transition:all .2s ease!important}.streamdown-container .mermaid-controls button:hover{background-color:#4965b5!important;color:#fff!important;border-color:#4965b5!important}.audio-button-container{display:flex!important;align-items:center!important;position:relative!important;width:28px!important;height:28px!important;min-width:28px!important;min-height:28px!important;max-width:28px!important;max-height:28px!important;flex-shrink:0!important;flex-grow:0!important}.audio-button{display:flex!important;align-items:center!important;justify-content:center!important;width:28px!important;height:28px!important;min-width:28px!important;min-height:28px!important;max-width:28px!important;max-height:28px!important;border:none!important;border-radius:4px!important;background:transparent!important;color:#6b7280;cursor:pointer;transition:all .2s ease;position:relative;box-shadow:none!important;flex-shrink:0!important;flex-grow:0!important}.audio-button:hover:not(:disabled){background:#6b72801a!important;color:#374151}.audio-button.playing{background:transparent!important;color:#6b7280}.audio-button.playing:hover{background:#6b72801a!important;color:#374151}.audio-button.disabled{opacity:.5;cursor:not-allowed;transform:none}.audio-icon{transition:all .2s ease;width:14px;height:14px;flex-shrink:0;display:block;color:inherit}.audio-button.loading{opacity:.7;cursor:wait}.audio-loading-spinner{animation:audioLoadingSpin 1s linear infinite;width:14px!important;height:14px!important;flex-shrink:0;display:block}@keyframes audioLoadingSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.audio-wave{position:absolute;right:-24px;top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:2px;height:16px}.wave-bar{width:2px;height:100%;background:var(--theme-color, #4965b5);border-radius:1px;animation:wave 1.2s ease-in-out infinite}.wave-bar:nth-child(1){animation-delay:0s}.wave-bar:nth-child(2){animation-delay:.2s}.wave-bar:nth-child(3){animation-delay:.4s}@keyframes wave{0%,40%,to{height:4px}20%{height:16px}}@keyframes pulse{0%{box-shadow:0 0 #4965b566}70%{box-shadow:0 0 0 6px #4965b500}to{box-shadow:0 0 #4965b500}}.audio-player-popup{position:fixed;top:80px;left:50%;transform:translate(-50%);z-index:10000;background:#2d2d2d;border-radius:8px;border:1px solid rgba(255,255,255,.1);min-width:380px;max-width:90vw;animation:slideUp .3s ease-out forwards}@keyframes slideUp{0%{opacity:0;transform:translate(-50%) translateY(10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.audio-player-content{display:flex;align-items:center;padding:12px 16px;gap:12px}.skip-button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:50%;background:#ffffff1a;color:#fff;cursor:pointer;transition:all .2s ease}.skip-button:hover{background:#fff3;transform:scale(1.05)}.play-pause-button{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:none;border-radius:50%;background:#fff;color:#2d2d2d;cursor:pointer;transition:all .2s ease}.play-pause-button:hover{background:#f0f0f0;transform:scale(1.05)}.play-pause-button.playing{background:#fff;color:#2d2d2d}.play-pause-button.playing:hover{background:#f0f0f0}.time-display{display:flex;align-items:center;gap:4px;color:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:13px;font-weight:500;min-width:70px}.current-time{color:#fff}.time-separator,.total-time{color:#999}.speed-control{display:flex;align-items:center;gap:6px}.speed-label{color:#fff;font-size:11px;font-weight:500;min-width:24px;text-align:center}.speed-button{display:flex;align-items:center;justify-content:center;width:24px;height:20px;border:none;border-radius:4px;background:#ffffff1a;color:#fff;cursor:pointer;transition:all .2s ease;font-size:14px;font-weight:600;line-height:1}.speed-button:hover:not(:disabled){background:#fff3;transform:scale(1.05)}.speed-button:disabled{opacity:.3;cursor:not-allowed;transform:none}.speed-button.active{background:#fff;color:#2d2d2d}.close-button{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:50%;background:#ffffff1a;color:#fff;cursor:pointer;transition:all .2s ease;margin-left:auto}.close-button:hover{background:#fff3;transform:scale(1.05)}.audio-error{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;background:#f443361a;border-top:1px solid rgba(244,67,54,.2);border-radius:0 0 12px 12px}.error-text{color:#ff6b6b;font-size:13px;font-weight:500}.error-close{background:none;border:none;color:#ff6b6b;cursor:pointer;font-size:18px;font-weight:700;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}.error-close:hover{background:#f4433633}@media (max-width: 480px){.audio-player-popup{min-width:280px;margin:0 10px}.audio-player-content{padding:12px 16px;gap:12px}.play-pause-button{width:40px;height:40px}.time-display{font-size:12px;min-width:70px}}@media (prefers-contrast: high){.audio-player-popup,.play-pause-button{border:2px solid #ffffff}.close-button{border:1px solid #ffffff}}@media (prefers-reduced-motion: reduce){.audio-button,.play-pause-button,.close-button{transition:none}.wave-bar,.audio-player-popup{animation:none}}.audio-button:focus,.play-pause-button:focus,.close-button:focus{outline:2px solid #4CAF50;outline-offset:2px}@media (prefers-color-scheme: dark){.audio-button{background:#ffffff1a;color:#fff}.audio-button:hover:not(:disabled){background:#fff3}}.context-refresh-button-wrapper{position:relative;display:inline-flex}.context-refresh-button{display:flex!important;align-items:center!important;justify-content:center!important;width:28px!important;height:28px!important;min-width:28px!important;min-height:28px!important;border:none!important;border-radius:4px!important;background:transparent!important;color:#6b7280!important;cursor:pointer;transition:all .2s ease;position:relative;box-shadow:none!important;flex-shrink:0!important;padding:0}.context-refresh-button:hover{background:#6b72801a!important;color:#374151!important}.context-refresh-button svg,.context-refresh-button svg path{color:#6b7280!important;stroke:#6b7280!important;flex-shrink:0;display:block;transition:all .2s ease}.context-refresh-button:hover svg,.context-refresh-button:hover svg path{color:#374151!important;stroke:#374151!important}.context-refresh-popup{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);width:280px;background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000026,0 0 0 1px #0000000d;z-index:1000;animation:popupFadeIn .2s ease-out}@keyframes popupFadeIn{0%{opacity:0;transform:translate(-50%) translateY(4px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.context-refresh-popup:after{content:"";position:absolute;bottom:-6px;left:50%;transform:translate(-50%) rotate(45deg);width:12px;height:12px;background:#fff;box-shadow:2px 2px 4px #0000000d}.context-refresh-popup-close{position:absolute;top:8px;right:8px;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:#9ca3af;border-radius:4px;cursor:pointer;transition:all .15s ease}.context-refresh-popup-close:hover:not(:disabled){background:#f3f4f6;color:#6b7280}.context-refresh-popup-close:disabled{opacity:.5;cursor:not-allowed}.context-refresh-popup-content{padding:20px;text-align:center}.context-refresh-popup-icon{width:48px;height:48px;margin:0 auto 12px;display:flex;align-items:center;justify-content:center;background:#f0f9ff;border-radius:50%;color:#3b82f6}.context-refresh-popup-title{margin:0 0 8px;font-size:16px;font-weight:600;color:#1f2937;line-height:1.4}.context-refresh-popup-description{margin:0 0 16px;font-size:13px;color:#6b7280;line-height:1.5}.context-refresh-popup-action{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:10px 16px;font-size:14px;font-weight:500;color:#fff;background:#3b82f6;border:none;border-radius:8px;cursor:pointer;transition:all .15s ease}.context-refresh-popup-action:hover:not(:disabled){background:#2563eb}.context-refresh-popup-action:disabled{opacity:.7;cursor:not-allowed}.context-refresh-popup-action .spinning{animation:spin 1s linear infinite}.context-refresh-popup-note{margin:12px 0 0;font-size:12px;color:#9ca3af;font-style:italic}.context-refresh-activity-container{min-height:80px;display:flex;align-items:center;justify-content:center}@media (max-width: 480px){.context-refresh-popup{width:260px;left:auto;right:-10px;transform:none}.context-refresh-popup:after{left:auto;right:18px;transform:rotate(45deg)}}.homework-fixed-container{margin:16px 0;padding:16px;background:linear-gradient(135deg,#ecfdf5,#d1fae5);border:1px solid #A7F3D0;border-radius:12px}.homework-fixed-prompt{font-size:14px;color:#065f46;margin:0 0 12px;line-height:1.5}.homework-fixed-error{font-size:13px;color:#dc2626;background:#fef2f2;padding:8px 12px;border-radius:6px;margin:0 0 12px;line-height:1.4}.homework-fixed-button{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:14px 24px;background:#10b981;color:#fff;border:none;border-radius:10px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s}.homework-fixed-button:hover:not(:disabled){background:#059669;transform:translateY(-1px);box-shadow:0 4px 12px #0596694d}.homework-fixed-button:active:not(:disabled){transform:translateY(0)}.homework-fixed-button:disabled{background:#9ca3af;cursor:not-allowed}.homework-fixed-button svg{flex-shrink:0}.homework-fixed-spinner{width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:homework-spin .8s linear infinite}@keyframes homework-spin{to{transform:rotate(360deg)}}.homework-fixed-confirmed{background:linear-gradient(135deg,#d1fae5,#a7f3d0)}.homework-fixed-success{display:flex;align-items:center;justify-content:center;gap:10px;padding:8px;color:#059669;font-size:15px;font-weight:500}.homework-fixed-success svg{flex-shrink:0}@media (max-width: 640px){.homework-fixed-container{padding:12px}.homework-fixed-button{padding:12px 20px;font-size:15px}}.independence-offer-container{margin:16px 0;padding:20px;background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #FCD34D;border-radius:12px}.independence-offer-header{display:flex;align-items:center;gap:10px;margin-bottom:12px}.independence-offer-icon{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#f59e0b;border-radius:50%;color:#fff}.independence-offer-icon svg{width:18px;height:18px}.independence-offer-title{font-size:16px;font-weight:600;color:#92400e;margin:0}.independence-offer-text{font-size:15px;color:#92400e;line-height:1.5;margin:0 0 8px}.independence-offer-benefit{font-size:13px;color:#b45309;margin:0 0 16px;font-style:italic}.independence-offer-error{color:#dc2626;font-size:13px;margin:0 0 12px;padding:8px 12px;background:#fee2e2;border-radius:6px}.independence-offer-buttons{display:flex;gap:12px}.independence-offer-accept{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:14px 24px;background:#f59e0b;color:#fff;border:none;border-radius:10px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s}.independence-offer-accept:hover{background:#d97706;transform:translateY(-1px);box-shadow:0 4px 12px #d977064d}.independence-offer-accept:active{transform:translateY(0)}.independence-offer-decline{padding:14px 24px;background:transparent;color:#92400e;border:2px solid #FCD34D;border-radius:10px;font-size:16px;font-weight:500;cursor:pointer;transition:all .2s}.independence-offer-decline:hover{background:#fcd34d4d;border-color:#f59e0b}@media (max-width: 640px){.independence-offer-container{padding:16px}.independence-offer-buttons{flex-direction:column}.independence-offer-accept,.independence-offer-decline{padding:12px 20px;font-size:15px}}.practice-problem-container{margin:16px 0;padding:20px;background:linear-gradient(135deg,#eff6ff,#dbeafe);border:1px solid #93C5FD;border-radius:12px}.practice-problem-header{display:flex;align-items:center;gap:8px;margin-bottom:16px;font-size:12px;font-weight:600;color:#1d4ed8;text-transform:uppercase;letter-spacing:.5px}.practice-problem-header svg{width:16px;height:16px}.practice-problem-content{background:#fff;border:1px solid #BFDBFE;border-radius:8px;padding:16px;margin-bottom:12px;font-size:18px;line-height:1.6;text-align:center}.practice-problem-hint{background:#3b82f61a;border-left:3px solid #3B82F6;padding:10px 12px;margin-bottom:12px;font-size:14px;color:#1e40af;border-radius:0 8px 8px 0}.practice-problem-hint strong{font-weight:600}.practice-problem-instructions{font-size:14px;color:#1e40af;margin:0 0 16px;line-height:1.5}.practice-problem-verification{background:linear-gradient(135deg,#fffbeb,#fef3c7);border-color:#fcd34d;border-left:4px solid #F59E0B}.practice-problem-verification .practice-problem-header{color:#b45309}.practice-problem-verification .practice-problem-content{border-color:#fcd34d}.practice-problem-verification .practice-problem-hint{background:#f59e0b1a;border-left-color:#f59e0b;color:#92400e}.practice-problem-verification .practice-problem-instructions{color:#92400e}.practice-problem-verification-header{margin-bottom:12px}.practice-problem-verification-badge{display:inline-block;padding:2px 10px;background:#fef3c7;color:#92400e;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;border-radius:4px;border:1px solid #FCD34D}.practice-problem-verification-header p{margin:6px 0 0;font-size:14px;color:#92400e;line-height:1.4}@media (max-width: 640px){.practice-problem-container{padding:16px}.practice-problem-content{font-size:16px;padding:12px}}.independence-result-mastery{margin:16px 0;padding:24px;background:linear-gradient(135deg,#fef3c7,#fde68a);border:2px solid #F59E0B;border-radius:12px;text-align:center}.independence-result-mastery-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;margin:0 auto 12px;background:linear-gradient(135deg,#f59e0b,#d97706);border-radius:50%;color:#fff}.independence-result-mastery-icon svg{width:28px;height:28px}.independence-result-mastery-title{font-size:20px;font-weight:700;color:#92400e;margin:0 0 8px}.independence-result-mastery-text{font-size:15px;color:#b45309;margin:0;line-height:1.5}.independence-result-celebration{font-size:32px;margin-top:12px;animation:celebration-bounce .5s ease-out}@keyframes celebration-bounce{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.independence-result-success{margin:16px 0;padding:16px;background:linear-gradient(135deg,#ecfdf5,#d1fae5);border:1px solid #A7F3D0;border-radius:12px;display:flex;align-items:flex-start;gap:12px}.independence-result-success-icon{color:#10b981;flex-shrink:0}.independence-result-success-icon svg{width:24px;height:24px}.independence-result-success-text{font-size:15px;color:#065f46;margin:0;line-height:1.5}.independence-result-incorrect{margin:16px 0;padding:16px;background:linear-gradient(135deg,#fef2f2,#fee2e2);border:1px solid #FECACA;border-radius:12px}.independence-result-incorrect-header{display:flex;align-items:flex-start;gap:12px;margin-bottom:12px}.independence-result-incorrect-icon{color:#ef4444;flex-shrink:0}.independence-result-incorrect-icon svg{width:24px;height:24px}.independence-result-feedback{font-size:15px;color:#991b1b;margin:0;line-height:1.5}.independence-result-retry-buttons{display:flex;gap:12px;margin-top:16px}.independence-result-retry{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;background:#ef4444;color:#fff;border:none;border-radius:8px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s}.independence-result-retry:hover{background:#dc2626;transform:translateY(-1px)}.independence-result-retry svg{width:16px;height:16px}.independence-result-help{padding:12px 20px;background:transparent;color:#991b1b;border:2px solid #FECACA;border-radius:8px;font-size:15px;font-weight:500;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:8px}.independence-result-help:hover{background:#fecaca4d;border-color:#ef4444}.independence-result-help svg{width:16px;height:16px}.independence-result-encouragement{font-size:14px;color:#b91c1c;margin:12px 0 0;padding:12px;background:#ef44441a;border-radius:8px;text-align:center}@media (max-width: 640px){.independence-result-mastery{padding:20px}.independence-result-retry-buttons{flex-direction:column}.independence-result-retry,.independence-result-help{width:100%}}.check-work-upload-container{margin:16px 0;padding:20px;background:linear-gradient(135deg,#fff7ed,#ffedd5);border:1px solid #FDBA74;border-radius:12px}.check-work-upload-header{display:flex;align-items:center;gap:8px;margin-bottom:12px;font-size:12px;font-weight:600;color:#ea580c;text-transform:uppercase;letter-spacing:.5px}.check-work-upload-header svg{width:16px;height:16px}.check-work-upload-message{font-size:15px;color:#9a3412;line-height:1.5;margin:0 0 8px}.check-work-upload-context{font-size:13px;color:#c2410c;line-height:1.4;margin:0 0 16px;opacity:.85}.check-work-upload-actions{display:flex;gap:10px}.check-work-upload-btn{display:flex;align-items:center;justify-content:center;gap:8px;flex:1;padding:12px 16px;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s;border:none}.check-work-upload-btn svg{width:18px;height:18px;flex-shrink:0}.check-work-upload-btn--camera{background:#ea580c;color:#fff}.check-work-upload-btn--camera:hover{background:#c2410c;transform:translateY(-1px);box-shadow:0 4px 12px #ea580c4d}.check-work-upload-btn--camera:active{transform:translateY(0)}.check-work-upload-btn--upload{background:#fff;color:#ea580c;border:2px solid #FDBA74}.check-work-upload-btn--upload:hover{background:#fff7ed;border-color:#ea580c;transform:translateY(-1px);box-shadow:0 4px 12px #ea580c26}.check-work-upload-btn--upload:active{transform:translateY(0)}.check-work-upload-selected{display:flex;align-items:center;gap:10px;padding:12px 16px;background:#ea580c1a;border-radius:10px;color:#9a3412;font-size:15px;font-weight:500}.check-work-upload-selected svg{width:20px;height:20px;color:#ea580c;flex-shrink:0}.check-work-upload-error{margin:0 0 12px;padding:8px 12px;background:#fef2f2;border:1px solid #FECACA;border-radius:8px;color:#991b1b;font-size:13px;line-height:1.4}.check-work-upload-file-input{display:none}@media (max-width: 640px){.check-work-upload-container{padding:16px}.check-work-upload-actions{flex-direction:column}.check-work-upload-btn{padding:14px 16px}}.all-students-evidence{margin-top:16px;display:flex;flex-direction:column;gap:24px}.student-evidence-section{background:var(--surface-primary, #fff);border:1px solid var(--border, #e0e0e0);border-radius:12px;padding:16px}.student-evidence-header{margin:0 0 12px;font-size:15px;font-weight:600;color:var(--text-primary, #1a1a1a);display:flex;align-items:center;gap:8px}.student-evidence-header:before{content:"👤";font-size:16px}.evidence-display{display:flex;flex-direction:column;gap:16px}.stride-evidence,.socrato-evidence{background:var(--surface-secondary, #f5f5f5);border-radius:12px;padding:16px;border-left:4px solid var(--border, #e0e0e0)}.stride-evidence.severity-high{border-left-color:var(--error, #ef4444)}.stride-evidence.severity-medium{border-left-color:var(--warning, #f59e0b)}.stride-evidence.severity-low{border-left-color:var(--success, #10b981)}.evidence-header{display:flex;align-items:center;gap:8px;margin-bottom:12px}.evidence-icon{font-size:18px}.evidence-header h4{margin:0;font-size:14px;font-weight:600;color:var(--text-primary, #1a1a1a);flex:1}.step-badge{background:var(--surface-tertiary, #e5e5e5);padding:2px 8px;border-radius:12px;font-size:11px;color:var(--text-secondary, #666)}.evidence-images{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:12px}.evidence-image-container{display:flex;flex-direction:column;gap:4px}.image-label{font-size:11px;color:var(--text-secondary, #666);font-weight:500}.evidence-image{max-width:300px;max-height:200px;border-radius:8px;cursor:pointer;transition:transform .2s,box-shadow .2s;border:1px solid var(--border, #e0e0e0)}.evidence-image:hover{transform:scale(1.02);box-shadow:0 4px 12px #00000026}.evidence-details{display:flex;flex-direction:column;gap:8px}.student-work,.error-description{margin:0;font-size:13px;line-height:1.5;color:var(--text-primary, #1a1a1a)}.student-work strong,.error-description strong{color:var(--text-secondary, #666)}.misconception-tag{display:inline-block;background:var(--surface-tertiary, #e5e5e5);padding:4px 10px;border-radius:6px;font-size:11px;color:var(--text-secondary, #666);margin-top:4px;width:-moz-fit-content;width:fit-content}.conversation-snippet{background:var(--surface-primary, #fff);border-radius:8px;padding:12px;margin:12px 0;border:1px solid var(--border, #e0e0e0)}.snippet-message{margin-bottom:8px;font-size:13px;line-height:1.5}.snippet-message:last-child{margin-bottom:0}.snippet-message strong{display:inline-block;margin-right:4px}.snippet-message.user{color:var(--text-primary, #1a1a1a)}.snippet-message.assistant{color:var(--text-secondary, #666)}.snippet-message span{color:var(--text-primary, #1a1a1a);font-style:italic}.detection-reason{font-size:12px;font-style:italic;color:var(--text-secondary, #666);margin:8px 0;padding-left:8px;border-left:2px solid var(--border, #e0e0e0)}.view-session-btn{background:var(--surface-primary, #fff);border:1px solid var(--border, #e0e0e0);border-radius:6px;color:var(--primary, #3b82f6);cursor:pointer;font-size:13px;font-weight:500;padding:8px 14px;margin-top:8px;transition:background .2s,border-color .2s}.view-session-btn:hover{background:var(--surface-hover, #f0f0f0);border-color:var(--primary, #3b82f6)}.view-session-btn:focus{outline:2px solid var(--primary, #3b82f6);outline-offset:2px}@media (max-width: 600px){.evidence-images{flex-direction:column}.evidence-image{max-width:100%}.evidence-header{flex-wrap:wrap}}.context-loss-prompt{margin-top:16px;padding:20px;background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000001a,0 0 0 1px #0000000d;text-align:center;position:relative;max-width:320px;animation:contextLossPromptFadeIn .3s ease-out}@keyframes contextLossPromptFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.context-loss-prompt-close{position:absolute;top:8px;right:8px;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:#9ca3af;border-radius:4px;cursor:pointer;transition:all .15s ease}.context-loss-prompt-close:hover{background:#f3f4f6;color:#6b7280}.context-loss-prompt-icon{width:48px;height:48px;margin:0 auto 12px;display:flex;align-items:center;justify-content:center;background:#f0f9ff;border-radius:50%;color:#3b82f6}.context-loss-prompt-title{margin:0 0 8px;font-size:16px;font-weight:600;color:#1f2937;line-height:1.4}.context-loss-prompt-description{margin:0 0 16px;font-size:13px;color:#6b7280;line-height:1.5}.context-loss-prompt-action{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:10px 16px;font-size:14px;font-weight:500;color:#fff;background:#3b82f6;border:none;border-radius:8px;cursor:pointer;transition:all .15s ease}.context-loss-prompt-action:hover{background:#2563eb}.context-loss-prompt-action:active{transform:scale(.98)}.context-loss-prompt-note{margin:12px 0 0;font-size:12px;color:#9ca3af;font-style:italic}@media (max-width: 480px){.context-loss-prompt{max-width:100%;margin-top:12px;padding:16px}.context-loss-prompt-icon{width:40px;height:40px}.context-loss-prompt-icon svg{width:20px;height:20px}.context-loss-prompt-title{font-size:15px}.context-loss-prompt-description{font-size:12px}}.ask-teacher-dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;animation:askTeacherFadeIn .15s ease-out}@keyframes askTeacherFadeIn{0%{opacity:0}to{opacity:1}}.ask-teacher-dialog{background:#fff;border-radius:16px;width:100%;max-width:480px;box-shadow:0 20px 50px #0003;animation:askTeacherSlideUp .2s ease-out;overflow:hidden}@keyframes askTeacherSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.ask-teacher-dialog__header{display:flex;align-items:center;gap:12px;padding:20px 20px 16px;border-bottom:1px solid #E5E7EB}.ask-teacher-dialog__icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:#fff7ed;border-radius:10px;color:#f97316}.ask-teacher-dialog__title{flex:1;font-size:18px;font-weight:600;color:#1a1a1a;margin:0}.ask-teacher-dialog__close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:transparent;border-radius:8px;color:#6b7280;cursor:pointer;transition:all .15s}.ask-teacher-dialog__close:hover:not(:disabled){background:#f3f4f6;color:#374151}.ask-teacher-dialog__close:disabled{opacity:.5;cursor:not-allowed}.ask-teacher-dialog__error{display:flex;align-items:center;gap:8px;padding:12px 20px;background:#fee2e2;color:#dc2626;font-size:14px}.ask-teacher-dialog__error svg{flex-shrink:0}.ask-teacher-dialog__content{padding:20px}.ask-teacher-dialog__description{font-size:15px;color:#374151;line-height:1.5;margin:0 0 16px}.ask-teacher-dialog__textarea{width:100%;min-height:120px;padding:12px;border:1px solid #D1D5DB;border-radius:8px;font-family:inherit;font-size:15px;color:#1a1a1a;resize:vertical;transition:border-color .15s,box-shadow .15s}.ask-teacher-dialog__textarea::-moz-placeholder{color:#9ca3af}.ask-teacher-dialog__textarea::placeholder{color:#9ca3af}.ask-teacher-dialog__textarea:focus{outline:none;border-color:#f97316;box-shadow:0 0 0 3px #f973161a}.ask-teacher-dialog__textarea:disabled{background:#f9fafb;cursor:not-allowed}.ask-teacher-dialog__context-info{display:flex;align-items:flex-start;gap:8px;margin-top:12px;padding:10px 12px;background:#f9fafb;border-radius:8px;font-size:13px;color:#6b7280;line-height:1.4}.ask-teacher-dialog__context-info svg{flex-shrink:0;margin-top:1px;color:#9ca3af}.ask-teacher-dialog__actions{display:flex;gap:12px;padding:16px 20px 20px;background:#f9fafb;border-top:1px solid #E5E7EB}.ask-teacher-dialog__cancel-btn,.ask-teacher-dialog__try-btn,.ask-teacher-dialog__submit-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;font-size:15px;font-weight:500;border-radius:8px;cursor:pointer;transition:all .15s}.ask-teacher-dialog__cancel-btn{background:#fff;border:1px solid #D1D5DB;color:#374151}.ask-teacher-dialog__cancel-btn:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.ask-teacher-dialog__cancel-btn:disabled{opacity:.5;cursor:not-allowed}.ask-teacher-dialog__try-btn{flex:1;background:#fff;border:1px solid #F97316;color:#f97316}.ask-teacher-dialog__try-btn:hover:not(:disabled){background:#fff7ed}.ask-teacher-dialog__try-btn:disabled{opacity:.5;cursor:not-allowed;border-color:#d1d5db;color:#9ca3af}.ask-teacher-dialog__submit-btn{flex:1;background:#f97316;border:none;color:#fff}.ask-teacher-dialog__submit-btn:hover:not(:disabled){background:#ea580c}.ask-teacher-dialog__submit-btn:disabled{opacity:.7;cursor:not-allowed}.ask-teacher-dialog__spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:askTeacherSpin .8s linear infinite}@keyframes askTeacherSpin{to{transform:rotate(360deg)}}@media (max-width: 480px){.ask-teacher-dialog-backdrop{padding:16px;align-items:flex-end}.ask-teacher-dialog{border-radius:16px 16px 0 0;max-width:none}.ask-teacher-dialog__actions{flex-direction:column}.ask-teacher-dialog__cancel-btn{order:3}}.typing-indicator{display:flex;align-items:center;padding:8px 12px;background-color:#f0f0f0;border-radius:18px;width:-moz-fit-content;width:fit-content;max-width:48px;height:24px;margin-bottom:8px;justify-content:center;gap:4px;align-self:flex-start}.typing-dot{height:6px;width:6px;background-color:#777;border-radius:50%;margin:0 2px;display:inline-block}.typing-dot:nth-child(1){animation:bounce 1.2s infinite}.typing-dot:nth-child(2){animation:bounce 1.2s infinite;animation-delay:.2s}.typing-dot:nth-child(3){animation:bounce 1.2s infinite;animation-delay:.4s}@keyframes bounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-3px)}}.processing-indicator{display:flex;align-items:center;padding:12px 16px;background-color:#fff;border:1px solid var(--theme-color-medium, rgba(73, 101, 181, .3));border-radius:18px;width:-moz-fit-content;width:fit-content;max-width:90%;margin:10px 0;align-self:flex-start;gap:12px;box-shadow:0 2px 5px #0000000d}.processing-spinner{min-width:24px;min-height:24px;border:3px solid var(--theme-color-subtle, rgba(73, 101, 181, .2));border-top-color:var(--theme-color, #4965b5);border-radius:50%;animation:var(--standard-spin-animation)}.processing-text{font-size:14px;font-weight:500;color:#444}.error-indicator{padding:8px 12px;margin:10px auto;background-color:#fff3f3;border:1px solid #ffcdd2;color:#d32f2f;border-radius:5px;font-size:12px;text-align:center}.phrase-rotator{display:flex;align-items:center;gap:14px;padding:12px 16px 16px;color:#1a1a1a;font-size:16px;font-weight:500;white-space:nowrap;line-height:1;min-width:-moz-fit-content;min-width:fit-content}.gooey-container{width:54px;height:54px;position:relative;flex-shrink:0;filter:url(#goo);animation:rotate-move 2s ease-in-out infinite;top:3px}.gooey-dot{width:18px;height:18px;border-radius:50%;position:absolute;top:0;bottom:0;left:0;right:0;margin:auto}.gooey-dot-3{background-color:#fbbf24;transform:translateY(-18px) scale(.6);animation:dot-3-move 2s ease infinite,index 6s ease infinite}.gooey-dot-2{background-color:#f97316;transform:translate(-17px,9px) scale(.6);animation:dot-2-move 2s ease infinite,index 6s -4s ease infinite}.gooey-dot-1{background-color:#ef4444;transform:translate(17px,9px) scale(.6);animation:dot-1-move 2s ease infinite,index 6s -2s ease infinite}.phrase-icon{flex-shrink:0;font-size:16px;animation:iconPulse 2s ease-in-out infinite}@keyframes iconPulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.phrase-container{position:relative;overflow:hidden;height:2.1em;display:flex;align-items:center}.phrase-text{display:inline-block;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;letter-spacing:.01em;color:#1a1a1a;padding-top:7px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;backface-visibility:hidden;transform:translateZ(0)}.phrase-text.entering{animation:fallIn .4s cubic-bezier(.34,1.56,.64,1) forwards}.phrase-text.exiting{animation:fallOut .4s cubic-bezier(.55,.055,.675,.19) forwards}@keyframes fallIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fallOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(20px)}}.phrase-text.entering:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);animation:shimmer .6s ease-out .2s}@keyframes dot-3-move{0%,to{transform:translateY(-18px) scale(.6)}50%{transform:scale(1)}}@keyframes dot-2-move{0%,to{transform:translate(-17px,9px) scale(.6)}50%{transform:scale(1)}}@keyframes dot-1-move{0%,to{transform:translate(17px,9px) scale(.6)}50%{transform:scale(1)}}@keyframes rotate-move{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes index{0%,to{z-index:3}33.3%{z-index:2}66.6%{z-index:1}}@media (max-width: 640px){.phrase-rotator{padding:11px 14px;font-size:14px;gap:10px}.phrase-icon{font-size:14px}.gooey-container{width:42px;height:42px}.gooey-dot{width:14px;height:14px}.phrase-container{height:1.4em}}.tool-activity-island{z-index:1000;opacity:0;transition:opacity .3s cubic-bezier(.34,1.56,.64,1),transform .3s cubic-bezier(.34,1.56,.64,1),max-height .5s ease-in-out;pointer-events:none;overflow:visible;height:auto;min-height:56px;max-height:56px;max-width:90%;width:-moz-fit-content;width:fit-content;background:#fff;border-radius:20px;border:none;display:flex;align-items:center;justify-content:center}.tool-activity-island.top-position{position:absolute;top:8px;left:50%;transform:translate(-50%) translateY(-10px)}.tool-activity-island.bottom-position{position:relative;display:block;max-width:800px;width:-moz-fit-content;width:fit-content;margin:12px auto;margin-left:max(calc((100% - 800px)/2),0px);margin-right:auto;transform:translateY(-10px)}.tool-activity-island.inline-position{position:relative;display:flex;width:100%;max-width:100%;margin:0;transform:none;border-radius:12px;box-shadow:none;border:1px solid #e5e7eb}.tool-activity-island.inline-position.visible{opacity:1;transform:none;animation:fadeInIslandInline .3s ease-out forwards}.tool-activity-island.inline-position.hidden{opacity:0;transform:none}@keyframes fadeInIslandInline{0%{opacity:0}to{opacity:1}}.tool-activity-island.expanded{min-height:150px!important;max-height:800px!important;border-color:#e5e7eb;box-shadow:0 1px 3px #0000001a}@keyframes subtleGlow{0%,to{box-shadow:0 0 20px #fb923c26;border-color:#fb923c4d}50%{box-shadow:0 0 30px #fb923c40;border-color:#fb923c80}}@keyframes orangeBorderPulse{0%,to{border-color:#fb923c4d;box-shadow:0 0 8px #fb923c1a}50%{border-color:#fb923c80;box-shadow:0 0 15px #fb923c33}}.tool-activity-island.top-position.visible{opacity:1;transform:translate(-50%) translateY(0);animation:fadeInIslandTop .4s ease-out forwards}.tool-activity-island.bottom-position.visible{opacity:1;transform:translateY(0);animation:fadeInIslandBottom .4s ease-out forwards}@keyframes fadeInIslandTop{0%{opacity:0;transform:translate(-50%) translateY(-20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes fadeInIslandBottom{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.tool-activity-island.top-position.hidden{opacity:0;transform:translate(-50%) translateY(-10px)}.tool-activity-island.bottom-position.hidden{opacity:0;transform:translateY(-10px)}.tool-activity-content{display:flex;align-items:center;gap:10px;padding:16px;color:#1a1a1a;font-size:13px;font-weight:500;white-space:nowrap;line-height:1;min-width:-moz-fit-content;min-width:fit-content}.tool-activity-island.expanded .tool-activity-content{border-bottom:none}.tool-activity-spinner{width:14px;height:14px;border:2px solid rgba(0,0,0,.1);border-top-color:#1a1a1a;border-radius:50%;animation:spin .8s linear infinite;flex-shrink:0}.tool-activity-text{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;letter-spacing:.01em}.thinking-cutoff-indicator{position:absolute;bottom:6px;left:50%;transform:translate(-50%);font-size:16px;font-weight:700;color:#475569;z-index:10;letter-spacing:2px;animation:thinkingPulse 1s ease-in-out infinite}@keyframes thinkingPulse{0%,to{opacity:.3;transform:translate(-50%) scale(.95)}50%{opacity:1;transform:translate(-50%) scale(1.1)}}.tool-activity-expand-hint{font-size:10px;opacity:.7;margin-left:8px}.tool-activity-island.clickable{cursor:pointer}.tool-activity-island.clickable .tool-activity-content{padding:16px 16px 11px!important;line-height:1!important}.tool-activity-island.clickable:hover{background:#fafafa}.tool-activity-thinking-content{padding:12px 20px;max-width:100%;max-height:85px;overflow-y:auto;overflow-x:hidden;position:relative;font-size:12px;line-height:1.5;color:#64748b;background:linear-gradient(to bottom,#00000005,#f8f9fa 10%);animation:fadeInThinking .3s ease-in-out;scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.2) transparent;transition:filter .3s ease-in-out}.tool-activity-thinking-content.streaming{animation:thinkingBlurPulse 2s ease-in-out infinite}@keyframes thinkingBlurPulse{0%,to{filter:blur(2px);opacity:.6}50%{filter:blur(2.5px);opacity:.75}}.tool-activity-thinking-content::-webkit-scrollbar{width:6px}.tool-activity-thinking-content::-webkit-scrollbar-track{background:transparent}.tool-activity-thinking-content::-webkit-scrollbar-thumb{background:#0003;border-radius:3px}.tool-activity-thinking-content::-webkit-scrollbar-thumb:hover{background:#0000004d}.tool-activity-thinking-content:after{content:"";position:absolute;bottom:0;left:0;right:0;height:40px;background:linear-gradient(to bottom,#f8f9fa00,#f8f9fa);pointer-events:none}.tool-activity-thinking-content .streamdown-container{font-size:13px;color:#64748b}.tool-activity-thinking-content .streamdown-container p{margin:.5em 0}.tool-activity-thinking-content .streamdown-container code{background:#0000000d;padding:2px 4px;border-radius:3px;font-size:12px}.tool-activity-thinking-content .streamdown-container pre{background:#0000000d;padding:8px 12px;border-radius:6px;overflow-x:auto;font-size:12px}.tool-activity-thinking-content .streamdown-container ul,.tool-activity-thinking-content .streamdown-container ol{margin:.5em 0;padding-left:1.5em}.tool-activity-thinking-content .streamdown-container strong{color:#475569}@keyframes fadeInThinking{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 640px){.tool-activity-island{top:8px;max-width:95%;width:-moz-fit-content;width:fit-content;min-height:36px;max-height:36px}.tool-activity-island.top-position{position:fixed;left:50%;transform:translate(-50%) translateY(-10px)}.tool-activity-island.top-position.visible{transform:translate(-50%) translateY(0)}.tool-activity-island.top-position.hidden{transform:translate(-50%) translateY(-10px)}.tool-activity-island.bottom-position{max-width:95%}.tool-activity-content{padding:11px 14px 9px;font-size:13px;line-height:1}.tool-activity-spinner{width:12px;height:12px}.tool-activity-thinking-content{font-size:11px;padding:14px 14px 18px!important}}.tool-activity-island.correct-answer{background:linear-gradient(135deg,#10b981,#059669)!important;border:1px solid #10b981!important;box-shadow:0 4px 20px #10b9814d!important}.tool-activity-island.correct-answer .tool-activity-content{border-bottom:none!important;color:#fff!important}.tool-activity-island.correct-answer .tool-activity-text{font-weight:600!important;color:#fff!important}.tool-activity-island.has-status-steps{min-height:auto!important;max-height:none!important;height:auto!important;padding:12px 16px;display:flex!important;flex-direction:column;align-items:flex-start;justify-content:flex-start;overflow:visible!important;pointer-events:auto}.status-steps-list{display:flex;flex-direction:column;gap:8px;width:100%}.status-step{display:flex;align-items:center;gap:12px;padding:8px 0;font-size:13px;color:#374151;transition:opacity .3s ease,color .3s ease}.status-step.active{color:#1a1a1a}.status-step.complete{color:#10b981}.status-step-icon-wrapper{flex-shrink:0;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:background-color .3s ease}.status-step-icon-wrapper.bg-orange-100{background-color:#ffedd5}.status-step-icon-wrapper.bg-emerald-100{background-color:#d1fae5}.status-step-icon-wrapper.bg-amber-100{background-color:#fef3c7}.text-orange-500{color:#f97316}.text-emerald-500{color:#10b981}.text-amber-500{color:#f59e0b}.status-step-spinner.border-orange-300{border-color:#fdba74}.status-step-spinner.border-orange-300.border-t-orange-500{border-top-color:#f97316}.status-step-spinner.border-amber-300{border-color:#fcd34d}.status-step-spinner.border-amber-300.border-t-amber-500{border-top-color:#f59e0b}.status-step-content{flex:1;display:flex;flex-direction:column;gap:2px}.status-step-content .phrase-rotator{width:auto;min-width:200px;align-items:flex-start;gap:0;padding:0;margin:0}.status-step-content .phrase-rotator .gooey-container{display:none}.status-step-content .phrase-rotator .phrase-container{padding:0;margin:0}.status-step-content .phrase-rotator .phrase-text{font-size:14px;line-height:1.3;padding:0;margin:0}.status-step-message{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;letter-spacing:.01em;font-size:14px;color:#1f2937;line-height:1.3}.status-step-label{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:11px;color:#9ca3af;line-height:1}.status-step-spinner{width:16px;height:16px;border:2px solid transparent;border-radius:50%;animation:spin .8s linear infinite;flex-shrink:0;margin-left:4px}@media (max-width: 640px){.tool-activity-island.has-status-steps{padding:10px 14px}.status-step{font-size:12px;gap:10px;padding:6px 0}.status-step-icon-wrapper{width:28px;height:28px}.status-step-message{font-size:13px}.status-step-label{font-size:10px}.status-step-spinner{width:14px;height:14px}}.mode-chip{display:inline-flex;align-items:center;gap:.5rem;padding:.375rem .75rem;border-radius:1rem;color:#fff;font-size:.875rem;font-weight:500;margin-right:.5rem;animation:chipSlideIn .2s ease}@keyframes chipSlideIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.mode-chip-label{display:flex;align-items:center;gap:.25rem}.mode-chip-remove{display:flex;align-items:center;justify-content:center;background:#fff3;border:none;border-radius:50%;width:20px;height:20px;padding:0;cursor:pointer;transition:background-color .2s ease;color:#fff}.mode-chip-remove:hover{background:#ffffff4d}.mode-suggestions-panel{background:#fff;border:1px solid #E5E7EB;border-radius:.75rem;box-shadow:0 1px 3px #0000000d;padding:0;margin-top:.5rem;animation:suggestionsSlideIn .2s ease;width:100%;max-width:800px;overflow:hidden}@keyframes suggestionsSlideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.suggestions-header{display:flex;align-items:center;gap:.5rem;padding:16px 20px!important;color:#6b7280;font-size:.875rem;font-weight:500;border-bottom:1px solid #E5E7EB;background:#f9fafb;min-height:48px}.suggestions-header svg{flex-shrink:0}.suggestions-close{margin-left:auto;display:flex;align-items:center;justify-content:center;background:none;border:none;color:#9ca3af;cursor:pointer;padding:.25rem;border-radius:.25rem;transition:all .2s ease}.suggestions-close:hover{background:#f3f4f6;color:#6b7280}.suggestions-list{display:flex;flex-direction:column;gap:0;padding:.5rem}.suggestion-item{display:flex;align-items:center;gap:.75rem;width:100%;padding:.875rem 1rem;background:none;border:none;border-radius:.5rem;color:#1f2937;font-size:.9375rem;text-align:left;cursor:pointer;transition:all .15s ease;border-bottom:1px solid transparent}.suggestion-item:hover{background-color:#f9fafb}.suggestion-item:not(:last-child){border-bottom:1px solid #F3F4F6}.suggestion-icon{flex-shrink:0;color:#6b7280}.suggestion-item.document-suggestion{flex-direction:row;align-items:center}.suggestion-document-info{display:flex;flex-direction:column;gap:.125rem;flex:1;min-width:0}.suggestion-document-action{font-size:.7rem;font-weight:600;color:#8b5cf6;text-transform:uppercase;letter-spacing:.5px}.suggestion-document-title{font-size:.9375rem;color:#1f2937;line-height:1.3;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.suggestion-loading{display:flex;align-items:center;gap:.75rem;padding:1rem;color:#6b7280;font-size:.875rem}.suggestion-spinner{width:16px;height:16px;border:2px solid #E5E7EB;border-top-color:#8b5cf6;border-radius:50%;animation:suggestionSpinAnimation .8s linear infinite}@keyframes suggestionSpinAnimation{to{transform:rotate(360deg)}}@media (max-width: 640px){.mode-suggestions-panel{max-width:100%}}._grid_1m9ke_2{display:grid;grid-template-columns:1fr;gap:1.5rem;width:100%;max-width:900px;margin:0 auto;padding:0 1.5rem}@media (min-width: 768px){._grid_1m9ke_2{grid-template-columns:repeat(2,1fr);gap:1.5rem}}@media (min-width: 1024px){._grid_1m9ke_2{grid-template-columns:repeat(3,1fr);gap:2rem;max-width:1000px}}@media (min-width: 1280px){._grid_1m9ke_2{max-width:1100px;gap:2.5rem}}@media (min-width: 1536px){._grid_1m9ke_2{max-width:1300px;gap:3rem}}._card_1m9ke_42{position:relative;background:#fff;border-radius:1.5rem;border:2px solid #e5e7eb;transition:all .5s cubic-bezier(.4,0,.2,1);cursor:pointer;overflow:hidden;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;display:flex;flex-direction:column}._card_1m9ke_42:hover,._cardHovered_1m9ke_60{box-shadow:0 25px 50px -12px #00000040;transform:translateY(-.75rem) scale(1.02)}._cardHeader_1m9ke_66{position:relative;height:12rem;display:flex;align-items:center;justify-content:center;overflow:hidden}._gradientOrange_1m9ke_75{background:linear-gradient(to bottom right,#f97316,#f59e0b,#eab308)}._gradientAmber_1m9ke_79{background:linear-gradient(to bottom right,#f59e0b,#f97316,#ef4444)}._animatedBg_1m9ke_84{position:absolute;top:0;right:0;bottom:0;left:0;opacity:.2}._animatedBgInner_1m9ke_90{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom right,rgba(255,255,255,.4),transparent);transition:transform .7s cubic-bezier(.4,0,.2,1);transform:scale(1)}._animatedBgInnerHovered_1m9ke_98{transform:scale(1.1)}._iconContainer_1m9ke_103{position:relative;width:6rem;height:6rem;background:#fff;border-radius:1rem;box-shadow:0 25px 50px -12px #00000040;display:flex;align-items:center;justify-content:center;transition:transform .5s cubic-bezier(.4,0,.2,1);transform:scale(1) rotate(0)}._iconContainerHovered_1m9ke_117{transform:scale(1.1) rotate(3deg)}._icon_1m9ke_103{width:3rem;height:3rem;color:#ea580c;stroke-width:2}._cardContent_1m9ke_129{padding:2rem;display:flex;flex-direction:column;flex:1}._cardTitle_1m9ke_136{font-family:Outfit,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:1.5rem;font-weight:700;color:#f97316;text-align:center;margin-bottom:1rem;text-transform:uppercase;letter-spacing:.05em}._button_1m9ke_148{width:100%;min-height:3.5rem;padding:.75rem 1.5rem;border-radius:.75rem;font-weight:600;color:#fff;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:all .3s cubic-bezier(.4,0,.2,1);border:none;cursor:pointer}._button_1m9ke_148:hover{box-shadow:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;transform:scale(1.05)}._buttonIcon_1m9ke_170{width:1.25rem;height:1.25rem;transition:transform .3s cubic-bezier(.4,0,.2,1)}._button_1m9ke_148:hover ._buttonIcon_1m9ke_170{transform:translate(.25rem)}._accentLine_1m9ke_181{height:.25rem;transition:all .3s cubic-bezier(.4,0,.2,1);opacity:0}._accentLineVisible_1m9ke_187{opacity:1}._bulletPoints_1m9ke_192{list-style:none;padding:0;margin:0 0 1.5rem;text-align:left;flex:1}._bulletPoints_1m9ke_192 li{color:#6b7280;font-size:.875rem;line-height:1.5;padding-left:1.25rem;position:relative;margin-bottom:.25rem}._bulletPoints_1m9ke_192 li:before{content:"•";position:absolute;left:0;color:#f97316}@media (max-width: 1366px){._grid_1m9ke_2{gap:.75rem;padding:0 .75rem}._card_1m9ke_42{border-radius:.875rem}._cardHeader_1m9ke_66{height:6rem}._iconContainer_1m9ke_103{width:3.5rem;height:3.5rem;border-radius:.625rem}._icon_1m9ke_103{width:1.75rem;height:1.75rem}._cardContent_1m9ke_129{padding:1rem}._cardTitle_1m9ke_136{font-size:1.125rem;margin-bottom:.5rem}._bulletPoints_1m9ke_192{margin:0 0 .75rem}._bulletPoints_1m9ke_192 li{font-size:.75rem;line-height:1.35;margin-bottom:0}._button_1m9ke_148{min-height:2.5rem;padding:.5rem .75rem;font-size:.8rem;border-radius:.5rem}._buttonIcon_1m9ke_170{width:.875rem;height:.875rem}}@media (max-width: 768px){._grid_1m9ke_2{gap:.5rem;padding:0 .5rem}._card_1m9ke_42{border-radius:.75rem}._cardHeader_1m9ke_66{height:5rem}._iconContainer_1m9ke_103{width:3rem;height:3rem;border-radius:.5rem}._icon_1m9ke_103{width:1.5rem;height:1.5rem}._cardContent_1m9ke_129{padding:.75rem}._cardTitle_1m9ke_136{font-size:.95rem;margin-bottom:.375rem}._bulletPoints_1m9ke_192{margin:0 0 .5rem}._bulletPoints_1m9ke_192 li{font-size:.7rem;line-height:1.3;margin-bottom:0;padding-left:.875rem}._button_1m9ke_148{min-height:2.25rem;padding:.375rem .5rem;font-size:.75rem;border-radius:.375rem}._buttonIcon_1m9ke_170{width:.75rem;height:.75rem}}.chat-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;flex:1;height:100%;min-height:200px;padding:16px 20px 20px;width:100%;pointer-events:auto;background:transparent!important;overflow:visible}.chat-empty-state:has(.modal-active){overflow-y:auto;overflow-x:hidden}.chat-empty-state:hover{background:transparent!important;filter:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;border-color:transparent!important;box-shadow:none!important}.empty-state-content{text-align:center;max-width:100%;width:100%;display:flex;flex-direction:column;align-items:center;gap:16px;pointer-events:auto;position:relative;margin-top:0}.empty-state-content.modal-active{margin-top:16px;gap:12px}.empty-state-title{font-family:Outfit,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif!important;font-size:38px!important;font-weight:600!important;margin:0 0 48px!important;background:linear-gradient(90deg,#e57800,#d2a721)!important;-webkit-background-clip:text!important;-webkit-text-fill-color:transparent!important;background-clip:text!important}.empty-state-input-wrapper{width:100%;max-width:800px;display:flex;flex-direction:column;align-items:center;gap:.5rem}.empty-state-input{width:100%;position:relative}.empty-state-mode-chip-overlay{position:absolute;left:48px;bottom:8px;z-index:15;pointer-events:auto;display:flex;align-items:center}.empty-state-input-with-chip .chat-input-pill{min-height:72px;height:auto;flex-direction:column;align-items:stretch;padding:8px 12px;gap:8px}.empty-state-input-with-chip .input-controls-row-default{display:flex;align-items:center;width:100%;gap:8px}.empty-state-input-with-chip .left-action-section{position:relative;width:auto}.empty-state-input .input-area{background:transparent;border:none;padding:0;border-top:none}.empty-state-input .input-container{background:#ffffff1a;border:1px solid rgba(255,255,255,.3);border-radius:12px;padding:4px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);gap:8px}.empty-state-input .input-field{background:transparent;border:none;color:#fff;font-size:16px;padding:12px 16px}.empty-state-input .input-field::-moz-placeholder{color:#ffffffb3}.empty-state-input .input-field::placeholder{color:#ffffffb3}.empty-state-input .input-field:focus{box-shadow:none;border:none;outline:none}.empty-state-input .send-button{background:#fff3;border:1px solid rgba(255,255,255,.3);color:#fff;padding:8px 12px;min-width:40px;height:40px;border-radius:8px}.empty-state-input .send-button:hover{background:#ffffff4d;transform:none}.empty-state-back-button{background:transparent;border:none;color:#ffffffb3;font-size:14px;cursor:pointer;padding:8px 16px;display:flex;align-items:center;gap:8px;margin-bottom:16px;transition:color .2s ease}.empty-state-back-button:hover{color:#fff}.empty-state-back-arrow{font-size:18px}@media (max-width: 768px){.empty-state-title{font-size:32px!important}.chat-empty-state{padding:30px 20px}}.empty-state-content.ask-anything-mode{justify-content:flex-start;min-height:100%;padding-top:200px;position:relative}.empty-state-content.ask-anything-mode .empty-state-title{margin-bottom:16px!important}.empty-state-content.ask-anything-mode .empty-state-back-button{margin-top:0;margin-bottom:16px;color:#888;font-size:13px}.empty-state-content.ask-anything-mode .empty-state-back-button:hover{color:#555}.empty-state-back-button.back-button-below-input{margin-top:1.5rem;align-self:center!important;color:#000}.empty-state-back-button.back-button-below-input:hover{color:#333}.ask-anything-input-wrapper{margin-top:0;width:100%;max-width:800px}.ask-anything-input{width:100%}.ask-anything-input .chat-input-pill{min-height:80px;border-radius:16px;box-shadow:0 4px 16px #00000014;padding:12px 16px}.ask-anything-input .chat-input-field{font-size:17px;padding:14px 16px}.ask-anything-toggle-container{position:absolute;top:1rem;right:1rem;z-index:10;pointer-events:auto}.ask-anything-toggle{background:#fff;border-radius:24px;box-shadow:0 2px 8px #0000001a}.retry-button-container{max-width:800px;margin:8px auto 12px;margin-left:max(calc((100% - 800px)/2),0px);margin-right:auto;display:flex;flex-direction:column;gap:8px;animation:retrySlideIn .3s ease-out}@keyframes retrySlideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.retry-error-details{display:flex;align-items:center;gap:8px;padding:10px 16px;background:#fef2f2;border:1px solid #fecaca;border-radius:12px;font-size:13px;color:#991b1b}.retry-error-icon{font-size:16px;flex-shrink:0}.retry-error-text{flex:1;line-height:1.4}.retry-action-button{align-self:flex-start;display:flex;align-items:center;gap:6px;padding:8px 16px;background:#ef4444;color:#fff;border:none;border-radius:10px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 4px #ef444433}.retry-action-button:hover{background:#dc2626;transform:translateY(-1px);box-shadow:0 4px 8px #ef44444d}.retry-action-button:active{transform:translateY(0);box-shadow:0 2px 4px #ef444433}.retry-action-button svg{transition:transform .3s ease}.retry-action-button:hover svg{transform:rotate(180deg)}@media (max-width: 640px){.retry-button-container{max-width:95%;margin-left:2.5%;margin-right:2.5%}.retry-error-details{font-size:12px;padding:8px 12px}.retry-action-button{font-size:12px;padding:7px 14px}}.text-gui-container{animation:textGUISlideIn .3s cubic-bezier(.4,0,.2,1)}@keyframes textGUISlideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.text-gui-container ::-webkit-scrollbar{width:6px;height:6px}.text-gui-container ::-webkit-scrollbar-track{background:transparent}.text-gui-container ::-webkit-scrollbar-thumb{background:#e578004d;border-radius:3px}.text-gui-container ::-webkit-scrollbar-thumb:hover{background:#e5780080}.text-gui-container textarea:focus-visible{outline:2px solid rgba(229,120,0,.5);outline-offset:-2px}.text-gui-container button:focus-visible{outline:2px solid rgba(229,120,0,.5);outline-offset:2px}@media (max-width: 600px){.text-gui-container{padding:12px 16px}}.warning-banner{position:sticky;top:0;z-index:1000;width:100%;padding:12px 16px;border-bottom:1px solid rgba(255,255,255,.2);font-size:13px;line-height:1.4;box-shadow:0 2px 8px #00000026;pointer-events:auto;-webkit-user-select:text;-moz-user-select:text;user-select:text}.warning-banner-content{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;pointer-events:auto}.warning-banner-message{flex:1;font-weight:500;word-wrap:break-word;pointer-events:auto;-webkit-user-select:text;-moz-user-select:text;user-select:text}.warning-banner-dismiss{background:none;border:none;cursor:pointer;font-size:18px;font-weight:700;line-height:1;padding:0;margin:0;opacity:.8;transition:opacity .2s ease;flex-shrink:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;pointer-events:auto;-webkit-user-select:none;-moz-user-select:none;user-select:none}.warning-banner-dismiss:hover{opacity:1}.warning-banner-dismiss:focus{outline:2px solid rgba(255,255,255,.5);outline-offset:2px}.out-of-credits-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:9999;padding:20px}.out-of-credits-modal-overlay.paywall{background-color:#000c;cursor:not-allowed;pointer-events:auto}.out-of-credits-modal{background:#fff;border-radius:16px;box-shadow:0 25px 50px -12px #00000040,0 0 0 1px #0000000d;width:508px;max-width:508px;max-height:85vh;overflow-y:auto;animation:modalSlideIn .3s ease-out;border:1px solid rgba(0,0,0,.08)}.out-of-credits-modal-overlay.paywall .out-of-credits-modal{border:2px solid #3b82f6;box-shadow:0 25px 50px -12px #0000004d,0 0 0 1px #3b82f633,0 0 20px #3b82f61a;animation:paywallPulse 2s ease-in-out infinite}@keyframes paywallPulse{0%,to{box-shadow:0 25px 50px -12px #0000004d,0 0 0 1px #3b82f633,0 0 20px #3b82f61a}50%{box-shadow:0 25px 50px -12px #0000004d,0 0 0 1px #3b82f64d,0 0 30px #3b82f633}}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-30px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{display:flex;align-items:center;gap:14px;padding:20px 32px 16px;border-bottom:1px solid #f1f5f9}.modal-icon{font-size:28px;line-height:1;filter:drop-shadow(0 2px 4px rgba(59,130,246,.3))}.modal-title{margin:0;font-size:22px;font-weight:700;color:#0f172a;line-height:1.3;letter-spacing:-.025em}.modal-content{padding:24px 32px 28px;width:500px}.modal-message{margin:0 0 24px;font-size:16px;color:#475569;line-height:1.6;font-weight:500;text-align:center}.modal-bullet-points{margin-bottom:32px}.bullet-point{display:flex;gap:12px;margin-bottom:16px;align-items:flex-start}.bullet{color:#3b82f6;font-size:14px;line-height:1.4;flex-shrink:0;margin-top:1px;font-weight:600}.bullet-text{font-size:15px;color:#475569;line-height:1.5;font-weight:400}.bullet-text strong{color:#0f172a;font-weight:600}.learn-more-button{width:100%;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;border-radius:12px;padding:16px 24px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease;margin:0 0 24px;box-shadow:0 4px 12px #3b82f64d;position:relative;overflow:hidden}.learn-more-button:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-2px);box-shadow:0 8px 20px #3b82f666}.learn-more-button:active{transform:translateY(-1px);box-shadow:0 4px 12px #3b82f64d}.learn-more-button:focus{outline:none;box-shadow:0 0 0 3px #3b82f64d,0 4px 12px #3b82f64d}.modal-footer{padding:16px 32px 20px;border-top:1px solid #f1f5f9}.support-info{margin:0;font-size:12px;color:#64748b;text-align:center;line-height:1.5;font-weight:400}@media (max-width: 480px){.out-of-credits-modal{margin:10px;max-width:none}.modal-header,.modal-content,.modal-footer{padding-left:20px;padding-right:20px}.modal-title{font-size:18px}}.screenshot-confirmation-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:2147483647}.screenshot-confirmation-dialog{background-color:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;width:90%;max-width:600px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;animation:screenshot-confirmation-fade-in .2s ease-out}@keyframes screenshot-confirmation-fade-in{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.screenshot-confirmation-header{display:flex;align-items:center;justify-content:space-between;padding:15px 20px;border-bottom:1px solid #eaeaea}.screenshot-confirmation-header h3{margin:0;font-size:18px;font-weight:500;color:#333}.screenshot-confirmation-close{background:none;border:none;font-size:24px;color:#999;cursor:pointer;padding:0;margin:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%}.screenshot-confirmation-close:hover{color:#333;background-color:#f5f5f5}.screenshot-confirmation-content{padding:15px 20px;overflow-y:auto}.screenshot-confirmation-content p{margin-top:0;margin-bottom:15px;color:#555}.screenshot-confirmation-image-container{border:1px solid #eaeaea;border-radius:4px;overflow:hidden;margin-bottom:10px}.screenshot-confirmation-image{width:100%;display:block}.screenshot-confirmation-text-input{margin-top:15px}.screenshot-confirmation-text-input label{display:block;font-size:14px;font-weight:500;color:#374151;margin-bottom:8px}.screenshot-confirmation-text-input textarea{width:100%;padding:12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;color:#111827;background:#fff;resize:vertical;min-height:80px;font-family:inherit;transition:border-color .2s,box-shadow .2s;box-sizing:border-box}.screenshot-confirmation-text-input textarea:focus{outline:none;border-color:#2196f3;box-shadow:0 0 0 3px #2196f31a}.screenshot-confirmation-text-input textarea::-moz-placeholder{color:#9ca3af}.screenshot-confirmation-text-input textarea::placeholder{color:#9ca3af}.screenshot-confirmation-actions{display:flex;justify-content:flex-end;padding:15px 20px;border-top:1px solid #eaeaea}.screenshot-confirmation-button{padding:8px 16px;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s}.screenshot-confirmation-cancel{background-color:#fff;border:1px solid #ddd;color:#555;margin-right:10px}.screenshot-confirmation-cancel:hover{background-color:#f5f5f5}.screenshot-confirmation-confirm{background-color:#2196f3;border:1px solid #2196F3;color:#fff}.screenshot-confirmation-confirm:hover{background-color:#1976d2}.explain-voice-input{margin-top:16px}.voice-recording-section{display:flex;flex-direction:column;gap:16px}.recording-instructions{text-align:center}.instruction-tip{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;background:#f0f9ff;border:1px solid #e0f2fe;border-radius:8px;font-size:14px;color:#0369a1}.voice-controls{display:flex;justify-content:center;margin:16px 0}.voice-btn{display:flex;align-items:center;gap:8px;padding:12px 20px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.voice-btn.start-recording{background:#dc2626;color:#fff}.voice-btn.start-recording:hover:not(:disabled){background:#b91c1c}.voice-btn.stop-recording{background:#f59e0b;color:#fff;animation:pulse 1.5s infinite}.voice-btn.re-record{background:#6b7280;color:#fff}.voice-btn.re-record:hover{background:#4b5563}.voice-btn:disabled{opacity:.5;cursor:not-allowed}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.explanation-preview{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:12px}.explanation-preview label{display:block;font-size:12px;font-weight:600;color:#374151;margin-bottom:8px}.explanation-text{font-size:14px;color:#1f2937;line-height:1.5}.error-message{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;font-size:14px}.error-message button{background:none;border:none;color:#dc2626;cursor:pointer;padding:2px 6px;border-radius:4px}.error-message button:hover{background:#dc26261a}.screenshot-confirmation-confirm:disabled{opacity:.5;cursor:not-allowed}.screenshot-container{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:2147483646;pointer-events:auto!important}.screenshot-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:none!important;cursor:crosshair;z-index:1}.screenshot-instructions{position:absolute;top:20px;left:50%;transform:translate(-50%);background-color:#fff;padding:10px 16px;border-radius:8px;font-size:14px;font-weight:500;color:#333;box-shadow:0 2px 8px #0003;pointer-events:none}.screenshot-selection{position:absolute;border:2px solid white;box-sizing:border-box;pointer-events:none;z-index:2;background:none!important}.screenshot-cancel-button{position:absolute;bottom:20px;right:20px;background-color:#fff;border:none;padding:8px 16px;border-radius:4px;font-size:14px;font-weight:500;color:#333;cursor:pointer;box-shadow:0 2px 8px #0003;transition:background-color .2s}.screenshot-cancel-button:hover{background-color:#f5f5f5}.screenshot-preview{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background-color:#fff;padding:16px;border-radius:8px;box-shadow:0 4px 16px #0003;z-index:2147483647}.screenshot-preview-image{max-width:90vw;max-height:80vh;border:1px solid #e0e0e0}.screenshot-preview-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.screenshot-preview-button{padding:8px 16px;border:none;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s}.screenshot-preview-button.primary{background-color:#2196f3;color:#fff}.screenshot-preview-button.secondary{background-color:#f5f5f5;color:#333}.screenshot-preview-button:hover{opacity:.9}.screenshot-overlay.with-hole{background:none;pointer-events:auto}.screenshot-overlay.with-hole:before{content:"";position:fixed;top:0;left:0;width:100vw;height:100vh;pointer-events:none;background:#00000080;mask-image:var(--screenshot-hole-mask);-webkit-mask-image:var(--screenshot-hole-mask);z-index:1}.camera-capture-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;z-index:10000;display:flex;align-items:center;justify-content:center;animation:fadeIn .2s ease-out}.camera-capture-container{background:#fff;border-radius:12px;max-width:90vw;max-height:90vh;width:800px;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease-out}.camera-capture-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb}.camera-capture-header h3{margin:0;font-size:18px;font-weight:600;color:#111827}.camera-close-btn{background:none;border:none;padding:8px;cursor:pointer;color:#6b7280;border-radius:6px;transition:all .2s;display:flex;align-items:center;justify-content:center}.camera-close-btn:hover{background:#f3f4f6;color:#374151}.camera-capture-content{flex:1;display:flex;flex-direction:column;padding:24px;min-height:400px}.camera-viewport{position:relative;background:#000;border-radius:8px;overflow:hidden;flex:1;display:flex;align-items:center;justify-content:center;min-height:300px}.camera-video{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;display:block}.camera-video.mirrored{transform:scaleX(-1)!important;-webkit-transform:scaleX(-1)!important}.camera-loading{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;color:#fff}.camera-loading-spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite;margin:0 auto 12px}.camera-loading p{margin:0;font-size:14px;color:#ffffffe6}.camera-canvas{display:none}.camera-controls{display:flex;gap:12px;justify-content:center;margin-top:20px}.cam-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;border:none;outline:none}.cam-btn:disabled{opacity:.5;cursor:not-allowed}.cam-btn.primary{background:#3b82f6;color:#fff}.cam-btn.primary:hover:not(:disabled){background:#2563eb;transform:translateY(-1px);box-shadow:0 4px 12px #3b82f64d}.cam-btn.secondary{background:#f3f4f6;color:#374151}.cam-btn.secondary:hover:not(:disabled){background:#e5e7eb}.capture-btn{padding:16px 32px;font-size:16px;font-weight:600;border-radius:8px;background:#3b82f6;color:#fff;box-shadow:0 4px 16px #3b82f64d;position:relative;overflow:hidden;min-width:140px}.capture-btn:hover:not(:disabled){background:#2563eb;transform:translateY(-2px);box-shadow:0 8px 24px #3b82f666}.capture-btn:active{transform:translateY(0);box-shadow:0 2px 8px #3b82f64d}.camera-tips{text-align:center;margin-top:16px}.camera-tips p{margin:0;font-size:13px;color:#6b7280}.camera-error{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px}.camera-error svg{color:#ef4444;margin-bottom:16px}.camera-error p{margin:0 0 24px;font-size:14px;color:#374151;max-width:400px;line-height:1.5}.camera-preview{flex:1;display:flex;flex-direction:column}.camera-preview img{flex:1;width:100%;height:auto;-o-object-fit:contain;object-fit:contain;border-radius:8px;background:#f9fafb;min-height:300px;max-height:500px}.camera-preview-actions{display:flex;gap:32px;justify-content:center;margin-top:24px}.camera-preview-actions .cam-btn{border:none;border-radius:8px;padding:14px 28px;font-weight:500;min-width:130px;box-shadow:0 2px 8px #0000001a}.camera-preview-actions .cam-btn.secondary{background:#f8fafc;color:#475569}.camera-preview-actions .cam-btn.secondary:hover:not(:disabled){background:#f1f5f9;transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.camera-preview-actions .cam-btn.primary{background:#3b82f6;color:#fff}.camera-preview-actions .cam-btn.primary:hover:not(:disabled){background:#2563eb;transform:translateY(-1px);box-shadow:0 4px 12px #3b82f64d}@media (max-width: 768px){.camera-capture-container{width:100%;height:100%;max-width:100vw;max-height:100vh;border-radius:0}.camera-capture-header{padding:16px 20px}.camera-capture-content{padding:16px}.camera-viewport{min-height:200px}.camera-controls{flex-direction:column}.cam-btn{width:100%;justify-content:center}.capture-btn{order:-1}}@media (prefers-color-scheme: dark){.camera-capture-container{background:#1f2937}.camera-capture-header{border-bottom-color:#374151}.camera-capture-header h3{color:#f9fafb}.camera-close-btn{color:#9ca3af}.camera-close-btn:hover,.cam-btn.secondary{background:#374151;color:#e5e7eb}.cam-btn.secondary:hover:not(:disabled){background:#4b5563}.camera-tips p{color:#9ca3af}.camera-error p{color:#e5e7eb}.camera-preview img{background:#111827}}.explain-workflow-container{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.explain-step-container{background:#fff;border-radius:16px;max-width:500px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(50px);opacity:0}to{transform:translateY(0);opacity:1}}.explain-header{text-align:center;padding:24px 24px 16px;border-bottom:1px solid #f0f0f0}.explain-icon{display:flex;align-items:center;justify-content:center;width:64px;height:64px;margin:0 auto 16px;border-radius:50%;background:linear-gradient(135deg,#f8faff,#e8f0ff);color:#3b82f6}.explain-icon.processing{animation:bounce 2s infinite}.explain-header h3{margin:0 0 8px;font-size:24px;font-weight:600;color:#333}.explain-header p{margin:0;color:#666;font-size:16px;line-height:1.4}.explain-content{padding:24px}.capture-options{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.capture-option-btn{display:flex;align-items:center;gap:16px;padding:16px;border:2px solid #e0e0e0;border-radius:12px;background:#fff;cursor:pointer;transition:all .2s ease;text-align:left}.capture-option-btn:hover{border-color:#007aff;background:#f8f9ff}.capture-option-btn.primary{border-color:#e0e0e0;background:#fff;color:#374151}.capture-option-btn.primary:hover{border-color:#d1d5db;background:#f9fafb}.option-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:8px;background:#6b72801a;color:#6b7280;flex-shrink:0}.capture-option-btn.primary .option-icon{background:#6b72801a;color:#6b7280}.option-text{display:flex;flex-direction:column;gap:4px}.option-title{font-size:18px;font-weight:600}.option-subtitle{font-size:14px;opacity:.8}.image-preview{display:flex;flex-direction:column;align-items:center;margin-bottom:24px}.preview-image{max-width:100%;max-height:200px;border-radius:12px;box-shadow:0 4px 12px #0000001a;margin-bottom:8px}.preview-label{font-size:14px;color:#666;font-weight:500}.recording-interface{text-align:center}.recording-prompt{margin-bottom:24px;text-align:left}.recording-prompt p{font-weight:600;margin-bottom:12px;color:#333}.recording-prompt ul{margin:0;padding-left:20px;color:#666}.recording-prompt li{margin-bottom:4px}.recording-controls{margin-bottom:24px}.record-btn{display:inline-flex;align-items:center;gap:12px;padding:16px 32px;border:none;border-radius:50px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease;min-width:180px;justify-content:center}.record-btn.start{background:linear-gradient(135deg,#ff6b6b,#ff5252);color:#fff;box-shadow:0 4px 12px #ff6b6b4d}.record-btn.start:hover{transform:translateY(-2px);box-shadow:0 6px 20px #ff6b6b66}.record-btn.recording{background:linear-gradient(135deg,#ffa726,#ff9800);color:#fff;box-shadow:0 4px 12px #ffa7264d}.record-icon{font-size:20px}.record-icon.recording-pulse{animation:pulse 1.5s infinite}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}.explain-processing-indicator{display:flex;align-items:center;justify-content:center;gap:12px;padding:16px;color:#666}.explain-spinner{width:20px;height:20px;border:2px solid #f0f0f0;border-top:2px solid #007AFF;border-radius:50%;animation:explainSpin 1s linear infinite}@keyframes explainSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.transcription-section{text-align:left;margin-bottom:24px}.transcription-section h4{margin:0 0 12px;color:#333;font-size:16px}.transcription-display{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;padding:16px;min-height:80px;max-height:200px;overflow-y:auto;font-size:14px;line-height:1.5;color:#333;white-space:pre-wrap}.cursor-blink{animation:blink 1s infinite}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.error-message{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#fff5f5;border:1px solid #fecaca;border-radius:8px;color:#dc2626;font-size:14px;margin-bottom:16px}.error-icon{flex-shrink:0}.error-dismiss{background:none;border:none;color:#dc2626;cursor:pointer;padding:4px;margin-left:auto}.processing-animation{position:relative;display:flex;align-items:center;justify-content:center;margin:40px 0}.explain-processing-spinner{width:60px;height:60px;border:3px solid #f0f0f0;border-top:3px solid #007AFF;border-radius:50%;animation:explainSpin 1s linear infinite}.processing-waves{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.wave{position:absolute;width:80px;height:80px;border:2px solid #007AFF;border-radius:50%;animation:pulse-wave 2s ease-in-out infinite}.wave:nth-child(2){animation-delay:.3s}.wave:nth-child(3){animation-delay:.6s}@keyframes pulse-wave{0%{transform:translate(-50%,-50%) scale(.8);opacity:.7}50%{transform:translate(-50%,-50%) scale(1.1);opacity:.3}to{transform:translate(-50%,-50%) scale(.8);opacity:.7}}.progress-bar{width:100%;height:4px;background:#f0f0f0;border-radius:2px;margin:24px 0;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#007aff,#00d4ff);border-radius:2px;transition:width .5s ease}.processing-steps{display:flex;flex-direction:column;gap:12px;margin:24px 0}.step{display:flex;align-items:center;gap:12px;padding:8px 0}.step.completed .step-icon{color:#10b981}.step.current .step-icon{color:#007aff}.step.pending .step-icon{color:#9ca3af}.step-text{color:#374151;font-size:14px}.step.current .step-text{font-weight:600}.step.pending .step-text{color:#9ca3af}.explain-tips,.recording-tips{background:#f8f9ff;border:1px solid #e0e6ff;border-radius:8px;padding:16px;margin:24px 0}.explain-tips h4{margin:0 0 12px;color:#333;font-size:14px;display:flex;align-items:center;gap:8px}.explain-tips ul{margin:0;padding-left:20px;color:#666;font-size:14px}.explain-tips li{margin-bottom:4px}.recording-tips p{margin:4px 0;font-size:14px;color:#666}.explain-processing-message{text-align:center;color:#666;font-size:14px}.explain-processing-message p{margin:8px 0}.explain-actions{display:flex;gap:12px;justify-content:flex-end;padding:16px 24px 24px;border-top:1px solid #f0f0f0}.explain-btn{padding:12px 24px;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease;border:none}.explain-btn.primary{background:linear-gradient(135deg,#007aff,#0056d6);color:#fff}.explain-btn.primary:hover:not(:disabled){background:linear-gradient(135deg,#0056d6,#003d9a);transform:translateY(-1px)}.explain-btn.secondary{background:#f8f9fa;color:#666;border:1px solid #e0e0e0}.explain-btn.secondary:hover:not(:disabled){background:#e9ecef}.explain-btn:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){.explain-step-container{width:95%;margin:20px auto;max-height:85vh}.explain-header{padding:20px 16px 12px}.explain-content{padding:16px}.explain-actions{padding:12px 16px 20px;flex-direction:column}.capture-option-btn{padding:12px;gap:12px}.option-icon{font-size:24px}.option-title{font-size:16px}}.chat-panel{display:flex;flex-direction:column;height:100%;width:100%;background-color:#fff;overflow:hidden;position:relative}.chat-panel>div{height:100%;width:100%}.chat-container{display:flex;flex-direction:column;height:100%;width:100%;background:#f9fafb}.chat-panel-sidebar{border-left:1px solid #e5e7eb}.chat-panel-fullscreen{width:100%!important;height:100%!important;background-color:#fff!important;border:none!important}.chat-panel-hide-btn{position:absolute;top:8px;right:8px;z-index:1002;display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:#ffffffe6;border:1px solid #e0e0e0;border-radius:8px;color:#6b7280;cursor:pointer;transition:all .2s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.chat-panel-hide-btn:hover{background:#f0f0f0f2;border-color:#9ca3af;color:#374151;transform:scale(1.05)}.chat-panel-hide-btn:active{transform:scale(.95)}@media (max-width: 768px){.chat-panel-sidebar{border-left:none;border-top:1px solid #e5e7eb}}@media (prefers-color-scheme: dark){.chat-panel-hide-btn{background:#1f2937e6;border-color:#4b5563;color:#9ca3af}.chat-panel-hide-btn:hover{background:#374151f2;border-color:#6b7280;color:#f9fafb}}.user-profile-dropdown{position:relative;display:inline-block}.user-profile-button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:50%;background-color:transparent;cursor:pointer;transition:all .2s ease;position:relative;overflow:hidden;pointer-events:auto}.user-profile-button:hover{background-color:#f8f9fa;transform:scale(1.05)}.user-profile-button:active{transform:scale(.98)}.user-avatar{width:100%;height:100%;border-radius:50%;-o-object-fit:cover;object-fit:cover;border:2px solid #e5e7eb;transition:all .2s ease}.user-avatar-fallback{display:flex;align-items:center;justify-content:center;width:100%;height:100%;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-size:12px;font-weight:600;border:2px solid #e5e7eb;text-transform:uppercase}.user-dropdown-portal{background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;border:1px solid #e5e7eb;min-width:200px;overflow:hidden;animation:dropdownSlideIn .2s ease-out}.user-dropdown-header{padding:16px;background:#f8f9fa;border-bottom:1px solid #e5e7eb}.user-info{display:flex;flex-direction:column;gap:2px}.user-name{font-size:14px;font-weight:600;color:#1f2937;line-height:1.2}.user-email{font-size:12px;color:#6b7280;line-height:1.2}.user-dropdown-divider{height:1px;background:#e5e7eb;margin:0}.user-dropdown-item{display:flex;align-items:center;gap:12px;padding:12px 16px;width:100%;border:none;background:none;cursor:pointer;transition:all .2s ease;text-align:left;color:#374151;font-size:14px;font-weight:500}.user-dropdown-item:hover{background:#f8f9fa;color:#1f2937}.user-dropdown-item:active{background:#f1f3f4}.dropdown-item-icon{flex-shrink:0;color:#6b7280;transition:color .2s ease}.user-dropdown-item:hover .dropdown-item-icon{color:#374151}.user-profile-loading{opacity:.7}.loading-spinner{width:12px;height:12px;border:2px solid #e5e7eb;border-top:2px solid #667eea;border-radius:50%;animation:spin 1s linear infinite}@media (max-width: 768px){.user-profile-button{width:28px;height:28px}.user-dropdown-portal{min-width:180px}.user-name{font-size:13px}.user-email{font-size:11px}.user-dropdown-item{padding:10px 14px;font-size:13px}}.chat-history-backdrop{position:fixed;top:env(safe-area-inset-top,0px);left:0;right:0;bottom:0;background-color:#00000080;z-index:1001;animation:fadeIn .3s ease-out}.chat-history-panel{position:fixed;top:env(safe-area-inset-top,0px);left:0;bottom:0;height:calc(100vh - env(safe-area-inset-top,0px));height:calc(100dvh - env(safe-area-inset-top,0px));width:75vw;max-width:min(75vw,400px);background-color:#fff;z-index:1002;transform:translate(-100%);transition:transform .3s cubic-bezier(.25,.46,.45,.94);display:flex;flex-direction:column;box-shadow:2px 0 10px #0000001a;will-change:transform}.chat-history-panel.open{transform:translate(0)}.chat-history-header{padding:16px 16px 12px;border-bottom:1px solid #e5e7eb;flex-shrink:0;display:flex;align-items:center;gap:8px}.new-chat-button{flex:1;display:flex;align-items:center;gap:12px;padding:12px;background-color:transparent;border:1px solid #d1d5db;border-radius:8px;font-size:14px;font-weight:500;color:#374151;cursor:pointer;transition:all .2s ease}.panel-hide-button{display:flex;align-items:center;justify-content:center;width:32px;height:40px;padding:0;background-color:transparent;border:1px solid #d1d5db;border-radius:8px;color:#6b7280;cursor:pointer;transition:all .2s ease;flex-shrink:0}.panel-hide-button:hover{background-color:#f9fafb;border-color:#9ca3af;color:#374151}.panel-hide-button:active{transform:scale(.95)}.new-chat-button:hover{background-color:#f9fafb;border-color:#9ca3af}.new-chat-button:active{transform:scale(.98)}.new-chat-button svg{color:#6b7280;flex-shrink:0}.chat-history-section{flex:1;overflow:hidden;display:flex;flex-direction:column;padding:0 16px;min-height:0}.chat-history-title{font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;margin:16px 0 8px;padding:0}.chat-history-loading{display:flex;align-items:center;gap:12px;padding:20px 0;color:#6b7280;font-size:14px}.loading-spinner{width:16px;height:16px;border:2px solid #e5e7eb;border-top:2px solid #3b82f6;border-radius:50%;animation:spin 1s linear infinite}.chat-list{flex:1;overflow-y:auto;padding-bottom:8px;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scroll-behavior:smooth;min-height:0}.chat-list::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:2px;-webkit-transition:background-color .2s ease;transition:background-color .2s ease}.chat-list::-webkit-scrollbar-thumb:hover{background:#9ca3af}.chat-list:active::-webkit-scrollbar-thumb{background:#9ca3af}.chat-item{width:100%;display:flex;align-items:center;justify-content:space-between;padding:12px 8px;margin-bottom:4px;background-color:transparent;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease;text-align:left}.chat-item:hover{background-color:#f3f4f6}.chat-item.active{background-color:#eff6ff;border:1px solid #dbeafe}.chat-item.active .chat-item-title{color:#1d4ed8;font-weight:600}.chat-item-content{flex:1;min-width:0}.chat-item-title{font-size:14px;font-weight:500;color:#111827;margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-item-time{font-size:12px;color:#6b7280}.chat-item-arrow{color:#9ca3af;flex-shrink:0;transition:transform .2s ease}.chat-item:hover .chat-item-arrow{transform:translate(2px);color:#6b7280}.chat-history-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;text-align:center;flex:1}.chat-history-empty svg{color:#d1d5db;margin-bottom:16px}.chat-history-empty p{font-size:16px;font-weight:500;color:#374151;margin:0 0 4px}.chat-history-empty span{font-size:14px;color:#6b7280}.chat-history-footer{flex-shrink:0;padding:12px 16px 16px;border-top:1px solid #e5e7eb;position:sticky;bottom:0;bottom:env(safe-area-inset-bottom,0px);background:#fff;z-index:10;padding-bottom:calc(16px + env(safe-area-inset-bottom,0px))}.chat-profile-section{display:flex;align-items:center;width:100%}.chat-history-footer .user-profile-dropdown{width:100%}.chat-history-footer .user-profile-button{width:100%;display:flex;align-items:center;justify-content:flex-start;padding:8px 12px;background-color:transparent;border:1px solid transparent;border-radius:8px;transition:all .2s ease;height:auto;gap:12px}.chat-history-footer .user-profile-button:hover{background-color:#f3f4f6;border-color:#d1d5db}.chat-history-footer .user-avatar,.chat-history-footer .user-avatar-fallback{width:32px;height:32px;border-radius:50%;flex-shrink:0}.chat-history-footer .user-profile-info{display:flex;flex-direction:column;flex:1;min-width:0}.chat-history-footer .user-profile-name{font-size:16px;font-weight:600;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:4px;letter-spacing:-.01em}.chat-history-footer .user-dropdown-menu{position:fixed;top:auto;bottom:20px;right:20px;left:20px;z-index:1010;min-width:auto;max-width:240px;margin-left:auto;border-radius:12px;box-shadow:0 8px 32px #0003}.chat-history-footer .user-dropdown-header{padding:20px;background:#f8f9fa;border-bottom:1px solid #e5e7eb}.chat-history-footer .user-name{font-size:16px;font-weight:600;color:#1f2937;margin-bottom:4px}.chat-history-footer .user-email{font-size:13px;color:#6b7280}.chat-history-footer .user-dropdown-item{padding:16px 20px;font-size:15px;display:flex;align-items:center;gap:16px}.chat-history-footer .dropdown-item-icon{width:20px;height:20px;color:#6b7280}@media (max-width: 480px){.chat-history-footer .user-dropdown-menu{bottom:20px;bottom:calc(20px + env(safe-area-inset-bottom,0px));right:16px;left:16px;max-width:none}.chat-history-panel{top:env(safe-area-inset-top,0px);bottom:0;height:calc(100vh - env(safe-area-inset-top,0px));height:calc(100dvh - env(safe-area-inset-top,0px))}.chat-history-backdrop{top:env(safe-area-inset-top,0px);bottom:0}.chat-history-footer{padding-bottom:calc(16px + env(safe-area-inset-bottom,0px))}}@media (max-width: 320px){.chat-history-panel{width:75vw;max-width:75vw}}@media (prefers-contrast: high){.chat-history-panel{border-right:2px solid #000}.new-chat-button{border-color:#000}.chat-item.active{border-color:#000;background-color:#f0f0f0}}@media (prefers-reduced-motion: reduce){.chat-history-panel{transition:none}.chat-history-backdrop{animation:none}.new-chat-button:active{transform:none}}@media (prefers-color-scheme: dark){.chat-history-panel{background-color:#1f2937;color:#f9fafb}.chat-history-header{border-color:#374151}.new-chat-button{background-color:transparent;border-color:#4b5563;color:#f9fafb}.new-chat-button:hover{background-color:#374151;border-color:#6b7280}.panel-hide-button{background-color:transparent;border-color:#4b5563;color:#9ca3af}.panel-hide-button:hover{background-color:#374151;border-color:#6b7280;color:#f9fafb}.chat-item-title{color:#f9fafb}.chat-item:hover{background-color:#374151}.chat-item.active{background-color:#1e40af;border-color:#3b82f6}.chat-item.active .chat-item-title{color:#dbeafe}.chat-history-footer{border-color:#374151}}.chat-item.long-pressed{background-color:#fee2e2;border:2px solid #ef4444;animation:longPressShake .3s ease-in-out}@keyframes longPressShake{0%,20%,50%,80%,to{transform:translate(0)}10%{transform:translate(-2px)}30%{transform:translate(2px)}60%{transform:translate(-1px)}90%{transform:translate(1px)}}.chat-item-wrapper{position:relative}.chat-item-long-press-actions{position:absolute;top:0;left:0;right:0;bottom:0;background-color:#ef44441a;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;gap:12px;border-radius:8px;animation:fadeInActions .2s ease-out;z-index:1}@keyframes fadeInActions{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.delete-button{display:flex;align-items:center;gap:6px;padding:8px 16px;background-color:#ef4444;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.delete-button:hover{background-color:#dc2626;transform:scale(1.05)}.delete-button:active{transform:scale(.95)}.cancel-button{padding:8px 16px;background-color:#6b7280;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.cancel-button:hover{background-color:#4b5563;transform:scale(1.05)}.cancel-button:active{transform:scale(.95)}.delete-modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0009;z-index:2000;animation:fadeIn .2s ease-out}.delete-confirmation-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background-color:#fff;border-radius:12px;padding:24px;max-width:320px;width:90%;z-index:2001;animation:modalSlideIn .3s cubic-bezier(.25,.46,.45,.94);box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}@keyframes modalSlideIn{0%{opacity:0;transform:translate(-50%,-45%)}to{opacity:1;transform:translate(-50%,-50%)}}.delete-modal-content h3{margin:0 0 12px;font-size:18px;font-weight:600;color:#1f2937}.delete-modal-content p{margin:0 0 20px;color:#6b7280;line-height:1.5}.delete-modal-actions{display:flex;gap:12px;justify-content:flex-end}.cancel-modal-button{padding:10px 20px;background-color:#f3f4f6;color:#374151;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.cancel-modal-button:hover{background-color:#e5e7eb}.confirm-delete-button{padding:10px 20px;background-color:#ef4444;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.confirm-delete-button:hover{background-color:#dc2626}.confirm-delete-button:active{transform:scale(.98)}@media (prefers-color-scheme: dark){.chat-item.long-pressed{background-color:#7f1d1d;border-color:#dc2626}.delete-confirmation-modal{background-color:#1f2937}.delete-modal-content h3{color:#f9fafb}.delete-modal-content p{color:#d1d5db}.cancel-modal-button{background-color:#374151;color:#f9fafb}.cancel-modal-button:hover{background-color:#4b5563}}.chat-item-actions{display:flex;align-items:center;gap:4px;flex-shrink:0;opacity:0;transition:all .2s ease;position:relative;margin-left:8px}.chat-item:hover .chat-item-actions{opacity:1}.chat-action-menu-button{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:transparent;border:none;border-radius:6px;cursor:pointer;transition:all .2s ease;font-size:16px;color:#6b7280;padding:0}.chat-action-menu-button:hover{color:#374151;background:#f3f4f6}.chat-actions-dropdown{position:relative;background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001f,0 1px 3px #00000014;border:1px solid #d1d5db;padding:4px;width:100%;margin-top:4px;margin-left:0;margin-right:0;z-index:1000;animation:dropdownSlideIn .2s ease-out}@keyframes dropdownSlideIn{0%{opacity:0;transform:translateY(-4px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.chat-dropdown-action{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;background:none;border:none;color:#374151;font-size:13px;font-weight:400;cursor:pointer;transition:all .15s ease;border-radius:4px;text-align:left}.chat-dropdown-action:hover{background:#f8fafc;color:#111827;transform:translate(2px)}.chat-dropdown-action:active{background:#e5e7eb;transform:translate(1px)}.chat-dropdown-action-delete{color:#ef4444}.rename-modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0009;z-index:2000;animation:fadeIn .2s ease-out}.rename-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background-color:#fff;border-radius:12px;padding:24px;max-width:320px;width:90%;z-index:2001;animation:modalSlideIn .3s cubic-bezier(.25,.46,.45,.94);box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.rename-modal-content h3{margin:0 0 16px;font-size:18px;font-weight:600;color:#1f2937}.rename-input{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;color:#1f2937;margin-bottom:20px;transition:all .2s ease;box-sizing:border-box}.rename-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.rename-modal-actions{display:flex;gap:12px;justify-content:flex-end}.cancel-rename-button{padding:10px 20px;background-color:#f3f4f6;color:#374151;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.cancel-rename-button:hover{background-color:#e5e7eb}.confirm-rename-button{padding:10px 20px;background-color:#3b82f6;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.confirm-rename-button:hover{background-color:#2563eb}.confirm-rename-button:active{transform:scale(.98)}.confirm-rename-button:disabled{background-color:#9ca3af;cursor:not-allowed;opacity:.6}@media (prefers-color-scheme: dark){.chat-actions-dropdown{background-color:#1f2937;border-color:#374151}.chat-dropdown-action{color:#f9fafb}.chat-dropdown-action:hover{background:#374151;color:#fff}.chat-dropdown-action:active{background:#4b5563}.chat-action-menu-button{color:#9ca3af}.chat-action-menu-button:hover{color:#f9fafb;background:#374151}.rename-modal{background-color:#1f2937}.rename-modal-content h3{color:#f9fafb}.rename-input{background-color:#374151;border-color:#4b5563;color:#f9fafb}.rename-input:focus{border-color:#3b82f6;background-color:#374151}.cancel-rename-button{background-color:#374151;color:#f9fafb}.cancel-rename-button:hover{background-color:#4b5563}}.chat-mode-dropdown{position:relative;display:inline-block}.dropdown-trigger{background:transparent;border:none;padding:0;color:#0e1116;cursor:pointer;transition:all .2s ease;font-size:16px;font-weight:600;text-shadow:none}.dropdown-trigger:hover{opacity:.8}.trigger-content{display:flex;align-items:center;gap:6px;font-size:16px;font-weight:600}.mode-icon{font-size:14px}.mode-label{flex:1;text-align:left}.dropdown-arrow{transition:transform .2s ease;opacity:.9;width:10px;height:10px}.dropdown-arrow.open{transform:rotate(180deg)}.dropdown-menu{position:absolute;top:100%;left:0;right:0;background:#000c;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:6px;box-shadow:0 4px 20px #0000004d;border:1px solid rgba(255,255,255,.1);z-index:1000;margin-top:4px;min-width:180px;overflow:hidden}.dropdown-item{display:flex;align-items:center;gap:10px;padding:10px 14px;width:100%;border:none;background:none;cursor:pointer;transition:all .2s ease;text-align:left;color:#fff}.dropdown-item:hover{background:#ffffff1a}.dropdown-item.active{background:#ffffff26;color:var(--mode-color, #ef4444)}.item-icon{font-size:18px;flex-shrink:0}.item-content{flex:1;display:flex;flex-direction:column;gap:2px}.item-label{font-weight:600;font-size:13px}.item-description{font-size:11px;color:#ffffffb3;line-height:1.3}.check-icon{color:var(--mode-color, #ef4444);flex-shrink:0}.dropdown-menu{animation:dropdownSlideIn .2s ease-out}@keyframes dropdownSlideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.dropdown-trigger{padding:6px 10px;min-width:100px}.trigger-content{font-size:18px;gap:6px}.mode-icon{font-size:14px}.dropdown-menu{min-width:180px}.dropdown-item{padding:10px 14px}.item-label{font-size:13px}.item-description{font-size:11px}}.mobile-input-area{padding:12px 16px;background:#fff;border-top:1px solid #e5e7eb;position:sticky;bottom:0;z-index:1000}.mobile-input-container{display:flex;align-items:center;gap:12px;max-width:100%}.mobile-camera-button{width:40px;height:40px;border-radius:50%;background:transparent;border:none;display:flex;align-items:center;justify-content:center;color:#6b7280;flex-shrink:0;transition:all .2s ease;cursor:pointer;outline:none;box-shadow:none;padding:0;position:relative;overflow:hidden}.mobile-camera-button svg{stroke:#6b7280;fill:none;width:20px;height:20px;display:block;shape-rendering:geometricPrecision;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.mobile-camera-button:hover{background:#f3f4f6;color:#374151}.mobile-camera-button:hover svg{stroke:#374151}.mobile-camera-button:disabled{opacity:.5;cursor:not-allowed}.mobile-camera-button:disabled svg{stroke:#9ca3af}.mobile-input-field{flex:1;display:flex;align-items:center;background:#f9fafb;border:1px solid #e5e7eb;border-radius:24px;padding:8px 12px;gap:8px;min-height:44px;max-height:44px;box-sizing:border-box}.mobile-textarea{flex:1;border:none;background:transparent;outline:none;resize:none;font-size:16px;line-height:20px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:#111827;padding:0;margin:0;height:20px;min-height:20px;max-height:20px;overflow:hidden;vertical-align:middle}.mobile-textarea::-moz-placeholder{color:#9ca3af;font-size:16px}.mobile-textarea::placeholder{color:#9ca3af;font-size:16px}.mobile-textarea:disabled{color:#9ca3af;cursor:not-allowed}.mobile-send-button{width:32px;height:32px;border-radius:50%;background:transparent;border:none;display:flex;align-items:center;justify-content:center;color:#d1d5db;flex-shrink:0;transition:all .2s ease;cursor:pointer;padding:0;margin:0}.mobile-send-button.active{color:#ef4444}.mobile-send-button.active:hover{background:#fef2f2;color:#dc2626}.mobile-send-button:disabled{color:#d1d5db;cursor:not-allowed}.mobile-send-button:disabled:hover{background:transparent}.mobile-textarea:focus{outline:none}.mobile-input-field:focus-within{border-color:#ef4444;box-shadow:none}@media (max-width: 320px){.mobile-input-area{padding:8px 12px}.mobile-input-container{gap:8px}.mobile-camera-button{width:36px;height:36px}}.camera-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:9999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .2s ease-out}.camera-modal{background:#fff;border-radius:24px;min-width:320px;max-width:400px;width:90%;max-height:80vh;overflow:hidden;box-shadow:0 25px 50px #00000040;animation:slideUp .3s ease-out;position:relative;z-index:10000}.camera-modal-header{display:flex;align-items:center;justify-content:space-between;padding:24px 24px 20px;background:linear-gradient(135deg,#f8f9ff,#f1f5ff);border-radius:24px 24px 0 0}.camera-modal-header h3{margin:0;font-size:18px;font-weight:600;color:#1a202c;letter-spacing:-.025em}.modal-close{background:#fffc;border:none;font-size:20px;cursor:pointer;color:#64748b;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(226,232,240,.3)}.modal-close:hover{background:#ef44441a;color:#ef4444;transform:scale(1.1)}.camera-modal-actions{padding:24px;display:flex;flex-direction:column;gap:12px;background:linear-gradient(180deg,#fff,#fafbff);border-radius:0 0 24px 24px}.camera-modal .action-button{display:flex;align-items:center;gap:12px;padding:16px 20px;border:none;border-radius:16px;font-size:15px;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;min-height:60px;text-align:left}.camera-modal .action-button.primary{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;box-shadow:0 4px 12px #ef44444d}.camera-modal .action-button.primary:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);transform:translateY(-2px) scale(1.02);box-shadow:0 8px 20px #ef444466}.camera-modal .action-button.secondary{background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff;box-shadow:0 4px 12px #6366f14d}.camera-modal .action-button.secondary:hover{background:linear-gradient(135deg,#4f46e5,#4338ca);transform:translateY(-2px) scale(1.02);box-shadow:0 8px 20px #6366f166}.camera-modal .action-button.tertiary{background:#f8fafccc;color:#64748b;border:2px solid rgba(226,232,240,.5);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.camera-modal .action-button.tertiary:hover{background:#ef44440d;border-color:#ef444433;color:#ef4444;transform:translateY(-1px)}.action-icon{font-size:20px;min-width:24px;text-align:center}.action-text{font-weight:600;font-size:15px}@media (max-width: 480px){.camera-modal{min-width:280px;width:92%;max-height:75vh;margin:8px}.camera-modal-header{padding:20px 20px 16px}.camera-modal-header h3{font-size:16px}.camera-modal-actions{padding:20px;gap:10px}.camera-modal .action-button{padding:14px 18px;font-size:14px;border-radius:10px;min-height:44px;width:100%}}@media (prefers-color-scheme: dark){.mobile-input-area{background:#1f2937;border-color:#374151}.mobile-input-field{background:#374151;border-color:#4b5563}.mobile-textarea{color:#f9fafb}.mobile-textarea::-moz-placeholder{color:#9ca3af}.mobile-textarea::placeholder{color:#9ca3af}.mobile-camera-button{color:#d1d5db}.mobile-camera-button:hover{background:#4b5563;color:#f3f4f6}}.modern-chat-interface{display:flex;flex-direction:column;height:100%;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);border-radius:0;overflow:hidden;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;transition:all .3s cubic-bezier(.4,0,.2,1)}.unlimited-access-indicator{display:flex;align-items:center}.unlimited-badge{background:#fff9e6;color:#8e793e;padding:4px 10px;border-radius:6px;font-size:11px;font-weight:600;border:1px solid #F4C542;box-shadow:0 1px 3px #f4c54226}.modern-chat-interface.minimized{height:60px;overflow:hidden}.modern-chat-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#fff;color:#0e1116;position:relative;z-index:1;min-height:56px;flex-shrink:0;width:100%;border-bottom:1px solid #E5E7EB}.chat-header-left,.chat-header-center,.chat-header-right{flex:1;display:flex;align-items:center}.chat-header-left{justify-content:flex-start}.chat-header-center{justify-content:center}.chat-header-right{justify-content:flex-end}.tutor-info{margin-right:12px;max-width:400px}.tutor-name{font-size:15px;font-weight:600;color:#0e1116;letter-spacing:-.01em}.tutor-description{margin:2px 0 0;font-size:13px;color:#475569;font-weight:400;line-height:1.4}.back-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid #E5E7EB;background:#fff;color:#475569;border-radius:8px;cursor:pointer;transition:all .2s ease;margin-right:4px}.back-btn:hover{background:#fff5eb;border-color:#ffd9a8;color:#e57800}.tutor-avatar{position:relative;width:40px;height:40px;background:linear-gradient(135deg,#ff8c42,orange);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:20px;margin-right:12px;box-shadow:0 2px 8px #e5780026;border:none}.status-indicator{position:absolute;bottom:-2px;right:-2px;width:14px;height:14px;border-radius:50%;border:3px solid #FFFFFF;box-shadow:0 2px 4px #0000001a}.status-indicator.online{background:#10b981;animation:pulse 2s infinite}.tutor-info{flex:1;min-width:0;margin-right:8px}.tutor-header-row{display:flex;align-items:center;gap:8px;margin-bottom:2px}.tutor-info h3{margin:0;font-size:15px;font-weight:600;color:#0e1116;letter-spacing:-.01em}.tutor-info p{margin:2px 0 0;font-size:13px;color:#475569;font-weight:400}.compact-credit-display{display:flex;align-items:center;gap:6px;padding:4px 10px;background:#fff9e6;border-radius:6px;border:1px solid #F4C542;box-shadow:0 1px 3px #f4c54226;min-width:0;flex-shrink:0;max-width:120px}.compact-credit-display .credit-display{color:#8e793e;font-size:12px;font-weight:600;margin:0;display:flex;align-items:center;gap:3px;min-width:0;flex:1}.compact-credit-display .credit-count{position:relative;display:flex;align-items:center;gap:2px;min-width:0;flex-shrink:0}.compact-credit-display .credit-icon{font-size:11px;filter:drop-shadow(0 1px 1px rgba(0,0,0,.3));animation:sparkle 2s ease-in-out infinite;flex-shrink:0}.compact-credit-display .credit-text{font-weight:600;text-shadow:0 1px 1px rgba(0,0,0,.2);font-size:11px;letter-spacing:.2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#fff}.compact-credit-display .buy-more-button{color:#fff;font-size:10px;font-weight:600;background:#ffffff1f;border:1px solid rgba(255,255,255,.2);padding:2px 5px;border-radius:4px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:all .2s ease;text-decoration:none;cursor:pointer;position:relative;overflow:hidden;white-space:nowrap;flex-shrink:0;min-width:0}.compact-credit-display .buy-more-button:hover{background:#fff3;border-color:#ffffff4d;transform:translateY(-1px);box-shadow:0 2px 6px #00000026}.compact-credit-display .buy-more-button:active{transform:translateY(0);box-shadow:0 1px 3px #00000026}.modern-credit-display{margin-left:auto;display:flex;align-items:center;gap:8px;padding:6px 10px;background:#ffffff1a;border-radius:8px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);box-shadow:0 2px 8px #0000001a;min-width:0;flex-shrink:0;max-width:200px}.modern-credit-display .credit-display{color:#fff;font-size:13px;margin:0;display:flex;align-items:center;gap:6px;min-width:0;flex:1}.modern-credit-display .credit-count{color:#fff;font-weight:600;text-shadow:0 1px 2px rgba(0,0,0,.2);font-size:15px;letter-spacing:.5px}.modern-credit-display .buy-more-button{color:#fff;font-size:12px;font-weight:600;background:#ffffff26;border:1px solid rgba(255,255,255,.25);padding:4px 8px;border-radius:6px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s cubic-bezier(.4,0,.2,1);text-decoration:none;cursor:pointer;position:relative;overflow:hidden;white-space:nowrap;flex-shrink:0;min-width:0}.modern-credit-display .buy-more-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.modern-credit-display .buy-more-button:hover{background:#ffffff40;border-color:#fff6;transform:translateY(-2px);box-shadow:0 4px 12px #0003}.modern-credit-display .buy-more-button:hover:before{left:100%}.modern-credit-display .buy-more-button:active{transform:translateY(0);box-shadow:0 2px 4px #0003}.modern-credit-display .credit-count{position:relative;display:flex;align-items:center;gap:4px;min-width:0;flex-shrink:0}.modern-credit-display .credit-icon{font-size:14px;filter:drop-shadow(0 1px 2px rgba(0,0,0,.3));animation:sparkle 2s ease-in-out infinite;flex-shrink:0}.modern-credit-display .credit-text{font-weight:600;text-shadow:0 1px 2px rgba(0,0,0,.2);font-size:13px;letter-spacing:.3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.modern-credit-display .credit-count:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;height:100%;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%);border-radius:50%;z-index:-1}@keyframes sparkle{0%,to{transform:scale(1) rotate(0);filter:drop-shadow(0 1px 2px rgba(0,0,0,.3))}50%{transform:scale(1.1) rotate(5deg);filter:drop-shadow(0 2px 4px rgba(0,0,0,.4)) brightness(1.1)}}.modern-chat-content{flex:1;display:flex;flex-direction:column;min-height:0;background:#fff;position:relative}.chat-wrapper,.modern-chat-component{flex:1;display:flex;flex-direction:column;min-height:0}.modern-chat-component .chat-window{background:transparent;box-shadow:none;border-radius:0}.modern-chat-component .chat-header{display:none}.modern-chat-component .messages-container{background:#fff;padding:32px}.modern-chat-component .message{margin:12px 0;padding:16px 20px;border-radius:8px;box-shadow:0 2px 4px #0000000d;animation:messageSlideIn .4s ease;max-width:90%}.modern-chat-component .user-message{background-color:#f3f4f6!important;color:#1a1a1a!important;margin-left:auto;border-radius:16px;border:none;box-shadow:none;padding:10px 14px;max-width:-moz-fit-content;max-width:fit-content;text-align:left}.modern-chat-component .assistant-message{background:#fff;color:#374151;margin-right:auto;border-radius:8px 8px 8px 2px;border:1px solid rgba(0,0,0,.05);box-shadow:0 2px 4px #0000000d}.modern-input-wrapper{padding:0;background:linear-gradient(180deg,#fff,#f8fafc);border-top:1px solid rgba(0,0,0,.08)}.input-enhancement-bar{display:flex;align-items:center;justify-content:flex-start;margin-bottom:6px;padding:0}.enhancement-tools{display:flex;gap:6px;align-items:center}.tool-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;background:#0000000d;color:#6b7280;border-radius:4px;cursor:pointer;transition:all .2s ease;font-size:10px}.tool-btn:hover{background:#0000001a;color:#374151;transform:translateY(-1px)}.tool-btn:active{transform:translateY(0)}.modern-chat-component .input-area{background:transparent;border-top:none;flex-shrink:0}.modern-chat-component .input-container{display:flex;align-items:center;gap:8px;padding:0!important}.modern-chat-component .input-field{flex:1;min-height:28px;max-height:60px;padding:6px 10px;border:1px solid rgba(0,0,0,.1);border-radius:6px;font-size:14px;line-height:1.3;resize:none;outline:none;transition:all .2s ease;background:#fff;color:#374151}.modern-chat-component .input-field:focus{border-color:var(--theme-color, #ef4444);box-shadow:0 0 0 2px #ef44441a}.modern-chat-component .input-field::-moz-placeholder{color:#9ca3af}.modern-chat-component .input-field::placeholder{color:#9ca3af}.modern-chat-component .send-button{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:var(--theme-color, #ef4444);color:#fff;border-radius:6px;cursor:pointer;transition:all .2s ease;font-size:12px}.modern-chat-component .send-button:hover{background:var(--theme-color-dark, #dc2626);transform:translateY(-1px)}.modern-chat-component .send-button:active{transform:translateY(0)}.modern-chat-component .send-button:disabled{background:#9ca3af;cursor:not-allowed;transform:none}.modern-chat-component .chat-input-card{margin:6px 10px 10px!important;border-radius:12px!important;box-shadow:0 2px 8px #0000001a!important;padding-bottom:8px!important}.modern-chat-component .toolbar-row{padding:8px 12px 4px!important}.modern-chat-component .input-row{padding:8px 12px!important;border-top:none!important;border-bottom:none!important}.modern-chat-component .toolbar-row{padding:8px 12px 4px!important;border-bottom:none!important}.modern-chat-component .input-divider{display:none!important;height:0!important;background:transparent!important;border:none!important}.modern-chat-component .chat-input-card .input-divider{display:none!important;height:0!important;background:transparent!important;border:none!important;margin:0!important;padding:0!important}.modern-input-wrapper:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.05) 50%,transparent 100%)}@keyframes messageSlideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.modern-chat-component .messages-container::-webkit-scrollbar{width:6px}.modern-chat-component .messages-container::-webkit-scrollbar-track{background:transparent}.modern-chat-component .messages-container::-webkit-scrollbar-thumb{background:#0000001a;border-radius:3px}.modern-chat-component .messages-container::-webkit-scrollbar-thumb:hover{background:#0003}@media (max-width: 1366px){.modern-chat-interface{height:100%!important;max-height:100%!important;padding-bottom:env(safe-area-inset-bottom,0px)}.modern-chat-content{flex:1;min-height:0;padding-bottom:env(safe-area-inset-bottom,0px)}.modern-chat-component{flex:1;min-height:0;overflow:hidden}.modern-chat-component .messages-container{flex:1;min-height:0;overflow-y:auto}}@media (max-width: 768px){.modern-chat-interface{height:100%!important;max-height:100%!important;border-radius:0!important;box-shadow:none!important}.modern-chat-interface.mobile-optimized{height:100%!important;max-height:100%!important}}@media (max-width: 640px){.modern-chat-header{padding:6px 12px;gap:6px;min-height:44px;box-shadow:0 1px 4px #0000001a}.tutor-avatar{width:28px;height:28px;margin-right:6px;font-size:16px}.tutor-header-row{gap:4px}.tutor-info h3{font-size:24px!important}.tutor-info p{font-size:10px!important;margin:0!important;line-height:1.2!important;opacity:.8}.tutor-info{margin-right:4px}.compact-credit-display{padding:1px 4px;gap:3px;max-width:100px}.compact-credit-display .credit-display{font-size:10px;gap:2px}.compact-credit-display .credit-icon{font-size:10px}.compact-credit-display .credit-text{font-size:10px;color:#fff}.compact-credit-display .buy-more-button{font-size:9px;padding:1px 4px}.modern-credit-display{padding:4px 6px;gap:6px;max-width:160px}.modern-credit-display .credit-display{font-size:11px;gap:4px}.modern-credit-display .credit-icon{font-size:12px}.modern-credit-display .credit-text{font-size:11px;color:#fff}.modern-credit-display .buy-more-button{font-size:11px;padding:3px 6px}.modern-chat-component .messages-container{padding:20px}.modern-input-wrapper{padding:0}.enhancement-tools{gap:4px}.tool-btn{width:20px;height:20px;font-size:8px}.modern-chat-component .input-field{font-size:13px;min-height:24px;padding:4px 8px}.modern-chat-component .send-button{width:24px;height:24px;font-size:10px}}.mobile-new-chat-button{background:none;border:none;color:#fff;font-size:16px;cursor:pointer;padding:6px 8px;border-radius:6px;transition:background-color .2s,transform .2s;display:flex;align-items:center;justify-content:center;min-width:32px;height:32px}.mobile-new-chat-button:hover{background-color:#ffffff26;transform:scale(1.05)}.mobile-new-chat-button:active{transform:scale(.95)}.tutor-header-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}@media (max-width: 768px) and (pointer: coarse){.modern-chat-interface button{min-height:44px;min-width:44px}.modern-chat-component .messages-container{-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.modern-chat-interface{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}}@media (max-width: 768px){.modern-chat-interface{transform:none!important;will-change:auto!important}}@media (max-width: 480px){.modern-chat-header{padding:6px 8px;gap:6px;min-height:48px}.tutor-avatar{width:28px;height:28px;margin-right:6px}.tutor-header-row{gap:4px}.compact-credit-display{padding:1px 3px;gap:2px;max-width:80px}.compact-credit-display .credit-display{font-size:9px;gap:1px}.compact-credit-display .credit-icon{font-size:9px}.compact-credit-display .credit-text{font-size:9px;color:#fff}.compact-credit-display .buy-more-button{font-size:8px;padding:1px 3px}.modern-credit-display{padding:3px 5px;gap:4px;max-width:140px}.modern-credit-display .credit-display{font-size:10px;gap:3px}.modern-credit-display .credit-icon{font-size:11px}.modern-credit-display .credit-text{font-size:10px;color:#fff}.modern-credit-display .buy-more-button{font-size:10px;padding:2px 5px}}.drag-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:1000;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:none;border-radius:0;display:flex;align-items:center;justify-content:center;opacity:0;animation:fadeIn .2s ease-out forwards;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;box-sizing:border-box;overflow:hidden}.drag-overlay--global{position:fixed;top:0;left:0;right:0;bottom:0;z-index:1000;border-radius:0}.drag-overlay--active{background:#000000bf;border:none;box-shadow:0 8px 32px #0000004d}.drag-overlay-content{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;padding:48px;text-align:center;pointer-events:none}.drag-overlay-icon{width:80px;height:80px;display:flex;align-items:center;justify-content:center;background:#3b82f61a;border-radius:50%;transition:all .2s ease-out}.drag-overlay--active .drag-overlay-icon{background:#3b82f633;transform:scale(1.1)}.drag-overlay-icon svg{width:64px;height:64px}.drag-overlay-title{margin:0;font-size:28px;font-weight:600;color:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;letter-spacing:-.02em;transition:all .2s ease-out}.drag-overlay--active .drag-overlay-title{color:#fff;transform:translateY(-2px)}.drag-overlay-description{margin:0;font-size:16px;color:#ffffffb3;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.5;max-width:400px;font-weight:400;transition:all .2s ease-out}.drag-overlay--active .drag-overlay-description{color:#ffffffe6}@keyframes fadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes fadeOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.95)}}@media (max-width: 768px){.drag-overlay-content{gap:20px;padding:32px}.drag-overlay-icon{width:64px;height:64px}.drag-overlay-icon svg{width:48px;height:48px}.drag-overlay-title{font-size:24px}.drag-overlay-description{font-size:14px;max-width:320px}}@media (prefers-contrast: high){.drag-overlay{border:none;background:#000000e6}.drag-overlay-title{color:#fff}.drag-overlay-description{color:#ffffffe6}}@media (prefers-reduced-motion: reduce){.drag-overlay{animation:none}.drag-overlay-icon,.drag-overlay-title,.drag-overlay-description{transition:none}.drag-overlay--active .drag-overlay-icon{transform:scale(1.05)}.drag-overlay--active .drag-overlay-title{transform:none}}.context-menu{background:#fff;background-color:#fff;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(0,0,0,.08);border-radius:8px;box-shadow:0 4px 24px #0000001f,0 2px 8px #00000014;min-width:220px;padding:6px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;animation:contextMenuFadeIn .15s ease-out;isolation:isolate}@keyframes contextMenuFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.context-menu-item{display:flex;align-items:center;padding:8px 12px;margin:2px 0;background:transparent;border:none;border-radius:6px;cursor:pointer;width:100%;font-size:13px;color:#1a1a1a;transition:all .15s ease;text-align:left;gap:10px;opacity:1!important;position:relative}.context-menu-item:hover:not(.disabled){background-color:#f0f0f0}.context-menu-item:active:not(.disabled){background-color:#e0e0e0;transform:scale(.98)}.context-menu-item.disabled{opacity:.4;cursor:not-allowed}.context-menu-icon{width:16px;height:16px;flex-shrink:0;opacity:1}.context-menu-item:hover:not(.disabled) .context-menu-icon{opacity:1}.context-menu-label{flex:1;text-align:left;font-weight:400;letter-spacing:.01em}.context-menu-shortcut{margin-left:auto;opacity:1!important;font-size:11px;font-weight:400;padding-left:20px}.context-menu-separator{height:1px;background:#00000014;margin:6px 8px}@media (prefers-color-scheme: dark){.context-menu{background:#2a2a2a;border-color:#ffffff1a;box-shadow:0 4px 24px #00000080,0 2px 8px #0000004d}.context-menu-item{color:#f0f0f0}.context-menu-item:hover:not(.disabled){background-color:#3a3a3a}.context-menu-item:active:not(.disabled){background-color:#404040}.context-menu-separator{background:#ffffff1a}.context-menu-icon{filter:invert(1)}}.delete-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:999999;animation:fadeIn .2s ease-out}.delete-modal-content{background:#fff;border-radius:12px;padding:32px;max-width:440px;width:90%;box-shadow:0 20px 60px #0003;animation:slideUp .3s ease-out}.delete-modal-icon{width:56px;height:56px;margin:0 auto 20px;background:#fee;border-radius:50%;display:flex;align-items:center;justify-content:center}.delete-modal-icon img{width:28px;height:28px;opacity:.8}.delete-modal-title{font-size:24px;font-weight:600;color:#1a1a1a;margin:0 0 12px;text-align:center}.delete-modal-message{font-size:15px;color:#666;line-height:1.5;margin:0 0 28px;text-align:center}.delete-modal-actions{display:flex;gap:12px;justify-content:center}.delete-modal-cancel,.delete-modal-confirm{padding:10px 24px;border-radius:8px;font-size:14px;font-weight:500;border:none;cursor:pointer;transition:all .2s ease;min-width:120px}.delete-modal-cancel{background:#f5f5f5;color:#333}.delete-modal-cancel:hover{background:#e8e8e8}.delete-modal-confirm{background:#dc3545;color:#fff}.delete-modal-confirm:hover{background:#c82333;transform:translateY(-1px);box-shadow:0 4px 12px #dc35454d}@media (prefers-color-scheme: dark){.delete-modal-content{background:#2a2a2a;color:#f0f0f0}.delete-modal-icon{background:#dc354533}.delete-modal-title{color:#f0f0f0}.delete-modal-message{color:#aaa}.delete-modal-cancel{background:#3a3a3a;color:#f0f0f0}.delete-modal-cancel:hover{background:#454545}}.image-action-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .2s ease-in-out}.image-action-modal{background:#fff;border-radius:16px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:500px;width:90%;max-height:80vh;overflow:hidden;animation:slideUp .3s ease-out}.image-action-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #e5e7eb}.image-action-modal-header h3{margin:0;font-size:18px;font-weight:600;color:#111827}.image-action-modal-close{background:none;border:none;font-size:24px;color:#6b7280;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:all .2s}.image-action-modal-close:hover{background:#f3f4f6;color:#111827}.image-action-modal-content{padding:20px;overflow-y:auto;max-height:calc(80vh - 120px)}.image-action-preview{background:#f9fafb;border-radius:12px;padding:16px;margin-bottom:24px;display:flex;justify-content:center;align-items:center;min-height:200px;max-height:300px;overflow:hidden}.image-action-preview img{max-width:100%;max-height:100%;border-radius:8px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.image-action-text-input{margin-bottom:24px}.image-action-text-input label{display:block;font-size:14px;font-weight:500;color:#374151;margin-bottom:8px}.image-action-text-input textarea{width:100%;padding:12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;color:#111827;background:#fff;resize:vertical;min-height:80px;font-family:inherit;transition:border-color .2s,box-shadow .2s;box-sizing:border-box}.image-action-text-input textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.image-action-text-input textarea::-moz-placeholder{color:#9ca3af}.image-action-text-input textarea::placeholder{color:#9ca3af}.image-action-buttons{display:flex;gap:12px;justify-content:flex-end}.image-action-button{padding:10px 20px;border-radius:8px;border:none;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;min-width:100px}.image-action-cancel{background:#f3f4f6;color:#374151}.image-action-cancel:hover{background:#e5e7eb}.image-action-upload{background:#3b82f6;color:#fff}.image-action-upload:hover{background:#2563eb}.image-action-analyze{background:#10b981;color:#fff}.image-action-analyze:hover{background:#059669}@media (max-width: 640px){.image-action-modal{width:95%;max-height:90vh}.image-action-buttons{flex-direction:column}.image-action-button{width:100%}.image-action-preview{max-height:200px}}.confidence-rating-container{position:relative;display:flex;flex-direction:column;align-items:center;padding:20px 16px;background:linear-gradient(135deg,#f8f9ff,#e8f4fd);border-radius:16px;border:2px solid #c7d9f0;box-shadow:0 4px 20px #6366f126;overflow:hidden}.confidence-progress-bar{position:absolute;top:0;left:0;right:0;height:3px;background:#6366f11a;border-radius:3px 3px 0 0}.confidence-progress-fill{height:100%;background:linear-gradient(90deg,#6366f1,#8b5cf6);border-radius:3px 3px 0 0}.confidence-header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.confidence-sparkle{font-size:20px}.confidence-title{font-size:18px;font-weight:600;color:#1e293b;margin:0;text-align:center}.confidence-topic{font-size:13px;color:#64748b;margin:0 0 16px;text-align:center}.confidence-topic-name{color:#6366f1;font-weight:500}.confidence-buttons{display:flex;gap:12px;margin-bottom:8px}.confidence-button{display:flex;flex-direction:column;align-items:center;justify-content:center;width:56px;height:64px;padding:8px;border:2px solid #e2e8f0;border-radius:12px;background:#fff;cursor:pointer;transition:all .2s ease}.confidence-button:hover:not(:disabled){border-color:#6366f1;background:#f8f9ff}.confidence-button.selected{border-color:#6366f1;background:linear-gradient(135deg,#6366f1,#8b5cf6);transform:scale(1.1)}.confidence-button.selected .confidence-emoji,.confidence-button.selected .confidence-number{color:#fff}.confidence-button:disabled{cursor:default}.confidence-emoji{font-size:24px;line-height:1;margin-bottom:4px}.confidence-number{font-size:14px;font-weight:600;color:#64748b}.confidence-labels{display:flex;justify-content:space-between;width:100%;max-width:300px;padding:0 8px;margin-bottom:8px}.confidence-label-left,.confidence-label-right{font-size:11px;color:#94a3b8}.confidence-hovered-label{font-size:13px;color:#6366f1;font-weight:500;margin:0 0 8px;min-height:20px;text-align:center}.confidence-skip-button{padding:6px 16px;border:none;border-radius:20px;background:transparent;color:#94a3b8;font-size:12px;cursor:pointer;transition:all .2s ease}.confidence-skip-button:hover{background:#94a3b81a;color:#64748b}@media (max-width: 400px){.confidence-rating-container{padding:16px 12px}.confidence-title{font-size:16px}.confidence-buttons{gap:8px}.confidence-button{width:48px;height:56px}.confidence-emoji{font-size:20px}.confidence-number{font-size:12px}}@media (prefers-color-scheme: dark){.confidence-rating-container{background:linear-gradient(135deg,#1e293b,#0f172a);border-color:#334155}.confidence-title{color:#f1f5f9}.confidence-topic{color:#94a3b8}.confidence-button{background:#1e293b;border-color:#334155}.confidence-button:hover:not(:disabled){background:#334155}.confidence-number{color:#94a3b8}.confidence-label-left,.confidence-label-right{color:#64748b}}.image-document-view{display:flex;height:100vh;background-color:#f8fafc;position:fixed;top:0;left:60px;right:0;bottom:0;padding-top:0;transition:left .3s cubic-bezier(.4,0,.2,1);box-sizing:border-box;overflow-x:hidden}.image-document-view.sidebar-expanded{left:260px}.image-document-view__left-panel{width:30%;max-width:30%;min-width:0;display:flex;flex-direction:column;border-right:1px solid #E5E7EB;background-color:#f8fafc;height:100%;box-sizing:border-box;overflow:hidden}.image-document-view__header{padding:1.25rem 1.5rem;border-bottom:1px solid #E5E7EB;flex-shrink:0;background-color:#fff}.image-document-view__header-label{font-size:.625rem;font-weight:700;color:#e57800;text-transform:uppercase;letter-spacing:.1em;margin-bottom:.5rem}.image-document-view__header-title{font-size:1rem;font-weight:600;color:#0e1116;margin:0;line-height:1.4;word-break:break-word}.image-document-view__image-container{flex:1;display:flex;flex-direction:column;overflow:visible;background-color:#f8fafc;min-height:0}.image-document-view__nav-header{padding:.75rem 1.5rem;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #E5E7EB;background-color:#fff;overflow:visible;position:relative}.image-document-view__nav-controls{flex:1;display:flex;align-items:center;justify-content:center;gap:1rem}.image-document-view__nav-button{padding:.5rem;background:#fff;border:1px solid #E5E7EB;border-radius:6px;cursor:pointer;color:#0e1116;font-size:1.25rem;line-height:1;width:36px;height:36px;display:flex;align-items:center;justify-content:center;transition:all .08s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}.image-document-view__nav-button:hover:not(:disabled){background:#f8fafc;border-color:#cbd5e1;transform:translateY(-1px)}.image-document-view__nav-button:active:not(:disabled){transform:translateY(0);background:#f1f5f9}.image-document-view__nav-button:disabled{background:#f8fafc;cursor:not-allowed;color:#cbd5e1}.image-document-view__nav-counter{font-size:.875rem;font-weight:600;color:#64748b}.image-document-view__upload-button{padding:.375rem .75rem;background:#fff;border:1px solid #E5E7EB;border-radius:6px;cursor:pointer;color:#0e1116;font-size:.8125rem;font-weight:600;display:flex;align-items:center;gap:.375rem;transition:all .2s ease}.image-document-view__upload-button:hover{background-color:#f8fafc;border-color:#e57800}.image-document-view__upload-icon{font-size:1rem}.image-document-view__upload-dropdown{background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000026;padding:8px;min-width:220px;z-index:10000;animation:slideRight .2s ease}@keyframes slideRight{0%{opacity:0;transform:translateY(-50%) translate(-10px)}to{opacity:1;transform:translateY(-50%) translate(0)}}.image-document-view__upload-dropdown-item{width:100%;display:flex;align-items:center;gap:12px;padding:10px 12px;background:none;border:none;border-radius:8px;cursor:pointer;transition:background-color .15s ease;text-align:left;font-size:14px;color:#1f2937}.image-document-view__upload-dropdown-item:hover{background-color:#f3f4f6}.image-document-view__upload-dropdown-item:active{background-color:#e5e7eb}.image-document-view__upload-dropdown-item .menu-icon{display:flex;align-items:center;justify-content:center;color:#6b7280;flex-shrink:0}.image-document-view__upload-dropdown-item .menu-label{font-weight:500;flex:1}.image-document-view__image-display{flex:1;display:flex;align-items:flex-start;justify-content:flex-start;padding:.75rem;overflow:hidden;min-height:0;box-sizing:border-box}.image-document-view__problem-container{max-width:100%;max-height:100%;width:100%;display:flex;flex-direction:column;gap:1rem;overflow-y:auto;overflow-x:hidden;box-sizing:border-box}.image-document-view__problem-box{background-color:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 4px 12px #0000000f,0 2px 4px #00000008;border:1px solid #E5E7EB;box-sizing:border-box;overflow-wrap:break-word;word-break:break-word;max-width:100%}.image-document-view__hints-box{background-color:#fff9e6;border-radius:8px;padding:1rem 1.25rem;border:1px solid #F4C542;box-sizing:border-box;overflow-wrap:break-word;word-break:break-word;max-width:100%}.image-document-view__hints-label{font-size:.75rem;font-weight:700;color:#8e793e;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem}.image-document-view__hints-list{margin:0;padding-left:1.25rem;color:#8e793e;font-size:.875rem;line-height:1.6}.image-document-view__hints-list li{margin-bottom:.25rem}.image-document-view__practice-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.image-document-view__practice-badge{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .75rem;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;border-radius:6px;box-shadow:0 2px 4px #3b82f64d}.image-document-view__practice-dismiss{display:inline-flex;align-items:center;gap:.25rem;padding:.375rem .75rem;background:transparent;color:#6b7280;font-size:.75rem;font-weight:500;border:1px solid #E5E7EB;border-radius:6px;cursor:pointer;transition:all .15s ease}.image-document-view__practice-dismiss:hover{background:#f3f4f6;color:#374151;border-color:#d1d5db}.image-document-view__hint-text{color:#8e793e;font-size:.875rem;line-height:1.6}.image-document-view__image-wrapper{width:100%;height:100%;display:block;content-visibility:auto;contain-intrinsic-size:auto 600px}.image-document-view__image{width:100%;height:100%;display:block;transform:translateZ(0);will-change:transform;backface-visibility:hidden;-webkit-font-smoothing:antialiased;image-rendering:auto;-o-object-fit:contain;object-fit:contain;border-radius:12px;box-shadow:0 4px 12px #0000000f,0 2px 4px #00000008;border:1px solid #E5E7EB;background-color:#fff}.image-document-view__empty-state{text-align:center;color:#94a3b8;padding:2rem}.image-document-view__empty-icon{font-size:2.5rem;margin-bottom:.75rem;opacity:.4}.image-document-view__empty-text{font-size:.8125rem;font-weight:500;color:#64748b}.image-document-view__notes{padding:1.25rem 1.5rem;border-top:1px solid #E5E7EB;background-color:#fff;flex-shrink:0}.image-document-view__notes-label{font-size:.75rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem}.image-document-view__notes-textarea{width:100%;min-height:60px;padding:.75rem;border:1px solid #E5E7EB;border-radius:6px;font-size:.875rem;font-family:inherit;resize:vertical;background-color:#f8fafc}.image-document-view__notes-hint{font-size:.6875rem;color:#94a3b8;margin-top:.5rem;font-weight:500}.image-document-view__progress{padding:1.25rem 1.5rem;border-top:1px solid #E5E7EB;background-color:#fff;flex-shrink:0}.image-document-view__progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.image-document-view__progress-label{font-size:.75rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.05em}.image-document-view__progress-percent{font-size:.875rem;font-weight:700;color:#d2a721;font-feature-settings:"tnum"}.image-document-view__progress-bar{width:100%;height:8px;background-color:#e7ebf0;border-radius:6px;overflow:hidden}.image-document-view__progress-fill{height:100%;background:linear-gradient(90deg,#d2a721,#f4c542);transition:width .4s cubic-bezier(.4,0,.2,1);border-radius:6px}.image-document-view__progress-status{font-size:.6875rem;color:#94a3b8;margin-top:.625rem;font-weight:500}.image-document-view__right-panel{width:70%;max-width:70%;min-width:0;display:flex;flex-direction:column;background-color:#f8fafc;height:100%;box-sizing:border-box;overflow:hidden}.image-document-view__chat-header{padding:1.25rem 1.5rem;background-color:#fff;display:flex;align-items:center;gap:12px}.image-document-view__tutor-avatar{width:36px;height:36px;background:#fff;border-radius:8px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px #e578001f;flex-shrink:0;overflow:hidden;padding:4px}.image-document-view__tutor-logo{width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.image-document-view__tutor-info{flex:1}.image-document-view__tutor-name{margin:0;font-size:1rem;font-weight:600;color:#0e1116;line-height:1.4}.image-document-view__tutor-description{margin:2px 0 0;font-size:.75rem;color:#64748b}.image-document-view__unlimited-badge{padding:4px 10px;background:#fff9e6;border:1px solid #F4C542;border-radius:6px;font-size:.625rem;font-weight:700;color:#8e793e;text-transform:uppercase;letter-spacing:.05em}.image-document-view__chat-container{flex:1;display:flex;flex-direction:column;overflow:hidden;background-color:#f8fafc;min-width:0;max-width:100%}.image-document-view__loading-state{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background-color:#fff;border-radius:12px;border:1px solid #E5E7EB;box-shadow:0 4px 12px #0000000f,0 2px 4px #00000008}.image-document-view__loading-content{display:flex;flex-direction:column;align-items:center;gap:1.5rem;padding:2rem}.image-document-view__loading-spinner{width:48px;height:48px;border:3px solid #E5E7EB;border-top-color:#e57800;border-radius:50%;animation:spin 1s linear infinite}.image-document-view__loading-text{font-size:.875rem;font-weight:500;color:#64748b;text-align:center}.image-document-view__loading-subtext{font-size:.75rem;color:#94a3b8;margin-top:.25rem}:root{--brand-orange: hsl(25, 100%, 45%);--brand-orange-hover: hsl(25, 100%, 40%);--brand-orange-accent: hsl(25, 100%, 63%);--brand-orange-tint: hsl(30, 100%, 96%);--brand-orange-border: hsl(30, 100%, 82%);--brand-gold: hsl(45, 89%, 61%);--brand-gold-dark: hsl(45, 72%, 48%);--text-primary: hsl(220, 24%, 7%);--text-muted: hsl(215, 16%, 35%);--text-light: hsl(214, 17%, 66%);--surface: hsl(0, 0%, 100%);--background: hsl(0, 0%, 98%);--border: hsl(220, 13%, 91%);--success: hsl(152, 69%, 31%);--error: hsl(0, 84%, 60%)}.subscription-success-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--background);padding:2rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.success-container{background:var(--surface);border-radius:16px;padding:3rem;text-align:center;box-shadow:0 4px 24px #00000014;max-width:480px;width:100%;animation:slideUp .5s ease-out;border:1px solid var(--border)}.success-container.error{border:2px solid var(--error)}.success-icon{font-size:4rem;margin-bottom:1.5rem;animation:celebrate .6s ease-out}@keyframes celebrate{0%{transform:scale(0);opacity:0}50%{transform:scale(1.2)}to{transform:scale(1);opacity:1}}.error-icon{margin-bottom:1.5rem;display:flex;justify-content:center}.success-container h1{color:var(--text-primary);font-size:2rem;font-weight:700;margin-bottom:.75rem;line-height:1.2}.success-message{color:var(--text-muted);font-size:1.1rem;margin-bottom:2rem;line-height:1.6}.subscription-details{background:var(--brand-orange-tint);border:1px solid var(--brand-orange-border);border-radius:12px;padding:1.25rem 1.5rem;margin-bottom:2rem;text-align:left}.detail-item{display:flex;justify-content:space-between;align-items:center;padding:.625rem 0;border-bottom:1px solid rgba(229,120,0,.15)}.detail-item:last-child{border-bottom:none}.detail-item .label{font-weight:500;color:var(--text-primary);font-size:.95rem}.detail-item .value{color:var(--text-muted);font-weight:500;font-size:.95rem}.detail-item .value.active{color:var(--success);font-weight:600;display:flex;align-items:center;gap:.375rem}.detail-item .value.active:before{content:"";display:inline-block;width:8px;height:8px;background:var(--success);border-radius:50%;animation:pulse 2s ease-in-out infinite}.action-section{margin-bottom:1.5rem;display:flex;flex-direction:column;align-items:center}.redirect-message{color:var(--text-muted);margin-bottom:1.25rem;font-size:.95rem}.redirect-message strong{color:var(--brand-orange);font-weight:700;font-size:1.1rem}.continue-button{background:var(--brand-orange);color:#fff;border:none;border-radius:10px;padding:.875rem 2rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px #e5780040}.continue-button:hover{background:var(--brand-orange-hover);transform:translateY(-1px);box-shadow:0 4px 12px #e5780059}.continue-button:active{transform:translateY(0);box-shadow:0 2px 6px #e5780040}.continue-button.secondary{margin-top:.75rem;background:transparent;color:var(--brand-orange);box-shadow:none;border:1px solid var(--border)}.continue-button.secondary:hover{background:var(--brand-orange-tint);border-color:var(--brand-orange-border)}.help-section{border-top:1px solid var(--border);padding-top:1.25rem;margin-top:.5rem}.help-text{color:var(--text-light);font-size:.875rem}.help-text a{color:var(--brand-orange);text-decoration:none;font-weight:500;transition:color .2s ease}.help-text a:hover{color:var(--brand-orange-hover);text-decoration:underline}.loading-spinner{width:48px;height:48px;border:3px solid var(--border);border-top:3px solid var(--brand-orange);border-radius:50%;animation:spin .8s linear infinite;margin:0 auto 1.5rem}.success-checkmark{width:80px;height:80px;margin:0 auto 1.5rem;border-radius:50%;background:linear-gradient(135deg,var(--brand-orange) 0%,var(--brand-orange-hover) 100%);display:flex;align-items:center;justify-content:center;animation:scaleIn .4s ease-out}.success-checkmark svg{width:40px;height:40px;stroke:#fff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;fill:none}.success-checkmark svg path{stroke-dasharray:48;stroke-dashoffset:48;animation:drawCheck .4s ease-out .2s forwards}@keyframes scaleIn{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}@keyframes drawCheck{to{stroke-dashoffset:0}}@media (max-width: 640px){.subscription-success-page{padding:3rem 1rem 1rem;align-items:flex-start}.success-container{padding:2rem 1.5rem;border-radius:12px}.success-container h1{font-size:1.75rem}.success-message{font-size:1rem}.continue-button{width:100%;padding:1rem}.subscription-details{padding:1rem 1.25rem}}.history-navigation{padding:12px;border-bottom:1px solid #e5e5e7}.search-button{width:100%;padding:8px 12px;background:#f5f5f5;border:1px solid #e5e5e7;border-radius:8px;display:flex;align-items:center;gap:8px;cursor:pointer;transition:all .2s;margin-bottom:12px;font-size:14px;color:#666}.search-button:hover{background:#ebebeb;border-color:#d1d1d3}.search-shortcut{margin-left:auto;font-size:12px;opacity:.6}.nav-tabs{display:flex;gap:4px}.nav-tab{flex:1;padding:8px;background:transparent;border:none;border-radius:6px;display:flex;align-items:center;justify-content:center;gap:6px;cursor:pointer;font-size:13px;color:#666;transition:all .2s}.nav-tab:hover{background:#f5f5f5}.nav-tab.active{background:#007aff;color:#fff}.nav-tab svg{width:16px;height:16px}.search-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000}.search-modal{background:#fff;border-radius:12px;width:90%;max-width:600px;max-height:80vh;overflow:hidden;display:flex;flex-direction:column}.search-modal-header{display:flex;align-items:center;padding:16px;border-bottom:1px solid #e5e5e7}.search-input{flex:1;border:none;outline:none;font-size:16px;padding:8px;background:#f5f5f5;border-radius:8px}.search-close-btn{margin-left:12px;background:none;border:none;font-size:20px;cursor:pointer;color:#666;padding:4px 8px}.new-chat-btn{display:flex;align-items:center;gap:8px;width:100%;padding:12px 16px;background:none;border:none;text-align:left;cursor:pointer;font-size:14px;color:#333;border-bottom:1px solid #e5e5e7}.new-chat-btn:hover{background:#f5f5f5}.chat-history{flex:1;overflow-y:auto;padding:8px 0}.history-section{padding:0 16px;margin-bottom:16px}.history-date{color:#666;font-size:12px;font-weight:500;margin:8px 0;text-transform:uppercase}.chat-item{display:flex;align-items:center;gap:12px;padding:10px 8px;cursor:pointer;border-radius:8px;transition:background .2s}.chat-item:hover{background:#f5f5f5}.chat-icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center;color:#666}.chat-title{flex:1;color:#333;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.document-card{display:flex;flex-direction:column;margin:0;background:transparent;border:none;border-radius:0;cursor:pointer;transition:all .2s ease;position:relative;overflow:hidden;box-shadow:none;width:100%}.document-card:before{display:none}.document-card:hover{transform:none;box-shadow:none;border-color:transparent;background:#f9fafb}.document-card:hover:before{opacity:0}.document-card:active{transform:none;box-shadow:none}.document-card-main{display:flex;align-items:center;justify-content:space-between;padding:8px 20px;min-height:0;position:relative}.document-info{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.document-icon{flex-shrink:0;background:transparent;padding:0;border-radius:0;box-shadow:none;transition:all .2s ease;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;width:16px;height:16px}.document-icon:before{display:none}.document-icon img{width:16px;height:16px;filter:brightness(0) saturate(100%) invert(40%) sepia(0%) saturate(0%) hue-rotate(0deg) brightness(.8) contrast(1);transition:all .2s ease;position:relative;z-index:1}.document-card:hover .document-icon{transform:none;box-shadow:none}.document-card:hover .document-icon:before{left:0}.document-card:hover .document-icon img{filter:brightness(0) saturate(100%) invert(40%) sepia(0%) saturate(0%) hue-rotate(0deg) brightness(.8) contrast(1);transform:none}.document-details{flex:1;min-width:0}.document-title{font-size:13px;font-weight:500;color:#374151;margin-bottom:2px;display:flex;align-items:flex-start;gap:8px;flex-wrap:wrap;overflow:visible;line-height:1.3;letter-spacing:-.025em}.tutorial-pill{background:#10b981;color:#fff;font-size:9px;font-weight:600;padding:1px 4px;border-radius:4px;text-transform:uppercase;letter-spacing:.3px;flex-shrink:0;box-shadow:none;margin-top:1px;border:none}.document-meta{font-size:11px;color:#9ca3af;display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-weight:400}.document-subject{color:#6b7280;font-weight:500;background:transparent;padding:0;border-radius:0;font-size:11px;border:none}.document-date{color:#9ca3af;font-weight:400}.document-actions{display:flex;align-items:center;gap:4px;flex-shrink:0;opacity:0;transition:all .2s ease;position:relative;transform:translate(10px)}.document-card:hover .document-actions{opacity:1;transform:translate(0)}.action-button{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:transparent;border:none;border-radius:6px;cursor:pointer;transition:all .2s ease;font-size:14px;color:#6b7280;position:relative;overflow:hidden}.action-button:before{display:none}.action-button:hover{transform:none;box-shadow:none;border-color:transparent;color:#374151;background:#f3f4f6}.action-button:hover:before{left:0}.action-button:active{transform:none}.menu-button{color:#6b7280;transition:all .2s ease}.menu-button:hover{color:#374151;background:#f3f4f6}.document-card-dropdown{position:relative;background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001f,0 1px 3px #00000014;border:1px solid #d1d5db;padding:4px;width:100%;margin-top:4px;margin-left:0;margin-right:0;opacity:0;transform:translateY(-4px) scale(.98);transition:all .15s ease;pointer-events:none;z-index:1000}.document-card-dropdown.show{opacity:1;transform:translateY(0) scale(1);pointer-events:auto;animation:dropdownSlideIn .2s ease-out}.document-card-dropdown.closing{opacity:0;transform:translateY(-4px) scale(.98);pointer-events:none;transition:all .15s ease-out}@keyframes dropdownSlideIn{0%{opacity:0;transform:translateY(-8px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.dropdown-actions-list{padding:2px 0}.dropdown-action-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;background:none;border:none;color:#374151;font-size:12px;font-weight:400;cursor:pointer;transition:all .15s ease;border-radius:4px;text-align:left}.dropdown-action-item:hover{background:#f8fafc;color:#111827;transform:translate(2px)}.dropdown-action-item:active{background:#e5e7eb;transform:translate(1px)}.dropdown-action-icon{font-size:13px;width:16px;text-align:center;flex-shrink:0;opacity:.8;transition:opacity .15s ease}.dropdown-action-item:hover .dropdown-action-icon{opacity:1}.dropdown-action-svg-icon{width:16px;height:16px;opacity:.7;flex-shrink:0;transition:opacity .15s ease}.dropdown-action-item:hover .dropdown-action-svg-icon{opacity:1}.dropdown-action-label{flex:1;text-align:left;line-height:1.3}@media (max-width: 768px){.document-card{margin:0 4px 8px}.document-card-main{padding:12px 16px}.document-icon{padding:6px}.document-icon img{width:18px;height:18px}.document-title{font-size:14px}.document-meta{font-size:12px}}.document-list{flex:1;display:flex;flex-direction:column;overflow:hidden;background:transparent;margin-top:0;height:100%}.document-list-header{display:flex;justify-content:space-between;align-items:center;padding:12px 20px 8px;background:#fff;border-bottom:1px solid rgba(0,0,0,.06);flex-shrink:0;position:relative;margin-bottom:0;border-radius:0;box-shadow:none}.document-list-header:after{display:none}.document-list-header:before{display:none}.list-title{font-size:14px;font-weight:600;color:#6b7280;position:relative;text-transform:none;letter-spacing:-.025em}.list-title:before{display:none}.document-count{font-weight:500;color:#9ca3af;background:transparent;padding:0;border-radius:0;border:none;box-shadow:none;transition:all .2s ease;text-transform:none;letter-spacing:-.025em;font-size:11px;position:relative;overflow:visible}.document-count:before{display:none}.document-count:hover{transform:none;box-shadow:none;border-color:transparent}.document-count:hover:before{left:0}.document-list-content{flex:1;overflow-y:auto;padding:8px 0;transition:all .3s cubic-bezier(.4,0,.2,1);background:transparent;border-radius:0;background:#fff;margin-bottom:0;box-shadow:none;height:100%;overscroll-behavior:contain;overscroll-behavior-y:contain;touch-action:pan-y}.document-list-content::-webkit-scrollbar{width:4px}.document-list-content::-webkit-scrollbar-track{background:transparent}.document-list-content::-webkit-scrollbar-thumb{background:#0000001a;border-radius:2px;-webkit-transition:background .2s ease;transition:background .2s ease}.document-list-content::-webkit-scrollbar-thumb:hover{background:#0003}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 24px;color:#64748b;font-size:14px;background:linear-gradient(135deg,#f8fafc,#fff);border-radius:12px;margin:16px;box-shadow:0 4px 12px #0000000d}.loading-spinner{width:32px;height:32px;border:3px solid #e2e8f0;border-top:3px solid #ef4444;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px;box-shadow:0 4px 12px #ef444433}.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 24px;color:#ef4444;font-size:14px;text-align:center;background:linear-gradient(135deg,#fef2f2,#fff);border-radius:12px;margin:16px;border:1px solid rgba(239,68,68,.2);box-shadow:0 4px 12px #ef44441a}.retry-button{margin-top:16px;padding:10px 20px;background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 12px #ef444440}.retry-button:hover{transform:translateY(-2px);box-shadow:0 8px 25px #ef444459;background:linear-gradient(135deg,#dc2626,#b91c1c)}.retry-button:active{transform:translateY(0)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 24px;color:#64748b;font-size:14px;text-align:center;background:linear-gradient(135deg,#f8fafc,#fff);border-radius:12px;margin:16px;border:2px dashed rgba(100,116,139,.2);box-shadow:0 4px 12px #0000000d;transition:all .3s ease}.empty-state:hover{border-color:#ef44444d;box-shadow:0 8px 25px #ef44441a}.empty-subtitle{font-size:13px;color:#94a3b8;margin-top:8px;font-weight:400;line-height:1.5}.document-action-buttons{display:flex;gap:10px;padding:12px 20px;background:#fff;border-bottom:1px solid rgba(0,0,0,.06);justify-content:center;align-items:center}.document-action-btn{flex:1;max-width:150px;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;background:#f8f9fa;border:1px solid #e5e7eb;border-radius:8px;font-size:13px;font-weight:500;color:#374151;cursor:pointer;transition:all .2s ease;white-space:nowrap}.document-action-btn:hover{background:#f3f4f6;border-color:#d1d5db;transform:translateY(-1px);box-shadow:0 2px 8px #00000014}.document-action-btn:active{transform:translateY(0);box-shadow:0 1px 4px #00000014}.btn-icon{width:16px;height:16px;flex-shrink:0}.btn-text{font-size:13px;font-weight:500;letter-spacing:-.025em}.blank-document-btn:hover{background:linear-gradient(135deg,#dbeafe,#e0f2fe);border-color:#93c5fd;color:#1e40af}.import-pdf-btn:hover{background:linear-gradient(135deg,#fce7f3,#fdf2f8);border-color:#f9a8d4;color:#a21caf}.grade-selector{padding:16px}.grade-selector-header{margin-bottom:16px}.grade-selector-header h4{margin:0;font-size:14px;font-weight:600;color:#4a5568}.grade-selector-grid{display:grid;grid-template-columns:1fr;gap:8px}.grade-button{display:flex;align-items:center;justify-content:center;padding:12px 16px;background-color:#fff;border:1px solid #e2e8f0;border-radius:8px;font-size:14px;font-weight:500;color:#2d3748;cursor:pointer;transition:all .2s ease;text-align:center}.grade-button:hover{background-color:#f7fafc;border-color:#cbd5e0;transform:translateY(-1px)}.grade-button:active{transform:translateY(0)}.grade-button:disabled{opacity:.6;cursor:not-allowed;transform:none;position:relative}.grade-button.loading{position:relative}.grade-button.loading:after{content:"";position:absolute;top:50%;right:12px;transform:translateY(-50%);width:16px;height:16px;border:2px solid #e2e8f0;border-top:2px solid #3182ce;border-radius:50%;animation:spin 1s linear infinite}.concept-selector{padding:16px}.concept-selector-header{display:flex;align-items:center;margin-bottom:16px;gap:12px}.back-button{background:none;border:none;color:#718096;font-size:14px;cursor:pointer;padding:4px 8px;border-radius:4px;transition:all .2s ease}.back-button:hover{background-color:#f7fafc;color:#4a5568}.concept-selector-header h4{margin:0;font-size:14px;font-weight:600;color:#4a5568}.concept-selector-list{display:flex;flex-direction:column;gap:8px}.concept-button{display:flex;flex-direction:column;align-items:flex-start;padding:12px 16px;background-color:#fff;border:1px solid #e2e8f0;border-radius:8px;cursor:pointer;transition:all .2s ease;text-align:left}.concept-button:hover{background-color:#f7fafc;border-color:#cbd5e0;transform:translateY(-1px)}.concept-button:active{transform:translateY(0)}.concept-name{font-size:14px;font-weight:500;color:#2d3748;margin-bottom:4px}.concept-lesson-count{font-size:12px;color:#718096}.concept-button:disabled{opacity:.6;cursor:not-allowed;transform:none;position:relative}.concept-button.loading{position:relative}.concept-button.loading:after{content:"";position:absolute;top:50%;right:12px;transform:translateY(-50%);width:16px;height:16px;border:2px solid #e2e8f0;border-top:2px solid #3182ce;border-radius:50%;animation:spin 1s linear infinite}.lesson-selector{padding:16px}.lesson-selector-header{display:flex;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #e2e8f0}.lesson-selector-header .back-button{background:none;border:none;color:#718096;font-size:14px;cursor:pointer;padding:4px 8px;border-radius:4px;transition:all .2s ease}.lesson-selector-header .back-button:hover{background-color:#f7fafc;color:#4a5568}.lesson-selector-header h4{margin:0 0 0 12px;font-size:16px;font-weight:600;color:#2d3748}.copy-button-container{background:#f0f9f0;border:1px solid #9ae6b4;border-radius:0 0 8px 8px;border-top:none;padding:12px;display:flex;justify-content:center;animation:slideDown .3s ease-out;margin-top:-1px}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px);max-height:0;padding:0 12px}to{opacity:1;transform:translateY(0);max-height:60px;padding:12px}}.copy-lesson-button{background-color:#48bb78;color:#fff;border:none;border-radius:6px;padding:10px 20px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;min-width:140px}.copy-lesson-button:hover{background-color:#38a169;transform:translateY(-1px);box-shadow:0 2px 8px #48bb784d}.copy-lesson-button:disabled{background-color:#a0aec0;cursor:not-allowed;transform:none;box-shadow:none;position:relative}.copy-lesson-button:disabled:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top:2px solid white;border-radius:50%;animation:spin 1s linear infinite}.lesson-selector-list{display:flex;flex-direction:column;gap:8px;max-height:calc(100vh - 200px);overflow-y:auto;overflow-x:hidden}.lesson-item{display:flex;flex-direction:column}.lesson-button{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:12px;text-align:left;cursor:pointer;transition:all .2s ease;position:relative;width:100%}.lesson-button:hover{border-color:#cbd5e0;background-color:#f7fafc}.lesson-button.selected{border-color:#3182ce;background-color:#ebf8ff;border-radius:8px 8px 0 0}.lesson-button:disabled{opacity:.6;cursor:not-allowed;position:relative}.lesson-button:disabled:after{content:"";position:absolute;top:50%;right:12px;transform:translateY(-50%);width:16px;height:16px;border:2px solid #e2e8f0;border-top:2px solid #3182ce;border-radius:50%;animation:spin 1s linear infinite}.lesson-name{font-size:14px;font-weight:500;color:#2d3748;margin-bottom:4px}.lesson-description{font-size:12px;color:#718096;line-height:1.4}.lesson-status{position:absolute;top:3px;right:1px;background:#3182ce;color:#fff;font-size:8px;padding:1px 4px;border-radius:3px;font-weight:500;z-index:1}.lesson-selector-list::-webkit-scrollbar{width:6px}.lesson-selector-list::-webkit-scrollbar-track{background:#f1f5f9;border-radius:3px}.lesson-selector-list::-webkit-scrollbar-thumb{background:#cbd5e0;border-radius:3px}.lesson-selector-list::-webkit-scrollbar-thumb:hover{background:#a0aec0}.illustrative-mathematics{margin-bottom:0;background:transparent;border-radius:0;border:none;box-shadow:none;overflow:visible;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative}.illustrative-mathematics:before{display:none}.illustrative-mathematics:hover{box-shadow:none;transform:none;border-color:transparent}.illustrative-mathematics.collapsed{margin-bottom:0;box-shadow:none;transform:none}.illustrative-mathematics.collapsed:hover{box-shadow:none;transform:none}.im-content{background:transparent;border:none;border-radius:0;overflow:visible;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;margin:0}.im-content:before{display:none}.im-content.expanded{max-height:none;opacity:1;transform:translateY(0);margin-top:0;padding:16px 24px 24px;box-shadow:none;border:none;background:linear-gradient(135deg,#f8fafc,#fff)}.im-content.expanded:before{opacity:0}.im-content.collapsed{max-height:0;opacity:0;transform:translateY(-8px);margin:0;padding:0;border:none;pointer-events:none;box-shadow:none;overflow:hidden}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-8px)}}.im-error-message,.im-success-message{position:fixed;top:20px;left:50%;transform:translate(-50%);padding:12px 20px;border-radius:8px;font-size:14px;font-weight:500;z-index:1000;animation:slideInDown .3s ease-out;box-shadow:0 4px 12px #00000026;max-width:400px;text-align:center}.im-error-message{background:#fef2f2;color:#dc2626;border:1px solid #fecaca}.im-success-message{background:#f0fdf4;color:#16a34a;border:1px solid #bbf7d0}.error-icon,.success-icon{margin-right:8px;font-size:16px}@keyframes slideInDown{0%{opacity:0;transform:translate(-50%,-20px)}to{opacity:1;transform:translate(-50%)}}.im-loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;text-align:center}.im-loading-state p{margin:16px 0 0;color:#64748b;font-size:14px}.loading-spinner{width:32px;height:32px;border:3px solid #e2e8f0;border-top:3px solid #3182ce;border-radius:50%;animation:spin 1s linear infinite}.simple-modal-backdrop{position:fixed;z-index:9999;top:0;right:0;bottom:0;left:0;background:#0006;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;animation:fadeIn .3s cubic-bezier(.4,0,.2,1)}.simple-modal{background:linear-gradient(135deg,#fff,#f8fafc);border-radius:20px;box-shadow:0 20px 60px #00000026,0 8px 32px #0000001a;min-width:360px;max-width:90vw;padding:32px 28px 24px;display:flex;flex-direction:column;gap:20px;border:1px solid rgba(0,0,0,.08);animation:slideIn .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.simple-modal:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#ef4444,#dc2626,#b91c1c)}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.simple-modal-title{font-size:20px;font-weight:700;color:#1e293b;margin-bottom:4px;letter-spacing:-.025em;background:linear-gradient(135deg,#1e293b,#334155);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.simple-modal-content{font-size:15px;color:#64748b;line-height:1.6;font-weight:400}.simple-modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:8px}.modal-btn{padding:10px 20px;border-radius:10px;border:none;background:linear-gradient(135deg,#f1f5f9,#e2e8f0);color:#374151;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 8px #0000000a;position:relative;overflow:hidden}.modal-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(239,68,68,.1) 50%,transparent 100%);transition:left .3s ease}.modal-btn:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0000001f;background:linear-gradient(135deg,#f8fafc,#f1f5f9);color:#1e293b}.modal-btn:hover:before{left:100%}.modal-btn.primary{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;box-shadow:0 4px 12px #ef444440}.modal-btn.primary:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 8px 25px #ef444459;color:#fff}.modal-btn:active{transform:translateY(0)}.modal-btn:disabled{opacity:.6;cursor:not-allowed;transform:none!important;background:linear-gradient(135deg,#f1f5f9,#e2e8f0);color:#94a3b8;box-shadow:0 2px 8px #0000000a}.modal-input{width:100%;padding:12px 16px;font-size:15px;border-radius:10px;border:1px solid rgba(0,0,0,.08);background:linear-gradient(135deg,#fff,#f8fafc);transition:all .3s cubic-bezier(.4,0,.2,1);font-weight:400;color:#1e293b;box-shadow:0 2px 8px #0000000a}.modal-input:focus{outline:none;border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a,0 4px 16px #ef44441a;background:#fff}.modal-input::-moz-placeholder{color:#94a3b8;font-weight:400}.modal-input::placeholder{color:#94a3b8;font-weight:400}.modal-input:disabled{opacity:.6;cursor:not-allowed;background:linear-gradient(135deg,#f1f5f9,#e2e8f0);color:#64748b}.drawer{display:flex;flex-direction:column;height:100%;background:#fff;border-right:1px solid rgba(0,0,0,.08);box-shadow:2px 0 20px #0000000f;position:relative;padding:0}.history-drawer{display:flex;flex-direction:column;height:100%;background:#fff;border-right:1px solid rgba(0,0,0,.08);box-shadow:2px 0 20px #0000000f;position:relative;padding:0;overflow:hidden;overscroll-behavior:contain}.history-content{flex:1;display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;padding:0;background:#fff;overscroll-behavior:contain;overscroll-behavior-y:contain;touch-action:pan-y}.history-resize-handle{position:absolute;top:0;right:-4px;width:8px;height:100%;background-color:transparent;cursor:ew-resize;z-index:1001;transition:background-color .2s ease;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.history-resize-handle:hover{background-color:#0000001a}.history-resize-handle:active{background-color:#0003}.drawer-header{padding:16px 20px;border-bottom:1px solid rgba(0,0,0,.06);background:#fff;flex-shrink:0;position:relative}.drawer-header:after{content:"";position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.08) 50%,transparent 100%)}.drawer-header h2{margin:0;font-size:18px;font-weight:600;color:#1e293b;letter-spacing:-.025em}.drawer-content{flex:1;display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;padding:0;background:#fff;border-radius:0;box-shadow:none;border:none;position:relative;margin:0;height:100%;overscroll-behavior:contain;overscroll-behavior-y:contain;touch-action:pan-y}.drawer-content:before{display:none}.drawer-footer{padding:16px 20px;border-top:1px solid rgba(0,0,0,.06);background:#fff;flex-shrink:0;position:relative;margin-top:0;border-radius:0;box-shadow:none}.drawer-footer:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.08) 50%,transparent 100%)}.view-all-button{width:100%;padding:12px 16px;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:8px;color:#374151;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease;box-shadow:none;position:relative;overflow:hidden}.view-all-button:before{display:none}.view-all-button:hover{transform:none;box-shadow:none;border-color:#0000001f;background:#f9fafb}.view-all-button:hover:before{left:0}.view-all-button:active{transform:none;box-shadow:none}.logo-section{display:flex;align-items:center;justify-content:space-between;padding:16px 20px 12px;border-bottom:1px solid rgba(0,0,0,.06)}.logo{display:flex;align-items:center;gap:12px;font-size:18px;font-weight:600;color:#1e293b}.logo img{width:24px;height:24px}.logo-text{font-size:16px;font-weight:600;color:#1e293b}.close-panel-btn{background:none;border:none;color:#6b7280;cursor:pointer;padding:4px;border-radius:4px;transition:all .2s ease;display:flex;align-items:center;justify-content:center;width:24px;height:24px;outline:none}.close-panel-btn:hover{background:#f3f4f6;color:#374151}.nav-section{padding:8px 0;border-bottom:1px solid rgba(0,0,0,.06);overflow-y:auto;max-height:calc(100vh - 200px);overscroll-behavior:contain;overscroll-behavior-y:contain;touch-action:pan-y}.nav-item{display:flex;align-items:center;gap:12px;padding:10px 20px;color:#374151;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease;text-decoration:none;border:none;background:transparent;width:100%;text-align:left;outline:none}.nav-item:hover{background:#f9fafb;color:#1e293b}.nav-item.active{background:transparent;color:#1e293b}.nav-item.active:hover{background:#f9fafb;color:#1e293b}.nav-item:focus{outline:none}.nav-item-icon{width:16px;height:16px;opacity:.7}.user-profile{display:flex;align-items:center;gap:8px;padding:8px 16px;border-top:1px solid rgba(0,0,0,.06);background:#fff}.user-avatar{width:35px!important;height:35px!important;border-radius:50%;background:#f3f4f6;display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:600;color:#6b7280;flex-shrink:0;min-width:35px;min-height:35px;max-width:35px;max-height:35px}.user-avatar img{width:100%!important;height:100%!important;border-radius:50%;-o-object-fit:cover;object-fit:cover}.user-info{flex:1;min-width:0}.user-name{font-size:11px;font-weight:500;color:#1e293b;margin-bottom:1px;line-height:1.2}.user-status{font-size:9px;color:#6b7280;line-height:1.2}.drawer-content p{margin:8px 0;color:#64748b;font-size:14px;line-height:1.5}.drawer-resize-handle{position:absolute;top:0;right:-4px;width:8px;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.05) 50%,transparent 100%);cursor:ew-resize;z-index:1001;transition:all .2s ease;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.drawer-resize-handle:hover{background:linear-gradient(90deg,transparent 0%,rgba(239,68,68,.2) 50%,transparent 100%);width:12px;right:-6px}.drawer-resize-handle:active{background:linear-gradient(90deg,transparent 0%,rgba(239,68,68,.3) 50%,transparent 100%)}.search-section,.illustrative-math-section{display:flex;align-items:center;justify-content:center;height:100%;padding:40px 20px}.search-placeholder,.im-placeholder{text-align:center;color:#6b7280}.search-placeholder h3,.im-placeholder h3{margin:16px 0 8px;font-size:16px;font-weight:600;color:#374151}.search-placeholder p,.im-placeholder p{margin:0;font-size:14px;color:#9ca3af}.search-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.search-modal{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;width:90%;max-width:500px;max-height:80vh;overflow:hidden;display:flex;flex-direction:column}.search-modal-header{display:flex;align-items:center;padding:16px 20px;border-bottom:1px solid rgba(0,0,0,.06);gap:12px}.search-input{flex:1;border:none;outline:none;font-size:16px;color:#1e293b;background:transparent;padding:0}.search-input::-moz-placeholder{color:#9ca3af}.search-input::placeholder{color:#9ca3af}.search-close-btn{background:none;border:none;color:#6b7280;font-size:18px;cursor:pointer;padding:4px;border-radius:4px;transition:all .2s ease;display:flex;align-items:center;justify-content:center;width:24px;height:24px}.search-close-btn:hover{background:#f3f4f6;color:#374151}.new-chat-btn{display:flex;align-items:center;gap:8px;padding:12px 20px;background:#f9fafb;border:1px solid rgba(0,0,0,.08);border-radius:8px;color:#374151;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;margin:16px 20px 0;text-align:left}.new-chat-btn:hover{background:#f3f4f6;border-color:#0000001f}.chat-history{flex:1;overflow-y:auto;padding:16px 20px 20px;overscroll-behavior:contain;overscroll-behavior-y:contain;touch-action:pan-y}.history-section{margin-bottom:24px}.history-section:last-child{margin-bottom:0}.history-date{font-size:12px;font-weight:600;color:#6b7280;margin:0 0 12px;text-transform:uppercase;letter-spacing:.05em}.chat-item{display:flex;align-items:center;gap:12px;padding:8px 12px;border-radius:6px;cursor:pointer;transition:all .2s ease;margin-bottom:4px}.chat-item:hover{background:#f9fafb}.chat-item:last-child{margin-bottom:0}.chat-icon{font-size:16px;color:#9ca3af;width:16px;height:16px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.chat-item span{font-size:14px;color:#374151;font-weight:400;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.empty-state{text-align:center;padding:40px 20px;color:#9ca3af}.empty-state p{margin:0;font-size:14px}.nav-item.loading{opacity:.7;cursor:not-allowed;position:relative}.nav-item.loading .nav-item-icon{opacity:.5}.nav-item:disabled{opacity:.7;cursor:not-allowed}.loading-spinner{display:inline-block;animation:spin 1s linear infinite}.loading-spinner svg{width:100%;height:100%}.document-actions-dropdown{position:relative;background-color:#fff;border:1px solid #e1e5e9;border-radius:8px;box-shadow:0 4px 12px #00000026;z-index:2147483648;margin:0 8px 8px;animation:slideDown .2s ease;overflow:hidden;max-height:200px}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px);max-height:0}to{opacity:1;transform:translateY(0);max-height:200px}}.actions-list{padding:4px 0}.action-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;background:none;border:none;color:#333;font-size:13px;cursor:pointer;transition:background-color .2s ease}.action-item:hover{background-color:#f3f4f6}.action-item:active{background-color:#e5e7eb}.action-icon{font-size:14px;width:16px;text-align:center}.action-label{flex:1;text-align:left}.action-button{flex:1;display:flex;align-items:center;justify-content:center;gap:10px;padding:12px 18px;background:linear-gradient(135deg,#fff,#f8fafc);border:1px solid rgba(0,0,0,.08);border-radius:12px;color:#374151;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);min-height:44px;box-shadow:0 2px 8px #0000000a;transform:translateZ(0);position:relative;overflow:hidden}.action-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(239,68,68,.1) 50%,transparent 100%);transition:left .5s ease}.action-button:hover:not(:disabled){background:linear-gradient(135deg,#fef2f2,#fee2e2);transform:translateY(-2px);box-shadow:0 8px 24px #0000001f;border-color:#ef444433;color:#ef4444}.action-button:hover:not(:disabled):before{left:100%}.action-button:active:not(:disabled){transform:translateY(0);box-shadow:0 4px 16px #00000014}.action-button:disabled{opacity:.5;cursor:not-allowed;transform:none!important;background:linear-gradient(135deg,#f1f5f9,#e2e8f0);color:#94a3b8;box-shadow:none}.action-button.loading{opacity:.7;cursor:not-allowed;transform:none!important;pointer-events:none;background:linear-gradient(135deg,#f1f5f9,#e2e8f0);color:#64748b}.action-button.loading:hover{transform:none!important;background:linear-gradient(135deg,#f1f5f9,#e2e8f0);box-shadow:0 2px 8px #0000000a}.action-button:not(.loading):not(:disabled){transform:translateZ(0)}.action-button-icon{width:18px;height:18px;opacity:.8;transition:all .3s ease}.action-button:hover:not(:disabled) .action-button-icon{opacity:1;transform:scale(1.1)}.action-text{font-weight:600;letter-spacing:-.025em;transition:all .3s ease}.action-button:hover:not(:disabled) .action-text{transform:translate(2px)}.action-button.loading:after{content:"";position:absolute;top:50%;right:12px;transform:translateY(-50%);width:16px;height:16px;border:2px solid transparent;border-top:2px solid #ef4444;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:translateY(-50%) rotate(0)}to{transform:translateY(-50%) rotate(360deg)}}.action-button-container{display:flex;gap:12px;margin-bottom:24px;padding:0 4px;background-color:#fff;border-bottom:1px solid #e1e5e9;flex-shrink:0}.action-button-container.compact{gap:8px;margin-bottom:16px;padding:0 2px}.action-button-container.spacious{gap:16px;margin-bottom:32px;padding:0 8px}@media (max-width: 768px){.action-button-container{gap:8px;margin-bottom:16px;padding:0 2px}}@media (max-width: 480px){.action-button-container{flex-direction:column;gap:8px}}.im-banner{display:flex;align-items:center;justify-content:space-between;padding:24px 24px 20px;background:#fff;border-bottom:1px solid rgba(0,0,0,.06);cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);-webkit-user-select:none;-moz-user-select:none;user-select:none;position:relative;overflow:hidden;box-shadow:none;margin:0;border-radius:0}.im-banner:before{display:none}.im-banner:after{content:"📚";position:absolute;top:20px;left:20px;font-size:20px;opacity:.8;z-index:1;transition:all .3s ease}.im-banner:hover{background:linear-gradient(135deg,#fef2f2,#fff);border-color:#ef44441a;transform:none;box-shadow:none}.im-banner:hover:before{opacity:1;transform:scale(1.05)}.im-banner:active{transform:none;box-shadow:none}.im-banner-content{display:flex;align-items:center;justify-content:space-between;width:100%;margin-left:32px}.im-banner-title{margin:0;font-size:16px;font-weight:700;color:#1e293b;letter-spacing:-.025em;transition:all .3s ease;text-transform:uppercase;letter-spacing:1px;position:relative}.im-banner-title:after{display:none}.im-banner:hover .im-banner-title{color:#ef4444}.im-banner:hover .im-banner-title:after{width:0}.im-banner-chevron{font-size:16px;color:#64748b;transition:all .3s cubic-bezier(.4,0,.2,1);background:transparent;padding:8px;border-radius:8px;border:none;box-shadow:none;position:relative}.im-banner-chevron:before{display:none}.im-banner:hover .im-banner-chevron{color:#ef4444;border-color:transparent;transform:scale(1.05);box-shadow:none}.im-banner:hover .im-banner-chevron:before{opacity:0}.im-banner-chevron.expanded{transform:rotate(180deg)}.im-banner:hover .im-banner-chevron.expanded{transform:rotate(180deg) scale(1.05)}.copy-button{display:inline-flex;align-items:center;justify-content:center;padding:8px 16px;background-color:#3182ce;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;min-width:140px}.copy-button:hover:not(:disabled){background-color:#2c5aa0;transform:translateY(-1px)}.copy-button:active:not(:disabled){transform:translateY(0)}.copy-button:disabled{background-color:#a0aec0;cursor:not-allowed;transform:none}.ai-demonstration-mode{position:relative;pointer-events:none}.ai-demonstration-mode:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(45deg,#667eea1a,#764ba21a);border:2px solid rgba(102,126,234,.3);border-radius:12px;animation:ai-mode-pulse 2s infinite ease-in-out;pointer-events:none;z-index:10}@keyframes ai-mode-pulse{0%,to{opacity:.3;transform:scale(1)}50%{opacity:.6;transform:scale(1.02)}}.ai-cursor{position:absolute;width:24px;height:24px;background:radial-gradient(circle,#667eea 30%,#667eea66 70%);border:2px solid #fff;border-radius:50%;pointer-events:none;z-index:100;box-shadow:0 0 20px #667eeacc,0 0 40px #667eea66;animation:ai-cursor-pulse 1s infinite ease-in-out;transform:translate(-50%,-50%)}@keyframes ai-cursor-pulse{0%,to{transform:translate(-50%,-50%) scale(1);opacity:.8}50%{transform:translate(-50%,-50%) scale(1.3);opacity:1}}.ai-click-effect{position:absolute;width:60px;height:60px;border:3px solid #667eea;border-radius:50%;pointer-events:none;z-index:200;animation:ai-click-ripple .6s ease-out forwards;transform:translate(-50%,-50%)}@keyframes ai-click-ripple{0%{transform:translate(-50%,-50%) scale(0);opacity:1;border-width:3px}to{transform:translate(-50%,-50%) scale(2);opacity:0;border-width:1px}}.grid-square.ai-controlled{position:relative;transition:all .3s ease!important;z-index:20}.grid-square.ai-controlled:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#667eea33,#764ba233);border:1px solid rgba(102,126,234,.4);border-radius:4px;animation:ai-square-highlight .8s ease-in-out;pointer-events:none}@keyframes ai-square-highlight{0%{opacity:0;transform:scale(.8)}50%{opacity:1;transform:scale(1.1)}to{opacity:.6;transform:scale(1)}}.grid-square.ai-clicking{animation:ai-square-click .5s ease-out;z-index:30}@keyframes ai-square-click{0%{transform:scale(1);box-shadow:0 0 #667eeab3}30%{transform:scale(.95);box-shadow:0 0 20px #667eeab3}70%{transform:scale(1.05);box-shadow:0 0 30px #667eea80}to{transform:scale(1);box-shadow:0 0 #667eea00}}.ai-path-indicator{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:20px;height:20px;background:#667eeacc;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;pointer-events:none;z-index:50;animation:ai-path-fade-in .4s ease-out}@keyframes ai-path-fade-in{0%{opacity:0;transform:translate(-50%,-50%) scale(0)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.panel-control.ai-highlighted{position:relative;animation:ai-control-highlight 1.5s ease-in-out infinite}@keyframes ai-control-highlight{0%,to{box-shadow:0 0 #667eea00}50%{box-shadow:0 0 25px #667eeacc}}.ai-message-bubble{position:absolute;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:12px 16px;border-radius:12px;font-size:14px;font-weight:500;box-shadow:0 8px 25px #0000004d;max-width:250px;z-index:300;animation:ai-message-appear .5s ease-out;pointer-events:none}.ai-message-bubble:before{content:"";position:absolute;bottom:-8px;left:20px;width:0;height:0;border-left:8px solid transparent;border-right:8px solid transparent;border-top:8px solid #667eea}@keyframes ai-message-appear{0%{opacity:0;transform:translateY(-10px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes ai-message-slide-in{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes ai-message-slide-out{0%{transform:translate(0);opacity:1}to{transform:translate(100%);opacity:0}}.ai-message-bubble{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px;line-height:1.4;font-weight:500}.ai-message-content{display:flex;align-items:center;gap:10px}.ai-message-icon{font-size:18px;flex-shrink:0}.ai-message-text{flex:1}.ai-demonstration-overlay{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:10000;background:#000000e6;color:#fff;padding:20px;border-radius:12px;max-width:400px;text-align:center;box-shadow:0 20px 40px #0000004d;animation:ai-overlay-fade-in .4s ease-out}@keyframes ai-overlay-fade-in{0%{opacity:0;transform:translate(-50%,-50%) scale(.9)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes ai-overlay-fade-out{0%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(.9)}}.ai-overlay-header{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:12px;font-weight:700;font-size:16px}.ai-overlay-icon{font-size:20px}.ai-overlay-message{font-size:14px;line-height:1.5;opacity:.9}.ai-controlled.grid-square{transform:scale(1.05)!important;box-shadow:0 0 20px #667eeacc!important;z-index:100!important;position:relative!important}.ai-click-effect{position:absolute;top:50%;left:50%;width:40px;height:40px;transform:translate(-50%,-50%);border:2px solid rgba(102,126,234,.8);border-radius:50%;animation:ai-click-ripple .6s ease-out;pointer-events:none;z-index:200}.ai-highlight-glow{box-shadow:0 0 30px #667eeacc,0 0 60px #667eea66!important;animation:ai-glow-pulse 1.5s ease-in-out infinite alternate}@keyframes ai-glow-pulse{0%{box-shadow:0 0 30px #667eeacc,0 0 60px #667eea66}to{box-shadow:0 0 40px #667eea,0 0 80px #667eea99}}[class*=Grid]{position:relative}[class*=Grid]>*{position:relative}[class*=GridSquare],[class*=grid-square]{transition:all .2s ease!important}[class*=GridSquare].ai-controlled,[class*=grid-square].ai-controlled{z-index:100!important;position:relative!important}.ai-progress-trail{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,#22c55e33,#22c55e1a);border:1px solid rgba(34,197,94,.3);border-radius:4px;pointer-events:none;animation:ai-progress-fade .6s ease-out}@keyframes ai-progress-fade{0%{opacity:0;transform:scale(1.1)}to{opacity:1;transform:scale(1)}}.ai-speed-slow .ai-cursor,.ai-speed-slow .ai-click-effect{animation-duration:2s}.ai-speed-fast .ai-cursor,.ai-speed-fast .ai-click-effect{animation-duration:.3s}@media (prefers-reduced-motion: reduce){.ai-demonstration-mode:before,.ai-cursor,.ai-click-effect,.grid-square.ai-controlled:before,.grid-square.ai-clicking,.ai-path-indicator,.panel-control.ai-highlighted,.ai-message-bubble,.ai-progress-trail{animation:none}.ai-demonstration-mode:before{opacity:.4}.ai-cursor{opacity:.6}}@media (prefers-color-scheme: dark){.ai-demonstration-mode:before{background:linear-gradient(45deg,#667eea26,#764ba226);border-color:#667eea66}.ai-message-bubble{box-shadow:0 8px 25px #00000080}}.ai-state-analyzing{opacity:.8;transition:opacity .3s ease}.ai-state-paused{filter:grayscale(20%);transition:filter .3s ease}@media (prefers-contrast: high){.ai-cursor{border-width:3px;border-color:#000}.ai-click-effect{border-width:4px;border-color:#000}.ai-demonstration-mode:before{border-width:3px;border-color:#667eea}}.manipulative-viewer{display:flex;flex-direction:column;gap:20px;padding:20px;background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000001a;max-width:800px;margin:0 auto}.manipulative-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:16px;border-bottom:2px solid #f0f0f0}.manipulative-title{font-size:1.8rem;font-weight:700;color:#2c3e50;margin:0}.manipulative-target{display:flex;align-items:center;gap:12px;font-size:1.1rem;color:#7f8c8d}.completion-badge{background:#27ae60;color:#fff;padding:4px 12px;border-radius:20px;font-size:.9rem;font-weight:700;animation:celebration .5s ease-in-out}@keyframes celebration{0%{transform:scale(.8);opacity:0}50%{transform:scale(1.1)}to{transform:scale(1);opacity:1}}.manipulative-content{flex:1;display:flex;justify-content:center;align-items:center;min-height:400px}.ai-suggestion-panel{background:#f8f9fa;border-radius:8px;padding:16px;border-left:4px solid #3498db}.ai-loading{display:flex;align-items:center;gap:12px;color:#7f8c8d;font-style:italic}.loading-spinner{animation:thinking 1.5s infinite}@keyframes thinking{0%,to{transform:rotate(0)}25%{transform:rotate(-10deg)}75%{transform:rotate(10deg)}}.ai-error{display:flex;align-items:center;gap:12px;color:#e74c3c;background:#fdf2f2;padding:12px;border-radius:6px;border:1px solid #f8c6c6}.ai-suggestion{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:12px;border-radius:6px;animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.ai-suggestion-hint{background:#e3f2fd;border:1px solid #bbdefb;color:#1976d2}.ai-suggestion-encouragement{background:#e8f5e8;border:1px solid #c8e6c9;color:#388e3c}.ai-suggestion-correction{background:#fff3e0;border:1px solid #ffcc02;color:#f57c00}.ai-suggestion-completion{background:#e8f5e8;border:1px solid #4caf50;color:#2e7d32}.suggestion-content{display:flex;align-items:flex-start;gap:12px;flex:1}.suggestion-icon{font-size:1.2rem;margin-top:2px}.suggestion-text{line-height:1.5;font-size:1rem}.suggestion-close{background:none;border:none;font-size:1.5rem;color:#95a5a6;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}.suggestion-close:hover{background:#0000001a;color:#34495e}.progress-indicator{display:flex;align-items:center;gap:16px;padding:12px;background:#f8f9fa;border-radius:8px;border:1px solid #e9ecef}.progress-bar{flex:1;height:8px;background:#e9ecef;border-radius:4px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#3498db,#2ecc71);border-radius:4px;transition:width .3s ease}.progress-text{font-size:.9rem;font-weight:700;color:#2c3e50;min-width:80px;text-align:right}@media (max-width: 768px){.manipulative-viewer{padding:16px;margin:0 16px}.manipulative-header{flex-direction:column;align-items:flex-start;gap:12px}.manipulative-title{font-size:1.5rem}.manipulative-content{min-height:300px}.progress-indicator{flex-direction:column;align-items:stretch;gap:8px}.progress-text{text-align:center;min-width:auto}}.inline-synthesis-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px;animation:fadeIn .3s ease-out;overflow:hidden}.inline-synthesis-modal{background:#fff;border-radius:16px;max-width:800px;width:100%;max-height:90vh;overflow:hidden;box-shadow:0 25px 50px -12px #00000040;animation:slideUp .3s ease-out;display:flex;flex-direction:column}.inline-synthesis-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.inline-synthesis-header h3{margin:0;font-size:1.25rem;font-weight:600;color:#fff}.synthesis-close-button{background:none;border:none;color:#fff;cursor:pointer;padding:8px;border-radius:8px;transition:background-color .2s ease;display:flex;align-items:center;justify-content:center}.synthesis-close-button:hover{background:#fff3}.synthesis-content{padding:24px;overflow-y:auto;flex:1}.synthesis-loading,.synthesis-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;text-align:center}.synthesis-loading .loading-spinner{width:32px;height:32px;border:3px solid #e5e7eb;border-top-color:#667eea;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}.synthesis-loading .loading-spinner.small{width:20px;height:20px;border-width:2px;margin-bottom:8px}.synthesis-error{color:#dc2626}.synthesis-meta{margin-bottom:20px}.synthesis-topic{font-size:1.25rem;font-weight:700;color:#1f2937;margin:0 0 4px}.synthesis-timestamp{font-size:.875rem;color:#6b7280}.synthesis-image{margin-bottom:24px;text-align:center}.problem-image{max-width:100%;height:auto;border-radius:8px;box-shadow:0 4px 6px -1px #0000001a}.problem-image[src^="data:image/"]{max-width:100%;height:auto;border-radius:8px;box-shadow:0 4px 12px -2px #00000026;background:#fff;padding:8px;border:1px solid #e5e7eb}.synthesis-sections{margin-bottom:24px;border:none;outline:none}.synthesis-section{margin-bottom:24px;padding:16px;border-radius:8px;border-left:4px solid}.synthesis-section.description{background:#f8fafc;border-left-color:#667eea}.synthesis-section.positive{background:#f0fdf4;border-left-color:#10b981}.synthesis-section.improvement{background:#fef2f2;border-left-color:#ef4444}.synthesis-section h5{margin:0 0 8px;font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#374151}.synthesis-text{color:#1f2937;line-height:1.6;margin:0}.conversation-toggle{margin-bottom:16px;padding-top:16px;border-top:1px solid #e5e7eb}.toggle-conversation-button{display:flex;align-items:center;justify-content:space-between;width:100%;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:12px 16px;cursor:pointer;transition:all .2s ease;font-weight:500;color:#374151}.toggle-conversation-button:hover{background:#f3f4f6;border-color:#d1d5db}.toggle-icon{transition:transform .2s ease}.toggle-icon.rotated{transform:rotate(180deg)}.conversation-section{border-top:1px solid #e5e7eb;padding-top:16px;animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px);max-height:0}to{opacity:1;transform:translateY(0);max-height:400px}}.conversation-messages{max-height:400px;overflow-y:auto;padding:8px 0}.parent-message.assistant{align-self:flex-start;align-items:flex-start}.parent-message.user .message-bubble{background:#667eea;color:#fff!important;border-bottom-right-radius:4px}.parent-message.assistant .message-bubble{background:#f5f5f5;color:#2d3748;border-left:4px solid #667eea;border-bottom-left-radius:4px}.parent-message img[src^="data:image/"]{background:#fff;padding:4px;border:1px solid #e5e7eb}.conversation-loading{display:flex;flex-direction:column;align-items:center;padding:20px}.no-conversation{text-align:center;padding:20px;color:#6b7280;font-style:italic}.no-conversation p{margin:0}@media (max-width: 768px){.inline-synthesis-overlay{padding:10px}.inline-synthesis-modal{max-width:none;width:100%;max-height:95vh;border-radius:12px}.inline-synthesis-header,.synthesis-content{padding:16px}.synthesis-topic{font-size:1.125rem}.conversation-messages{max-height:250px}}@media (max-width: 480px){.inline-synthesis-header,.synthesis-content,.synthesis-section{padding:12px}.toggle-conversation-button{padding:10px 12px}}.mastery-dashboard{--neutral-50: #f8fafc;--neutral-100: #f1f5f9;--neutral-200: #e2e8f0;--neutral-300: #cbd5e1;--neutral-400: #94a3b8;--neutral-500: #64748b;--neutral-600: #475569;--neutral-700: #334155;--neutral-800: #1e293b;--neutral-900: #0f172a;--gradient-primary: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--gradient-success: linear-gradient(135deg, #10b981 0%, #059669 100%);--gradient-warning: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);--gradient-error: linear-gradient(135deg, #ef4444 0%, #dc2626 100%);--gradient-hero: linear-gradient(135deg, #667eea 0%, #764ba2 0%, #f093fb 100%);--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / .25);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-normal: .3s cubic-bezier(.4, 0, .2, 1);--transition-slow: .5s cubic-bezier(.4, 0, .2, 1)}.mastery-dashboard{min-height:100vh;background:linear-gradient(135deg,#f8f9fa,#e9ecef 0%,#f8d7da);background-attachment:fixed;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:var(--neutral-800);position:relative;overflow-x:hidden}.mastery-dashboard:before{content:"";position:fixed;top:0;left:0;right:0;bottom:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.05'%3E%3Ccircle cx='30' cy='30' r='2'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");pointer-events:none;z-index:0}.mastery-header{background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.2);border-radius:24px;box-shadow:var(--shadow-2xl);margin-bottom:2rem;position:relative;overflow:hidden;animation:slideInDown .6s ease-out}.mastery-header:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--gradient-primary);background-size:200% 100%;animation:gradientShift 3s ease infinite}@keyframes gradientShift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes slideInDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}.mastery-title{background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:900;font-size:clamp(2rem,5vw,3rem);margin-bottom:1.5rem;text-align:center;letter-spacing:-.025em;position:relative}.filter-button{position:relative;overflow:hidden;transition:var(--transition-normal);border-radius:16px;font-weight:600;font-size:.875rem;letter-spacing:.025em;border:2px solid transparent;background:#fffc;color:var(--neutral-600);padding:.75rem 1.5rem;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.filter-button:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);background:#fffffff2;color:var(--neutral-700)}.filter-button.active{background:var(--gradient-primary);color:#fff;box-shadow:var(--shadow-xl);border-color:#fff3}.filter-button.active:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:shimmer 2s infinite}@keyframes shimmer{0%{left:-100%}to{left:100%}}.mastery-grid{gap:2rem;margin-top:2rem;animation:fadeInUp .8s ease-out .2s both}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.mastery-grid.grid-1{grid-template-columns:1fr;max-width:800px;margin-left:auto;margin-right:auto}.mastery-grid.grid-2,.mastery-grid.grid-3,.mastery-grid.grid-4{grid-template-columns:repeat(1,1fr)}@media (min-width: 768px){.mastery-grid.grid-2,.mastery-grid.grid-3,.mastery-grid.grid-4{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.mastery-grid.grid-3{grid-template-columns:repeat(3,1fr)}}@media (min-width: 1280px){.mastery-grid.grid-4{grid-template-columns:repeat(4,1fr)}}.unit-card{background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.2);border-radius:24px;box-shadow:var(--shadow-xl);transition:var(--transition-normal);position:relative;overflow:hidden;animation:slideInUp .6s ease-out}.unit-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--gradient-primary);background-size:200% 100%;animation:gradientShift 3s ease infinite}.unit-card:hover{transform:translateY(-8px) scale(1.02);box-shadow:var(--shadow-2xl)}@keyframes slideInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.unit-title{color:var(--neutral-800);font-weight:800;font-size:1.5rem;margin-bottom:1.5rem;position:relative;letter-spacing:-.025em}.topic-item{background:#f8fafccc;border:1px solid rgba(226,232,240,.6);border-radius:16px;padding:1.25rem;margin-bottom:1rem;transition:var(--transition-normal);position:relative;overflow:hidden}.topic-item:hover{background:#fffffff2;border-color:var(--primary-blue);transform:translate(4px);box-shadow:var(--shadow-lg)}.topic-item:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:var(--gradient-primary);opacity:0;transition:var(--transition-normal)}.topic-item:hover:before{opacity:1}.topic-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;gap:1rem}.topic-title{font-weight:700;color:var(--neutral-800);font-size:1rem;line-height:1.4;flex:1}.topic-status{display:flex;align-items:center;gap:.5rem;font-weight:700;font-size:.875rem;padding:.5rem .75rem;border-radius:12px;white-space:nowrap;transition:var(--transition-fast)}.topic-status.mastered{background:#10b9811a;color:var(--success-green);border:1px solid rgba(16,185,129,.2)}.topic-status.near{background:#f59e0b1a;color:var(--warning-orange);border:1px solid rgba(245,158,11,.2)}.topic-status.not-yet{background:#ef44441a;color:var(--error-red);border:1px solid rgba(239,68,68,.2)}.progress-bar-container{width:100%;height:12px;background:#e2e8f0cc;border-radius:6px;overflow:hidden;margin:1rem 0;position:relative}.progress-bar{height:100%;border-radius:6px;transition:var(--transition-slow);position:relative;overflow:hidden;animation:progressFill 1s ease-out}@keyframes progressFill{0%{width:0%}}.progress-bar.mastered{background:var(--gradient-success)}.progress-bar.near{background:var(--gradient-warning)}.progress-bar.not-yet{background:var(--gradient-error)}.progress-bar:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);animation:progressShimmer 2s infinite}@keyframes progressShimmer{0%{left:-100%}to{left:100%}}.topic-description{color:var(--neutral-600);font-size:.875rem;line-height:1.5;margin-top:.75rem}.empty-state{text-align:center;padding:4rem 2rem;background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:24px;margin:2rem 0;border:1px solid rgba(255,255,255,.2);box-shadow:var(--shadow-xl);animation:fadeIn .6s ease-out}.empty-state-icon{font-size:4rem;margin-bottom:1.5rem;opacity:.6;animation:bounce 2s infinite}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}.empty-state-title{font-size:1.5rem;font-weight:700;color:var(--neutral-700);margin-bottom:.75rem}.empty-state-subtitle{color:var(--neutral-500);margin-bottom:2rem;font-size:1rem}.loading-spinner{display:inline-block;width:3rem;height:3rem;border:4px solid rgba(102,126,234,.2);border-radius:50%;border-top-color:var(--primary-blue);animation:spin 1s linear infinite}.back-button{display:inline-flex;align-items:center;gap:.5rem;color:var(--neutral-600);background:#ffffffe6;border:1px solid rgba(226,232,240,.6);border-radius:12px;padding:.75rem 1.25rem;font-weight:600;transition:var(--transition-normal);text-decoration:none;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);margin-bottom:1rem}.back-button:hover{color:var(--neutral-700);background:#fffffff2;border-color:var(--primary-blue);transform:translate(-4px);box-shadow:var(--shadow-lg)}.back-button svg{transition:transform var(--transition-normal)}.back-button:hover svg{transform:translate(-4px)}@media (max-width: 640px){.mastery-header{margin:1rem;padding:1.5rem}.filter-button{padding:.5rem 1rem;font-size:.8rem}.unit-card{margin:0 1rem}.topic-item{padding:1rem}.topic-header{flex-direction:column;align-items:flex-start;gap:.5rem}.topic-status{align-self:flex-end}}.max-w-7xl{max-width:80rem;margin:0 auto;padding:0 1.5rem;position:relative;z-index:1}.text-lg{font-size:1.125rem}.text-gray-600{color:var(--neutral-500)}.space-y-3>*+*{margin-top:.75rem}.transform{transform:translateZ(0)}.-translate-x-1\/2{transform:translate(-50%)}.text-gray-600{color:#6b7280}.text-gray-800,.hover\:text-gray-800:hover{color:#374151}.text-gray-500{color:#6b7280}.border-gray-200{border-color:#e5e7eb}.bg-white{background-color:#fff}.grade-selector-container{position:relative;display:inline-block}.grade-selector{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#ffffffe6;border:1px solid rgba(0,0,0,.1);border-radius:8px;padding:8px 32px 8px 12px;font-size:.875rem;font-weight:500;color:#374151;cursor:pointer;transition:all .2s ease;min-width:120px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 1px 3px #0000001a}.grade-selector:hover{background:#fffffff2;border-color:#00000026;box-shadow:0 2px 4px #0000001a}.grade-selector:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;background:#fff}.grade-selector-icon{position:absolute;right:10px;top:50%;transform:translateY(-50%);pointer-events:none;color:#6b7280;transition:color .2s ease}.grade-selector:hover+.grade-selector-icon{color:#374151}.grade-selector:focus+.grade-selector-icon{color:#667eea}.grade-selector-icon svg{width:12px;height:12px;stroke:currentColor;fill:none;stroke-width:2}@media (max-width: 640px){.mastery-dashboard-header .welcome-text{position:static;transform:none;margin-top:.5rem}.mastery-dashboard-header .flex{flex-direction:column;align-items:flex-start;gap:.5rem}.grade-selector-container{align-self:stretch}.grade-selector{width:100%;min-width:unset}}.topic-item{transition:all var(--transition-normal);border-radius:12px;overflow:hidden}.topic-item.expanded{background:#ffffff05;box-shadow:var(--shadow-md);border:1px solid rgba(102,126,234,.1)}.topic-header.clickable{cursor:pointer;transition:background-color var(--transition-fast);padding:12px;margin:-12px;border-radius:8px}.topic-header.clickable:hover{background:#667eea0d}.topic-title{display:flex;align-items:center;justify-content:space-between;flex:1}.topic-name{font-weight:600}.topic-id-container{display:flex;justify-content:flex-end;margin-top:12px}.topic-id{font-size:.7rem;font-weight:500;color:var(--neutral-400);font-family:SF Mono,Monaco,monospace;background:#667eea0f;padding:3px 8px;border-radius:6px;display:inline-block;letter-spacing:.025em;border:1px solid rgba(102,126,234,.1);transition:all var(--transition-fast)}.topic-id:hover{background:#667eea1a;color:var(--neutral-500);border-color:#667eea33}.expand-indicator{margin-left:8px}.expand-icon{transition:transform var(--transition-normal);color:var(--neutral-400)}.expand-icon.rotated{transform:rotate(180deg);color:var(--neutral-600)}.related-attempts{margin-top:16px;overflow:hidden;transition:all var(--transition-normal);opacity:0;max-height:0;border-top:1px solid transparent}.related-attempts.expanded{opacity:1;max-height:500px;border-top-color:#0000001a;padding-top:16px}.attempts-header{display:flex;align-items:center;gap:8px;margin-bottom:12px}.attempts-icon{font-size:16px}.attempts-title{font-size:.75rem;font-weight:600;color:var(--neutral-600);text-transform:uppercase;letter-spacing:.05em;margin:0}.attempts-list{background:#ffffff80;border-radius:8px;overflow:hidden;border:1px solid rgba(0,0,0,.05)}.attempts-table-header{display:grid;grid-template-columns:80px 1fr 80px;gap:12px;padding:8px 12px;background:#667eea1a;font-size:.75rem;font-weight:600;color:var(--neutral-700);text-transform:uppercase;letter-spacing:.05em}.attempt-row{display:grid;grid-template-columns:80px 1fr 80px;gap:12px;padding:10px 12px;border-bottom:1px solid rgba(0,0,0,.05);font-size:.875rem;transition:background-color var(--transition-fast)}.attempt-row:last-child{border-bottom:none}.attempt-row:hover{background:#667eea08}.col-date{font-family:SF Mono,Monaco,monospace;font-size:.8rem;color:var(--neutral-600);display:flex;align-items:center}.col-evidence{display:flex;align-items:center;justify-content:space-between;gap:8px}.col-evidence.clickable{cursor:pointer;transition:color var(--transition-fast)}.col-evidence.clickable:hover{color:var(--neutral-700)}.evidence-thumbnail{font-size:.8rem;color:var(--neutral-600);flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.play-icon{color:var(--neutral-400);flex-shrink:0;transition:color var(--transition-fast)}.col-evidence.clickable:hover .play-icon{color:#667eea}.col-mastery{display:flex;align-items:center;justify-content:center;gap:2px;font-weight:600;font-size:.875rem}.col-mastery.positive{color:#059669}.col-mastery.negative{color:#dc2626}.delta-icon{font-size:.75rem}.no-attempts{padding:20px;text-align:center;color:var(--neutral-500);font-style:italic;background:#00000005;border-radius:8px}.no-attempts p{margin:0;font-size:.875rem}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px);max-height:0}to{opacity:1;transform:translateY(0);max-height:500px}}.related-attempts.expanded{animation:slideDown var(--transition-normal) ease-out}@media (max-width: 640px){.attempts-table-header,.attempt-row{grid-template-columns:70px 1fr 70px;gap:8px;padding:8px;font-size:.8rem}.evidence-thumbnail{font-size:.75rem}.play-icon{width:10px;height:10px}.col-mastery{font-size:.8rem}}.pill{display:inline-flex;align-items:center;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:500;transition:all .2s ease}.pill-neutral{background-color:#f1f5f9;color:#475569;border:1px solid #e2e8f0}.pill-green{background-color:#dcfce7;color:#16a34a;border:1px solid #bbf7d0}.pill-amber{background-color:#fef3c7;color:#d97706;border:1px solid #fde68a}.pill-red{background-color:#fee2e2;color:#dc2626;border:1px solid #fecaca}.student-sidebar{width:320px;background:#fff;border-right:1px solid #e5e7eb;display:flex;flex-direction:column;height:100%}.student-sidebar__search-container{padding:16px;border-bottom:1px solid #e5e7eb}.student-sidebar__search-box{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb;transition:all .2s ease}.student-sidebar__search-box:focus-within{background:#fff;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.student-sidebar__search-icon{color:#64748b;flex-shrink:0}.student-sidebar__search-input{flex:1;background:transparent;border:none;outline:none;font-size:14px;color:#1f2937}.student-sidebar__search-input::-moz-placeholder{color:#9ca3af}.student-sidebar__search-input::placeholder{color:#9ca3af}.student-sidebar__list{flex:1;overflow-y:auto;padding:8px}.student-sidebar__empty{padding:20px;text-align:center}.student-sidebar__empty-text{color:#64748b;margin-bottom:8px}.student-sidebar__empty-hint{font-size:12px;color:#64748b}.student-sidebar__item{width:100%;padding:12px;margin-bottom:8px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .2s ease;text-align:left}.student-sidebar__item:hover{background:#f9fafb;border-color:#d1d5db}.student-sidebar__item--selected{background:#eff6ff;border-color:#3b82f6;box-shadow:0 1px 3px #3b82f61a}.student-sidebar__item--loading{opacity:.7;pointer-events:none}.student-sidebar__item-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.student-sidebar__item-name{font-weight:600;color:#1f2937;font-size:14px}.student-sidebar__item-last-active{font-size:12px;color:#64748b}.student-sidebar__item-meta{display:flex;align-items:center;gap:4px;margin-bottom:8px;font-size:12px;color:#64748b}.student-sidebar__item-separator{color:#d1d5db}.student-sidebar__item-email{font-size:12px;color:#64748b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.student-sidebar__item-pills{display:flex;gap:6px;flex-wrap:wrap}.info-tooltip{position:relative;display:inline-block}.info-tooltip__trigger{margin-left:4px;padding:2px 4px;font-size:10px;border:none;background-color:transparent;cursor:help;border-radius:50%;width:16px;height:16px;display:flex;align-items:center;justify-content:center;transition:opacity .2s ease}.info-tooltip__trigger:hover{opacity:.8}.info-tooltip__content{padding:10px 14px;background-color:#1f2937;color:#fff;border-radius:8px;font-size:12px;line-height:1.3;max-width:400px;min-width:300px;box-shadow:0 4px 12px #00000026;white-space:normal;animation:fadeIn .2s ease;margin-bottom:8px}.info-tooltip__portal-content{pointer-events:auto}.info-tooltip__arrow{position:absolute;top:100%;left:50%;transform:translate(-50%);width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-top:6px solid #1f2937}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.health-chip{display:flex;align-items:center;gap:8px;padding:8px 12px;background-color:#f8fafc;border-radius:8px;border:1px solid #e2e8f0}.health-chip__icon{color:inherit;flex-shrink:0}.health-chip__icon--disabled{color:#9ca3af;flex-shrink:0}.health-chip__label{color:#64748b;display:flex;align-items:center;font-size:14px}.health-chip__value{font-weight:600;color:inherit;font-style:normal;margin-left:auto}.health-chip__value--placeholder{color:#9ca3af;font-style:italic}.overview-tab{display:flex;flex-direction:column;gap:24px}.overview-tab__card{background:#fff;border-radius:12px;border:1px solid #e5e7eb;overflow:hidden}.overview-tab__card-header{padding:16px 20px;border-bottom:1px solid #e5e7eb;display:flex;align-items:center;justify-content:space-between}.overview-tab__card-title{font-weight:600;font-size:16px;color:#1f2937}.overview-tab__card-body{padding:20px}.overview-tab__refresh-btn{background:transparent;border:1px solid #e5e7eb;border-radius:6px;padding:6px 10px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:6px}.overview-tab__refresh-btn:hover:not(:disabled){background:#f9fafb;border-color:#d1d5db}.overview-tab__refresh-btn:disabled{opacity:.5;cursor:not-allowed}.overview-tab__refresh-icon--spinning{animation:spin 1s linear infinite}.overview-tab__timeframe-buttons{display:flex;gap:8px}.overview-tab__timeframe-btn{padding:8px 16px;border-radius:6px;border:1px solid #d1d5db;background:transparent;color:#374151;cursor:pointer;transition:all .2s ease;font-size:14px}.overview-tab__timeframe-btn:hover{background:#f9fafb}.overview-tab__timeframe-btn--active{background:#3b82f6;color:#fff;border-color:#3b82f6}.overview-tab__loading{text-align:center;padding:40px}.overview-tab__spinner{width:40px;height:40px;border:3px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 16px}.overview-tab__loading-title{color:#1f2937;font-weight:600;margin-bottom:8px;font-size:16px}.overview-tab__loading-subtitle{color:#64748b;font-size:14px;margin-bottom:4px}.overview-tab__loading-hint{color:#9ca3af;font-size:12px}.overview-tab__error{text-align:center;padding:40px}.overview-tab__error-icon{color:#ef4444;margin:0 auto 16px}.overview-tab__error-title{color:#ef4444;margin-bottom:8px;font-weight:600}.overview-tab__error-message{font-size:14px;color:#64748b;margin-bottom:16px}.overview-tab__retry-btn{padding:8px 16px;background:#3b82f6;color:#fff;border:none;border-radius:6px;cursor:pointer;transition:background .2s ease}.overview-tab__retry-btn:hover{background:#2563eb}.overview-tab__no-data{text-align:center;color:#64748b;padding:20px}.overview-tab__summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.overview-tab__metrics-section,.overview-tab__topics-section{display:flex;flex-direction:column}.overview-tab__section-title{font-size:16px;font-weight:600;margin-bottom:16px;color:#1f2937}.overview-tab__metrics-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.overview-tab__topics-list{display:flex;flex-wrap:wrap;gap:6px}.overview-tab__topic-pill{padding:4px 10px;background:#f1f5f9;color:#475569;border:1px solid #e2e8f0;border-radius:12px;font-size:12px;font-weight:500}.overview-tab__no-topics{color:#64748b;font-size:14px}.overview-tab__analysis-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:24px}.overview-tab__analysis-section{display:flex;flex-direction:column}.overview-tab__analysis-title{font-size:14px;font-weight:600;margin-bottom:12px}.overview-tab__analysis-title--strengths{color:#10b981}.overview-tab__analysis-title--needs{color:#f59e0b}.overview-tab__analysis-title--next{color:#3b82f6}.overview-tab__analysis-list{margin:0;padding-left:16px;list-style-type:disc}.overview-tab__analysis-item{font-size:14px;color:#374151;margin-bottom:4px;line-height:1.5}.overview-tab__analysis-item--empty{color:#9ca3af;font-size:14px;list-style-type:none;margin-left:-16px}.overview-tab__trends-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:24px}.overview-tab__trend-section{display:flex;flex-direction:column}.overview-tab__trend-title{font-size:14px;font-weight:600;margin-bottom:12px}.overview-tab__trend-title--improving{color:#10b981}.overview-tab__trend-title--declining{color:#ef4444}.overview-tab__trend-title--consistent{color:#64748b}.overview-tab__trend-item{font-size:13px;color:#374151;margin-bottom:2px}.overview-tab__trend-item--empty{color:#9ca3af;font-size:13px}.synthesis-tab{display:grid;grid-template-columns:2fr 1fr;gap:24px;height:-moz-fit-content;height:fit-content}.synthesis-tab__card{background:#fff;border-radius:12px;border:1px solid #e5e7eb;overflow:hidden}.synthesis-tab__card-header{padding:16px 20px;border-bottom:1px solid #e5e7eb;display:flex;align-items:center;justify-content:space-between}.synthesis-tab__card-body{padding:20px}.synthesis-tab__main{display:flex;flex-direction:column;gap:24px}.synthesis-tab__header-content{flex:1}.synthesis-tab__header-subtitle{font-size:14px;color:#64748b;margin-bottom:4px}.synthesis-tab__header-title{font-size:18px;font-weight:600;color:#1f2937;margin-bottom:4px}.synthesis-tab__header-date{font-size:14px;color:#64748b}.synthesis-tab__view-button{display:flex;align-items:center;gap:6px;padding:8px 16px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;cursor:pointer;transition:all .2s ease;font-size:14px;color:#374151}.synthesis-tab__view-button:hover{background:#f9fafb;border-color:#d1d5db}.synthesis-tab__image-section{margin-bottom:24px}.synthesis-tab__image-label{font-size:14px;font-weight:600;margin-bottom:12px;color:#1f2937}.synthesis-tab__image-container{border:1px solid #e5e7eb;border-radius:8px;padding:16px;background-color:#f9fafb;text-align:center}.synthesis-tab__image{max-width:100%;height:auto;border-radius:6px;box-shadow:0 2px 8px #00000014}.synthesis-tab__image-fallback{text-align:center;color:#64748b;padding:20px}.synthesis-tab__content-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:24px}.synthesis-tab__content-section{padding:16px;background:#f8fafc;border-radius:8px;border:1px solid #e2e8f0}.synthesis-tab__content-section--green{background:#f0fdf4;border-color:#bbf7d0}.synthesis-tab__content-section--amber{background:#fffbeb;border-color:#fde68a}.synthesis-tab__content-label{font-size:14px;font-weight:600;margin-bottom:8px;color:#1f2937}.synthesis-tab__content-text{font-size:14px;color:#374151;line-height:1.5}.synthesis-tab__dynamic-section{margin-top:24px;padding-top:24px;border-top:1px solid #e5e7eb}.synthesis-tab__dynamic-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:24px}.synthesis-tab__dynamic-column{display:flex;flex-direction:column}.synthesis-tab__dynamic-title{font-size:14px;font-weight:600;margin-bottom:12px}.synthesis-tab__dynamic-title--strengths{color:#10b981}.synthesis-tab__dynamic-title--needs{color:#f59e0b}.synthesis-tab__dynamic-title--next{color:#3b82f6}.synthesis-tab__dynamic-list{margin:0;padding-left:16px;list-style-type:disc}.synthesis-tab__dynamic-item{font-size:13px;color:#374151;margin-bottom:4px;line-height:1.4}.synthesis-tab__explanations-header{display:flex;align-items:center;gap:8px}.synthesis-tab__explanations-icon{color:#64748b}.synthesis-tab__explanations-title{font-weight:600;font-size:16px;color:#1f2937}.synthesis-tab__explanations-list{display:flex;flex-direction:column;gap:12px;max-height:300px;overflow-y:auto}.synthesis-tab__explanation-item{display:flex;align-items:center;justify-content:space-between;padding:12px;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .2s ease}.synthesis-tab__explanation-item:hover{border-color:#3b82f6;background-color:#f8faff}.synthesis-tab__explanation-content{flex:1}.synthesis-tab__explanation-title{font-size:14px;font-weight:500;margin-bottom:4px;color:#1f2937}.synthesis-tab__explanation-date{font-size:12px;color:#6b7280}.synthesis-tab__explanation-badges{display:flex;align-items:center;gap:8px}.synthesis-tab__explanation-badge{display:flex;align-items:center;gap:4px}.synthesis-tab__badge-icon{flex-shrink:0}.synthesis-tab__badge-icon--blue{color:#3b82f6}.synthesis-tab__badge-icon--green{color:#10b981}.synthesis-tab__badge-icon--purple{color:#8b5cf6}.synthesis-tab__badge-dot{width:6px;height:6px;border-radius:50%;background-color:#f59e0b}.synthesis-tab__chevron{color:#9ca3af}.synthesis-tab__explanations-empty{text-align:center;color:#6b7280;font-size:14px;padding:20px}.synthesis-tab__sidebar{position:sticky;top:24px;height:-moz-fit-content;height:fit-content}.synthesis-tab__cards-selector{height:-moz-fit-content;height:fit-content}.synthesis-tab__selector-header{display:flex;align-items:center;justify-content:space-between;width:100%}.synthesis-tab__selector-title-group{display:flex;align-items:center;gap:8px}.synthesis-tab__selector-icon{color:#64748b}.synthesis-tab__selector-title{font-weight:600;font-size:16px;color:#1f2937}.synthesis-tab__selector-count{font-size:12px;color:#64748b}.synthesis-tab__timeframe-select{padding:4px 8px;border:1px solid #e5e7eb;border-radius:4px;font-size:12px;background:#fff;cursor:pointer}.synthesis-tab__cards-list{display:flex;flex-direction:column;gap:12px;max-height:calc(100vh - 200px);overflow-y:auto;padding-right:8px}.synthesis-tab__card-item{padding:12px;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .2s ease;background:#fff}.synthesis-tab__card-item:hover{border-color:#d1d5db;background-color:#f9fafb}.synthesis-tab__card-item--selected,.synthesis-tab__card-item--selected:hover{background:#eff6ff;border-color:#3b82f6}.synthesis-tab__card-item-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:6px}.synthesis-tab__card-item-content{flex:1}.synthesis-tab__card-item-title{font-size:14px;font-weight:600;margin-bottom:2px;line-height:1.3;color:#1f2937}.synthesis-tab__card-item-date{font-size:11px;color:#6b7280}.synthesis-tab__card-item-check{color:#3b82f6;margin-top:2px;flex-shrink:0;margin-left:8px}.synthesis-tab__card-item-description{font-size:12px;color:#64748b;line-height:1.3;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.synthesis-tab__loading{text-align:center;padding:40px}.synthesis-tab__spinner{width:40px;height:40px;border:3px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 16px}.synthesis-tab__loading-text{color:#64748b;font-size:14px}.synthesis-tab__error{text-align:center;padding:40px}.synthesis-tab__error-icon{color:#ef4444;margin:0 auto 16px}.synthesis-tab__error-title{color:#ef4444;margin-bottom:8px;font-weight:600}.synthesis-tab__error-message{font-size:14px;color:#64748b}.synthesis-tab__empty{text-align:center;padding:40px}.synthesis-tab__empty-icon{color:#d1d5db;margin:0 auto 16px}.synthesis-tab__empty-title{color:#64748b;margin-bottom:8px;font-weight:600}.synthesis-tab__empty-message{font-size:14px;color:#9ca3af}.analysis-tab{display:grid;grid-template-columns:2fr 1fr;gap:24px;height:-moz-fit-content;height:fit-content}.analysis-tab__card{background:#fff;border-radius:12px;border:1px solid #e5e7eb;overflow:hidden}.analysis-tab__card-header{padding:16px 20px;border-bottom:1px solid #e5e7eb;display:flex;align-items:center;justify-content:space-between}.analysis-tab__card-body{padding:20px}.analysis-tab__card-body--compact{padding:16px}.analysis-tab__card-title{font-weight:600;font-size:16px;color:#1f2937}.analysis-tab__card-title--small{font-weight:600;font-size:14px;color:#1f2937}.analysis-tab__main{display:flex;flex-direction:column;gap:24px}.analysis-tab__section-header{margin-bottom:16px}.analysis-tab__section-title{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:600;color:#1f2937}.analysis-tab__mastery-alert{margin-left:auto;padding:4px 8px;background:#fee2e2;color:#dc2626;border-radius:4px;font-size:12px;font-weight:500}.analysis-tab__analysis-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:24px}.analysis-tab__analysis-section{display:flex;flex-direction:column}.analysis-tab__analysis-title{font-size:15px;font-weight:600;margin-bottom:12px}.analysis-tab__analysis-title--strengths{color:#10b981}.analysis-tab__analysis-title--needs{color:#f59e0b}.analysis-tab__analysis-title--next{color:#3b82f6}.analysis-tab__analysis-list{margin:0;padding-left:16px;list-style-type:disc}.analysis-tab__analysis-item{font-size:14px;color:#374151;margin-bottom:6px;line-height:1.4}.analysis-tab__analysis-item--empty{color:#9ca3af;font-size:14px;list-style-type:none;margin-left:-16px}.analysis-tab__metrics-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:20px}.analysis-tab__action-section{padding-top:20px;border-top:1px solid #e5e7eb}.analysis-tab__generate-button{display:flex;align-items:center;gap:8px;padding:10px 16px;background:#3b82f6;color:#fff;border:none;border-radius:6px;cursor:pointer;transition:background-color .2s ease;font-size:14px;font-weight:500}.analysis-tab__generate-button:hover{background:#2563eb}.analysis-tab__rcm-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px;margin-bottom:12px}.analysis-tab__enhanced-rcm{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding-top:12px;border-top:1px solid #e5e7eb}.analysis-tab__rcm-metric{background:#f8fafc;padding:12px;border-radius:8px;border:1px solid #e2e8f0}.analysis-tab__rcm-label{display:flex;align-items:center;font-size:12px;color:#64748b;margin-bottom:8px;font-weight:500}.analysis-tab__rcm-value{font-size:16px;font-weight:600;color:#1f2937}.analysis-tab__rcm-value--green{color:#10b981}.analysis-tab__rcm-value--amber{color:#f59e0b}.analysis-tab__rcm-value--red{color:#ef4444}.analysis-tab__rcm-value--placeholder{color:#9ca3af;font-style:italic}.analysis-tab__sidebar{display:flex;flex-direction:column;gap:16px;position:sticky;top:24px;height:-moz-fit-content;height:fit-content}.analysis-tab__problem-title{font-size:14px;font-weight:600;margin-bottom:12px;line-height:1.3;color:#1f2937}.analysis-tab__problem-image{margin-bottom:12px}.analysis-tab__problem-image-container{border:1px solid #e5e7eb;border-radius:6px;padding:8px;background-color:#f9fafb;text-align:center}.analysis-tab__problem-image-img{max-width:100%;max-height:150px;height:auto;border-radius:4px;box-shadow:0 1px 4px #0000000f}.analysis-tab__problem-image-fallback{text-align:center;color:#64748b;padding:12px;font-size:12px}.analysis-tab__problem-description{font-size:12px;color:#64748b;line-height:1.4;background-color:#f8fafc;padding:8px;border-radius:4px;border:1px solid #e2e8f0;overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}.analysis-tab__selector-header{display:flex;align-items:center;justify-content:space-between;width:100%}.analysis-tab__selector-title-group{display:flex;align-items:center;gap:8px}.analysis-tab__selector-icon{color:#64748b}.analysis-tab__selector-count{font-size:12px;color:#64748b}.analysis-tab__timeframe-select{padding:4px 8px;border:1px solid #e5e7eb;border-radius:4px;font-size:12px;background:#fff;cursor:pointer}.analysis-tab__cards-list{display:flex;flex-direction:column;gap:8px;max-height:300px;overflow-y:auto;padding-right:8px}.analysis-tab__card-item{padding:10px;border:2px solid #e5e7eb;border-radius:6px;cursor:pointer;transition:all .2s ease;background:#fff}.analysis-tab__card-item:hover{border-color:#d1d5db;background-color:#f9fafb}.analysis-tab__card-item--selected,.analysis-tab__card-item--selected:hover{background:#eff6ff;border-color:#3b82f6}.analysis-tab__card-item-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:6px}.analysis-tab__card-item-content{flex:1}.analysis-tab__card-item-title{font-size:14px;font-weight:600;margin-bottom:2px;line-height:1.3;color:#1f2937}.analysis-tab__card-item-date{font-size:11px;color:#6b7280}.analysis-tab__card-item-check{color:#3b82f6;margin-top:2px;flex-shrink:0;margin-left:8px}.analysis-tab__card-item-description{font-size:12px;color:#64748b;line-height:1.3;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:8px}.analysis-tab__card-item-preview{margin-top:8px;padding-top:8px;border-top:1px solid #e5e7eb}.analysis-tab__preview-badges{display:flex;gap:12px;flex-wrap:wrap}.analysis-tab__preview-badge{font-size:11px;font-weight:500}.analysis-tab__preview-badge--green{color:#10b981}.analysis-tab__preview-badge--amber{color:#f59e0b}.analysis-tab__preview-badge--blue{color:#3b82f6}.synthesis-review-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:2000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:20px}.synthesis-review-panel{background:#fff;border-radius:16px;max-width:900px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 25px 50px #00000040;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.review-header{display:flex;align-items:center;justify-content:space-between;padding:24px;border-bottom:1px solid #e5e7eb;background:#f9fafb;border-radius:16px 16px 0 0}.review-title{display:flex;align-items:center;gap:12px;color:#1f2937}.review-title h3{margin:0;font-size:20px;font-weight:600}.review-title p{margin:0;font-size:14px;color:#6b7280}.close-btn{background:none;border:none;padding:8px;border-radius:8px;cursor:pointer;color:#6b7280;transition:all .2s ease}.close-btn:hover{background:#f3f4f6;color:#374151}.problem-context{display:flex;gap:20px;padding:24px;border-bottom:1px solid #e5e7eb;background:#fafafa}.problem-image img{border:1px solid #e5e7eb;box-shadow:0 2px 8px #0000001a}.problem-details{flex:1}.problem-details h4{margin:0 0 8px;font-size:18px;font-weight:600;color:#1f2937}.problem-details p{margin:0;font-size:14px;color:#6b7280;line-height:1.5}.review-tabs{display:flex;border-bottom:1px solid #e5e7eb;background:#fff}.tab-btn{display:flex;align-items:center;gap:8px;padding:16px 24px;border:none;background:none;cursor:pointer;font-size:14px;font-weight:500;color:#6b7280;transition:all .2s ease;border-bottom:2px solid transparent}.tab-btn:hover{color:#374151;background:#f9fafb}.tab-btn.active{color:#3b82f6;border-bottom-color:#3b82f6;background:#fff}.review-content{padding:0;max-height:60vh;overflow-y:auto}.explanation-review,.reflection-review{display:flex;flex-direction:column;gap:24px;padding:24px}.student-work,.ai-analysis,.tutor-grading,.tutor-feedback{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:20px}.student-work{background:#fefef9;border-color:#fef3c7}.ai-analysis{background:#f0f9ff;border-color:#bae6fd}.tutor-grading,.tutor-feedback{background:#fefef9;border-color:#d1fae5}.student-work h4,.ai-analysis h4,.tutor-grading h4,.tutor-feedback h4{margin:0 0 16px;font-size:16px;font-weight:600;color:#1f2937}.student-work h5,.ai-analysis h5{margin:0 0 8px;font-size:14px;font-weight:600;color:#374151}.audio-section{margin-bottom:16px}.audio-controls{display:flex;align-items:center;gap:12px}.play-btn{display:flex;align-items:center;gap:8px;padding:10px 16px;border:1px solid #d1d5db;border-radius:8px;background:#fff;cursor:pointer;font-size:14px;font-weight:500;color:#374151;transition:all .2s ease}.play-btn:hover{background:#f3f4f6;border-color:#9ca3af}.transcription-text{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:16px;font-size:14px;line-height:1.6;color:#374151;white-space:pre-wrap}.analysis-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.analysis-item{display:flex;align-items:center;gap:8px}.analysis-item .label{font-size:14px;font-weight:500;color:#6b7280}.grade{padding:4px 8px;border-radius:6px;font-size:12px;font-weight:600;text-transform:uppercase}.grade-a,.grade-a\+{background:#dcfce7;color:#166534}.grade-b,.grade-b\+,.grade-b-{background:#fef3c7;color:#92400e}.grade-c,.grade-c\+,.grade-c-,.grade-d,.grade-d\+,.grade-d-,.grade-f{background:#fef2f2;color:#dc2626}.feedback-text{margin-bottom:16px}.feedback-text p{margin:0;font-size:14px;line-height:1.6;color:#374151}.strengths,.improvements{margin-bottom:12px}.strengths ul,.improvements ul{margin:0;padding-left:20px;color:#374151}.strengths li,.improvements li{margin-bottom:4px;font-size:14px;line-height:1.5}.grade-input,.rating-input,.comments-input{margin-bottom:16px}.grade-input label,.rating-input label,.comments-input label{display:block;margin-bottom:8px;font-size:14px;font-weight:600;color:#374151}.grade-select{width:200px;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;background:#fff;color:#374151}.comment-textarea{width:100%;padding:12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;font-family:inherit;color:#374151;resize:vertical;min-height:100px}.comment-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.star-rating{display:flex;gap:4px;margin-top:8px}.star{background:none;border:none;cursor:pointer;color:#d1d5db;transition:all .2s ease}.star:hover,.star.active{color:#fbbf24}.save-btn{display:flex;align-items:center;gap:8px;padding:12px 20px;border:none;border-radius:8px;background:#3b82f6;color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.save-btn:hover:not(:disabled){background:#2563eb;transform:translateY(-1px)}.save-btn:disabled{background:#9ca3af;cursor:not-allowed;transform:none}.empty-state{text-align:center;padding:60px 40px;color:#6b7280}.empty-state h4{margin:16px 0 8px;font-size:18px;font-weight:600;color:#374151}.empty-state p{margin:0;font-size:14px;line-height:1.5}@media (max-width: 768px){.synthesis-review-panel{margin:10px;max-height:95vh;border-radius:12px}.review-header{padding:16px}.problem-context{flex-direction:column;padding:16px}.review-content{max-height:70vh}.explanation-review,.reflection-review{padding:16px;gap:16px}.analysis-grid{grid-template-columns:1fr}}.review-content::-webkit-scrollbar{width:6px}.review-content::-webkit-scrollbar-track{background:#f3f4f6}.review-content::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}.review-content::-webkit-scrollbar-thumb:hover{background:#9ca3af}.welcome-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;padding:40px}.welcome-placeholder__content{max-width:800px;width:100%;text-align:center}.welcome-placeholder__header{margin-bottom:32px}.welcome-placeholder__icon{font-size:48px;margin-bottom:16px;background:linear-gradient(135deg,#3b82f6,#8b5cf6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;display:inline-block}.welcome-placeholder__title{font-size:28px;font-weight:700;color:#1f2937;margin:0 0 12px}.welcome-placeholder__description{font-size:16px;color:#6b7280;line-height:1.6;margin:0}.welcome-placeholder__stats{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:32px}.welcome-placeholder__stat-card{background:#fff;padding:24px;border-radius:12px;border:1px solid #e5e7eb;box-shadow:0 1px 3px #0000000d}.welcome-placeholder__stat-value{font-size:24px;font-weight:700;color:#3b82f6;margin-bottom:8px}.welcome-placeholder__stat-label{font-size:14px;color:#6b7280}.welcome-placeholder__features{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:32px}.welcome-placeholder__feature{padding:20px;background-color:#f8fafc;border-radius:12px;border:1px solid #e2e8f0}.welcome-placeholder__feature-icon{font-size:20px;margin-bottom:12px}.welcome-placeholder__feature-title{font-size:16px;font-weight:600;color:#1f2937;margin:0 0 8px}.welcome-placeholder__feature-description{font-size:14px;color:#6b7280;line-height:1.5;margin:0}.welcome-placeholder__tip{padding:16px 24px;background-color:#eff6ff;border:1px solid #dbeafe;border-radius:8px;color:#1e40af;font-size:14px;display:inline-block;max-width:500px;margin:0 auto}.tutor-dashboard__container{display:flex;height:calc(100vh - 60px);background:#f9fafb}.tutor-dashboard__loading-container{display:flex;align-items:center;justify-content:center;min-height:100vh;background:#f9fafb}.tutor-dashboard__loading-content{text-align:center}.tutor-dashboard__spinner{width:40px;height:40px;border:3px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto}.tutor-dashboard__loading-text{margin-top:16px;font-size:14px;color:#64748b}.tutor-dashboard__error-container{display:flex;align-items:center;justify-content:center;min-height:100vh;background:#f9fafb}.tutor-dashboard__error-content{text-align:center;max-width:400px}.tutor-dashboard__error-title{font-size:14px;color:#ef4444;margin-bottom:8px;font-weight:600}.tutor-dashboard__error-message{font-size:12px;color:#64748b;margin-bottom:16px}.tutor-dashboard__retry-button{padding:8px 16px;background-color:#3b82f6;color:#fff;border:none;border-radius:6px;cursor:pointer;transition:background-color .2s ease}.tutor-dashboard__retry-button:hover{background-color:#2563eb}.tutor-dashboard__header{height:60px;background:#fff;border-bottom:1px solid #e5e7eb;position:sticky;top:0;z-index:100}.tutor-dashboard__header-content{display:flex;align-items:center;justify-content:space-between;height:100%;padding:0 20px}.tutor-dashboard__header-left{display:flex;align-items:center;gap:12px}.tutor-dashboard__back-button{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;background-color:#0000000d;border:none;cursor:pointer;transition:background-color .2s ease}.tutor-dashboard__back-button:hover{background-color:#0000001a}.tutor-dashboard__header-title{font-size:18px;font-weight:600;color:#1f2937}.tutor-dashboard__header-badges{display:flex;align-items:center;gap:4px;margin-top:4px}.tutor-dashboard__badge{font-size:9px;color:#6b7280;padding:1px 4px;background-color:#f8fafc;border-radius:2px;border:1px solid #e5e7eb;line-height:1}.tutor-dashboard__header-center{flex:1;display:flex;justify-content:center}.tutor-dashboard__tabs{display:flex;gap:4px;background:#f9fafb;padding:4px;border-radius:8px}.tutor-dashboard__tab{display:flex;align-items:center;gap:6px;padding:8px 16px;background:transparent;border:none;border-radius:6px;cursor:pointer;transition:all .2s ease;font-size:14px;font-weight:500;color:#64748b}.tutor-dashboard__tab:hover{background:#fff;color:#1f2937}.tutor-dashboard__tab--active{background:#fff;color:#3b82f6;box-shadow:0 1px 3px #0000001a}.tutor-dashboard__header-right{display:flex;align-items:center}.tutor-dashboard__user-email{font-size:14px;color:#64748b}.tutor-dashboard__main{flex:1;overflow-y:auto;padding:24px}.tutor-dashboard__content{max-width:1400px;margin:0 auto}.tutor-dashboard__tab-content{animation:fadeIn .3s ease}.assignments-tab{padding:24px;background:#fff;border-radius:12px;border:1px solid #e5e7eb;margin:16px;min-height:600px}.assignments-tab__header{margin-bottom:24px}.assignments-tab__title h3{font-size:20px;font-weight:600;color:#111827;margin:0 0 4px}.assignments-tab__title p{color:#6b7280;margin:0;font-size:14px}.assignments-tab__filters{display:flex;gap:8px;margin-top:16px;padding:4px;background:#f3f4f6;border-radius:8px;width:-moz-fit-content;width:fit-content}.assignments-tab__filter{padding:8px 16px;border:none;background:transparent;border-radius:6px;font-size:14px;font-weight:500;color:#6b7280;cursor:pointer;transition:all .2s}.assignments-tab__filter:hover{color:#374151;background:#e5e7eb}.assignments-tab__filter--active{background:#fff;color:#3b82f6;box-shadow:0 1px 2px #0000000d}.assignments-tab__content{min-height:400px}.assignments-tab__loading,.assignments-tab__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;color:#6b7280}.assignments-tab__error{color:#dc2626;font-size:14px}.assignments-tab__empty-icon{color:#d1d5db;margin-bottom:16px}.assignments-tab__empty h4{margin:0 0 8px;font-size:18px;font-weight:600;color:#374151}.assignments-tab__empty p{margin:0;text-align:center;max-width:400px}.assignments-tab__skeleton{display:flex;flex-direction:column;gap:16px;width:100%}.assignments-tab__skeleton-item{padding:20px;border:1px solid #e5e7eb;border-radius:8px;background:#fff}.assignments-tab__skeleton-line{height:12px;background:#f3f4f6;border-radius:4px;margin-bottom:8px;animation:pulse 1.5s ease-in-out infinite}.assignments-tab__skeleton-line--short{width:60%}.assignments-tab__list{display:flex;flex-direction:column;gap:16px}.assignments-tab__card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:20px;transition:all .2s}.assignments-tab__card:hover{box-shadow:0 4px 6px -1px #0000001a;border-color:#d1d5db}.assignments-tab__card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.assignments-tab__card-title{flex:1}.assignments-tab__card-title h4{margin:0 0 8px;font-size:16px;font-weight:600;color:#111827}.assignments-tab__status{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500;text-transform:capitalize}.assignments-tab__view-btn{display:flex;align-items:center;gap:6px;padding:8px 12px;background:#3b82f6;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s}.assignments-tab__view-btn:hover{background:#2563eb}.assignments-tab__card-details{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:12px}.assignments-tab__detail{display:flex;align-items:center;gap:6px;color:#6b7280;font-size:14px}.assignments-tab__description{color:#6b7280;font-size:14px;margin:12px 0;line-height:1.5}.assignments-tab__tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.assignments-tab__tag{background:#f3f4f6;color:#374151;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500}.assignments-tab__tag--more{background:#e5e7eb;color:#6b7280}.auth-dashboard{min-height:100vh;background-color:#f8fafc}.loading-container{height:100vh;width:100%;display:flex;align-items:center;justify-content:center}.loading-content{text-align:center}.loading-icon{width:2rem;height:2rem;animation:spin 1s linear infinite;color:#2563eb;margin:0 auto 1rem}.loading-text{font-size:.875rem;color:#475569}.error-container{height:100vh;width:100%;display:flex;align-items:center;justify-content:center}.error-content{text-align:center;max-width:28rem}.error-box{background-color:#fef2f2;border:1px solid #fecaca;border-radius:.5rem;padding:1.5rem;margin-bottom:1rem}.error-text{color:#dc2626;margin-bottom:1rem}.error-button{padding:.5rem 1rem;background-color:#2563eb;color:#fff;border-radius:.5rem;border:none;cursor:pointer;transition:background-color .2s}.error-button:hover{background-color:#1d4ed8}.no-students-container{height:100vh;width:100%;display:flex;align-items:center;justify-content:center}.no-students-content{text-align:center}.no-students-text{color:#4b5563;margin-bottom:1rem}.header{background-color:#f9fafb;border-bottom:1px solid #e5e7eb}.header-container{max-width:80rem;margin:0 auto;padding:0 1.5rem}.header-content{height:4rem;display:flex;align-items:center;justify-content:space-between}.header-left{display:flex;align-items:center}.header-title{font-size:1.125rem;font-weight:600;color:#111827;margin-right:3rem}.header-info{display:flex;align-items:center;gap:1.5rem}.access-badge{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background-color:#dbeafe;border-radius:.5rem;min-width:-moz-fit-content;min-width:fit-content}.access-shield{width:1rem;height:1rem;color:#2563eb;flex-shrink:0}.access-text{font-size:.875rem;font-weight:500;color:#1e40af;white-space:nowrap}.student-count{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#4b5563}.students-icon{width:1rem;height:1rem}.header-right{display:flex;align-items:center;gap:1rem}.user-email{font-size:.875rem;color:#4b5563}@media (max-width: 768px){.user-email{display:none}}.header-actions{display:flex;align-items:center;gap:.75rem}.action-button{padding:.5rem;color:#6b7280;background:transparent;border:none;border-radius:.5rem;cursor:pointer;transition:all .2s}.action-button:hover{color:#374151;background-color:#f3f4f6}.action-button.logout:hover{color:#dc2626;background-color:#fef2f2}.action-icon{width:1rem;height:1rem}.action-icon.spinning{animation:spin 1s linear infinite}.tutor-login-checking{min-height:100vh;display:flex;align-items:center;justify-content:center;background-color:#f9fafb}.tutor-login-checking-content{display:flex;align-items:center;gap:.5rem}.tutor-login-spinner{width:1.25rem;height:1.25rem;animation:spin 1s linear infinite;color:#2563eb}.tutor-login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(to bottom right,#f8fafc,#dbeafe,#e0e7ff);position:relative;overflow:hidden}.tutor-login-bg{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.tutor-login-bg-element{position:absolute;border-radius:50%;filter:blur(48px)}.tutor-login-bg-element-1{top:-10rem;right:-10rem;width:20rem;height:20rem;background-color:#3b82f61a}.tutor-login-bg-element-2{bottom:-10rem;left:-10rem;width:20rem;height:20rem;background-color:#6366f11a}.tutor-login-bg-element-3{top:50%;left:50%;transform:translate(-50%,-50%);width:24rem;height:24rem;background-color:#9333ea0d}.tutor-login-wrapper{position:relative;z-index:10;max-width:28rem;width:100%;margin:0 1rem}.tutor-login-card{background-color:#fffc;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:1.5rem;box-shadow:0 25px 50px -12px #00000040;border:1px solid rgba(255,255,255,.2);padding:2rem;position:relative}.tutor-login-card-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom right,rgba(255,255,255,.4),transparent);border-radius:1.5rem;pointer-events:none}.tutor-login-card-content{position:relative;z-index:10}.tutor-login-header{text-align:center;margin-bottom:2rem}.tutor-login-icon{display:inline-flex;align-items:center;justify-content:center;width:5rem;height:5rem;background:linear-gradient(to bottom right,#3b82f6,#6366f1);border-radius:1rem;margin-bottom:1.5rem;box-shadow:0 10px 15px -3px #0000001a;transform:rotate(3deg);transition:transform .3s ease}.tutor-login-icon:hover{transform:rotate(0)}.tutor-login-shield-icon{width:2.5rem;height:2.5rem;color:#fff}.tutor-login-title{font-size:1.875rem;font-weight:700;background:linear-gradient(to right,#111827,#374151);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:.5rem}.tutor-login-welcome{color:#4b5563;font-size:1.125rem;font-weight:500}.tutor-login-subtitle{color:#6b7280;margin-top:.25rem}.tutor-login-error{margin-bottom:1.5rem;padding:1rem;background-color:#fef2f2cc;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:1px solid rgba(252,165,165,.5);border-radius:.75rem;box-shadow:0 1px 3px #0000001a}.tutor-login-error-text{font-size:.875rem;color:#dc2626;font-weight:500}.tutor-login-button{width:100%;position:relative;display:flex;align-items:center;justify-content:center;gap:.75rem;padding:1rem 1.5rem;background-color:#fff;border:1px solid #d1d5db;border-radius:.75rem;box-shadow:0 10px 15px -3px #0000001a;font-weight:500;color:#374151;transition:all .2s ease;cursor:pointer}.tutor-login-button:hover{background-color:#f9fafb;box-shadow:0 20px 25px -5px #0000001a;color:#111827}.tutor-login-button:focus{outline:none;box-shadow:0 0 0 4px #3b82f633}.tutor-login-button:disabled{opacity:.5;cursor:not-allowed}.tutor-login-button-bg{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to right,#eff6ff80,#e0e7ff80);border-radius:.75rem;opacity:0;transition:opacity .2s ease}.tutor-login-button:hover .tutor-login-button-bg{opacity:1}.tutor-login-button-content{position:relative;display:flex;align-items:center;gap:.75rem}.tutor-login-button-spinner{width:1.25rem;height:1.25rem;animation:spin 1s linear infinite;color:#2563eb}.tutor-login-google-icon{width:1.25rem;height:1.25rem}.tutor-login-footer{margin-top:2rem;padding-top:1.5rem;border-top:1px solid #f3f4f6}.tutor-login-footer-content{text-align:center}.tutor-login-footer-text{font-size:.875rem;color:#6b7280;line-height:1.6}.tutor-login-footer-subtext{font-size:.75rem;color:#9ca3af;margin-top:.5rem}.tutor-login-branding{text-align:center;margin-top:1.5rem}.tutor-login-branding-text{font-size:.75rem;color:#9ca3af;font-weight:500}.chat-history-viewer{max-width:100%;margin:0 auto;padding:20px;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a}.chat-history-header{margin-bottom:30px;text-align:center}.chat-history-header h2{margin:0 0 10px;color:#333;font-size:24px;font-weight:600}.chat-history-header p{margin:0 0 20px;color:#666;font-size:14px}.refresh-button{background:#3b82f6;color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .2s}.refresh-button:hover{background:#2563eb}.loading,.error,.empty-state{text-align:center;padding:40px 20px;color:#666}.error{color:#ef4444}.error button{background:#ef4444;color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer;margin-top:10px}.empty-state p{margin:5px 0;font-size:14px}.sessions-list{display:flex;flex-direction:column;gap:15px}.session-card{border:1px solid #e5e7eb;border-radius:8px;padding:20px;background:#f9fafb;transition:all .2s}.session-card:hover{border-color:#d1d5db;background:#f3f4f6;box-shadow:0 2px 8px #0000001a}.session-info h3{margin:0 0 10px;color:#1f2937;font-size:18px;font-weight:600}.session-meta,.session-dates{margin:8px 0;font-size:13px;color:#6b7280;display:flex;flex-wrap:wrap;gap:15px}.session-meta span,.session-dates span{background:#e5e7eb;padding:4px 8px;border-radius:4px;font-weight:500}.session-actions{margin-top:15px;display:flex;gap:10px;justify-content:flex-end}.view-button,.delete-button{padding:8px 16px;border:none;border-radius:6px;cursor:pointer;font-size:13px;font-weight:500;transition:all .2s}.view-button{background:#3b82f6;color:#fff}.view-button:hover{background:#2563eb}.delete-button{background:#ef4444;color:#fff}.delete-button:hover{background:#dc2626}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:8px;max-width:500px;width:90%;max-height:80vh;overflow-y:auto;box-shadow:0 10px 25px #0003}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #e5e7eb}.modal-header h3{margin:0;color:#1f2937;font-size:18px;font-weight:600}.close-button{background:none;border:none;font-size:24px;cursor:pointer;color:#6b7280;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:4px}.close-button:hover{background:#f3f4f6;color:#374151}.modal-body{padding:20px}.modal-body p{margin:10px 0;font-size:14px;color:#374151}.modal-body strong{color:#1f2937;font-weight:600}.modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:20px;border-top:1px solid #e5e7eb}.cancel-button{background:#6b7280;color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .2s}.cancel-button:hover{background:#4b5563}@media (max-width: 768px){.chat-history-viewer{padding:15px}.session-meta,.session-dates{flex-direction:column;gap:8px}.session-actions{flex-direction:column}.modal-content{width:95%;margin:20px}.modal-footer{flex-direction:column}}.demo-manager{max-width:800px;margin:0 auto;padding:24px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.demo-manager-header{text-align:center;margin-bottom:32px;padding-bottom:24px;border-bottom:2px solid #e5e7eb}.demo-manager-header h2{color:#1f2937;margin-bottom:8px;font-size:28px;font-weight:600}.demo-manager-header p{color:#6b7280;font-size:16px;margin:0}.demo-manager-content{display:flex;flex-direction:column;gap:24px}.current-config{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:20px}.current-config h3{color:#1f2937;margin-bottom:16px;font-size:18px;font-weight:600}.config-details{display:grid;gap:8px}.config-details p{margin:0;color:#374151;font-size:14px}.config-details strong{color:#1f2937;font-weight:600}.config-details a{color:#3b82f6;text-decoration:none;margin-left:8px}.config-details a:hover{text-decoration:underline}.upload-section{background:#fff;border:2px dashed #d1d5db;border-radius:8px;padding:24px;text-align:center;transition:border-color .2s ease}.upload-section:hover{border-color:#3b82f6}.upload-section h3{color:#1f2937;margin-bottom:16px;font-size:18px;font-weight:600}.upload-section p{color:#6b7280;margin-bottom:16px;font-size:14px}.file-input{display:none}.upload-button{background:#3b82f6;color:#fff;border:none;border-radius:6px;padding:12px 24px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s ease}.upload-button:hover:not(:disabled){background:#2563eb}.upload-button:disabled{background:#9ca3af;cursor:not-allowed}.status-message{padding:12px 16px;border-radius:6px;font-size:14px;font-weight:500}.status-message.success{background:#d1fae5;color:#065f46;border:1px solid #a7f3d0}.status-message.error{background:#fee2e2;color:#991b1b;border:1px solid #fecaca}.instructions{background:#fef3c7;border:1px solid #fde68a;border-radius:8px;padding:20px}.instructions h3{color:#92400e;margin-bottom:16px;font-size:18px;font-weight:600}.instructions ol{color:#92400e;margin:0;padding-left:20px}.instructions li{margin-bottom:8px;font-size:14px;line-height:1.5}.instructions strong{color:#78350f;font-weight:600}@media (max-width: 768px){.demo-manager{padding:16px}.demo-manager-header h2{font-size:24px}.current-config,.upload-section,.instructions{padding:16px}}.user-filters{display:flex;flex-wrap:wrap;gap:16px;padding:20px;background-color:#fff;border-radius:12px;border:1px solid #e5e7eb;margin-bottom:24px;box-shadow:0 1px 3px #0000000d;position:relative;overflow:hidden}.user-filters:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#f97316,#fb923c)}.user-filters__field{min-width:160px;flex:1}.user-filters__field--search{min-width:280px;flex:2}.user-filters .MuiOutlinedInput-root{border-radius:8px;background-color:#f9fafb}.user-filters .MuiOutlinedInput-root:hover .MuiOutlinedInput-notchedOutline{border-color:#f97316}.user-filters .MuiOutlinedInput-root.Mui-focused .MuiOutlinedInput-notchedOutline{border-color:#f97316;border-width:2px}.user-filters .MuiInputLabel-root.Mui-focused{color:#f97316}.user-filters__actions{display:flex;gap:12px;align-items:flex-end}.user-filters__clear-button{height:40px;border-radius:8px;color:#6b7280;border-color:#e5e7eb}.user-filters__clear-button:hover{background-color:#f3f4f6;border-color:#d1d5db}@media (max-width: 768px){.user-filters{flex-direction:column;padding:16px}.user-filters__field,.user-filters__field--search{min-width:100%}.user-filters__actions{width:100%;justify-content:flex-end;margin-top:8px}}.user-table{background-color:#fff;border-radius:12px;border:1px solid #e5e7eb;overflow:hidden;box-shadow:0 1px 3px #0000000d;position:relative}.user-table:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#f97316,#fb923c);z-index:1}.user-table__tabs{display:flex;gap:4px;padding:16px 20px;background-color:#f3f4f6;border-bottom:1px solid #e5e7eb}.user-table__tab{padding:10px 20px;background:transparent;border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;color:#6b7280;transition:all .2s ease;display:flex;align-items:center;gap:8px}.user-table__tab:hover{color:#1f2937;background-color:#ffffff80}.user-table__tab--active{color:#f97316;background-color:#fff;box-shadow:0 1px 3px #0000001a}.user-table__tab-count{padding:2px 8px;background-color:#e5e7eb;border-radius:12px;font-size:12px;font-weight:600;color:#4b5563}.user-table__tab--active .user-table__tab-count{background-color:#ffedd5;color:#ea580c}.user-table__header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background-color:#fff;border-bottom:1px solid #e5e7eb}.user-table__title{font-size:16px;font-weight:600;color:#1f2937;margin:0}.user-table__count{font-size:14px;color:#6b7280;font-weight:400;margin-left:8px}.user-table__actions{display:flex;gap:12px}.user-table__actions .MuiButton-outlined{border-color:#e5e7eb;color:#4b5563;border-radius:8px}.user-table__actions .MuiButton-outlined:hover{border-color:#d1d5db;background-color:#f9fafb}.user-table__actions .MuiButton-contained{background-color:#f97316;border-radius:8px;box-shadow:0 1px 2px #f973164d}.user-table__actions .MuiButton-contained:hover{background-color:#ea580c}.user-table__container{overflow-x:auto}.user-table__table{width:100%;border-collapse:collapse}.user-table__table th,.user-table__table td{padding:14px 20px;text-align:left;border-bottom:1px solid #e5e7eb}.user-table__table th{background-color:#f9fafb;font-weight:600;font-size:12px;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.user-table__table td{font-size:14px;color:#1f2937}.user-table__table tbody tr{transition:background-color .15s ease}.user-table__table tbody tr:hover{background-color:#f9fafb}.user-table__table tbody tr:last-child td{border-bottom:none}.user-table__email{font-weight:500;color:#1f2937}.user-table__name{color:#6b7280;font-size:13px;margin-top:2px}.user-table__badge{display:inline-block;padding:4px 10px;border-radius:6px;font-size:12px;font-weight:500;text-transform:capitalize}.user-table__badge--role-student{background-color:#dbeafe;color:#1d4ed8}.user-table__badge--role-teacher{background-color:#d1fae5;color:#047857}.user-table__badge--role-tutor{background-color:#fef3c7;color:#b45309}.user-table__badge--role-admin{background-color:#ede9fe;color:#6d28d9}.user-table__badge--role-super-admin{background-color:#fce7f3;color:#be185d}.user-table__badge--role-staff{background-color:#e0e7ff;color:#4338ca}.user-table__badge--status-active{background-color:#d1fae5;color:#047857}.user-table__badge--status-paused{background-color:#fef3c7;color:#b45309}.user-table__badge--status-completed{background-color:#dbeafe;color:#1d4ed8}.user-table__badge--status-deleted{background-color:#fee2e2;color:#b91c1c}.user-table__badge--tier{background-color:#f3f4f6;color:#4b5563}.user-table__row-actions{display:flex;gap:4px}.user-table__row-action{padding:6px;border-radius:6px;background:transparent;border:none;cursor:pointer;color:#6b7280;transition:all .15s ease}.user-table__row-action:hover{background-color:#f3f4f6;color:#1f2937}.user-table__row-action--danger:hover{background-color:#fee2e2;color:#b91c1c}.user-table__row-action--success:hover{background-color:#d1fae5;color:#047857}.user-table__empty{padding:64px 24px;text-align:center;color:#6b7280}.user-table__empty-icon{margin-bottom:16px;color:#d1d5db}.user-table__empty-text{font-size:15px;color:#6b7280;max-width:320px;margin:0 auto;line-height:1.5}.user-table__loading{display:flex;justify-content:center;align-items:center;padding:64px 24px}.user-table__load-more{display:flex;justify-content:center;padding:20px;border-top:1px solid #e5e7eb;background-color:#f9fafb}.user-table__load-more .MuiButton-root{border-radius:8px}.user-table__error{padding:20px;background-color:#fef2f2;color:#b91c1c;text-align:center;font-size:14px;font-weight:500}@media (max-width: 1024px){.user-table__table th,.user-table__table td{padding:12px 16px}}@media (max-width: 768px){.user-table__tabs{padding:12px 16px}.user-table__tab{padding:8px 16px;font-size:13px}.user-table__header{flex-direction:column;align-items:flex-start;gap:12px;padding:16px}.user-table__actions{width:100%;justify-content:flex-start}}.MuiDialog-paper{border-radius:12px!important;box-shadow:0 20px 50px #00000026!important}.user-edit-modal__title{display:flex;align-items:center;gap:10px;font-size:18px;font-weight:600;color:#1f2937;padding:20px 24px;border-bottom:1px solid #e5e7eb;background-color:#f9fafb}.user-edit-modal__title svg{color:#f97316}.user-edit-modal__content{display:flex;flex-direction:column;gap:20px;padding:24px;min-width:480px;background-color:#fff}.user-edit-modal__email{padding:14px 16px;background-color:#f9fafb;border-radius:10px;border:1px solid #e5e7eb;margin-top:8px}.user-edit-modal__email-label{font-size:11px;font-weight:500;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.user-edit-modal__email-value{font-size:14px;font-weight:500;color:#1f2937}.user-edit-modal__field{width:100%}.user-edit-modal__row{display:flex;gap:16px}.user-edit-modal__row>*{flex:1}.user-edit-modal__section-title{font-size:13px;font-weight:600;color:#374151;margin-bottom:8px;margin-top:8px}.user-edit-modal__tag-input-row{display:flex;gap:8px}.user-edit-modal__tag-input{flex:1}.user-edit-modal__chip-container{display:flex;flex-wrap:wrap;gap:4px}.user-edit-modal__tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.user-edit-modal__tag{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;background-color:#ffedd5;border-radius:6px;font-size:12px;font-weight:500;color:#c2410c}.user-edit-modal__tag-remove{background:transparent;border:none;cursor:pointer;padding:0;display:flex;align-items:center;color:#f97316;transition:color .15s ease}.user-edit-modal__tag-remove:hover{color:#dc2626}.user-edit-modal__actions{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #e5e7eb;background-color:#f9fafb}.user-edit-modal__actions .MuiButton-outlined{border-color:#e5e7eb;color:#4b5563;border-radius:8px}.user-edit-modal__actions .MuiButton-outlined:hover{border-color:#d1d5db;background-color:#fff}.user-edit-modal__actions .MuiButton-contained{background-color:#f97316;border-radius:8px;box-shadow:0 1px 2px #f973164d}.user-edit-modal__actions .MuiButton-contained:hover{background-color:#ea580c}.user-edit-modal__error{padding:12px 16px;margin-top:8px;background-color:#fef2f2;color:#b91c1c;border-radius:8px;font-size:14px;font-weight:500;border:1px solid #fecaca}.user-edit-modal__admin-section{padding:16px;background-color:#fef3c7;border-radius:10px;border:1px solid #fcd34d}.user-edit-modal__admin-warning{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:500;color:#92400e;margin-bottom:12px}.user-edit-modal__admin-warning svg{color:#d97706}.user-edit-modal__content .MuiOutlinedInput-root{border-radius:8px}.user-edit-modal__content .MuiOutlinedInput-root:hover .MuiOutlinedInput-notchedOutline{border-color:#f97316}.user-edit-modal__content .MuiOutlinedInput-root.Mui-focused .MuiOutlinedInput-notchedOutline{border-color:#f97316;border-width:2px}.user-edit-modal__content .MuiInputLabel-root.Mui-focused{color:#f97316}.user-edit-modal__students-section{border:1px solid #e5e7eb;border-radius:10px;overflow:hidden}.user-edit-modal__students-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:14px 16px;background-color:#f9fafb;border:none;cursor:pointer;transition:background-color .15s ease}.user-edit-modal__students-toggle:hover{background-color:#f3f4f6}.user-edit-modal__students-toggle-left{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:600;color:#374151}.user-edit-modal__students-toggle-left svg{color:#f97316}.user-edit-modal__students-pending-badge{padding:2px 8px;background-color:#dbeafe;color:#1d4ed8;border-radius:12px;font-size:11px;font-weight:600}.user-edit-modal__students-toggle-right{display:flex;align-items:center;gap:8px;color:#6b7280}.user-edit-modal__students-count{font-size:13px;font-weight:500}.user-edit-modal__students-content{border-top:1px solid #e5e7eb;padding:16px;background-color:#fff;max-height:400px;overflow-y:auto}.user-edit-modal__students-loading{display:flex;align-items:center;justify-content:center;gap:10px;padding:24px;color:#6b7280;font-size:14px}.user-edit-modal__students-error{padding:12px 16px;background-color:#fef2f2;color:#b91c1c;border-radius:8px;font-size:13px;border:1px solid #fecaca}.user-edit-modal__students-group{margin-bottom:16px}.user-edit-modal__students-group:last-child{margin-bottom:0}.user-edit-modal__students-group-title{font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid #f3f4f6}.user-edit-modal__students-empty{padding:12px 16px;color:#9ca3af;font-size:13px;font-style:italic;text-align:center;background-color:#f9fafb;border-radius:8px}.user-edit-modal__students-list{display:flex;flex-direction:column;gap:4px}.user-edit-modal__student-item{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:8px;cursor:pointer;transition:background-color .15s ease}.user-edit-modal__student-item:hover{background-color:#f9fafb}.user-edit-modal__student-item--assigned{background-color:#fff}.user-edit-modal__student-item--pending-add{background-color:#dcfce7}.user-edit-modal__student-item--pending-add:hover{background-color:#bbf7d0}.user-edit-modal__student-item--pending-remove{background-color:#fef3c7}.user-edit-modal__student-item--pending-remove:hover{background-color:#fde68a}.user-edit-modal__student-item--available{background-color:#fff}.user-edit-modal__student-info{display:flex;flex-direction:column;flex:1;min-width:0}.user-edit-modal__student-name{font-size:14px;font-weight:500;color:#1f2937;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-edit-modal__student-email{font-size:12px;color:#6b7280;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-edit-modal__student-assigned-to{font-size:11px;color:#9ca3af;font-style:italic}.user-edit-modal__student-badge{padding:2px 8px;border-radius:12px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;white-space:nowrap}.user-edit-modal__student-badge--add{background-color:#dcfce7;color:#15803d}.user-edit-modal__student-badge--remove{background-color:#fef3c7;color:#b45309}@media (max-width: 600px){.user-edit-modal__content{min-width:auto;width:100%}.user-edit-modal__row{flex-direction:column;gap:20px}.user-edit-modal__students-content{max-height:300px}.user-edit-modal__student-badge{font-size:9px;padding:2px 6px}}.pending-user-create-modal__title{display:flex;align-items:center;gap:8px;font-size:18px;font-weight:600;color:#1c1917}.pending-user-create-modal__content{display:flex;flex-direction:column;gap:20px;padding:20px 24px;min-width:480px}.pending-user-create-modal__description{font-size:14px;color:#57534e;line-height:1.5;margin:0}.pending-user-create-modal__field{width:100%}.pending-user-create-modal__row{display:flex;gap:16px}.pending-user-create-modal__row>*{flex:1}.pending-user-create-modal__actions{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #e7e5e4}.pending-user-create-modal__error{padding:12px;background-color:#fee2e2;color:#991b1b;border-radius:4px;font-size:14px}.pending-user-create-modal__info{padding:12px;background-color:#dbeafe;color:#1e40af;border-radius:4px;font-size:13px;display:flex;align-items:flex-start;gap:8px}.pending-user-create-modal__info-icon{flex-shrink:0;margin-top:2px}@media (max-width: 600px){.pending-user-create-modal__content{min-width:auto;width:100%}.pending-user-create-modal__row{flex-direction:column;gap:20px}}.bulk-import-modal__title{display:flex;align-items:center;gap:8px;font-size:18px;font-weight:600;color:#1c1917}.bulk-import-modal__content{display:flex;flex-direction:column;gap:20px;padding:20px 24px;min-width:600px}.bulk-import-modal__description{font-size:14px;color:#57534e;line-height:1.5;margin:0}.bulk-import-modal__mode-toggle{display:flex;gap:8px;padding:4px;background-color:#fafaf9;border-radius:8px;width:-moz-fit-content;width:fit-content}.bulk-import-modal__paste-area{margin:8px 0}.bulk-import-modal__paste-textarea{width:100%;padding:12px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:13px;line-height:1.5;border:1px solid #d4d4d8;border-radius:6px;resize:vertical;outline:none;background-color:#fafaf9;transition:border-color .2s,background-color .2s}.bulk-import-modal__paste-textarea:focus{border-color:#f97316;background-color:#fff}.bulk-import-modal__paste-textarea::-moz-placeholder{color:#a8a29e}.bulk-import-modal__paste-textarea::placeholder{color:#a8a29e}.bulk-import-modal__upload-area{padding:32px;border:2px dashed #d6d3d1;border-radius:8px;text-align:center;cursor:pointer;transition:border-color .2s,background-color .2s}.bulk-import-modal__upload-area:hover{border-color:#a8a29e;background-color:#fafaf9}.bulk-import-modal__upload-area--active{border-color:#f97316;background-color:#fff7ed}.bulk-import-modal__upload-icon{color:#a8a29e;margin-bottom:8px}.bulk-import-modal__upload-text{font-size:14px;color:#57534e;margin:0}.bulk-import-modal__upload-hint{font-size:12px;color:#a8a29e;margin:4px 0 0}.bulk-import-modal__file-selected{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px;background-color:#dcfce7;border-radius:8px;color:#166534;font-size:14px}.bulk-import-modal__format{background-color:#fafaf9;border:1px solid #e7e5e4;border-radius:8px;padding:16px}.bulk-import-modal__format-title{font-size:13px;font-weight:600;color:#57534e;margin:0 0 8px}.bulk-import-modal__format-example{font-family:monospace;font-size:12px;color:#1c1917;background-color:#fff;padding:12px;border-radius:4px;overflow-x:auto;white-space:pre;margin:0}.bulk-import-modal__format-note{font-size:12px;color:#78716c;margin:8px 0 0}.bulk-import-modal__preview{border:1px solid #e7e5e4;border-radius:8px;overflow:hidden}.bulk-import-modal__preview-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background-color:#fafaf9;border-bottom:1px solid #e7e5e4}.bulk-import-modal__preview-title{font-size:14px;font-weight:600;color:#1c1917;margin:0}.bulk-import-modal__preview-count{font-size:13px;color:#78716c}.bulk-import-modal__preview-table{width:100%;border-collapse:collapse;font-size:13px}.bulk-import-modal__preview-table th,.bulk-import-modal__preview-table td{padding:8px 12px;text-align:left;border-bottom:1px solid #e7e5e4}.bulk-import-modal__preview-table th{background-color:#fafaf9;font-weight:600;color:#57534e}.bulk-import-modal__preview-table tr:last-child td{border-bottom:none}.bulk-import-modal__preview-scroll{max-height:200px;overflow-y:auto}.bulk-import-modal__results{padding:16px;border-radius:8px}.bulk-import-modal__results--success{background-color:#dcfce7;color:#166534}.bulk-import-modal__results--error{background-color:#fee2e2;color:#991b1b}.bulk-import-modal__results-title{font-size:14px;font-weight:600;margin:0 0 8px}.bulk-import-modal__results-summary{font-size:14px;margin:0 0 8px}.bulk-import-modal__results-errors{margin:8px 0 0;padding-left:20px;font-size:13px}.bulk-import-modal__actions{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 24px;border-top:1px solid #e7e5e4}.bulk-import-modal__actions-left{display:flex;align-items:center;gap:8px}.bulk-import-modal__actions-right{display:flex;gap:12px}.bulk-import-modal__error{padding:12px;background-color:#fee2e2;color:#991b1b;border-radius:4px;font-size:14px}@media (max-width: 768px){.bulk-import-modal__content{min-width:auto;width:100%}}.assign-teacher-modal__title{display:flex;align-items:center;gap:8px;font-size:18px;font-weight:600;color:#1c1917}.assign-teacher-modal__content{display:flex;flex-direction:column;gap:20px;padding:20px 24px;min-width:400px}.assign-teacher-modal__user-info{padding:12px 16px;background-color:#fafaf9;border-radius:8px;border:1px solid #e7e5e4}.assign-teacher-modal__user-label{font-size:12px;color:#78716c;margin-bottom:4px}.assign-teacher-modal__user-name{font-size:14px;font-weight:500;color:#1c1917}.assign-teacher-modal__user-email{font-size:13px;color:#57534e}.assign-teacher-modal__field{width:100%}.assign-teacher-modal__current{display:flex;align-items:center;gap:8px;padding:12px;background-color:#dbeafe;border-radius:8px;font-size:14px;color:#1e40af}.assign-teacher-modal__current-icon{flex-shrink:0}.assign-teacher-modal__actions{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #e7e5e4}.assign-teacher-modal__error{padding:12px;background-color:#fee2e2;color:#991b1b;border-radius:4px;font-size:14px}.assign-teacher-modal__empty{padding:16px;text-align:center;color:#78716c;font-size:14px}.assign-teacher-modal__teacher-email{margin-left:8px;color:#78716c;font-size:12px}@media (max-width: 480px){.assign-teacher-modal__content{min-width:auto;width:100%}}.user-management-page{min-height:100vh;background-color:#f9fafb}.user-management-page--embedded{min-height:auto;background-color:transparent}.user-management-page--embedded .user-management-page__content{padding:24px}.user-management-page__brand-header{background:#fff;padding:24px 32px;margin-bottom:0;border-bottom:1px solid #e5e7eb;position:relative}.user-management-page__brand-header:after{content:"";position:absolute;bottom:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#f97316,#fb923c,#fdba74)}.user-management-page__brand-header .user-management-page__title,.user-management-page__brand-header .user-management-page__title-icon{color:#f97316}.user-management-page__brand-header .user-management-page__subtitle{color:#6b7280}.user-management-page__content{padding:32px}.user-management-page__container{max-width:1400px;margin:0 auto}.user-management-page__header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:32px}.user-management-page__header-left{display:flex;flex-direction:column;gap:4px}.user-management-page__title{display:flex;align-items:center;gap:12px;font-size:28px;font-weight:700;color:#1f2937;margin:0}.user-management-page__title-icon{color:#f97316}.user-management-page__subtitle{font-size:15px;color:#6b7280;margin:0}.user-management-page__header-actions{display:flex;gap:12px}.user-management-page__loading{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:120px 24px;gap:20px}.user-management-page__loading-text{font-size:15px;color:#6b7280}.user-management-page__error{max-width:480px;margin:80px auto;padding:32px;background-color:#fff;border-radius:16px;border:1px solid #e5e7eb;text-align:center;box-shadow:0 1px 3px #00000014}.user-management-page__error-icon{color:#ef4444;margin-bottom:16px}.user-management-page__error-title{font-size:20px;font-weight:600;color:#1f2937;margin:0 0 8px}.user-management-page__error-message{font-size:15px;color:#6b7280;margin:0 0 20px}.user-management-page__access-denied{max-width:480px;margin:80px auto;padding:40px;background-color:#fff;border-radius:16px;border:1px solid #e5e7eb;text-align:center;box-shadow:0 1px 3px #00000014}.user-management-page__access-denied-icon{color:#ef4444;margin-bottom:20px}.user-management-page__access-denied-title{font-size:22px;font-weight:600;color:#1f2937;margin:0 0 8px}.user-management-page__access-denied-message{font-size:15px;color:#6b7280;margin:0 0 28px;line-height:1.5}.user-management-page__toast{position:fixed;bottom:24px;right:24px;padding:14px 24px;border-radius:12px;font-size:14px;font-weight:500;box-shadow:0 8px 24px #00000026;z-index:1000;animation:slideIn .3s ease-out}.user-management-page__toast--success{background-color:#059669;color:#fff}.user-management-page__toast--error{background-color:#dc2626;color:#fff}@keyframes slideIn{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@media (max-width: 768px){.user-management-page{padding:20px}.user-management-page__header{flex-direction:column;align-items:flex-start;gap:20px}.user-management-page__title{font-size:22px}.user-management-page__header-actions{width:100%;justify-content:flex-start}}.prompt-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;transition:box-shadow .2s}.prompt-card:hover{box-shadow:0 2px 8px #0000000f}.prompt-card__header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:#fafafa;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:background-color .15s}.prompt-card__header:hover{background:#f3f4f6}.prompt-card__header-left{display:flex;align-items:center;gap:12px}.prompt-card__expand-icon{width:20px;height:20px;color:#6b7280;transition:transform .2s}.prompt-card__expand-icon--expanded{transform:rotate(90deg)}.prompt-card__title-group{display:flex;align-items:center;gap:10px}.prompt-card__title{font-size:15px;font-weight:600;color:#1f2937;margin:0}.prompt-card__version{display:inline-block;padding:2px 8px;font-size:11px;font-weight:600;color:#c2410c;background:#ffedd5;border-radius:4px}.prompt-card__actions{display:flex;align-items:center;gap:8px}.prompt-card__tools-badge{padding:4px 10px;font-size:12px;font-weight:500;color:#c2410c;background:#fff7ed;border-radius:6px}.prompt-card__action-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:transparent;border:none;border-radius:6px;color:#6b7280;cursor:pointer;transition:background-color .15s,color .15s}.prompt-card__action-btn:hover{background:#e5e7eb;color:#374151}.prompt-card__action-btn--active{background:#ffedd5;color:#ea580c}.prompt-card__action-btn:disabled{opacity:.5;cursor:not-allowed}.prompt-card__action-icon{width:18px;height:18px}.prompt-card__copied-text{font-size:12px;color:#059669;font-weight:500}.prompt-card__description{padding:12px 20px;font-size:13px;color:#6b7280;background:#fff;border-top:1px solid #f3f4f6}.prompt-card__history{padding:16px 20px;background:#f9fafb;border-top:1px solid #e5e7eb}.prompt-card__history-title{font-size:13px;font-weight:600;color:#374151;margin:0 0 12px}.prompt-card__history-empty{font-size:13px;color:#9ca3af}.prompt-card__history-list{display:flex;flex-direction:column;gap:8px;max-height:200px;overflow-y:auto}.prompt-card__history-item{display:flex;align-items:flex-start;gap:12px;font-size:13px}.prompt-card__history-item--latest{color:#1f2937}.prompt-card__history-item:not(.prompt-card__history-item--latest){color:#6b7280}.prompt-card__commit-hash{font-family:SF Mono,Monaco,Inconsolata,Fira Code,monospace;font-size:11px;padding:2px 6px;background:#e5e7eb;border-radius:4px;color:#374151;flex-shrink:0}.prompt-card__commit-message{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.prompt-card__commit-date{color:#9ca3af;white-space:nowrap;flex-shrink:0}.prompt-card__content{padding:20px;border-top:1px solid #e5e7eb}.prompt-card__tools{margin-bottom:16px}.prompt-card__tools-label{font-size:11px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}.prompt-card__tools-list{display:flex;flex-wrap:wrap;gap:6px}.prompt-card__tool-tag{display:inline-block;padding:4px 10px;font-family:SF Mono,Monaco,Inconsolata,Fira Code,monospace;font-size:12px;color:#c2410c;background:#fff7ed;border:1px solid #fed7aa;border-radius:6px}.prompt-card__file-path{margin-bottom:16px}.prompt-card__file-path-label{font-size:11px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;margin-right:8px}.prompt-card__file-path-value{font-family:SF Mono,Monaco,Inconsolata,Fira Code,monospace;font-size:12px;color:#4b5563;background:#f3f4f6;padding:4px 10px;border-radius:4px}.prompt-card__code-container{position:relative}.prompt-card__code{margin:0;padding:20px;background:#1f2937;color:#e5e7eb;border-radius:8px;font-family:SF Mono,Monaco,Inconsolata,Fira Code,monospace;font-size:13px;line-height:1.6;overflow-x:auto;max-height:500px;overflow-y:auto;white-space:pre-wrap;word-break:break-word}.prompt-card__code::-webkit-scrollbar{width:8px;height:8px}.prompt-card__code::-webkit-scrollbar-track{background:#374151;border-radius:4px}.prompt-card__code::-webkit-scrollbar-thumb{background:#6b7280;border-radius:4px}.prompt-card__code::-webkit-scrollbar-thumb:hover{background:#9ca3af}.prompt-viewer-page{min-height:100vh;background-color:#f9fafb}.prompt-viewer-page__brand-header{background-color:#fff;padding:24px 32px;border-bottom:1px solid #e5e7eb;position:relative}.prompt-viewer-page__brand-header:after{content:"";position:absolute;bottom:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#f97316,#fb923c,#fdba74)}.prompt-viewer-page__container{max-width:1400px;margin:0 auto}.prompt-viewer-page__header{display:flex;justify-content:space-between;align-items:flex-start}.prompt-viewer-page__header-left{display:flex;flex-direction:column;gap:4px}.prompt-viewer-page__title{display:flex;align-items:center;gap:12px;font-size:28px;font-weight:700;color:#1f2937;margin:0}.prompt-viewer-page__title-icon{color:#f97316}.prompt-viewer-page__subtitle{font-size:15px;color:#6b7280;margin:0}.prompt-viewer-page__header-actions{display:flex;gap:12px;align-items:center}.prompt-viewer-page__search{position:relative}.prompt-viewer-page__search-input{width:280px;padding:10px 16px 10px 42px;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;background:#fff;transition:border-color .2s,box-shadow .2s}.prompt-viewer-page__search-input:focus{outline:none;border-color:#f97316;box-shadow:0 0 0 3px #f973161a}.prompt-viewer-page__search-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#9ca3af}.prompt-viewer-page__tabs{display:flex;justify-content:center;gap:4px;padding:0 32px;background:#fff;border-bottom:1px solid #e5e7eb}.prompt-viewer-page__tab{display:flex;align-items:center;gap:8px;padding:14px 20px;font-size:14px;font-weight:500;color:#6b7280;background:transparent;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:color .2s,border-color .2s}.prompt-viewer-page__tab:hover{color:#374151}.prompt-viewer-page__tab--active{color:#f97316;border-bottom-color:#f97316}.prompt-viewer-page__tab-icon{width:18px;height:18px}.prompt-viewer-page__content{padding:32px}.prompt-viewer-page__agent-info{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:20px 24px;margin-bottom:24px}.prompt-viewer-page__agent-name{font-size:18px;font-weight:600;color:#1f2937;margin:0 0 6px}.prompt-viewer-page__agent-description{font-size:14px;color:#6b7280;margin:0}.prompt-viewer-page__prompt-list{display:flex;flex-direction:column;gap:16px;max-width:1400px;margin:0 auto}.prompt-viewer-page__empty{text-align:center;padding:60px 24px;color:#6b7280}.prompt-viewer-page__empty-icon{color:#d1d5db;margin-bottom:16px}.prompt-viewer-page__empty-text{font-size:15px;margin:0}.prompt-viewer-page__error{background:#fef2f2;border:1px solid #fecaca;border-radius:12px;padding:16px 20px;margin-bottom:24px;max-width:1400px;margin-left:auto;margin-right:auto}.prompt-viewer-page__error-header{display:flex;align-items:center;gap:8px;color:#dc2626;font-weight:500;margin-bottom:4px}.prompt-viewer-page__error-message{font-size:14px;color:#b91c1c;margin:0}.prompt-viewer-page__loading{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:80px 24px;gap:16px}.prompt-viewer-page__loading-text{font-size:15px;color:#6b7280}.prompt-viewer-page__access-denied{max-width:480px;margin:80px auto;padding:40px;background-color:#fff;border-radius:16px;border:1px solid #e5e7eb;text-align:center;box-shadow:0 1px 3px #00000014}.prompt-viewer-page__access-denied-icon{font-size:48px;margin-bottom:16px}.prompt-viewer-page__access-denied-title{font-size:22px;font-weight:600;color:#1f2937;margin:0 0 8px}.prompt-viewer-page__access-denied-message{font-size:15px;color:#6b7280;margin:0 0 24px;line-height:1.5}.prompt-viewer-page__skeleton{height:80px;background:linear-gradient(90deg,#f3f4f6 25%,#e5e7eb,#f3f4f6 75%);background-size:200% 100%;border-radius:12px;animation:shimmer 1.5s infinite}@media (max-width: 768px){.prompt-viewer-page__brand-header{padding:20px}.prompt-viewer-page__header{flex-direction:column;gap:16px}.prompt-viewer-page__search-input{width:100%}.prompt-viewer-page__tabs{padding:0 20px;overflow-x:auto}.prompt-viewer-page__content{padding:20px}.prompt-viewer-page__title{font-size:22px}}.paywall-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:10000;display:flex;align-items:center;justify-content:center;animation:fadeIn .3s ease}.paywall-backdrop{position:absolute;top:0;left:0;right:0;bottom:0;background:#000c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.paywall-content{position:relative;background:#fff;border-radius:20px;box-shadow:0 25px 50px -12px #00000040;max-width:700px;width:90%;max-height:90vh;overflow-y:auto;animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.paywall-header{text-align:center;padding:40px 40px 24px;border-bottom:1px solid #f3f4f6}.paywall-icon{font-size:48px;margin-bottom:16px}.paywall-header h2{margin:0 0 12px;font-size:28px;font-weight:800;color:#1f2937}.paywall-subtitle{margin:0 0 16px;color:#6b7280;font-size:18px;line-height:1.5}.paywall-value-prop{background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #f59e0b;border-radius:12px;padding:16px;margin:0;color:#92400e;font-size:16px;font-weight:600;line-height:1.4}.paywall-body{padding:32px 40px}.trial-summary{margin-bottom:32px}.trial-summary h3{margin:0 0 20px;font-size:20px;font-weight:700;color:#1f2937;display:flex;align-items:center;gap:8px}.trial-summary h3:before{content:"✨";font-size:24px}.feature-list{list-style:none;padding:0;margin:0 0 24px}.feature-item{display:flex;align-items:center;gap:12px;padding:12px 0;font-size:16px;color:#374151;line-height:1.4}.feature-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border-radius:50%;font-size:14px;font-weight:700}.tutoring-comparison{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;border-radius:12px;padding:24px;margin-top:24px}.tutoring-comparison h4{margin:0 0 16px;font-size:18px;font-weight:700;color:#1f2937;text-align:center}.comparison-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.comparison-item{text-align:center;padding:16px;border-radius:8px;background:#fff;border:1px solid #e5e7eb}.comparison-label{display:block;font-size:14px;font-weight:600;color:#6b7280;margin-bottom:8px}.comparison-value{display:block;font-size:18px;font-weight:700;color:#1f2937}.comparison-item:first-child .comparison-value{color:#dc2626}.comparison-item:last-child .comparison-value{color:#10b981}.pricing-info{margin-bottom:32px}.price-card{border:2px solid #e5e7eb;border-radius:16px;padding:32px;text-align:center;position:relative;background:linear-gradient(135deg,#f8fafc,#f1f5f9)}.price-header{margin-bottom:24px}.price-header h3{margin:0 0 8px;font-size:24px;font-weight:700;color:#1f2937}.price-subtitle{margin:0 0 24px;font-size:16px;color:#6b7280;line-height:1.5}.upgrade-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:16px 32px;border-radius:12px;font-size:18px;font-weight:700;cursor:pointer;transition:all .3s ease;margin-bottom:20px;display:inline-block;text-decoration:none}.upgrade-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #667eea66}.upgrade-button:disabled{opacity:.7;cursor:not-allowed;transform:none}.payment-info{font-size:14px;color:#6b7280;line-height:1.6;margin:0}.payment-info strong{color:#1f2937}.paywall-footer{padding:24px 40px 40px;text-align:center;border-top:1px solid #f3f4f6}.paywall-footer-text{margin:0;font-size:14px;color:#6b7280;line-height:1.5}.paywall-footer-text a{color:#667eea;text-decoration:none;font-weight:600}.paywall-footer-text a:hover{text-decoration:underline}@media (max-width: 768px){.paywall-content{margin:0;border-radius:20px 20px 0 0;max-height:95vh}.paywall-header,.paywall-body,.paywall-footer{padding-left:24px;padding-right:24px}.comparison-grid{grid-template-columns:1fr;gap:16px}.paywall-header h2{font-size:24px}.paywall-subtitle{font-size:16px}}@media (max-width: 480px){.paywall-header,.paywall-body,.paywall-footer{padding-left:20px;padding-right:20px}.paywall-header{padding-top:32px}.paywall-footer{padding-bottom:32px}.upgrade-button{width:100%;padding:16px 24px}}.mobile-chat-page{width:100vw;height:100vh;height:100dvh;height:calc(100vh - env(safe-area-inset-top) - env(safe-area-inset-bottom));position:fixed;top:0;left:0;background:#fff;z-index:1000;max-height:100vh;max-height:100dvh;display:flex;flex-direction:column}.mobile-chat-header{display:flex!important;align-items:center;padding:12px 16px;border-bottom:1px solid #e5e7eb;flex-shrink:0;height:56px;box-sizing:border-box;position:relative;z-index:1001;width:100%;transition:background .3s ease}.mobile-chat-header.socrato-theme{background:linear-gradient(135deg,#fff5f5,#d79090)!important}.mobile-chat-header.stride-theme{background:linear-gradient(135deg,#fff7ed,#fdba74)!important}.hamburger-menu-button{display:flex!important;align-items:center;justify-content:center;width:40px;height:40px;background:transparent;border:none;border-radius:8px;cursor:pointer;transition:background-color .2s ease;color:#374151;margin-right:12px;position:relative;z-index:1002}.hamburger-menu-button:hover{background-color:#f3f4f6}.hamburger-menu-button:active{transform:scale(.95)}.mobile-header-center{flex:1;display:flex;align-items:center;justify-content:center}.mobile-header-right{display:flex;align-items:center;min-width:52px;justify-content:flex-end}.mobile-mode-dropdown .dropdown-trigger{background:transparent;border:none;padding:8px 12px;border-radius:8px;transition:background-color .2s ease}.mobile-mode-dropdown .dropdown-trigger:hover{background-color:#f3f4f6}.mobile-mode-dropdown .trigger-content{display:flex;align-items:center;gap:8px}.mobile-mode-dropdown .mode-label{font-size:16px;font-weight:600;color:#111827}.mobile-mode-dropdown .mode-icon{font-size:18px}.mobile-mode-dropdown .dropdown-arrow{color:#6b7280}.mobile-chat-fullscreen{width:100%!important;flex:1!important;height:auto!important;border-radius:0!important;border:none!important;box-shadow:none!important;overflow:hidden;margin-top:0;padding-top:0}.mobile-chat-fullscreen .modern-chat-content{padding-top:24px}.mobile-chat-fullscreen .messages-container{padding-top:16px;margin-top:0}.mobile-chat-fullscreen .chat-window{padding-top:8px}.mobile-chat-fullscreen .message:first-child,.mobile-chat-fullscreen .bot-message:first-child,.mobile-chat-fullscreen .user-message:first-child{margin-top:20px!important}.mobile-chat-fullscreen .chat-messages,.mobile-chat-fullscreen .messages-list{padding-top:20px!important}.mobile-chat-fullscreen .toolbar{display:none!important}.mobile-auth-container{width:100vw;height:100vh;height:100dvh;height:calc(100vh - env(safe-area-inset-top) - env(safe-area-inset-bottom));display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px;box-sizing:border-box;max-height:100vh;max-height:100dvh}.mobile-chat-loading{width:100vw;height:100vh;height:100dvh;height:calc(100vh - env(safe-area-inset-top) - env(safe-area-inset-bottom));display:flex;align-items:center;justify-content:center;background:#fff;max-height:100vh;max-height:100dvh}.loading-spinner{display:flex;flex-direction:column;align-items:center;gap:20px}.loading-text{font-size:16px;color:#666;font-weight:500}.mobile-chat-page{overflow:hidden!important;height:100%!important;position:fixed!important}.mobile-auto-analysis-toggle{position:fixed;bottom:20px;left:50%;transform:translate(-50%);padding:12px 16px;background:linear-gradient(135deg,#ef44441a,#ef444426);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:12px;border:1px solid rgba(239,68,68,.3);box-shadow:0 4px 12px #0000001a;z-index:1002;max-width:90%;width:auto;transition:all .3s ease}.mobile-chat-page.analysis-enabled .mobile-auto-analysis-toggle{background:linear-gradient(135deg,#22c55e1a,#22c55e26);border-color:#22c55e4d}.mobile-auto-analysis-toggle .toggle-label{display:flex;align-items:center;gap:12px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.mobile-auto-analysis-toggle .toggle-input{position:absolute;opacity:0;width:0;height:0}.mobile-auto-analysis-toggle .toggle-slider{position:relative;display:inline-block;width:44px;height:24px;background-color:#e5e7eb;border-radius:12px;transition:background-color .3s ease}.mobile-auto-analysis-toggle .toggle-slider:after{content:"";position:absolute;width:18px;height:18px;left:3px;top:3px;background-color:#fff;border-radius:50%;transition:transform .3s ease;box-shadow:0 2px 4px #00000026}.mobile-auto-analysis-toggle .toggle-input:checked+.toggle-slider{background-color:#22c55e}.mobile-auto-analysis-toggle .toggle-input:checked+.toggle-slider:after{transform:translate(20px)}.mobile-auto-analysis-toggle .toggle-text{font-size:13px;font-weight:600;color:#1e293b}.mobile-auto-analysis-toggle .toggle-description{margin:8px 0 0 56px;font-size:11px;color:#64748b;line-height:1.4}.pdf-scanner-modal{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:99999;animation:fadeIn .2s ease-out;overflow:hidden}.pdf-scanner-container{background:#fff;border-radius:16px;width:90%;max-width:600px;max-height:90vh;display:flex;flex-direction:column;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.pdf-scanner-header{padding:20px;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:center}.pdf-scanner-header h2{margin:0;font-size:20px;font-weight:600;color:#1f2937}.close-button{background:none;border:none;font-size:24px;color:#6b7280;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:all .2s}.close-button:hover{background:#f3f4f6;color:#1f2937}.pdf-scanner-instructions{padding:16px 20px;background:#f9fafb;border-bottom:1px solid #e5e7eb}.pdf-scanner-instructions p{margin:0;font-size:14px;color:#4b5563;line-height:1.5}.pages-grid{flex:1;overflow-y:auto;padding:20px;display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:16px;min-height:200px}.page-preview{position:relative;aspect-ratio:210 / 297;background:#fff;border:2px solid #e5e7eb;border-radius:8px;overflow:hidden;transition:all .2s}.page-preview:hover{border-color:#667eea;box-shadow:0 4px 12px #667eea26}.page-preview img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;background:#fff}.page-number{position:absolute;top:8px;left:8px;background:#000000b3;color:#fff;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;z-index:1}.remove-page-btn{position:absolute;top:8px;right:8px;background:#ef4444e6;color:#fff;border:none;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transition:opacity .2s;z-index:1}.page-preview:hover .remove-page-btn{opacity:1}.remove-page-btn:hover{background:#dc2626;transform:scale(1.1)}.add-page-card{aspect-ratio:210 / 297;background:#f9fafb;border:2px dashed #d1d5db;border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.add-page-card:hover{border-color:#667eea;background:#f3f4ff}.add-page-icon{font-size:32px;color:#9ca3af;margin-bottom:8px}.add-page-text{font-size:14px;color:#6b7280;font-weight:500}.pdf-scanner-actions{padding:20px;border-top:1px solid #e5e7eb;display:flex;gap:12px;justify-content:flex-end}.cancel-btn,.create-pdf-btn{padding:10px 20px;border-radius:8px;font-size:16px;font-weight:500;cursor:pointer;transition:all .2s;border:none;display:flex;align-items:center;gap:8px}.cancel-btn{background:#f3f4f6;color:#374151}.cancel-btn:hover:not(:disabled){background:#e5e7eb}.create-pdf-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.create-pdf-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #667eea4d}.cancel-btn:disabled,.create-pdf-btn:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 640px){.pdf-scanner-modal{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#000000e6}.pdf-scanner-container{width:100%;height:100%;max-width:100vw;max-height:100vh;border-radius:0;display:flex;flex-direction:column}.pages-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:12px;padding:16px;flex:1;overflow-y:auto}.pdf-scanner-actions{padding:16px}.cancel-btn,.create-pdf-btn{flex:1;justify-content:center}}@media (prefers-color-scheme: dark){.pdf-scanner-container{background:#1f2937}.pdf-scanner-header{border-bottom-color:#374151}.pdf-scanner-header h2{color:#fff}.close-button{color:#9ca3af}.close-button:hover{background:#374151;color:#fff}.pdf-scanner-instructions{background:#111827;border-bottom-color:#374151}.pdf-scanner-instructions p{color:#d1d5db}.page-preview{border-color:#374151;background:#111827}.add-page-card{background:#111827;border-color:#4b5563}.add-page-card:hover{background:#1e1b3d}.pdf-scanner-actions{border-top-color:#374151}.cancel-btn{background:#374151;color:#e5e7eb}.cancel-btn:hover:not(:disabled){background:#4b5563}}.mobile-landing{min-height:100vh;background:linear-gradient(180deg,#fafaf9,#f4f4f0);padding:20px;display:flex;flex-direction:column;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;position:relative}.mobile-landing:before{content:"";position:absolute;top:0;left:0;right:0;height:280px;background:linear-gradient(135deg,#8b0000,#dc143c);z-index:0}.mobile-landing>*{position:relative;z-index:1}.mobile-landing-loading{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#fafaf9}.mobile-landing-header{text-align:center;margin-bottom:40px;color:#fff}.logo-container{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:24px}.app-title{font-size:36px;font-weight:700;margin:0;letter-spacing:-.5px;color:#fff}.mobile-badge{background:#ffffff26;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:5px 14px;border-radius:24px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:1.2px;border:1px solid rgba(255,255,255,.2)}.welcome-message h2{font-size:26px;margin:0 0 12px;font-weight:600;color:#fff;opacity:.95}.instruction-text{font-size:15px;line-height:1.6;opacity:.85;max-width:420px;margin:0 auto;color:#ffffffe6}.upload-actions{display:flex;flex-direction:column;gap:16px;margin-bottom:32px}.upload-card{background:#fff;border-radius:20px;padding:28px;box-shadow:0 1px 3px #0000000a,0 4px 8px #0000000f;transition:all .3s cubic-bezier(.4,0,.2,1);border:1px solid rgba(0,0,0,.06);position:relative;overflow:hidden}.upload-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;transition:all .3s}.upload-card.image-card:before{background:linear-gradient(90deg,#b91c1c,#dc2626,#ef4444)}.upload-card.pdf-card:before{background:linear-gradient(90deg,#ea580c,#f97316,#fb923c)}.upload-card:hover:before{height:5px;filter:brightness(1.2) saturate(1.2);box-shadow:0 2px 8px #0000001a}.upload-card:hover{transform:translateY(-4px);box-shadow:0 4px 12px #00000014,0 8px 24px #0000001f}.upload-card:not(.disabled):active{transform:translateY(-2px)}.card-icon{font-size:42px;margin-bottom:16px;text-align:center;filter:grayscale(20%)}.card-title{font-size:18px;font-weight:600;color:#1a1a1a;margin:0 0 10px;text-align:center;line-height:1.3}.card-description{font-size:14px;color:#6b6b6b;margin:0 0 24px;text-align:center;line-height:1.5}.button-group{display:flex;gap:12px;justify-content:center}.upload-btn{padding:14px 32px;border:none;border-radius:12px;font-size:15px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .2s cubic-bezier(.4,0,.2,1);min-width:180px;justify-content:center;letter-spacing:.2px}.upload-btn.primary{background:linear-gradient(135deg,#dc2626,#ef4444);color:#fff;box-shadow:0 2px 8px #dc262640}.upload-btn.primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 16px #dc262659;background:linear-gradient(135deg,#b91c1c,#dc2626)}.upload-btn.pdf-btn{background:linear-gradient(135deg,#ea580c,#f97316);color:#fff;box-shadow:0 2px 8px #f9731640;padding:14px 32px;border:none;border-radius:12px;font-size:15px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .2s cubic-bezier(.4,0,.2,1);min-width:180px;justify-content:center;letter-spacing:.2px}.upload-btn.pdf-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 16px #f9731659;background:linear-gradient(135deg,#dc2626,#ea580c)}.upload-btn.secondary{background:#fff5f5;color:#7f1d1d;border:1.5px solid #fecaca;box-shadow:0 1px 4px #dc143c0d}.upload-btn.secondary:hover:not(:disabled){background:#fee2e2;border-color:#fca5a5;transform:translateY(-1px);box-shadow:0 2px 8px #dc143c14}.upload-btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.auto-analysis-toggle{margin:20px 0;padding:16px;background:linear-gradient(135deg,#ef44441a,#ef444426);border-radius:12px;border:1px solid rgba(239,68,68,.3);transition:all .3s ease;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}.auto-analysis-toggle.analysis-enabled{background:linear-gradient(135deg,#22c55e1a,#22c55e26);border-color:#22c55e4d}.toggle-label{display:flex;align-items:center;gap:12px;cursor:pointer;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}.toggle-input{position:absolute;opacity:0;width:0;height:0}.toggle-slider{position:relative;display:inline-block;width:48px;height:24px;background-color:#e5e7eb;border-radius:12px;transition:background-color .3s ease}.toggle-slider:after{content:"";position:absolute;width:18px;height:18px;left:3px;top:3px;background-color:#fff;border-radius:50%;transition:transform .3s ease;box-shadow:0 2px 4px #00000026}.toggle-input:checked+.toggle-slider{background-color:#22c55e}.toggle-input:checked+.toggle-slider:after{transform:translate(24px)}.toggle-text{font-size:14px;font-weight:600;color:#1e293b}.toggle-description{margin:8px 0 0 60px;font-size:12px;color:#64748b;line-height:1.4}.status-message{margin:24px auto;padding:16px 20px;max-width:480px;background:#fff;border-radius:12px;display:flex;align-items:center;box-shadow:0 2px 8px #0000000f;border:1px solid rgba(0,0,0,.06);animation:slideUp .3s ease-out;position:relative;overflow:hidden}.status-message:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px}.status-message.uploading:before{background:linear-gradient(180deg,#3b82f6,#60a5fa)}.status-message.success:before{background:linear-gradient(180deg,#10b981,#34d399)}.status-message.error:before{background:linear-gradient(180deg,#ef4444,#f87171)}.status-spinner{width:20px;height:20px;border:2px solid #e0e0e0;border-top-color:#3b82f6;border-radius:50%;animation:spin .8s linear infinite;margin-right:12px}.status-content{display:flex;align-items:center;gap:12px;font-size:15px}.status-content p{margin:0;font-weight:500;color:#1a1a1a}.status-message.uploading .status-content p{color:#3b82f6}.status-message.success .status-content p{color:#10b981}.status-message.error .status-content p{color:#ef4444}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.tips-section{background:#fff;border-radius:16px;padding:24px;margin-top:auto;margin-bottom:24px;box-shadow:0 1px 3px #0000000a,0 4px 8px #0000000f;border:1px solid rgba(0,0,0,.06)}.tips-section h4{margin:0 0 16px;color:#1a1a1a;font-size:16px;font-weight:600;display:flex;align-items:center;gap:8px}.tips-list{margin:0;padding-left:24px;color:#4a4a4a;font-size:14px;line-height:1.8}.tips-list li{margin-bottom:10px;position:relative}.tips-list li::marker{color:#dc143c}.mobile-landing-footer{display:flex;justify-content:center;gap:32px;padding:24px 0}.text-button{background:none;border:none;color:#6b6b6b;font-size:14px;font-weight:500;cursor:pointer;padding:8px 16px;transition:all .2s;position:relative;text-decoration:none}.text-button:after{content:"";position:absolute;bottom:6px;left:16px;right:16px;height:1px;background:#dc143c;transform:scaleX(0);transition:transform .2s}.text-button:hover{color:#1a1a1a}.text-button:hover:after{transform:scaleX(1)}@media (max-width: 380px){.app-title{font-size:32px}.upload-btn{font-size:14px;padding:12px 24px;min-width:160px}.card-icon{font-size:36px}}@media (min-width: 768px){.mobile-landing{max-width:540px;margin:0 auto}}@media (prefers-color-scheme: dark){.mobile-landing{background:linear-gradient(180deg,#0a0a0a,#1a1a1a)}.mobile-landing:before{background:linear-gradient(135deg,#450a0a,#7f1d1d)}.mobile-landing-loading{background:#0a0a0a}.upload-card{background:#1f1f1f;border-color:#ffffff14}.upload-card.image-card:before{background:linear-gradient(90deg,#ef4444,#f87171,#fca5a5)}.upload-card.pdf-card:before{background:linear-gradient(90deg,#f97316,#fb923c,#fdba74)}.card-title{color:#f0f0f0}.card-description{color:#a0a0a0}.upload-btn.pdf-btn{background:linear-gradient(135deg,#f97316,#fb923c)}.upload-btn.pdf-btn:hover:not(:disabled){background:linear-gradient(135deg,#ea580c,#f97316)}.upload-btn.secondary{background:#2a2a2a;color:#e0e0e0;border-color:#3a3a3a}.upload-btn.secondary:hover:not(:disabled){background:#333;border-color:#4a4a4a}.tips-section{background:#1f1f1f;border-color:#ffffff14}.tips-section h4{color:#f0f0f0}.tips-list{color:silver}.status-message{background:#1f1f1f;border-color:#ffffff14}.status-content p{color:#f0f0f0}.status-message.uploading .status-content p{color:#60a5fa}.status-message.success .status-content p{color:#34d399}.status-message.error .status-content p{color:#f87171}.status-spinner{border-color:#333;border-top-color:#60a5fa}.text-button{color:#a0a0a0}.text-button:hover{color:#f0f0f0}}.pdf-scanner-modal{position:fixed!important;top:0!important;left:0!important;width:100vw!important;height:100vh!important;z-index:99999!important}.guided-prompts-container{width:100%;background:#fafafa;border-top:1px solid #E5E7EB;padding:8px 0;flex-shrink:0}.guided-prompts-scroll{display:flex;flex-direction:row;gap:10px;padding:0 16px;width:100%}.guided-prompt-button{flex:1;min-width:0;white-space:normal;word-wrap:break-word;text-align:center;background:#fff;border:1px solid #E5E7EB;border-radius:10px;padding:8px 10px;font-size:11.5px;font-weight:500;color:#111827;line-height:1.25;font-family:Söhne,-apple-system,BlinkMacSystemFont,Inter,Segoe UI,system-ui,sans-serif;box-shadow:0 1px 2px #0000000d;transition:all .2s ease;cursor:pointer;outline:none;-webkit-tap-highlight-color:transparent;-moz-user-select:none;user-select:none;-webkit-user-select:none;min-height:40px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;text-overflow:ellipsis;align-items:center;justify-content:center}.guided-prompt-button:hover:not(:disabled){border-color:#ef4444;background:#fff5f5;transform:translateY(-1px);box-shadow:0 2px 4px #ef44441a}.guided-prompt-button:active:not(:disabled){transform:scale(.98)}.guided-prompt-button:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.guided-prompt-button:focus-visible{outline:2px solid #ef4444;outline-offset:2px}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.guided-prompts-container{animation:slideIn .3s ease-out}.guided-prompt-button:nth-child(1){animation:fadeInButton .2s ease-out 0s}.guided-prompt-button:nth-child(2){animation:fadeInButton .2s ease-out .05s}.guided-prompt-button:nth-child(3){animation:fadeInButton .2s ease-out .1s}@keyframes fadeInButton{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@media (max-width: 480px){.guided-prompts-container{padding:8px 0}.guided-prompt-button{font-size:10.5px;padding:7px 8px;min-height:38px;line-height:1.2;-webkit-line-clamp:3}}.guided-prompts-scroll:after{content:"";padding-right:1px}.problem-display{background:linear-gradient(135deg,#fff5f5,#fee2e2);border:1px solid #fecaca;border-radius:12px;padding:16px;margin:16px;box-shadow:0 2px 4px #ef44441a;animation:fadeIn .3s ease-out}.problem-header{display:flex;align-items:center;gap:10px;margin-bottom:12px}.problem-icon{font-size:24px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:#fff;border-radius:8px;box-shadow:0 1px 2px #0000000d}.problem-title{font-family:Söhne,-apple-system,BlinkMacSystemFont,Inter,Segoe UI,system-ui,sans-serif;font-size:16px;font-weight:600;color:#1a1a1a;line-height:1.4}.problem-question{font-family:Söhne,-apple-system,BlinkMacSystemFont,Inter,Segoe UI,system-ui,sans-serif;font-size:18px;font-weight:500;color:#111827;line-height:1.6;padding:12px 16px;background:#fff;border-radius:8px;border:1px solid #E5E7EB;box-shadow:0 1px 2px #0000000d;word-wrap:break-word;overflow-wrap:break-word}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 480px){.problem-display{margin:12px;padding:14px}.problem-icon{font-size:20px;width:32px;height:32px}.problem-title{font-size:15px}.problem-question{font-size:17px;padding:10px 14px}}.email-capture-form{position:relative;width:100%;max-width:500px;margin:0 auto;display:flex;align-items:center;justify-content:center}.email-capture-form:before{content:"";position:fixed;top:0;left:0;right:0;bottom:0;background:#0006;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:-1}.email-capture-content{display:flex;flex-direction:column;gap:20px;background:#fff5eb;border-radius:0;box-shadow:none;padding:32px 24px;width:100%;position:relative;z-index:1;border-top:3px solid #E57800;border-bottom:3px solid #E57800}.email-capture-title{font-size:18px;font-weight:600;color:#0e1116;margin:0;text-align:center;line-height:1.4}.email-capture-subtitle{font-size:13px;color:#475569;margin:0;text-align:center;line-height:1.5}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-size:13px;font-weight:600;color:#0e1116}.form-input,.form-select{padding:12px 14px;font-size:15px;border:1px solid #E5E7EB;border-radius:6px;background:#fff;color:#0e1116;font-family:inherit;transition:all .2s ease}.form-input:focus,.form-select:focus{outline:none;border-color:#e57800;box-shadow:0 0 0 3px #e578001a}.form-select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236B7280' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px}.submit-button{background:#e57800;color:#fff;font-size:16px;font-weight:600;padding:14px 24px;border:none;border-radius:8px;cursor:pointer;transition:all .15s ease;margin-top:8px;width:100%;box-shadow:none;letter-spacing:.2px}.submit-button:hover:not(:disabled){background:#cc6a00;transform:none;box-shadow:0 2px 8px #e5780033}.submit-button:active:not(:disabled){transform:translateY(0)}.submit-button:disabled{background:#d1d5db;cursor:not-allowed;opacity:.6}.skip-button{background:transparent;color:#6b7280;font-size:14px;font-weight:500;padding:10px;border:none;cursor:pointer;text-decoration:underline;transition:color .2s ease}.skip-button:hover{color:#374151}@media (max-width: 480px){.email-capture-content{padding:24px 20px;border-radius:0}.email-capture-title{font-size:17px}.email-capture-subtitle{font-size:13px}.form-input,.form-select{font-size:15px;padding:11px 14px}.submit-button{font-size:16px;padding:13px 20px;width:100%}}.completion-cta{padding:24px 16px;animation:slideUp .4s ease-out}.completion-content{background:linear-gradient(135deg,#fff5f5,#fee2e2);border:2px solid #fecaca;border-radius:16px;padding:32px 24px;box-shadow:0 4px 12px #ef444426;display:flex;flex-direction:column;align-items:center;gap:20px;text-align:center}.completion-icon{font-size:64px;animation:bounce .6s ease-out}.completion-title{font-family:Söhne,-apple-system,BlinkMacSystemFont,Inter,Segoe UI,system-ui,sans-serif;font-size:28px;font-weight:700;color:#1a1a1a;margin:0;line-height:1.2}.completion-message{font-family:Söhne,-apple-system,BlinkMacSystemFont,Inter,Segoe UI,system-ui,sans-serif;font-size:16px;font-weight:400;color:#6b7280;margin:0;line-height:1.5;max-width:320px}.completion-actions{display:flex;flex-direction:column;gap:12px;width:100%;max-width:320px;margin-top:8px}.completion-button{width:100%;padding:14px 24px;border-radius:12px;font-family:Söhne,-apple-system,BlinkMacSystemFont,Inter,Segoe UI,system-ui,sans-serif;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:8px;outline:none;-webkit-tap-highlight-color:transparent;-moz-user-select:none;user-select:none;-webkit-user-select:none;min-height:48px}.completion-button.primary{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border:none;box-shadow:0 4px 12px #ef44444d}.completion-button.primary:hover{transform:translateY(-2px);box-shadow:0 6px 16px #ef444466}.completion-button.primary:active{transform:translateY(0)}.completion-button.secondary{background:#fff;color:#111827;border:2px solid #E5E7EB;box-shadow:0 1px 2px #0000000d}.completion-button.secondary:hover{border-color:#ef4444;background:#fff5f5;transform:translateY(-1px)}.completion-button.secondary:active{transform:translateY(0)}.button-icon{font-size:18px}.completion-features{display:flex;flex-direction:column;gap:12px;width:100%;max-width:280px;margin-top:8px;padding-top:20px;border-top:1px solid rgba(0,0,0,.1)}.feature-item{display:flex;align-items:center;gap:10px;padding:8px 12px;background:#fff;border-radius:8px;box-shadow:0 1px 2px #0000000d}.feature-icon{font-size:20px;flex-shrink:0}.feature-text{font-family:Söhne,-apple-system,BlinkMacSystemFont,Inter,Segoe UI,system-ui,sans-serif;font-size:14px;font-weight:500;color:#111827;line-height:1.4}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.completion-button:focus-visible{outline:2px solid #ef4444;outline-offset:2px}@media (max-width: 480px){.completion-cta{padding:20px 12px}.completion-content{padding:28px 20px}.completion-icon{font-size:56px}.completion-title{font-size:24px}.completion-message{font-size:15px}.completion-button{padding:12px 20px;font-size:15px}.feature-text{font-size:13px}}.email-success-modal{position:fixed;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;padding:20px;z-index:1000}.email-success-modal:before{content:"";position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);z-index:-1}.email-success-content{display:flex;flex-direction:column;gap:24px;background:#fff5eb;border-top:4px solid #E57800;border-bottom:4px solid #E57800;padding:48px 32px;width:100%;max-width:500px;position:relative;z-index:1;text-align:center;box-shadow:0 20px 40px #00000026}.success-icon{font-size:72px;margin:0 auto;line-height:1}.success-title{font-size:26px;font-weight:700;color:#0e1116;margin:0;line-height:1.2}.success-message{font-size:16px;color:#475569;margin:0;line-height:1.6}.success-actions{display:flex;flex-direction:column;gap:14px;margin-top:12px}.success-button{padding:16px 28px;border:none;border-radius:10px;font-size:17px;font-weight:700;cursor:pointer;transition:all .15s ease;width:100%;letter-spacing:.2px}.success-button.primary{background:#e57800;color:#fff}.success-button.primary:hover{background:#cc6a00;box-shadow:0 4px 12px #e578004d;transform:translateY(-1px)}.success-button.secondary{background:#fff;color:#e57800;border:2px solid #E57800}.success-button.secondary:hover{background:#fff5eb;transform:translateY(-1px)}.success-note{font-size:13px;color:#94a3b8;margin:12px 0 0;line-height:1.5}@media (max-width: 640px){.email-success-modal{padding:0}.email-success-content{min-height:100vh;max-width:100%;border-top:none;border-bottom:none;border-radius:0;padding:60px 28px;justify-content:center;box-shadow:none}.success-icon{font-size:80px}.success-title{font-size:24px}.success-message{font-size:15px}.success-button{font-size:17px;padding:18px 24px}.success-actions{gap:16px;margin-top:16px}}.final-banner{position:fixed;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;padding:20px;z-index:1000}.final-banner:before{content:"";position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);z-index:-1}.final-banner-content{display:flex;flex-direction:column;gap:24px;background:#fff5eb;border-top:4px solid #E57800;border-bottom:4px solid #E57800;padding:48px 32px;width:100%;max-width:500px;position:relative;z-index:1;text-align:center;box-shadow:0 20px 40px #00000026}.final-banner-title{font-size:24px;font-weight:700;color:#0e1116;margin:0;line-height:1.3}.final-banner-subtitle{font-size:15px;color:#475569;margin:0;line-height:1.6}.desktop-link{margin:12px 0}.desktop-button{display:inline-block;background:#e57800;color:#fff;font-size:19px;font-weight:700;padding:18px 36px;border-radius:10px;text-decoration:none;transition:all .15s ease;letter-spacing:.3px}.desktop-button:hover{background:#cc6a00;box-shadow:0 4px 12px #e578004d;transform:translateY(-1px)}.features-list{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:16px}.feature-item{display:flex;align-items:center;gap:10px;background:#fff;padding:14px 16px;border-radius:10px;border:1px solid #E5E7EB;box-shadow:0 1px 3px #0000000d}.feature-icon{font-size:22px;flex-shrink:0;line-height:1;background:none!important}.feature-icon:before,.feature-icon:after{display:none!important;content:none!important}.feature-text{font-size:13px;font-weight:600;color:#0e1116;text-align:left;line-height:1.3}@media (max-width: 640px){.final-banner{padding:0}.final-banner-content{min-height:100vh;max-width:100%;border-top:none;border-bottom:none;border-radius:0;padding:60px 28px;justify-content:center;box-shadow:none}.final-banner-title{font-size:22px}.final-banner-subtitle{font-size:14px}.desktop-button{font-size:18px;padding:18px 32px}.features-list{grid-template-columns:1fr;gap:12px;margin-top:20px}.feature-item{padding:16px 18px}.feature-icon{font-size:24px}.feature-text{font-size:14px}}.admin-dashboard{display:flex;height:100vh;overflow:hidden;background:#fafafa}.admin-dashboard-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;background:#fafafa;gap:16px}.admin-dashboard-loading p{color:#8e8e8e;font-size:14px;margin:0}.admin-loading-spinner{width:40px;height:40px;border:3px solid #E0E0E0;border-top-color:#e57800;border-radius:50%;animation:admin-spin .8s linear infinite}@keyframes admin-spin{to{transform:rotate(360deg)}}.admin-auth-card{background:#fff;border-radius:12px;padding:32px 40px;text-align:center;border:1px solid #E0E0E0;box-shadow:0 4px 12px #0000000d}.admin-auth-icon{width:64px;height:64px;border-radius:50%;background:linear-gradient(135deg,#fff5eb,#ffe4cc);display:flex;align-items:center;justify-content:center;margin:0 auto 20px;color:#e57800}.admin-auth-card h2{font-size:20px;font-weight:600;color:#0e1116;margin:0 0 8px}.admin-auth-card p{font-size:14px;color:#8e8e8e;margin:0}.admin-auth-card-denied .admin-auth-icon-denied{background:linear-gradient(135deg,#fee2e2,#fecaca);color:#dc2626}.admin-sidebar{width:260px;background:#f9f9f9;border-right:1px solid #E0E0E0;display:flex;flex-direction:column;flex-shrink:0;position:sticky;top:0;height:100vh;overflow-y:auto}.admin-back-btn{display:flex;align-items:center;gap:8px;padding:12px 16px;background:transparent;border:none;border-bottom:1px solid #E0E0E0;cursor:pointer;color:#8e8e8e;font-size:13px;font-weight:500;transition:all .15s ease}.admin-back-btn:hover{background:#e5e5e5;color:#1a1a1a}.admin-back-btn svg{flex-shrink:0}.admin-sidebar-header{display:flex;align-items:center;gap:12px;padding:16px;border-bottom:1px solid #E0E0E0}.admin-sidebar-logo{width:36px;height:36px;border-radius:8px;overflow:hidden;flex-shrink:0}.admin-sidebar-logo img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.admin-sidebar-title{display:flex;flex-direction:column}.admin-sidebar-title h1{font-size:16px;font-weight:600;color:#0e1116;margin:0;line-height:1.2}.admin-sidebar-title span{font-size:12px;color:#8e8e8e;font-weight:400}.admin-sidebar-nav{flex:1;padding:12px 8px;display:flex;flex-direction:column;gap:2px;overflow-y:auto}.admin-nav-btn{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:none;background:transparent;border-radius:8px;cursor:pointer;transition:all .15s ease;text-align:left}.admin-nav-btn:hover{background:#e5e5e5}.admin-nav-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#8e8e8e;transition:color .15s ease}.admin-nav-label{font-size:14px;font-weight:400;color:#1a1a1a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-nav-btn-active{background:linear-gradient(135deg,#e57800,#cc6a00);box-shadow:0 2px 8px #e5780040}.admin-nav-btn-active:hover{background:linear-gradient(135deg,#cc6a00,#b35e00)}.admin-nav-btn-active .admin-nav-icon{color:#fff}.admin-nav-btn-active .admin-nav-label{color:#fff;font-weight:500}.admin-sidebar-user{display:flex;align-items:center;gap:10px;padding:12px 16px;border-top:1px solid #E0E0E0;background:#fff}.admin-user-avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#e57800,#f4c542);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:14px;flex-shrink:0}.admin-user-info{flex:1;min-width:0}.admin-user-name{font-size:13px;font-weight:500;color:#0e1116;margin:0 0 2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-user-role{font-size:11px;color:#8e8e8e;text-transform:uppercase;letter-spacing:.3px}.admin-main{flex:1;min-width:0;overflow-y:auto}.admin-content{padding:24px;max-width:1400px;margin:0 auto}.admin-tools-grid{display:grid;gap:24px}.admin-tool-card{background:#fff;border-radius:12px;border:1px solid #E0E0E0;padding:24px;box-shadow:0 2px 8px #0000000a}.admin-tool-header{display:flex;align-items:center;gap:12px;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #F0F0F0}.admin-tool-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.admin-tool-icon-orange{background:linear-gradient(135deg,#fff5eb,#ffe4cc);color:#e57800}.admin-tool-icon-gold{background:linear-gradient(135deg,#fffbeb,#fef3c7);color:#d97706}.admin-tool-icon-purple{background:linear-gradient(135deg,#f5f3ff,#ede9fe);color:#7c3aed}.admin-tool-header h3{font-size:16px;font-weight:600;color:#0e1116;margin:0}.admin-settings-placeholder{background:#fff;border-radius:12px;border:1px solid #E0E0E0;padding:64px 32px;text-align:center}.admin-placeholder-icon{width:80px;height:80px;border-radius:50%;background:#f5f5f5;display:flex;align-items:center;justify-content:center;margin:0 auto 20px;color:#aaa}.admin-settings-placeholder h3{font-size:18px;font-weight:600;color:#0e1116;margin:0 0 8px}.admin-settings-placeholder>p{font-size:14px;color:#8e8e8e;margin:0 0 32px}.admin-settings-cards{display:flex;justify-content:center;gap:16px;flex-wrap:wrap}.admin-settings-card{display:flex;flex-direction:column;align-items:center;gap:12px;padding:20px 24px;background:#fafafa;border:1px solid #E0E0E0;border-radius:12px;min-width:120px;color:#aaa}.admin-settings-card span{font-size:13px;font-weight:500;color:#8e8e8e}@media (max-width: 1024px){.admin-sidebar{width:220px}.admin-content{padding:20px}}@media (max-width: 768px){.admin-dashboard{flex-direction:column}.admin-sidebar{width:100%;height:auto;position:relative;border-right:none;border-bottom:1px solid #E0E0E0}.admin-sidebar-nav{flex-direction:row;flex-wrap:wrap;padding:8px}.admin-nav-btn{flex:1;min-width:100px;justify-content:center}.admin-nav-label,.admin-sidebar-user{display:none}.admin-content{padding:16px}}.admin-sidebar::-webkit-scrollbar,.admin-main::-webkit-scrollbar{width:6px}.admin-sidebar::-webkit-scrollbar-track,.admin-main::-webkit-scrollbar-track{background:transparent}.admin-sidebar::-webkit-scrollbar-thumb,.admin-main::-webkit-scrollbar-thumb{background:#d0d0d0;border-radius:3px}.admin-sidebar::-webkit-scrollbar-thumb:hover,.admin-main::-webkit-scrollbar-thumb:hover{background:#b0b0b0}.mastery-dashboard-header{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(0,0,0,.06);box-shadow:0 1px 3px #0000001a}.mastery-dashboard-header .back-button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;color:#6b7280;transition:color .2s ease;border-radius:6px;background:transparent;border:none;cursor:pointer;padding:8px}.mastery-dashboard-header .back-button:hover{color:#374151;background-color:#0000000a}.mastery-dashboard-header .back-button svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2}.mastery-dashboard-header .welcome-text{position:absolute;left:50%;transform:translate(-50%);font-weight:500;color:#6b7280;font-size:.875rem}.mastery-dashboard-header .welcome-text .user-name{font-weight:700;color:#374151}.bg-gray-50{background-color:#f9fafb}.parent-synthesis-page{max-width:1200px;margin:0 auto;padding:20px;min-height:calc(100vh - 65px);background-color:transparent}.synthesis-header{text-align:center;margin-bottom:40px;padding:20px 0}.synthesis-header h1{font-size:2.5rem;font-weight:700;color:#1a202c;margin-bottom:10px}.synthesis-header p{font-size:1.1rem;color:#4a5568;max-width:600px;margin:0 auto}.loading-container,.error-container,.auth-required{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;text-align:center}.loading-spinner{width:40px;height:40px;border:4px solid #e2e8f0;border-top:4px solid #667eea;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:20px}.loading-spinner.small{width:24px;height:24px;border-width:3px;margin-bottom:10px}.retry-button{background-color:#667eea;color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:16px;cursor:pointer;transition:background-color .2s}.retry-button:hover{background-color:#5a67d8}.empty-state{text-align:center;padding:60px 20px;background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a}.empty-state-icon{font-size:4rem;margin-bottom:20px}.empty-state h2{color:#2d3748;font-size:1.5rem;margin-bottom:10px}.empty-state p{color:#718096;font-size:1rem;max-width:400px;margin:0 auto}.synthesis-cards-container{display:flex;flex-direction:column;gap:20px}.synthesis-card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden;transition:all .3s ease}.synthesis-card:hover{box-shadow:0 4px 12px #00000026}.synthesis-card.expanded{box-shadow:0 8px 25px #00000026}.card-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:#f7fafc;border-bottom:1px solid #e2e8f0;cursor:pointer;transition:background-color .2s}.card-header:hover{background:#edf2f7}.card-date{font-weight:600;color:#2d3748;font-size:1rem}.expand-icon{font-size:1.5rem;color:#667eea;font-weight:700;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.card-content{padding:0}.card-main{display:flex;gap:20px;padding:20px}.card-left{flex:1;min-width:300px}.topic-section{display:flex;flex-direction:column;gap:15px}.topic-title{font-size:1.25rem;font-weight:600;color:#2d3748;margin:0}.problem-image{display:flex;justify-content:center;align-items:center;background:#fcf7f7;border-radius:8px;padding:15px;min-height:200px}.math-problem-image{max-width:100%;max-height:300px;border-radius:8px;box-shadow:0 2px 8px #0000001a}.image-placeholder,.image-placeholder-fallback{display:flex;flex-direction:column;align-items:center;justify-content:center;color:#a0aec0;text-align:center}.image-placeholder span,.image-placeholder-fallback span{font-size:3rem;margin-bottom:10px}.image-placeholder p,.image-placeholder-fallback p{margin:0;font-weight:500}.image-placeholder-fallback{color:#f59e0b}.image-placeholder-fallback small{font-size:.75rem;color:#6b7280;margin-top:5px;font-weight:400}.card-right{flex:1;min-width:300px}.synthesis-section{display:flex;flex-direction:column;gap:20px;border:none;outline:none}.synthesis-item{padding:16px;border-radius:8px;border-left:4px solid #e2e8f0}.synthesis-item.description{background:#eff6ff;border-left-color:#3b82f6}.synthesis-item.positive{background:#f0fff4;border-left-color:#48bb78}.synthesis-item.improvement{background:#fffaf0;border-left-color:#ed8936}.synthesis-item h4{margin:0 0 8px;font-size:1rem;font-weight:600;color:#2d3748}.synthesis-item p{margin:0;color:#4a5568;line-height:1.5}.synthesis-content{margin:0;color:#4a5568;line-height:1.6;font-size:.95rem}.synthesis-content .katex{font-size:1.1em}.synthesis-content .katex-display{margin:.5em 0}.synthesis-content .math-inline-container{display:inline;vertical-align:middle}.synthesis-content .math-display-container{display:block;margin:.5em 0;text-align:center}.expanded-content{border-top:1px solid #e2e8f0;background:#f7fafc}.conversation-header{padding:20px 20px 10px}.conversation-header h3{margin:0;font-size:1.125rem;font-weight:600;color:#2d3748}.conversation-loading{display:flex;flex-direction:column;align-items:center;padding:40px 20px}.parent-chat-container{padding:10px 20px 20px;max-height:500px;overflow:hidden;background:#fff;border-radius:8px;margin:0 1rem 1rem;border:1px solid #e2e8f0}.parent-messages-container{max-height:450px;overflow-y:auto;padding:1rem 0;display:flex;flex-direction:column;gap:1rem}.no-conversation{text-align:center;padding:2rem;color:#64748b}.no-conversation p{margin:0;font-style:italic}.parent-message{display:flex;flex-direction:column;margin-bottom:1rem;max-width:70%}.parent-message.user{align-self:flex-end;align-items:flex-end}.parent-message.bot{align-self:flex-start;align-items:flex-start}.message-bubble{padding:12px 16px;border-radius:12px;margin-bottom:4px;word-wrap:break-word;line-height:1.4}.parent-message.user .message-bubble{background:#e74c3c;color:#fff!important;border-bottom-right-radius:4px}.parent-message.user .message-bubble *{color:#fff!important}.parent-message.bot .message-bubble{background:#f5f5f5;color:#2d3748;border-left:4px solid #e74c3c;border-bottom-left-radius:4px}.message-html-content,.message-text-content{margin:0}.message-html-content p{margin:0 0 .5em}.message-html-content p:last-child{margin-bottom:0}.message-time{font-size:.75rem;color:#a0aec0;padding:0 4px}.parent-chat-container .audio-button,.parent-chat-container .audio-player,.parent-chat-container [class*=audio]{display:none!important}.uploaded-image-container{max-width:100%}.uploaded-image-container p{margin:0 0 8px;font-weight:600;color:#4a5568;font-size:.9rem}.uploaded-image-container img{display:block;max-width:100%;height:auto;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-top:8px}.parent-message img{max-width:100%;height:auto;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin:2px 0;display:block}.parent-message img[src*="firebasestorage.googleapis.com"]{background-color:#f9fafb;border:1px solid #e5e7eb}.parent-message img[src=""],.parent-message img[src=undefined],.parent-message img[src=null]{display:none}.conversation-history{padding:10px 20px 20px;max-height:400px;overflow-y:auto;display:none}.conversation-message{display:flex;flex-direction:column;margin-bottom:16px;max-width:70%}.conversation-message.user{align-self:flex-end;align-items:flex-end}.conversation-message.bot{align-self:flex-start;align-items:flex-start}.message-content{padding:12px 16px;border-radius:12px;margin-bottom:4px}.conversation-message.user .message-content{background:#667eea;color:#fff;border-bottom-right-radius:4px}.conversation-message.bot .message-content{background:#fff;color:#2d3748;border:1px solid #e2e8f0;border-bottom-left-radius:4px}.message-content p{margin:0;line-height:1.4}.message-timestamp{font-size:.75rem;color:#a0aec0;padding:0 4px}@media (max-width: 768px){.parent-synthesis-page{padding:15px}.synthesis-header h1{font-size:2rem}.card-main{flex-direction:column;gap:15px}.card-left,.card-right{min-width:unset}.conversation-message{max-width:85%}.synthesis-header p{font-size:1rem}}@media (max-width: 480px){.parent-synthesis-page{padding:10px}.synthesis-header{margin-bottom:25px}.synthesis-header h1{font-size:1.75rem}.card-main{padding:15px}.conversation-message{max-width:90%}}.tutor-container{height:100vh;background:linear-gradient(135deg,#fff,#f8fafc);color:#111827;display:flex;flex-direction:column;overflow:hidden}.tutor-header{display:flex;align-items:center;justify-content:space-between;padding:1rem;border-bottom:1px solid #e5e7eb;background:#fffc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:sticky;top:0;z-index:30;gap:1rem}.tutor-container .header{z-index:2147483647!important}.tutor-back-button{display:flex;align-items:center;justify-content:center;padding:.5rem;background:transparent;border:none;border-radius:.5rem;color:#6b7280;cursor:pointer;transition:all .15s ease}.tutor-back-button:hover{background:#f3f4f6;color:#374151}.tutor-back-button:active{background:#e5e7eb}.tutor-logo{display:flex;align-items:center;gap:.75rem}.tutor-logo-icon{height:2rem;width:2rem;border-radius:.75rem;background:linear-gradient(135deg,#fb923c,#ec4899)}.tutor-title{display:flex;flex-direction:column;line-height:1.2}.tutor-title-main{font-weight:700;color:#111827}.tutor-title-sub{font-size:.75rem;color:#6b7280}.tutor-chat-window{height:90%;border:none;border-radius:0;background:transparent}.tutor-chat-window .message-bubble.bot{background:linear-gradient(135deg,#f3f4f6,#f9fafb);border:1px solid #e5e7eb;color:#374151}.tutor-chat-window .message-bubble.user{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff}.tutor-chat-window .katex{font-size:1.1em}.tutor-chat-window .katex-display{margin:1em 0}.tutor-stats{display:flex;align-items:center;gap:1.5rem}.streak-indicator{display:flex;align-items:center;gap:.5rem}.streak-badge{font-size:.875rem;background:#fef3e2;color:#c2410c;padding:.25rem .5rem;border-radius:.375rem}.progress-section{display:flex;align-items:center;gap:.75rem}.progress-text{font-size:.75rem;color:#4b5563}.xp-display{display:none;align-items:center;gap:.5rem;border-radius:.75rem;background:#f9fafb;padding:.375rem .75rem}@media (min-width: 768px){.xp-display{display:flex}}.xp-text{font-size:.875rem;font-weight:600;color:#374151}.tutor-layout{max-width:72rem;margin:0 auto;display:grid;grid-template-columns:1fr;gap:1rem;padding:1rem;flex:1;min-height:0}@media (min-width: 768px){.tutor-layout{grid-template-columns:1.2fr .8fr}}.tutor-chat-container{display:flex;flex-direction:column;border-radius:1rem;border:1px solid #e5e7eb;background:#fff;box-shadow:0 1px 3px #0000001a;min-height:calc(100vh - 180px);max-height:calc(100vh - 180px)}.tutor-chat-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;border-bottom:1px solid #f3f4f6;padding:1rem}.tutor-chat-title-section{display:flex;flex-direction:column}.tutor-chat-title-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:#6b7280}.tutor-chat-title{font-weight:600}.tutor-chat-tags{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:#6b7280}.tutor-chat-tag{border-radius:9999px;background:#f3f4f6;padding:.25rem .75rem}.tutor-messages-container{flex:1;min-height:0;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:1rem;scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:#cbd5e1 #f1f5f9}.tutor-messages-container::-webkit-scrollbar{width:6px}.tutor-messages-container::-webkit-scrollbar-track{background:#f1f5f9;border-radius:3px}.tutor-messages-container::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.tutor-messages-container::-webkit-scrollbar-thumb:hover{background:#94a3b8}.tutor-messages-container .message-wrapper{margin-bottom:0}.tutor-messages-container .user-message{align-self:flex-end!important;max-width:120%!important}.tutor-messages-container .bot-message{align-self:flex-start;max-width:85%}.tutor-messages-container .message-content{padding:.875rem 1rem;border-radius:1rem;font-size:.9rem;line-height:1.5}.tutor-messages-container .user-message .message-content{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;border-bottom-right-radius:.375rem}.tutor-messages-container .bot-message .message-content{background:linear-gradient(135deg,#f8fafc,#fff);border:1px solid #e2e8f0;color:#374151;border-bottom-left-radius:.375rem}.tutor-messages-container .katex{font-size:1.1em!important}.tutor-messages-container .katex-display{margin:1em 0!important}.message-row{display:flex;gap:.75rem}.message-row.user{justify-content:flex-end}.message-avatar{height:2.25rem;width:2.25rem;border-radius:50%;display:flex;align-items:center;justify-content:center}.message-avatar.bot{background:#0ea5e91a;color:#0ea5e9}.message-avatar.user{background:#e5e7eb;color:#4b5563;font-weight:600}.message-bubble{position:relative;max-width:90%!important;border-radius:1rem;padding:.75rem;font-size:.875rem;box-shadow:0 1px 3px #0000001a}.message-bubble.bot{background:#fff;border:1px solid #f3f4f6}.message-bubble.user{background:#f3f4f6;color:#111827}.message-bubble.user.correct{background:#ecfdf5;color:#064e3b}.formatted-message-content{width:100%;overflow-x:auto;color:inherit}.formatted-message-content .formatted-content{min-width:-moz-fit-content;min-width:fit-content;padding:4px 0}.message-text{width:100%;white-space:pre-wrap;word-break:break-word}.formatted-message-content .katex,.formatted-message-content .MathJax,.formatted-message-content .math-inline,.formatted-message-content .math-display{font-size:1em;line-height:1.2}.formatted-message-content .math-display{text-align:center;margin:1rem 0;padding:.5rem;background:#00000005;border-radius:.375rem}.formatted-message-content .math-inline{display:inline;margin:0 .125rem}.formatted-message-content .MathJax_Display{text-align:center!important;margin:1rem 0!important}.formatted-message-content mjx-container{overflow-x:auto;overflow-y:hidden}.formatted-message-content pre{background:#0000000d;border-radius:.375rem;padding:.5rem;margin:.5rem 0;overflow-x:auto;font-family:Courier New,monospace;font-size:.8em}.formatted-message-content code{background:#0000001a;border-radius:.25rem;padding:.125rem .25rem;font-family:Courier New,monospace;font-size:.85em}.correct-indicator{position:absolute;right:-.75rem;top:-.75rem;height:1.5rem;width:1.5rem;color:#10b981;filter:drop-shadow(0 4px 6px rgba(0,0,0,.1))}.tutor-input-area{position:relative;padding:1rem;border-top:1px solid #f3f4f6}.input-waiting-overlay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:10;background:#fffffff2;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-radius:.75rem;padding:1rem 2rem;box-shadow:0 4px 6px -1px #0000001a}.input-waiting-text{text-align:center;color:#6b7280;font-weight:500;animation:pulse 2s infinite}.success-overlay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:10;background:#fffffff2;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-radius:.75rem;box-shadow:0 4px 6px -1px #0000001a}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.tutor-typing-indicator{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem}.tutor-typing-dots{display:flex;gap:.25rem}.tutor-typing-dot{width:.5rem;height:.5rem;background:#6b7280;border-radius:50%;animation:typing-bounce 1.5s ease-in-out infinite}.tutor-typing-dot:nth-child(1){animation-delay:0s}.tutor-typing-dot:nth-child(2){animation-delay:.3s}.tutor-typing-dot:nth-child(3){animation-delay:.6s}.tutor-typing-text{font-size:.875rem;color:#6b7280;font-style:italic}@keyframes typing-bounce{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-.5rem);opacity:1}}.success-container{position:relative;overflow:hidden;border-radius:1rem;border:1px solid #d1fae5;background:linear-gradient(to right,#ecfdf5,#fff);padding:1rem;min-width:300px}.success-header{display:flex;align-items:center;gap:.75rem}.success-title{color:#064e3b;font-weight:600}.success-xp{margin-left:auto;font-size:.75rem;color:#047857}.success-message{margin-top:.5rem;font-size:.875rem;color:#064e3bcc}.sidebar{display:flex;flex-direction:column;gap:1rem}.sidebar-card{border-radius:1rem;border:1px solid #e5e7eb;background:#fff;padding:1rem;box-shadow:0 1px 3px #0000001a}.sidebar-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.sidebar-card-title{font-weight:600}.sidebar-card-subtitle{font-size:.75rem;color:#6b7280}.progress-display{display:flex;align-items:center;gap:1rem}.progress-bar-container{flex:1}.progress-bar{height:.5rem;width:100%;overflow:hidden;border-radius:9999px;background:#f3f4f6;margin-bottom:.25rem}.progress-bar-fill{height:100%;border-radius:9999px;background:#10b981;transition:all .3s ease}.progress-text-small{font-size:.75rem;color:#4b5563}.badges-header{display:flex;align-items:center;gap:.5rem;font-weight:600;margin-bottom:.5rem}.badges-empty{font-size:.875rem;color:#6b7280}.badges-container{display:flex;flex-wrap:wrap;gap:.5rem}.badge-item{display:inline-flex;align-items:center;gap:.25rem;border-radius:9999px;background:#fef3e2;padding:.25rem .75rem;font-size:.875rem;color:#c2410c;border:1px solid #fed7aa}.xp-float{position:fixed;right:1.5rem;top:4rem;z-index:60;border-radius:9999px;background:#10b981;color:#fff;padding:.25rem .75rem;font-size:.875rem;box-shadow:0 10px 15px -3px #0000001a}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;align-items:center;justify-content:center;background:#0000004d}.badge-modal{margin:1rem;width:100%;max-width:24rem;border-radius:1rem;border:1px solid #fed7aa;background:#fff;padding:1.25rem;text-align:center;box-shadow:0 25px 50px -12px #00000040}.badge-modal-icon{margin:0 auto .5rem;height:3rem;width:3rem;border-radius:50%;background:#fef3e2;display:flex;align-items:center;justify-content:center}.badge-modal-title{font-weight:600}.badge-modal-description{margin-top:.25rem;font-size:.875rem;color:#4b5563}.badge-modal-button{margin-top:.75rem;border-radius:.75rem;background:#d97706;padding:.5rem 1rem;font-size:.875rem;font-weight:600;color:#fff}.badge-modal-button:hover{background:#b45309}.error-toast{position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%);z-index:40;border-radius:.75rem;border:1px solid #fecaca;background:#fff;padding:.5rem 1rem;font-size:.875rem;color:#b91c1c;box-shadow:0 10px 15px -3px #0000001a}.error-toast-content{display:flex;align-items:center;gap:.5rem}.tutor-input-area .input-area{background:transparent;border:none;padding:0!important;margin:0!important}.tutor-input-area .chat-input-pill{border:1px solid #e2e8f0;box-shadow:0 1px 3px #0000001a}.tutor-input-area .chat-input-pill:focus-within{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.tutor-input-area .hint-btn-tutoring{background:#3b82f61a;border:1px solid rgba(59,130,246,.2)}.tutor-input-area .hint-btn-tutoring:hover{background:#3b82f626;border-color:#3b82f64d}@media (max-width: 767px){.tutor-stats{gap:1rem}.streak-indicator{flex-direction:column;gap:.25rem;align-items:flex-start}.progress-section{flex-direction:column;align-items:flex-start;gap:.25rem}}.universal-side-panel{position:fixed;left:0;top:0;bottom:0;width:260px;background:#f9f9f9;border-right:1px solid #E0E0E0;display:flex;flex-direction:column;z-index:100;transition:width .3s cubic-bezier(.4,0,.2,1),transform .3s cubic-bezier(.4,0,.2,1);overflow:hidden}.universal-side-panel.closed{transform:translate(-100%)}.universal-side-panel.open{transform:translate(0)}.universal-side-panel.minimized{width:60px;transform:translate(0)}.universal-side-panel.minimized .nav-btn span,.universal-side-panel.minimized .chats-header,.universal-side-panel.minimized .side-panel-chats-section,.universal-side-panel.minimized .user-info,.universal-side-panel.minimized .upgrade-pill{opacity:0;pointer-events:none}.upgrade-star-btn{display:none!important;flex-shrink:0;margin-top:auto}.universal-side-panel.minimized .upgrade-star-btn{display:flex!important;margin:auto 8px 2px}.universal-side-panel.minimized .user-tier-badge{display:none}.side-panel-header{display:flex;align-items:center;justify-content:space-between;padding:12px;flex-shrink:0}.side-panel-logo-btn{display:flex;align-items:center;justify-content:flex-start;padding:4px;border:none;background:transparent;border-radius:6px;cursor:pointer;transition:all .2s}.side-panel-logo-btn:hover{background:#e5e5e5}.side-panel-logo-btn img{width:28px;height:28px;border-radius:4px;-o-object-fit:cover;object-fit:cover}.side-panel-logo-btn svg{color:#1a1a1a;opacity:.8}.panel-toggle-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:transparent;border-radius:4px;cursor:pointer;color:#8e8e8e;transition:all .2s}.panel-toggle-btn:hover{background:#e5e5e5;color:#1a1a1a}.side-panel-nav{display:flex;flex-direction:column;gap:2px;padding:8px;flex-shrink:0}.nav-btn{position:relative;display:flex;align-items:center;gap:10px;padding:8px 10px;border:none;background:transparent;border-radius:6px;cursor:grab;font-size:13px;font-weight:400;color:#1a1a1a;transition:background .15s,opacity .15s;text-align:left;text-decoration:none}.nav-btn:hover{background:#e5e5e5;color:#1a1a1a;text-decoration:none}.nav-btn:active{cursor:grabbing;opacity:.8;color:#1a1a1a}.nav-btn:visited{color:#1a1a1a}.nav-btn:focus{color:#1a1a1a;text-decoration:none}.nav-btn-active{background:#e5e5e5}.nav-btn-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;background:#6366f1;color:#fff;font-size:11px;font-weight:600;border-radius:9px;margin-left:auto}.universal-side-panel.minimized .nav-btn-badge{position:absolute;top:4px;right:4px;min-width:16px;height:16px;font-size:10px;padding:0 4px}.nav-btn span{opacity:1;transition:opacity .3s cubic-bezier(.4,0,.2,1);white-space:nowrap}.nav-btn svg{flex-shrink:0;width:16px;height:16px;opacity:.7}.side-panel-search{padding:0 8px;flex-shrink:0}.side-panel-chats-section{flex:1;overflow:hidden;display:flex;flex-direction:column;min-height:0;opacity:1;transition:opacity .3s cubic-bezier(.4,0,.2,1)}.chats-header{padding:10px 12px 6px;flex-shrink:0;opacity:1;transition:opacity .3s cubic-bezier(.4,0,.2,1)}.chats-header h3{font-size:11px;font-weight:500;color:#8e8e8e;text-transform:uppercase;letter-spacing:.3px;margin:0;white-space:nowrap}.chat-list{flex:1;overflow-y:auto;padding:0 8px 12px;min-height:0}.chat-list::-webkit-scrollbar{width:4px}.chat-list::-webkit-scrollbar-track{background:transparent}.chat-list::-webkit-scrollbar-thumb{background:#d0d0d0;border-radius:2px}.chat-list::-webkit-scrollbar-thumb:hover{background:#b0b0b0}.chat-list-item{position:relative;display:flex;align-items:center;gap:0;padding:8px 10px;margin-bottom:2px;background:transparent;border-radius:6px;cursor:pointer;width:100%;text-align:left;transition:all .15s;outline:none;text-decoration:none;color:inherit}.chat-list-item:hover{background:#e5e5e5;color:inherit;text-decoration:none}.chat-list-item:focus-visible{background:#e5e5e5;box-shadow:0 0 0 2px #1a1a1a inset}.chat-list-item:visited,.chat-list-item:active{color:inherit}.chat-list-item-icon{display:none}.chat-list-item-content{flex:1;min-width:0}.chat-list-item-title{font-size:13px;font-weight:400;color:#1a1a1a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:0}.chat-list-item-date{display:none}.chat-list-loading,.chat-list-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 16px;text-align:center;color:#8e8e8e}.chat-list-loading .loading-spinner{width:24px;height:24px;border:2px solid #E0E0E0;border-top-color:#8e8e8e;border-radius:50%;animation:spin .8s linear infinite;margin-bottom:10px}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.2)}}.chat-list-loading p,.chat-list-empty p{font-size:13px;font-weight:400;color:#8e8e8e;margin:6px 0 3px}.chat-list-empty span{font-size:12px;color:#aaa}.chat-list-loading-more{display:flex;align-items:center;justify-content:center;gap:6px;padding:10px;font-size:12px;color:#8e8e8e}.chat-list-loading-more .loading-spinner-small{width:14px;height:14px;border:2px solid #E0E0E0;border-top-color:#8e8e8e;border-radius:50%;animation:spin .8s linear infinite}.chat-list-end{padding:12px;text-align:center;font-size:11px;color:#aaa}.user-profile-section{position:relative;border-top:1px solid #E0E0E0;flex-shrink:0}.user-profile-container{display:flex;align-items:center;gap:10px;padding:10px 12px;cursor:pointer;transition:background .15s}.user-profile-container:hover{background:#e5e5e5}.user-avatar{width:30px;height:30px;border-radius:50%;overflow:hidden;flex-shrink:0;border:1px solid #E0E0E0}.user-avatar img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.user-avatar-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:#8e8e8e;color:#fff;font-weight:500;font-size:13px}.user-info{flex:1;min-width:0;opacity:1;transition:opacity .3s cubic-bezier(.4,0,.2,1)}.user-name{font-size:13px;font-weight:400;color:#1a1a1a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:3px}.user-tier-badge{display:inline-block;padding:2px 6px;border-radius:3px;font-size:10px;font-weight:500;color:#fff;text-transform:uppercase;letter-spacing:.2px;opacity:1;transition:opacity .3s cubic-bezier(.4,0,.2,1)}.upgrade-pill{padding:5px 12px;border:none;background:#f59e0b;border-radius:12px;font-size:11px;font-weight:500;color:#000;cursor:pointer;transition:background .15s,opacity .3s cubic-bezier(.4,0,.2,1);flex-shrink:0;opacity:1}.upgrade-pill:hover{background:#d97706}.user-dropdown-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:9998}.user-dropdown-menu{position:fixed;min-width:240px;background:#fff;border:1px solid #E5E7EB;border-radius:12px;box-shadow:0 8px 30px -8px #0e111626;padding:8px;z-index:9999}.user-dropdown-email{padding:8px 12px;font-size:13px;color:#6b7280;border-bottom:1px solid #F3F4F6;margin-bottom:4px}.user-dropdown-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:none;background:transparent;border-radius:8px;font-size:14px;font-weight:500;color:#111827;cursor:pointer;transition:all .15s;text-align:left}.user-dropdown-item:hover{background:#f9fafb}.user-dropdown-item-with-arrow{justify-content:space-between}.user-dropdown-item-content{display:flex;align-items:center;gap:10px}.user-dropdown-divider{height:1px;background:#f3f4f6;margin:4px 0}.dropdown-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:999}.user-dropdown{position:absolute;bottom:100%;left:8px;right:8px;margin-bottom:6px;background:#fff;border:1px solid #D0D0D0;border-radius:6px;box-shadow:0 8px 20px #0000001f;padding:4px;z-index:1000}.user-dropdown button{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border:none;background:transparent;border-radius:4px;font-size:13px;color:#1a1a1a;cursor:pointer;transition:all .15s;text-align:left}.user-dropdown button:hover{background:#e5e5e5}.user-dropdown button.sign-out{color:#dc2626}.user-dropdown button.sign-out:hover{background:#fee2e2}.side-panel-overlay{display:none}@media (max-width: 768px){.universal-side-panel{width:280px;z-index:1001}.side-panel-overlay{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:1000;animation:fadeIn .3s}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}}.chat-list-item-wrapper{position:relative;z-index:1}.chat-list-item-wrapper:has(.chat-actions-dropdown){z-index:100}.chat-list-item-actions{display:flex;align-items:center;gap:4px;flex-shrink:0;opacity:0;transition:all .2s ease;position:relative;margin-left:4px}.chat-list-item:hover .chat-list-item-actions{opacity:1}.chat-action-menu-button{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:transparent;border:none;border-radius:4px;cursor:pointer;transition:all .2s ease;font-size:14px;color:#8e8e8e;padding:0}.chat-action-menu-button:hover{color:#1a1a1a;background:#d0d0d0}.chat-action-menu-button:active{transform:scale(.95)}.chat-actions-dropdown{position:absolute;top:calc(100% + 2px);left:8px;right:8px;background:#fff;border-radius:6px;box-shadow:0 4px 12px #00000026,0 0 0 1px #0000001a;border:1px solid #E0E0E0;padding:4px;z-index:1001;animation:dropdownFadeIn .12s ease-out}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:translateY(0)}}.chat-dropdown-action{display:flex;align-items:center;gap:8px;width:100%;padding:7px 10px;background:none;border:none;color:#1a1a1a;font-size:13px;font-weight:400;cursor:pointer;transition:all .15s ease;border-radius:4px;text-align:left}.chat-dropdown-action:hover{background:#e5e5e5}.chat-dropdown-action:active{background:#d0d0d0}.chat-dropdown-action svg{width:16px;height:16px;opacity:.7;flex-shrink:0;transition:opacity .15s ease}.chat-dropdown-action:hover svg{opacity:1}.chat-dropdown-action-delete{color:#dc2626}.chat-dropdown-action-delete:hover{background:#fee2e2;color:#dc2626}.modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;z-index:2000;animation:fadeIn .15s ease-out}.modal-container{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:#fff;border-radius:12px;padding:24px;max-width:400px;width:90%;z-index:2001;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;animation:modalSlideIn .2s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translate(-50%,-48%)}to{opacity:1;transform:translate(-50%,-50%)}}.modal-icon-wrapper{display:flex;justify-content:center;margin-bottom:16px}.modal-icon-circle{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center}.modal-icon-danger{background-color:#fee2e2;color:#dc2626}.modal-title{font-size:18px;font-weight:600;color:#111827;margin:0 0 8px;text-align:center}.modal-description{font-size:14px;color:#6b7280;margin:0 0 24px;text-align:center;line-height:1.5}.modal-input{width:100%;padding:10px 12px;border:1px solid #D1D5DB;border-radius:8px;font-size:14px;color:#111827;margin-bottom:20px;box-sizing:border-box;font-family:inherit;transition:border-color .2s}.modal-input:focus{outline:none;border-color:#1a1a1a;box-shadow:0 0 0 3px #1a1a1a1a}.modal-actions{display:flex;gap:12px;justify-content:flex-end}.modal-button{padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;border:none;transition:all .2s}.modal-button:disabled{opacity:.5;cursor:not-allowed}.modal-button-secondary{background-color:#f3f4f6;color:#374151}.modal-button-secondary:hover:not(:disabled){background-color:#e5e7eb}.modal-button-primary{background-color:#1a1a1a;color:#fff}.modal-button-primary:hover:not(:disabled){background-color:#000}.modal-button-primary:disabled{background-color:#9ca3af}.modal-button-danger{background-color:#dc2626;color:#fff}.modal-button-danger:hover:not(:disabled){background-color:#b91c1c}.study-qr-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0e1116bf;display:flex;align-items:center;justify-content:center;z-index:10000;padding:1rem}.study-qr-modal-content{background:linear-gradient(135deg,#fefaf6,#fff);border-radius:16px;box-shadow:0 20px 60px #0e111640;max-width:480px;width:100%;max-height:90vh;overflow:hidden;position:relative;border:1px solid rgba(229,120,0,.1)}.study-qr-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #f0f1f3}.study-qr-modal-header h3{margin:0;font-size:1.25rem;font-weight:700;color:#0e1116;letter-spacing:-.02em}.study-qr-close-btn{background:none;border:none;cursor:pointer;padding:.5rem;color:#6b7280;border-radius:8px;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.study-qr-close-btn:hover{background-color:#fff5eb;color:#e57800}.study-qr-modal-body{padding:1.5rem;overflow-y:auto;max-height:calc(90vh - 80px)}.study-qr-instructions{text-align:center;margin-bottom:1.5rem}.study-qr-instructions p{margin:0;color:#4b5563;font-size:.9375rem;line-height:1.5}.study-qr-code-container{display:flex;justify-content:center;align-items:center;padding:2rem;background:linear-gradient(135deg,#fff5eb,#fff);border-radius:12px;margin-bottom:1.5rem;border:2px solid rgba(229,120,0,.15);min-height:300px}.study-qr-code-image{width:300px;height:300px;border-radius:8px;box-shadow:0 4px 14px #e5780026}.study-qr-loading{display:flex;flex-direction:column;align-items:center;gap:1rem;color:#6b7280}.study-qr-spinner{width:48px;height:48px;border:4px solid #f0f1f3;border-top-color:#e57800;border-radius:50%;animation:spin 1s linear infinite}.study-qr-success{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:1rem;background:linear-gradient(135deg,#f0fdf4,#fff);border:1px solid #86efac;border-radius:8px;margin-bottom:1.5rem;color:#166534;font-weight:600}.study-qr-success svg{color:#22c55e;flex-shrink:0}.study-qr-alternative{margin-top:1.5rem}.study-qr-divider{text-align:center;margin-bottom:1rem;color:#9ca3af;font-size:.875rem;position:relative}.study-qr-divider span{background:linear-gradient(135deg,#fefaf6,#fff);padding:0 1rem;position:relative;z-index:1}.study-qr-divider:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:#e5e7eb}.study-qr-url-container{display:flex;gap:.5rem}.study-qr-url-input{flex:1;padding:.75rem 1rem;border:1px solid #e5e7eb;border-radius:8px;font-size:.875rem;font-family:SF Mono,Monaco,Consolas,monospace;color:#374151;background:#fff;transition:all .2s ease}.study-qr-url-input:focus{outline:none;border-color:#e57800;box-shadow:0 0 0 3px #e578001a}.study-qr-copy-btn{padding:.75rem 1.5rem;background:#e57800;color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap}.study-qr-copy-btn:hover{background:#cf6d00;box-shadow:0 4px 14px #e5780040}.study-qr-copy-btn:active{transform:scale(.98)}.study-qr-waiting{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:1rem;background:linear-gradient(135deg,#fff5eb,#fff);border:1px dashed rgba(229,120,0,.3);border-radius:8px;margin-top:1.5rem;color:#92400e}.study-qr-waiting p{margin:0;font-size:.875rem}.study-qr-pulse{width:12px;height:12px;background:#e57800;border-radius:50%;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.2)}}@media (max-width: 640px){.study-qr-modal-content{max-width:100%;margin:1rem}.study-qr-code-image{width:250px;height:250px}.study-qr-url-container{flex-direction:column}.study-qr-copy-btn{width:100%}}.transparency-page{min-height:100vh;background:#f8fafc;display:flex;flex-direction:column}.transparency-header{position:sticky;top:0;background:#fff;border-bottom:1px solid #e2e8f0;z-index:100}.transparency-header-content{max-width:900px;margin:0 auto;padding:16px 24px;display:flex;align-items:center;justify-content:space-between}.transparency-back-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;background:transparent;border:1px solid #e2e8f0;border-radius:6px;color:#475569;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s ease}.transparency-back-btn:hover{background:#f1f5f9;border-color:#cbd5e1}.transparency-logo{display:flex;align-items:center;gap:8px;color:#0f172a;font-size:18px;font-weight:600}.transparency-toc{background:#fff;border-bottom:1px solid #e2e8f0;padding:12px 24px;overflow-x:auto}.transparency-toc-content{max-width:900px;margin:0 auto;display:flex;align-items:center;gap:12px;flex-wrap:nowrap}.transparency-toc-label{font-size:12px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.transparency-toc-links{display:flex;gap:8px;flex-wrap:nowrap}.transparency-toc-link{font-size:12px;color:#3b82f6;text-decoration:none;padding:4px 10px;border-radius:4px;background:#eff6ff;white-space:nowrap;transition:all .15s ease}.transparency-toc-link:hover{background:#dbeafe;color:#1d4ed8}.transparency-main{flex:1;padding:40px 24px 60px}.transparency-article{max-width:800px;margin:0 auto;background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000000d,0 1px 2px #0000001a;padding:48px}.transparency-title-section{text-align:center;margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid #e2e8f0}.transparency-title{font-size:28px;font-weight:700;color:#0f172a;margin:0 0 8px;line-height:1.2}.transparency-subtitle{font-size:14px;color:#64748b;margin:0 0 12px;font-style:italic}.transparency-last-updated{font-size:13px;color:#94a3b8;margin:0}.transparency-commitment{background:linear-gradient(135deg,#eff6ff,#f0fdf4);border:1px solid #bfdbfe;border-radius:8px;padding:24px;margin-bottom:36px}.transparency-commitment-title{font-size:16px;font-weight:600;color:#1e40af;margin:0 0 12px}.transparency-commitment-text{font-size:14px;color:#1e3a5f;line-height:1.7;margin:0}.transparency-section{margin-bottom:40px;padding-bottom:32px;border-bottom:1px solid #f1f5f9}.transparency-section:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.transparency-section-title{font-size:20px;font-weight:600;color:#0f172a;margin:0 0 20px}.transparency-section-content{font-size:14px;color:#475569;line-height:1.7}.transparency-prose{margin:0 0 16px}.transparency-prose:last-child{margin-bottom:0}.transparency-subsection{margin-bottom:24px}.transparency-subsection:last-child{margin-bottom:0}.transparency-subsection-title{font-size:15px;font-weight:600;color:#334155;margin:0 0 12px}.transparency-subsection-content{padding-left:16px;border-left:2px solid #e2e8f0}.transparency-list{margin:0 0 16px;padding-left:20px}.transparency-list li{margin-bottom:8px;line-height:1.6}.transparency-list li:last-child{margin-bottom:0}.transparency-list--ordered{list-style-type:decimal}.transparency-checklist{list-style:none;margin:0 0 16px;padding:0}.transparency-checklist-item{display:flex;align-items:flex-start;gap:10px;margin-bottom:10px;padding:10px 14px;border-radius:6px;background:#f8fafc}.transparency-checklist-item:last-child{margin-bottom:0}.transparency-checklist-item--checked{background:#f0fdf4}.transparency-checklist-item--checked .transparency-checklist-icon{color:#16a34a}.transparency-checklist-item--unchecked{background:#fef2f2}.transparency-checklist-item--unchecked .transparency-checklist-icon{color:#dc2626}.transparency-checklist-icon{flex-shrink:0;margin-top:2px}.transparency-dos-donts{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.transparency-dos,.transparency-donts{padding:16px;border-radius:8px}.transparency-dos{background:#f0fdf4;border:1px solid #86efac}.transparency-donts{background:#fef2f2;border:1px solid #fca5a5}.transparency-dos-title,.transparency-donts-title{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;margin:0 0 12px}.transparency-dos-title{color:#16a34a}.transparency-donts-title{color:#dc2626}.transparency-dos-list,.transparency-donts-list{list-style:none;margin:0;padding:0}.transparency-dos-list li,.transparency-donts-list li{display:flex;align-items:flex-start;gap:8px;margin-bottom:8px;font-size:13px;line-height:1.5}.transparency-dos-list li:last-child,.transparency-donts-list li:last-child{margin-bottom:0}.transparency-dos-icon,.transparency-donts-icon{flex-shrink:0;margin-top:2px}.transparency-dos-icon{color:#16a34a}.transparency-donts-icon{color:#dc2626;font-weight:700;font-size:16px;line-height:1}.transparency-faq{margin-bottom:16px}.transparency-faq-item{border:1px solid #e2e8f0;border-radius:8px;margin-bottom:8px;overflow:hidden;transition:all .2s ease}.transparency-faq-item:last-child{margin-bottom:0}.transparency-faq-item.is-expanded{border-color:#3b82f6;box-shadow:0 0 0 1px #3b82f6}.transparency-faq-question{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;background:#f8fafc;border:none;text-align:left;font-size:14px;font-weight:500;color:#0f172a;cursor:pointer;transition:background .15s ease}.transparency-faq-question:hover{background:#f1f5f9}.is-expanded .transparency-faq-question{background:#eff6ff}.transparency-faq-answer{padding:16px;margin:0;font-size:14px;color:#475569;line-height:1.7;background:#fff;border-top:1px solid #e2e8f0}.transparency-infobox{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border-radius:8px;margin-bottom:16px;font-size:13px;line-height:1.6}.transparency-infobox:last-child{margin-bottom:0}.transparency-infobox svg{flex-shrink:0;margin-top:1px}.transparency-infobox--info{background:#eff6ff;border:1px solid #bfdbfe;color:#1e40af}.transparency-infobox--warning{background:#fffbeb;border:1px solid #fcd34d;color:#92400e}.transparency-infobox--important{background:#fef3c7;border:1px solid #f59e0b;color:#92400e}.transparency-contact-section{background:#f8fafc;border-radius:8px;padding:24px;margin:32px -24px -24px;border:none}.transparency-contact-text{font-size:14px;color:#475569;margin:0 0 16px;line-height:1.5}.transparency-contact-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:16px}.transparency-contact-name{font-size:15px;font-weight:600;color:#0f172a;margin:0 0 4px}.transparency-contact-role{font-size:13px;color:#64748b;margin:0 0 2px}.transparency-contact-company{font-size:13px;color:#64748b;margin:0 0 12px}.transparency-contact-link{display:inline-flex;align-items:center;gap:8px;color:#3b82f6;font-size:14px;font-weight:500;text-decoration:none;transition:color .15s ease}.transparency-contact-link:hover{color:#1d4ed8}.transparency-doc-info{margin-top:32px;padding-top:24px;border-top:1px solid #e2e8f0;font-size:12px;color:#94a3b8}.transparency-doc-info p{margin:0 0 6px}.transparency-doc-info p:last-child{margin-bottom:0}.transparency-doc-info strong{color:#64748b}.transparency-footer{background:#fff;border-top:1px solid #e2e8f0;padding:24px;text-align:center}.transparency-footer p{font-size:13px;color:#94a3b8;margin:0}@media (max-width: 768px){.transparency-header-content{padding:12px 16px}.transparency-toc{padding:10px 16px}.transparency-toc-content,.transparency-toc-links{flex-wrap:wrap}.transparency-main{padding:24px 16px 40px}.transparency-article{padding:32px 20px;border-radius:8px}.transparency-title{font-size:22px}.transparency-section-title{font-size:18px}.transparency-dos-donts{grid-template-columns:1fr}.transparency-contact-section{margin:24px -20px -20px;padding:20px;border-radius:0}}@media (max-width: 480px){.transparency-back-btn span{display:none}.transparency-back-btn{padding:8px}.transparency-article{padding:24px 16px}.transparency-title-section{margin-bottom:24px;padding-bottom:20px}.transparency-title{font-size:20px}.transparency-commitment{padding:16px}.transparency-subsection-content{padding-left:12px}}.hero-section__context-bar{position:absolute;top:0;left:0;right:0;background:#0e1116;color:#fff;text-align:center;padding:.625rem 1rem;font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;z-index:20}.hero-section{background:linear-gradient(135deg,#fafafa,#f6f6f6);color:#0e1116;padding:5rem 1rem 4rem;min-height:80vh;display:flex;align-items:center;position:relative;overflow:hidden}.hero-section__container{max-width:800px;margin:0 auto;text-align:center;position:relative;z-index:10}.hero-section__badge{display:inline-block;background:#fff5eb;border:1px solid #FFD9A8;border-radius:100px;padding:.5rem 1rem;font-size:.75rem;margin-bottom:1.5rem;color:#e57800;font-weight:500}.hero-section__title{font-size:2rem;font-weight:800;line-height:1.2;margin-bottom:1.25rem;color:#0e1116;letter-spacing:-.02em}.hero-section__title--highlight{color:#e57800;position:relative;font-size:.6em;font-weight:600}.hero-section__subtitle{font-size:1rem;line-height:1.6;color:#475569;margin-bottom:2rem;max-width:600px;margin-left:auto;margin-right:auto}.hero-section__video-container{margin-bottom:2rem}.hero-section__video-label{font-size:.875rem;color:#475569;margin-bottom:1rem;text-align:center}.hero-section__video-wrapper{position:relative;width:100%;max-width:720px;margin:0 auto;aspect-ratio:16 / 9;border-radius:12px;overflow:hidden;background:#f1f5f9;box-shadow:0 8px 30px #0000001f}.hero-section__video{position:absolute;top:0;left:0;width:100%;height:100%;border:none}.hero-section__video-placeholder{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#e57800,#ff8c42);color:#fff;font-size:1rem;font-weight:500}.hero-section__comparison{font-size:1rem;line-height:1.6;color:#475569;margin-bottom:1.5rem;max-width:600px;margin-left:auto;margin-right:auto;text-align:center}.hero-section__cta-group{display:flex;flex-direction:column;gap:.75rem;margin-bottom:3rem}.hero-section__cta{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.875rem 2rem;font-size:1rem;font-weight:600;border-radius:12px;cursor:pointer;transition:all .2s ease;text-decoration:none;border:none}.hero-section__cta--primary{background:#e57800;color:#fff;box-shadow:0 4px 14px #e5780040}.hero-section__cta--primary:hover{background:#cc6a00;transform:translateY(-2px);box-shadow:0 6px 20px #e5780059}.hero-section__cta--secondary{background:transparent;border:2px solid #E5E7EB;color:#475569}.hero-section__cta--secondary:hover{border-color:#e57800;color:#e57800;background:#fff5eb}.hero-section__stats{display:flex;justify-content:center;gap:2rem;flex-wrap:wrap}.hero-section__stat{display:flex;flex-direction:column;align-items:center}.hero-section__stat-value{font-size:1.5rem;font-weight:700;color:#f4c542}.hero-section__stat-label{font-size:.75rem;color:#94a3b8;margin-top:.25rem}@media (min-width: 768px){.hero-section__context-bar{font-size:.875rem;padding:.75rem 1rem}.hero-section{padding:7rem 2rem 6rem}.hero-section__badge{font-size:.875rem;padding:.625rem 1.25rem}.hero-section__title{font-size:3.5rem}.hero-section__subtitle{font-size:1.25rem}.hero-section__video-label{font-size:1rem}.hero-section__video-wrapper{max-width:800px}.hero-section__comparison{font-size:1.125rem}.hero-section__cta-group{flex-direction:row;justify-content:center;gap:1rem}.hero-section__cta{min-width:180px}.hero-section__stats{gap:4rem}.hero-section__stat-value{font-size:2rem}.hero-section__stat-label{font-size:.875rem}}.demo-widget{background:#fff;border-radius:16px;box-shadow:0 8px 30px -8px #0e111626;overflow:hidden}.problem-selector{padding:2rem 1.5rem}.problem-selector__header{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-bottom:.5rem}.problem-selector__icon{font-size:1.5rem;color:#e57800}.problem-selector__title{font-size:1.25rem;font-weight:700;color:#e57800;margin:0}.problem-selector__subtitle{font-size:.9rem;text-align:center;color:#64748b;margin-bottom:1.5rem}.problem-selector__grid{display:flex;flex-direction:column;gap:.75rem}.problem-card{background:#fff;border-radius:12px;border:1px solid #E2E8F0;overflow:hidden;transition:all .25s ease}.problem-card:hover{border-color:#cbd5e1;box-shadow:0 4px 12px #0000000f}.problem-card--selected{border-color:#e57800;box-shadow:0 4px 16px #e578001f}.problem-card__main{width:100%;padding:1.25rem;background:transparent;border:none;cursor:pointer;text-align:left;display:flex;align-items:center;gap:1rem;transition:background .2s ease}.problem-card__main:hover{background:#f8fafc}.problem-card--selected .problem-card__main{background:transparent}.problem-card__equation{font-size:1.25rem;font-weight:600;color:#0e1116;min-width:140px;flex-shrink:0}.problem-card__equation .katex{font-size:1.25rem}.problem-card--selected .problem-card__equation,.problem-card--selected .problem-card__equation .katex{color:#e57800}.problem-card__description{font-size:.8rem;color:#64748b;text-transform:uppercase;letter-spacing:.5px;flex:1}.problem-card__hint{font-size:.75rem;color:#94a3b8;white-space:nowrap}.problem-card--selected .problem-card__hint{color:#e57800}.problem-card__actions{display:flex;gap:.5rem;padding:.5rem 1rem 1rem;animation:fadeIn .15s ease-out}.problem-card__action{flex:1;display:flex;align-items:center;gap:.75rem;padding:.875rem 1rem;border-radius:10px;border:2px solid transparent;cursor:pointer;transition:all .2s ease;text-align:left}.problem-card__action--socrato{background:linear-gradient(135deg,#fff7ed,#ffedd5);border-color:#e57800;position:relative}.problem-card__action--socrato:before{content:"★ Recommended";position:absolute;top:-8px;right:12px;background:#e57800;color:#fff;font-size:.65rem;font-weight:600;padding:2px 8px;border-radius:4px;text-transform:uppercase;letter-spacing:.5px}.problem-card__action--socrato:hover{background:linear-gradient(135deg,#ffedd5,#fed7aa);border-color:#cc6a00;transform:translateY(-2px);box-shadow:0 4px 12px #e5780040}.problem-card__action--chatgpt{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-color:#adb5bd}.problem-card__action--chatgpt:hover{background:linear-gradient(135deg,#e9ecef,#dee2e6);border-color:#343541;transform:translateY(-2px);box-shadow:0 4px 12px #34354133}.problem-card__action-icon{width:28px;height:28px;-o-object-fit:contain;object-fit:contain;flex-shrink:0}.problem-card__action-label{display:flex;flex-direction:column;gap:.125rem}.problem-card__action-label strong{font-size:.9rem;font-weight:600;color:#0e1116}.problem-card__action--socrato .problem-card__action-label strong{color:#e57800}.problem-card__action-label small{font-size:.75rem;color:#64748b}.chatgpt-response{min-height:400px;display:flex;flex-direction:column}.chatgpt-response__header{background:#343541;color:#fff;padding:.875rem 1.25rem;display:flex;align-items:center;justify-content:space-between}.chatgpt-response__badge{display:flex;align-items:center;gap:.5rem;font-weight:600}.chatgpt-response__badge-icon{width:24px;height:24px;-o-object-fit:contain;object-fit:contain}.chatgpt-response__problem{font-family:Times New Roman,serif;font-size:.95rem;background:#ffffffd9;padding:.375rem .75rem;border-radius:6px}.chatgpt-response__content{flex:1;padding:1.5rem;overflow-y:auto;max-height:350px}.chatgpt-response__loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:200px;gap:1rem;color:#475569}.chatgpt-response__spinner{width:32px;height:32px;border:3px solid #E5E7EB;border-top-color:#343541;border-radius:50%;animation:spin 1s linear infinite}.chatgpt-response__error{text-align:center;padding:2rem;color:#dc3545}.chatgpt-response__retry{margin-top:1rem;padding:.5rem 1rem;background:#343541;color:#fff;border:none;border-radius:8px;cursor:pointer}.chatgpt-response__footer{padding:1.5rem;background:#fafafa;border-top:1px solid #E5E7EB}.chatgpt-response__notice{font-size:.875rem;color:#475569;text-align:center;margin-bottom:1rem;line-height:1.5}.chatgpt-response__cta{width:100%;min-height:48px;padding:.875rem 1.5rem;font-size:1rem;font-weight:600;background:#e57800;color:#fff;border:none;border-radius:12px;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 14px #e5780040}.chatgpt-response__cta:hover{background:#cc6a00;transform:translateY(-2px);box-shadow:0 6px 20px #e5780059}.socrato-demo{min-height:400px;display:flex;flex-direction:column}.socrato-demo__header{background:#e57800;color:#fff;padding:1rem 1.5rem;display:flex;align-items:center;justify-content:space-between}.socrato-demo__badge{display:flex;align-items:center;gap:.5rem;font-weight:600}.socrato-demo__badge-icon{width:24px;height:24px;-o-object-fit:contain;object-fit:contain}.socrato-demo__problem{font-family:Times New Roman,serif;font-size:.95rem;background:#ffffffd9;padding:.375rem .75rem;border-radius:6px}.socrato-demo__chat{flex:1;padding:1rem;overflow-y:auto;max-height:280px;display:flex;flex-direction:column;gap:.75rem}.socrato-demo__message{max-width:85%;padding:.875rem 1rem;border-radius:12px;font-size:.9375rem;line-height:1.5}.socrato-demo__message--user{align-self:flex-end;background:#fff5eb;color:#0e1116;border:1px solid #FFD9A8;border-bottom-right-radius:4px}.socrato-demo__message--assistant{align-self:flex-start;background:transparent;color:#0e1116;border:none;max-width:100%;padding-left:0;padding-right:0}.socrato-demo__typing{display:flex;gap:4px;padding:.25rem 0}.socrato-demo__typing span{width:8px;height:8px;background:#e57800;border-radius:50%;animation:bounce 1.4s infinite ease-in-out both}.socrato-demo__typing span:nth-child(1){animation-delay:-.32s}.socrato-demo__typing span:nth-child(2){animation-delay:-.16s}@keyframes bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.socrato-demo__error{padding:1rem;text-align:center;color:#dc3545}.socrato-demo__retry{margin-top:.5rem;padding:.5rem 1rem;background:#e57800;color:#fff;border:none;border-radius:8px;cursor:pointer}.socrato-demo__options{padding:1rem;background:#fafafa;border-top:1px solid #E5E7EB}.socrato-demo__options-label{font-size:.75rem;color:#475569;margin-bottom:.75rem;text-transform:uppercase;letter-spacing:.5px}.socrato-demo__option{display:block;width:100%;min-height:44px;padding:.75rem 1rem;margin-bottom:.5rem;font-size:.875rem;text-align:left;background:#fff;border:2px solid #E5E7EB;border-radius:8px;cursor:pointer;transition:all .2s ease}.socrato-demo__option:last-child{margin-bottom:0}.socrato-demo__option:hover{border-color:#e57800;background:#fff5eb}.socrato-demo__footer{padding:1.5rem;background:#fafafa;border-top:1px solid #E5E7EB}.socrato-demo__notice{font-size:.875rem;color:#475569;text-align:center;margin-bottom:1rem;line-height:1.5}.socrato-demo__cta{width:100%;min-height:48px;padding:.875rem 1.5rem;font-size:1rem;font-weight:600;background:#10a37f;color:#fff;border:none;border-radius:12px;cursor:pointer;transition:all .2s ease}.socrato-demo__cta:hover{background:#0d8c6c}.comparison-panel{padding:2rem 1.5rem}.comparison-panel__title{font-size:1.5rem;font-weight:700;text-align:center;margin-bottom:1.5rem;color:#0e1116}.comparison-panel__grid{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.comparison-panel__column{border-radius:12px;padding:1.25rem}.comparison-panel__column--chatgpt{background:#f8f9fa;border:2px solid #343541}.comparison-panel__column--socrato{background:#fff5eb;border:2px solid #E57800}.comparison-panel__column-header{display:flex;align-items:center;gap:.5rem;font-size:1.125rem;font-weight:700;margin-bottom:1rem}.comparison-panel__icon{width:24px;height:24px;-o-object-fit:contain;object-fit:contain}.comparison-panel__list{list-style:none;padding:0;margin:0}.comparison-panel__list li{padding:.5rem 0 .5rem 1.5rem;position:relative;font-size:.9375rem;color:#0e1116}.comparison-panel__column--chatgpt .comparison-panel__list li:before{content:"✗";position:absolute;left:0;color:#dc3545;font-weight:700}.comparison-panel__column--socrato .comparison-panel__list li:before{content:"✓";position:absolute;left:0;color:#28a745;font-weight:700}.comparison-panel__list-highlight{font-weight:600;color:#e57800!important}.comparison-panel__stats{display:flex;justify-content:center;gap:2rem;margin-bottom:2rem}.comparison-panel__stat{text-align:center}.comparison-panel__stat-value{display:block;font-size:2rem;font-weight:700;color:#f4c542}.comparison-panel__stat-label{font-size:.75rem;color:#475569;max-width:120px;display:block}.comparison-panel__cta-group{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem}.comparison-panel__cta{min-height:48px;padding:.875rem 1.5rem;font-size:1rem;font-weight:600;border-radius:12px;border:none;cursor:pointer;transition:all .2s ease}.comparison-panel__cta--primary{background:#e57800;color:#fff;box-shadow:0 4px 14px #e5780040}.comparison-panel__cta--primary:hover{background:#cc6a00;transform:translateY(-2px);box-shadow:0 6px 20px #e5780059}.comparison-panel__cta--secondary{background:transparent;border:2px solid #E5E7EB;color:#475569}.comparison-panel__cta--secondary:hover{border-color:#e57800;color:#e57800}.comparison-panel__trust{font-size:.75rem;color:#94a3b8;text-align:center;line-height:1.5}@media (min-width: 768px){.problem-selector{padding:2rem 2.5rem}.problem-selector__grid{gap:.5rem}.problem-card__main{padding:1rem 1.5rem}.problem-card__equation{font-size:1.35rem;min-width:160px}.problem-card__actions{padding:0 1.5rem 1.25rem;gap:.75rem}.problem-card__action{padding:1rem 1.25rem}.chatgpt-response__content,.socrato-demo__chat{max-height:400px}.comparison-panel{padding:2.5rem 2rem}.comparison-panel__grid{flex-direction:row}.comparison-panel__column{flex:1}.comparison-panel__cta-group{flex-direction:row;justify-content:center}.comparison-panel__cta{min-width:200px}}.social-proof-section{padding:4rem 1rem;background:#fff}.social-proof-section__container{max-width:800px;margin:0 auto;text-align:center}.social-proof-section__title{font-size:1.5rem;font-weight:700;margin-bottom:2rem;color:#0e1116}.social-proof-section__quote{background:#fafafa;border-radius:16px;padding:2rem;margin-bottom:2rem;border:1px solid #E5E7EB}.social-proof-section__blockquote{font-size:1.125rem;line-height:1.6;color:#0e1116;font-style:italic;margin:0 0 1rem}.social-proof-section__attribution{display:flex;flex-direction:column;gap:.25rem}.social-proof-section__author{font-weight:700;color:#0e1116}.social-proof-section__role{font-size:.875rem;color:#475569}.social-proof-section__logos{display:flex;justify-content:center;gap:2rem;flex-wrap:wrap}.social-proof-section__logo{padding:1rem 2rem;background:#fafafa;border-radius:8px;font-weight:600;color:#475569;border:1px solid #E5E7EB}@media (min-width: 768px){.social-proof-section{padding:5rem 2rem}.social-proof-section__title{font-size:2rem}.social-proof-section__blockquote{font-size:1.25rem}}.faq-section{padding:4rem 1rem;background:linear-gradient(135deg,#fafafa,#f6f6f6)}.faq-section__container{max-width:700px;margin:0 auto}.faq-section__title{font-size:1.5rem;font-weight:700;text-align:center;margin-bottom:2rem;color:#0e1116}.faq-section__list{display:flex;flex-direction:column;gap:.75rem}.faq-section__item{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #0e11160d;border:1px solid #E5E7EB}.faq-section__question{width:100%;display:flex;justify-content:space-between;align-items:center;padding:1.25rem;font-size:1rem;font-weight:600;text-align:left;background:none;border:none;cursor:pointer;color:#0e1116;transition:background .2s ease}.faq-section__question:hover{background:#fff5eb}.faq-section__icon{font-size:1.5rem;color:#e57800;flex-shrink:0;margin-left:1rem}.faq-section__answer{padding:0 1.25rem 1.25rem;font-size:.9375rem;color:#475569;line-height:1.6}@media (min-width: 768px){.faq-section{padding:5rem 2rem}.faq-section__title{font-size:2rem}}.cta-section{padding:4rem 1rem;background:linear-gradient(135deg,#fafafa,#f6f6f6);text-align:center}.cta-section__container{max-width:600px;margin:0 auto}.cta-section__title{font-size:1.5rem;font-weight:700;color:#0e1116;margin-bottom:1rem;line-height:1.3}.cta-section__title-highlight{color:#e57800}.cta-section__subtitle{font-size:1rem;color:#475569;margin-bottom:2rem;line-height:1.5}.cta-section__button{display:inline-flex;align-items:center;justify-content:center;min-height:56px;padding:1rem 2.5rem;font-size:1.125rem;font-weight:600;background:#e57800;color:#fff;border:none;border-radius:12px;cursor:pointer;transition:all .2s ease;margin-bottom:2rem;box-shadow:0 4px 14px #e5780040}.cta-section__button:hover{background:#cc6a00;transform:translateY(-2px);box-shadow:0 6px 20px #e5780059}.cta-section__trust{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem;font-size:.75rem;color:#94a3b8}.cta-section__trust-star{color:#f4c542}.cta-section__trust-divider{display:none}@media (min-width: 768px){.cta-section{padding:5rem 2rem}.cta-section__title{font-size:2.25rem}.cta-section__subtitle{font-size:1.125rem}.cta-section__trust{gap:1rem;font-size:.875rem}.cta-section__trust-divider{display:inline}}.schools-landing-page{--brand-orange: #E57800;--brand-orange-hover: #CC6A00;--brand-orange-light: #FFF5EB;--brand-gold: #F4C542;--brand-gold-dark: #D2A721;--text-primary: #0E1116;--text-muted: #475569;--text-light: #94A3B8;--surface: #FFFFFF;--background: #FAFAFA;--border: #E5E7EB;--gradient-hero: linear-gradient(135deg, #FAFAFA 0%, #F6F6F6 100%);min-height:100vh;background-color:var(--background);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:var(--text-primary)}.demo-section{padding:3rem 1rem;background:#fff}.demo-section__container{max-width:800px;margin:0 auto}.demo-section__title{font-size:1.75rem;font-weight:700;text-align:center;margin-bottom:.75rem;color:var(--text-primary)}.demo-section__subtitle{font-size:1rem;text-align:center;color:var(--text-muted);margin-bottom:2rem;max-width:500px;margin-left:auto;margin-right:auto;line-height:1.5}.schools-footer{background-color:var(--text-primary);color:var(--surface);padding:2rem 1rem}.schools-footer__container{max-width:1200px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:1rem}.schools-footer__copyright{font-size:.875rem;color:var(--text-light)}.schools-footer__links{display:flex;gap:1.5rem}.schools-footer__link{font-size:.875rem;color:var(--text-light);text-decoration:none;transition:color .2s ease}.schools-footer__link:hover{color:var(--brand-orange)}@media (min-width: 768px){.demo-section{padding:5rem 2rem}.demo-section__title{font-size:2.5rem}.demo-section__subtitle{font-size:1.125rem}.schools-footer__container{flex-direction:row;justify-content:space-between}}.tutoring-hero{background:linear-gradient(135deg,#fafafa,#f6f6f6);color:#0e1116;padding:2rem 1rem 4rem;min-height:70vh;display:flex;flex-direction:column;align-items:center;position:relative}.tutoring-hero__logo-bar{display:flex;align-items:center;gap:.5rem;align-self:flex-start;margin-bottom:3rem}.tutoring-hero__logo{width:36px;height:36px}.tutoring-hero__logo-text{font-size:1.125rem;font-weight:700;color:#0e1116}.tutoring-hero__container{max-width:700px;margin:0 auto;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1}.tutoring-hero__title{font-size:2rem;font-weight:800;line-height:1.2;margin-bottom:1.25rem;color:#0e1116;letter-spacing:-.02em}.tutoring-hero__title--highlight{color:#e57800}.tutoring-hero__subtitle{font-size:1rem;line-height:1.6;color:#475569;margin-bottom:2.5rem;max-width:560px}.tutoring-hero__cta-group{display:flex;flex-direction:column;gap:.75rem;width:100%;max-width:320px}.tutoring-hero__cta{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.875rem 2rem;font-size:1rem;font-weight:600;border-radius:12px;cursor:pointer;transition:all .2s ease;text-decoration:none;border:none}.tutoring-hero__cta--primary{background:#e57800;color:#fff;box-shadow:0 4px 14px #e5780040}.tutoring-hero__cta--primary:hover{background:#cc6a00;transform:translateY(-2px);box-shadow:0 6px 20px #e5780059}.tutoring-hero__phone{font-size:.9375rem;color:#475569;margin-top:1rem}.tutoring-hero__phone-link{color:#e57800;text-decoration:none;font-weight:600}.tutoring-hero__phone-link:hover{text-decoration:underline}@media (min-width: 768px){.tutoring-hero{padding:2.5rem 2rem 6rem}.tutoring-hero__logo-bar{margin-bottom:4rem}.tutoring-hero__title{font-size:3.5rem}.tutoring-hero__subtitle{font-size:1.25rem}.tutoring-hero__cta-group{flex-direction:row;justify-content:center;max-width:none;gap:1rem}.tutoring-hero__cta{min-width:200px}}.tutoring-social-proof{padding:4rem 1rem;background:#fff}.tutoring-social-proof__container{max-width:700px;margin:0 auto;text-align:center;display:flex;flex-direction:column;gap:2rem}.tutoring-social-proof__headline{font-size:1.5rem;font-weight:800;color:#e57800;line-height:1.3}.tutoring-social-proof__quotes{display:flex;flex-direction:column;gap:1.25rem}.tutoring-social-proof__quote{background:#fafafa;border-radius:16px;padding:1.5rem;border:1px solid #E5E7EB;text-align:left}.tutoring-social-proof__blockquote{font-size:1rem;line-height:1.6;color:#0e1116;font-style:italic;margin:0 0 .75rem}.tutoring-social-proof__attribution{display:flex;flex-direction:column;gap:.125rem}.tutoring-social-proof__author{font-weight:700;color:#0e1116;font-size:.9375rem}.tutoring-social-proof__role{font-size:.8125rem;color:#475569}.tutoring-social-proof__pilot{font-size:.875rem;font-weight:600;color:#475569;padding:.75rem 1.5rem;background:#fafafa;border-radius:8px;border:1px solid #E5E7EB;display:inline-block;margin:0 auto}@media (min-width: 768px){.tutoring-social-proof{padding:5rem 2rem}.tutoring-social-proof__headline{font-size:2rem}.tutoring-social-proof__quote{padding:2rem}.tutoring-social-proof__blockquote{font-size:1.125rem}}.tutoring-how-it-works{padding:4rem 1rem;background:linear-gradient(135deg,#fafafa,#f6f6f6)}.tutoring-how-it-works__container{max-width:800px;margin:0 auto;text-align:center}.tutoring-how-it-works__title{font-size:1.5rem;font-weight:700;margin-bottom:2.5rem;color:#0e1116}.tutoring-how-it-works__steps{display:flex;flex-direction:column;gap:2rem;margin-bottom:2.5rem}.tutoring-how-it-works__step{display:flex;flex-direction:column;align-items:center}.tutoring-how-it-works__step-number{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:#e57800;color:#fff;font-size:1.25rem;font-weight:700;border-radius:50%;margin-bottom:1rem;box-shadow:0 4px 14px #e5780040}.tutoring-how-it-works__step-title{font-size:1.125rem;font-weight:700;margin-bottom:.5rem;color:#0e1116}.tutoring-how-it-works__step-text{font-size:.9375rem;color:#475569;line-height:1.5;max-width:400px}.tutoring-how-it-works__cta{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.875rem 2rem;font-size:1rem;font-weight:600;background:#e57800;color:#fff;border:none;border-radius:12px;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 14px #e5780040}.tutoring-how-it-works__cta:hover{background:#cc6a00;transform:translateY(-2px);box-shadow:0 6px 20px #e5780059}@media (min-width: 768px){.tutoring-how-it-works{padding:5rem 2rem}.tutoring-how-it-works__title{font-size:2rem}.tutoring-how-it-works__steps{flex-direction:row;justify-content:center}.tutoring-how-it-works__step{flex:1;max-width:250px}}.pricing-section{padding:4rem 1rem;background:#fff;text-align:center}.pricing-section__container{max-width:800px;margin:0 auto}.pricing-section__title{font-size:1.5rem;font-weight:700;color:#0e1116;margin-bottom:.5rem}.pricing-section__subtitle{font-size:1rem;color:#475569;margin-bottom:2.5rem;line-height:1.5}.pricing-section__cards{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2.5rem}.pricing-section__card{background:#fafafa;border:1px solid #E5E7EB;border-radius:16px;padding:2rem;text-align:left;position:relative}.pricing-section__card--highlighted{background:linear-gradient(135deg,#fff7ed,#ffedd5);border-color:#ffd9a8}.pricing-section__badge{position:absolute;top:-.75rem;right:1.5rem;background:#e57800;color:#fff;font-size:.75rem;font-weight:600;padding:.25rem .75rem;border-radius:100px}.pricing-section__card-header{margin-bottom:1.5rem}.pricing-section__card-name{font-size:1.125rem;font-weight:700;color:#0e1116;margin-bottom:.5rem}.pricing-section__card-price{margin-bottom:.25rem}.pricing-section__price-amount{font-size:2.5rem;font-weight:800;color:#0e1116}.pricing-section__price-period{font-size:1rem;color:#475569;font-weight:500}.pricing-section__card-phase{font-size:.875rem;color:#e57800;font-weight:600}.pricing-section__features{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.75rem}.pricing-section__feature{font-size:.9375rem;color:#475569;padding-left:1.5rem;position:relative;line-height:1.4}.pricing-section__feature:before{content:"✓";position:absolute;left:0;color:#e57800;font-weight:700}.pricing-section__cta{display:inline-flex;align-items:center;justify-content:center;min-height:56px;padding:1rem 2.5rem;font-size:1.125rem;font-weight:600;background:#e57800;color:#fff;border:none;border-radius:12px;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 14px #e5780040}.pricing-section__cta:hover{background:#cc6a00;transform:translateY(-2px);box-shadow:0 6px 20px #e5780059}@media (min-width: 768px){.pricing-section{padding:5rem 2rem}.pricing-section__title{font-size:2rem}.pricing-section__cards{flex-direction:row;align-items:stretch}.pricing-section__card{flex:1}}.tutoring-faq{padding:4rem 1rem;background:linear-gradient(135deg,#fafafa,#f6f6f6)}.tutoring-faq__container{max-width:700px;margin:0 auto}.tutoring-faq__title{font-size:1.5rem;font-weight:700;text-align:center;margin-bottom:2rem;color:#0e1116}.tutoring-faq__list{display:flex;flex-direction:column;gap:.75rem}.tutoring-faq__item{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #0e11160d;border:1px solid #E5E7EB}.tutoring-faq__question{width:100%;display:flex;justify-content:space-between;align-items:center;padding:1.25rem;font-size:1rem;font-weight:600;text-align:left;background:none;border:none;cursor:pointer;color:#0e1116;transition:background .2s ease}.tutoring-faq__question:hover{background:#fff5eb}.tutoring-faq__icon{font-size:1.5rem;color:#e57800;flex-shrink:0;margin-left:1rem}.tutoring-faq__answer{padding:0 1.25rem 1.25rem;font-size:.9375rem;color:#475569;line-height:1.6}@media (min-width: 768px){.tutoring-faq{padding:5rem 2rem}.tutoring-faq__title{font-size:2rem}}.tutoring-cta{padding:4rem 1rem;background:#fff;text-align:center}.tutoring-cta__container{max-width:600px;margin:0 auto}.tutoring-cta__title{font-size:1.5rem;font-weight:700;color:#0e1116;margin-bottom:.75rem;line-height:1.3}.tutoring-cta__body{font-size:1rem;color:#475569;margin-bottom:2rem;line-height:1.5}.tutoring-cta__button{display:inline-flex;align-items:center;justify-content:center;min-height:56px;padding:1rem 2.5rem;font-size:1.125rem;font-weight:600;background:#e57800;color:#fff;border:none;border-radius:12px;cursor:pointer;transition:all .2s ease;margin-bottom:1.5rem;box-shadow:0 4px 14px #e5780040}.tutoring-cta__button:hover{background:#cc6a00;transform:translateY(-2px);box-shadow:0 6px 20px #e5780059}.tutoring-cta__phone{font-size:.9375rem;color:#475569}.tutoring-cta__phone-link{color:#e57800;font-weight:600;text-decoration:none}.tutoring-cta__phone-link:hover{text-decoration:underline}@media (min-width: 768px){.tutoring-cta{padding:5rem 2rem}.tutoring-cta__title{font-size:2.25rem}.tutoring-cta__body{font-size:1.125rem}}.tutoring-video{padding:3rem 1rem;background:#fafafa}.tutoring-video__container{max-width:640px;margin:0 auto}.tutoring-video__embed-wrapper{position:relative;width:100%;padding-bottom:56.25%;border-radius:16px;overflow:hidden;background:#0e1116}.tutoring-video__iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:none}.tutoring-video__placeholder{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;background:linear-gradient(135deg,#1a1a2e,#16213e)}.tutoring-video__placeholder-icon{font-size:2.5rem;color:#fff9}.tutoring-video__placeholder-text{font-size:.875rem;color:#ffffff80;font-weight:500}.tutoring-video__caption{text-align:center;font-size:.9375rem;color:#475569;margin-top:1rem;line-height:1.5;font-style:italic}@media (min-width: 768px){.tutoring-video{padding:4rem 2rem}.tutoring-video__caption{font-size:1rem}}.tutoring-landing-page{--brand-orange: #E57800;--brand-orange-hover: #CC6A00;--brand-orange-light: #FFF5EB;--brand-gold: #F4C542;--text-primary: #0E1116;--text-muted: #475569;--text-light: #94A3B8;--surface: #FFFFFF;--background: #FAFAFA;--border: #E5E7EB;min-height:100vh;background-color:var(--background);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:var(--text-primary)}.tutoring-demo-section{padding:3rem 1rem;background:#fff}.tutoring-demo-section__container{max-width:800px;margin:0 auto}.tutoring-demo-section__title{font-size:1.75rem;font-weight:700;text-align:center;margin-bottom:.75rem;color:var(--text-primary)}.tutoring-demo-section__subtitle{font-size:1rem;text-align:center;color:var(--text-muted);margin-bottom:2rem;max-width:500px;margin-left:auto;margin-right:auto;line-height:1.5}.tutoring-footer{background-color:var(--text-primary);color:var(--surface);padding:2rem 1rem}.tutoring-footer__container{max-width:800px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:1rem;text-align:center}.tutoring-footer__credentials{font-size:.875rem;color:var(--text-light);line-height:1.5}.tutoring-footer__contact{display:flex;align-items:center;gap:.75rem}.tutoring-footer__link{font-size:.875rem;color:var(--brand-orange);text-decoration:none;transition:color .2s ease}.tutoring-footer__link:hover{color:var(--brand-orange-light);text-decoration:underline}.tutoring-footer__divider{color:var(--text-light)}.tutoring-footer__copyright{font-size:.75rem;color:var(--text-light)}@media (min-width: 768px){.tutoring-demo-section{padding:5rem 2rem}.tutoring-demo-section__title{font-size:2.5rem}.tutoring-demo-section__subtitle{font-size:1.125rem}}.stride-sidebar{width:320px;background:#fff;border-right:1px solid #e5e7eb;display:flex;flex-direction:column;height:100%}.stride-sidebar__search-container{padding:16px;border-bottom:1px solid #e5e7eb}.stride-sidebar__search-box{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb;transition:all .2s ease}.stride-sidebar__search-box:focus-within{background:#fff;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.stride-sidebar__search-icon{color:#64748b;flex-shrink:0}.stride-sidebar__search-input{flex:1;background:transparent;border:none;outline:none;font-size:14px;color:#1f2937}.stride-sidebar__search-input::-moz-placeholder{color:#9ca3af}.stride-sidebar__search-input::placeholder{color:#9ca3af}.stride-sidebar__filters{padding:16px;border-bottom:1px solid #e5e7eb;background:#f9fafb}.stride-sidebar__list{flex:1;overflow-y:auto;padding:8px}.stride-sidebar__loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;color:#64748b}.stride-sidebar__spinner{width:24px;height:24px;border:2px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:12px}.stride-sidebar__empty{padding:20px;text-align:center}.stride-sidebar__empty-text{color:#64748b;margin-bottom:8px}.stride-sidebar__empty-hint{font-size:12px;color:#9ca3af}.stride-sidebar__item{width:100%;padding:12px;margin-bottom:8px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .2s ease;text-align:left;position:relative;display:flex;overflow:hidden}.stride-sidebar__item:hover{background:#f9fafb;border-color:#d1d5db}.stride-sidebar__item--selected{background:#eff6ff;border-color:#3b82f6;box-shadow:0 1px 3px #3b82f61a}.stride-sidebar__urgency-bar{position:absolute;left:0;top:0;bottom:0;width:4px;border-radius:8px 0 0 8px}.stride-sidebar__urgency-bar--high{background:#dc2626}.stride-sidebar__urgency-bar--medium{background:#f59e0b}.stride-sidebar__urgency-bar--low{background:#3b82f6}.stride-sidebar__item--urgency-high,.stride-sidebar__item--urgency-medium,.stride-sidebar__item--urgency-low{padding-left:16px}.stride-sidebar__item--urgency-high{background:linear-gradient(to right,#fee2e2,#fff 30%)}.stride-sidebar__item--urgency-medium{background:linear-gradient(to right,#fef3c7,#fff 30%)}.stride-sidebar__item--urgency-low{background:linear-gradient(to right,#dbeafe,#fff 30%)}.stride-sidebar__item-content{flex:1;min-width:0}.stride-sidebar__item-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.stride-sidebar__item-name{font-weight:600;color:#1f2937;font-size:14px}.stride-sidebar__item-last-active{font-size:11px;color:#9ca3af}.stride-sidebar__item-meta{display:flex;align-items:center;gap:4px;margin-bottom:10px;font-size:12px;color:#64748b}.stride-sidebar__separator{color:#d1d5db}.stride-sidebar__item-email{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stride-sidebar__item-stats{display:flex;flex-wrap:wrap;gap:8px}.stride-sidebar__stat{display:inline-flex;align-items:center;gap:4px;font-size:11px;color:#64748b;padding:2px 6px;background:#f3f4f6;border-radius:4px}.stride-sidebar__stat--success{background:#d1fae5;color:#059669}.stride-sidebar__stat--warning{background:#fef3c7;color:#d97706}.stride-sidebar__stat--error{background:#fee2e2;color:#dc2626}.stride-sidebar__trend-icon{flex-shrink:0}.stride-sidebar__trend-icon--up{color:#059669}.stride-sidebar__trend-icon--down{color:#dc2626}.stride-sidebar__trend-icon--stable{color:#6b7280}.stride-sidebar__persistent-badge{font-size:10px;color:#7c3aed;font-weight:600;margin-left:2px}.stride-sidebar__attention-flag{display:flex;align-items:center;gap:4px;margin-top:8px;padding:4px 8px;background:#fee2e2;border-radius:4px;font-size:11px;font-weight:600;color:#dc2626}.stride-sidebar__attention-flag svg{flex-shrink:0}.stride-sidebar__item-actions{display:flex;align-items:center;gap:8px}.stride-sidebar__view-chats-btn{display:flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;background:transparent;border:1px solid transparent;border-radius:6px;color:#94a3b8;cursor:pointer;opacity:0;transition:all .15s ease}.stride-sidebar__item:hover .stride-sidebar__view-chats-btn{opacity:1}.stride-sidebar__view-chats-btn:hover{background:#eef2ff;border-color:#6366f1;color:#6366f1}.stride-sidebar__view-chats-btn:focus{opacity:1;outline:none;background:#eef2ff;border-color:#6366f1;color:#6366f1;box-shadow:0 0 0 2px #6366f133}.interventions-tab{--color-high: #dc2626;--color-high-light: #fee2e2;--color-high-border: #fca5a5;--color-medium: #f59e0b;--color-medium-light: #fef3c7;--color-medium-border: #fcd34d;--color-low: #3b82f6;--color-low-light: #dbeafe;--color-low-border: #93c5fd;--color-assigned: #10b981;--color-assigned-light: #d1fae5;--color-assigned-border: #6ee7b7;--color-completed: #6b7280;--color-completed-light: #f3f4f6;--color-persistent: #7c3aed;--color-persistent-light: #ede9fe;--color-text-primary: #1f2937;--color-text-secondary: #6b7280;--color-text-muted: #9ca3af;--color-bg: #ffffff;--color-bg-secondary: #f9fafb;--color-border: #e5e7eb;--color-border-light: #f3f4f6;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1);--transition-fast: .15s ease;--transition-normal: .2s ease}.interventions-tab{display:flex;flex-direction:column;gap:1.5rem;padding:1.5rem;background:var(--color-bg);min-height:400px}.interventions-tab__loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:3rem;color:var(--color-text-secondary)}.interventions-tab__spinner{width:40px;height:40px;border:3px solid var(--color-border);border-top-color:var(--color-low);border-radius:50%;animation:spin 1s linear infinite}.interventions-tab__error{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:3rem;text-align:center;color:var(--color-high)}.interventions-tab__error h3{margin:0;font-size:1.25rem;font-weight:600}.interventions-tab__error p{margin:0;color:var(--color-text-secondary);max-width:400px}.interventions-tab__retry-btn{padding:.5rem 1rem;background:var(--color-high);color:#fff;border:none;border-radius:var(--radius-md);font-weight:500;cursor:pointer;transition:background var(--transition-fast)}.interventions-tab__retry-btn:hover{background:#b91c1c}.interventions-tab__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:4rem 2rem;text-align:center}.interventions-tab__empty-icon{color:var(--color-assigned)}.interventions-tab__empty h3{margin:0;font-size:1.5rem;font-weight:600;color:var(--color-text-primary)}.interventions-tab__empty p{margin:0;color:var(--color-text-secondary);max-width:400px}.interventions-tab__empty-hint{color:var(--color-text-muted);font-size:.875rem}.interventions-tab__sections{display:flex;flex-direction:column;gap:1rem}.interventions-summary{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1rem 1.5rem}.interventions-summary__stats{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap}.interventions-summary__stat{display:flex;align-items:center;gap:.5rem}.interventions-summary__stat-icon{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--radius-sm)}.interventions-summary__stat--high .interventions-summary__stat-icon{background:var(--color-high-light);color:var(--color-high)}.interventions-summary__stat--medium .interventions-summary__stat-icon{background:var(--color-medium-light);color:var(--color-medium)}.interventions-summary__stat--low .interventions-summary__stat-icon{background:var(--color-low-light);color:var(--color-low)}.interventions-summary__stat--assigned .interventions-summary__stat-icon{background:var(--color-assigned-light);color:var(--color-assigned)}.interventions-summary__stat--persistent .interventions-summary__stat-icon{background:var(--color-persistent-light);color:var(--color-persistent)}.interventions-summary__stat-value{font-size:1.25rem;font-weight:700;color:var(--color-text-primary)}.interventions-summary__stat-label{font-size:.75rem;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em}.interventions-summary__divider{width:1px;height:32px;background:var(--color-border)}.priority-section{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.priority-section--high{border-left:4px solid var(--color-high)}.priority-section--medium{border-left:4px solid var(--color-medium)}.priority-section--low{border-left:4px solid var(--color-low)}.priority-section__header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:1rem 1.25rem;background:transparent;border:none;cursor:pointer;text-align:left;transition:background var(--transition-fast)}.priority-section__header:hover{background:var(--color-bg-secondary)}.priority-section__header-left{display:flex;align-items:center;gap:.75rem}.priority-section__icon{display:flex;align-items:center;justify-content:center}.priority-section__title-group{display:flex;align-items:center;gap:.5rem}.priority-section__title{margin:0;font-size:1rem;font-weight:600;color:var(--color-text-primary)}.priority-section__count{display:flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 .5rem;background:var(--color-bg-secondary);border-radius:12px;font-size:.75rem;font-weight:600;color:var(--color-text-secondary)}.priority-section--high .priority-section__count{background:var(--color-high-light);color:var(--color-high)}.priority-section--medium .priority-section__count{background:var(--color-medium-light);color:var(--color-medium)}.priority-section--low .priority-section__count{background:var(--color-low-light);color:var(--color-low)}.priority-section__header-right{display:flex;align-items:center;gap:1rem}.priority-section__description{font-size:.875rem;color:var(--color-text-muted)}.priority-section__chevron{display:flex;align-items:center;color:var(--color-text-muted)}.priority-section__content{display:flex;flex-direction:column;gap:.75rem;padding:0 1rem 1rem}.intervention-card{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;transition:box-shadow var(--transition-normal)}.intervention-card:hover{box-shadow:var(--shadow-sm)}.intervention-card--expanded{box-shadow:var(--shadow-md)}.intervention-card--assigned{border-color:var(--color-assigned-border);background:linear-gradient(to right,var(--color-assigned-light) 0%,var(--color-bg) 100%)}.intervention-card--completed{opacity:.75;border-color:var(--color-completed-light)}.intervention-card__header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.875rem 1rem;background:transparent;border:none;cursor:pointer;text-align:left;transition:background var(--transition-fast)}.intervention-card__header:hover{background:var(--color-bg-secondary)}.intervention-card__header-left{display:flex;align-items:center;gap:.75rem;flex:1;min-width:0}.intervention-card__error-type{padding:.25rem .5rem;font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;border-radius:var(--radius-sm);white-space:nowrap}.intervention-card__error-type--conceptual{background:var(--color-high-light);color:var(--color-high)}.intervention-card__error-type--procedural{background:var(--color-medium-light);color:var(--color-medium)}.intervention-card__error-type--fluency{background:var(--color-low-light);color:var(--color-low)}.intervention-card__error-type--slip{background:var(--color-completed-light);color:var(--color-text-secondary)}.intervention-card__icon{font-size:1.25rem;flex-shrink:0}.intervention-card__name{font-size:.875rem;font-weight:500;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.intervention-card__header-right{display:flex;align-items:center;gap:.75rem;flex-shrink:0}.intervention-card__badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;border-radius:var(--radius-sm)}.intervention-card__badge--persistent{background:var(--color-persistent-light);color:var(--color-persistent)}.intervention-card__badge--assigned{background:var(--color-assigned-light);color:var(--color-assigned)}.intervention-card__badge--completed{background:var(--color-completed-light);color:var(--color-completed)}.intervention-card__accuracy{font-size:.875rem;font-weight:600;color:var(--color-text-secondary)}.intervention-card__accuracy--low{color:var(--color-high)}.intervention-card__chevron{display:flex;align-items:center;color:var(--color-text-muted)}.intervention-card__content{padding:1rem;border-top:1px solid var(--color-border-light);background:var(--color-bg-secondary)}.intervention-card__loading{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:2rem;color:var(--color-text-secondary)}.intervention-card__spinner{width:24px;height:24px;border:2px solid var(--color-border);border-top-color:var(--color-low);border-radius:50%;animation:spin 1s linear infinite}.intervention-card__stale-warning{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;margin-bottom:1rem;background:var(--color-medium-light);border:1px solid var(--color-medium-border);border-radius:var(--radius-sm);font-size:.75rem;color:var(--color-medium)}.intervention-card__regenerate-btn{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;background:var(--color-bg);border:1px solid var(--color-medium-border);border-radius:var(--radius-sm);font-size:.75rem;font-weight:500;color:var(--color-medium);cursor:pointer;transition:all var(--transition-fast)}.intervention-card__regenerate-btn:hover:not(:disabled){background:var(--color-medium);color:#fff}.intervention-card__regenerate-btn:disabled{opacity:.5;cursor:not-allowed}.intervention-card__generate-prompt{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:2rem;text-align:center}.intervention-card__generate-prompt p{margin:0;color:var(--color-text-secondary)}.intervention-card__generate-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--color-low);border:none;border-radius:var(--radius-md);font-size:.875rem;font-weight:500;color:#fff;cursor:pointer;transition:background var(--transition-fast)}.intervention-card__generate-btn:hover:not(:disabled){background:#2563eb}.intervention-card__generate-btn:disabled{opacity:.7;cursor:not-allowed}.intervention-card__no-content{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:2rem;text-align:center}.intervention-card__no-content p{margin:0;color:var(--color-text-secondary)}.intervention-card__retry-btn{padding:.5rem 1rem;background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:.875rem;font-weight:500;color:var(--color-text-primary);cursor:pointer;transition:all var(--transition-fast)}.intervention-card__retry-btn:hover{background:var(--color-bg);border-color:var(--color-text-secondary)}.intervention-content{display:flex;flex-direction:column;gap:1.25rem;padding:1rem;background:var(--color-bg);border-radius:var(--radius-md)}.intervention-content__section{display:flex;flex-direction:column;gap:.5rem}.intervention-content__section-header{display:flex;align-items:center;gap:.5rem;color:var(--color-text-secondary)}.intervention-content__section-header h4{margin:0;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.intervention-content__section--headline .intervention-content__section-header{color:var(--color-low)}.intervention-content__headline{margin:0;font-size:1.125rem;font-weight:600;color:var(--color-text-primary);line-height:1.4}.intervention-content__section--rationale .intervention-content__section-header{color:var(--color-persistent)}.intervention-content__rationale{margin:0;font-size:.875rem;color:var(--color-text-secondary);line-height:1.5}.intervention-content__section--steps .intervention-content__section-header{color:var(--color-assigned)}.intervention-content__steps{margin:0;padding-left:1.25rem;list-style-type:decimal}.intervention-content__step{margin-bottom:.5rem;font-size:.875rem;color:var(--color-text-primary);line-height:1.5}.intervention-content__step:last-child{margin-bottom:0}.intervention-content__section--materials .intervention-content__section-header{color:var(--color-medium)}.intervention-content__activity-link{text-decoration:none;color:inherit}.intervention-content__activity{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:all var(--transition-fast)}.intervention-content__activity:hover{border-color:var(--color-low);box-shadow:var(--shadow-sm)}.intervention-content__activity-icon{font-size:1.5rem}.intervention-content__activity-info{display:flex;flex-direction:column;gap:.125rem;flex:1}.intervention-content__activity-name{font-size:.875rem;font-weight:500;color:var(--color-text-primary)}.intervention-content__activity-meta{font-size:.75rem;color:var(--color-text-muted)}.intervention-content__activity-external{color:var(--color-text-muted)}.intervention-content__materials-text,.intervention-content__fallback{margin:0;font-size:.875rem;color:var(--color-text-secondary);line-height:1.5}.intervention-content__no-materials{margin:0;font-size:.875rem;font-style:italic;color:var(--color-text-muted)}.intervention-content__section--time .intervention-content__section-header{color:var(--color-text-secondary)}.intervention-content__time{margin:0;font-size:.875rem;font-weight:500;color:var(--color-text-primary)}.intervention-content__section--success .intervention-content__section-header{color:var(--color-assigned)}.intervention-content__success{margin:0;font-size:.875rem;color:var(--color-text-secondary);line-height:1.5}.action-buttons{display:flex;align-items:center;gap:.75rem;padding-top:1rem;margin-top:1rem;border-top:1px solid var(--color-border-light)}.action-buttons--completed{justify-content:center}.action-buttons--assigned{justify-content:flex-end}.action-buttons__assign-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;background:var(--color-low);border:none;border-radius:var(--radius-md);font-size:.875rem;font-weight:500;color:#fff;cursor:pointer;transition:background var(--transition-fast)}.action-buttons__assign-btn:hover:not(:disabled){background:#2563eb}.action-buttons__assign-btn:disabled{opacity:.7;cursor:not-allowed}.action-buttons__skip-container{position:relative}.action-buttons__skip-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1rem;background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:.875rem;font-weight:500;color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast)}.action-buttons__skip-btn:hover:not(:disabled){border-color:var(--color-text-secondary);color:var(--color-text-primary)}.action-buttons__skip-btn:disabled{opacity:.5;cursor:not-allowed}.action-buttons__skip-dropdown{position:absolute;bottom:100%;right:0;margin-bottom:.5rem;min-width:260px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:10;overflow:hidden}.action-buttons__skip-dropdown-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border-light);font-size:.75rem;font-weight:600;color:var(--color-text-secondary)}.action-buttons__skip-dropdown-close{display:flex;align-items:center;justify-content:center;padding:.25rem;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--color-text-muted);cursor:pointer;transition:all var(--transition-fast)}.action-buttons__skip-dropdown-close:hover{background:var(--color-border-light);color:var(--color-text-primary)}.action-buttons__skip-option{display:block;width:100%;padding:.75rem 1rem;background:transparent;border:none;border-bottom:1px solid var(--color-border-light);font-size:.875rem;text-align:left;color:var(--color-text-primary);cursor:pointer;transition:background var(--transition-fast)}.action-buttons__skip-option:last-child{border-bottom:none}.action-buttons__skip-option:hover:not(:disabled){background:var(--color-bg-secondary)}.action-buttons__skip-option:disabled{opacity:.5;cursor:not-allowed}.action-buttons__complete-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;background:var(--color-assigned);border:none;border-radius:var(--radius-md);font-size:.875rem;font-weight:500;color:#fff;cursor:pointer;transition:background var(--transition-fast)}.action-buttons__complete-btn:hover:not(:disabled){background:#059669}.action-buttons__complete-btn:disabled{opacity:.7;cursor:not-allowed}.action-buttons__completed-message{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--color-completed-light);border-radius:var(--radius-md);font-size:.875rem;font-weight:500;color:var(--color-completed)}.action-buttons__spinner{width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin 1s linear infinite}@media (max-width: 768px){.interventions-tab{padding:1rem}.interventions-summary__stats{gap:1rem}.interventions-summary__divider{display:none}.priority-section__header{flex-direction:column;align-items:flex-start;gap:.5rem}.priority-section__header-right{width:100%;justify-content:space-between}.priority-section__description{display:none}.intervention-card__header{flex-wrap:wrap}.intervention-card__header-left{flex:1 1 100%;margin-bottom:.5rem}.intervention-card__header-right{flex:1 1 100%;justify-content:flex-end}.action-buttons{flex-direction:column;gap:.5rem}.action-buttons__assign-btn,.action-buttons__skip-btn,.action-buttons__complete-btn{width:100%;justify-content:center}.action-buttons__skip-dropdown{left:0;right:0;min-width:auto}}.progress-tab{display:flex;flex-direction:column;gap:1.5rem;padding:1.5rem;background:#fff;min-height:400px}.progress-tab__loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:3rem;color:#6b7280}.progress-tab__spinner{width:40px;height:40px;border:3px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite}.progress-tab__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:4rem 2rem;text-align:center}.progress-tab__empty-icon{color:#10b981}.progress-tab__empty h3{margin:0;font-size:1.5rem;font-weight:600;color:#1f2937}.progress-tab__empty p{margin:0;color:#6b7280;max-width:400px}.progress-tab__empty-hint{color:#9ca3af;font-size:.875rem}.progress-tab__summary{display:flex;gap:1.5rem;padding:1rem 1.5rem;background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;flex-wrap:wrap}.progress-tab__stat{display:flex;flex-direction:column;gap:.25rem;min-width:80px}.progress-tab__stat-value{font-size:1.5rem;font-weight:700;color:#1f2937}.progress-tab__stat-value--success{color:#059669}.progress-tab__stat-value--warning{color:#f59e0b}.progress-tab__stat-value--error{color:#dc2626}.progress-tab__stat-label{font-size:.75rem;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.progress-tab__content{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.progress-tab__section{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.progress-tab__section-header{display:flex;align-items:center;gap:.5rem;padding:1rem 1.25rem;background:#f9fafb;border-bottom:1px solid #e5e7eb;color:#374151}.progress-tab__section-header h3{margin:0;font-size:.875rem;font-weight:600}.progress-tab__section-body{padding:1rem}.accuracy-chart{display:flex;flex-direction:column;gap:1rem}.accuracy-chart--empty{display:flex;align-items:center;justify-content:center;padding:2rem;color:#6b7280}.accuracy-chart__header{padding:0 .5rem}.accuracy-chart__stats{display:flex;gap:1.5rem}.accuracy-chart__stat{display:flex;flex-direction:column;gap:.125rem}.accuracy-chart__stat-value{font-size:1.25rem;font-weight:700;color:#1f2937}.accuracy-chart__stat-label{font-size:.625rem;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.accuracy-chart__trend{font-size:1.5rem}.accuracy-chart__trend--up{color:#059669}.accuracy-chart__trend--down{color:#dc2626}.accuracy-chart__trend--stable{color:#6b7280}.accuracy-chart__container{width:100%}.accuracy-chart__legend{display:flex;gap:1rem;justify-content:center;padding-top:.5rem}.accuracy-chart__legend-item{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:#6b7280}.accuracy-chart__legend-line{width:20px;height:0;border-top:2px solid}.accuracy-chart__legend-line--dashed{border-style:dashed}.accuracy-chart__tooltip{background:#1f2937;padding:.5rem .75rem;border-radius:6px;box-shadow:0 4px 6px #0000001a}.accuracy-chart__tooltip-accuracy{margin:0;font-size:.875rem;font-weight:600;color:#fff}.accuracy-chart__tooltip-topic{margin:0;font-size:.75rem;color:#9ca3af;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.accuracy-chart__tooltip-date{margin:0;font-size:.75rem;color:#9ca3af}.error-timeline{display:flex;flex-direction:column;gap:.75rem}.error-timeline--empty{display:flex;align-items:center;justify-content:center;padding:2rem}.error-timeline__empty-content{display:flex;flex-direction:column;align-items:center;gap:.5rem;color:#6b7280;text-align:center}.error-timeline__empty-content p{margin:0;font-weight:500}.error-timeline__empty-content span{font-size:.875rem;color:#9ca3af}.error-timeline__header{display:flex;align-items:center;justify-content:space-between;padding-bottom:.5rem;border-bottom:1px solid #e5e7eb}.error-timeline__header h4{margin:0;font-size:.875rem;font-weight:600;color:#374151}.error-timeline__count{font-size:.75rem;color:#9ca3af}.error-timeline__list{display:flex;flex-direction:column;gap:.75rem;max-height:350px;overflow-y:auto}.error-timeline__group{display:flex;flex-direction:column;gap:.5rem}.error-timeline__date{font-size:.625rem;font-weight:600;color:#9ca3af;text-transform:uppercase;letter-spacing:.05em;padding:.25rem 0}.error-timeline__item{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem;background:#f9fafb;border-radius:8px;border-left:3px solid transparent}.error-timeline__item--high{border-left-color:#dc2626;background:#fef2f2}.error-timeline__item--medium{border-left-color:#f59e0b;background:#fffbeb}.error-timeline__item--low{border-left-color:#3b82f6;background:#eff6ff}.error-timeline__item-left{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.error-timeline__severity-icon--high{color:#dc2626}.error-timeline__severity-icon--medium{color:#f59e0b}.error-timeline__severity-icon--low{color:#3b82f6}.error-timeline__item-icon{font-size:1rem}.error-timeline__item-content{flex:1;min-width:0}.error-timeline__item-header{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.error-timeline__item-name{font-size:.875rem;font-weight:500;color:#1f2937}.error-timeline__persistent-badge{font-size:.625rem;font-weight:700;padding:.125rem .375rem;background:#7c3aed;color:#fff;border-radius:4px}.error-timeline__item-meta{display:flex;align-items:center;gap:.5rem;margin-top:.25rem;font-size:.75rem;color:#6b7280}.error-timeline__item-category{background:#e5e7eb;padding:.125rem .375rem;border-radius:4px}.error-timeline__item-right{display:flex;align-items:center;flex-shrink:0}.error-timeline__trend-icon--improving{color:#059669}.error-timeline__trend-icon--struggling{color:#dc2626}.error-timeline__trend-icon--stable{color:#6b7280}@media (max-width: 768px){.progress-tab{padding:1rem}.progress-tab__summary{gap:1rem}.progress-tab__content{grid-template-columns:1fr}.accuracy-chart__stats{flex-wrap:wrap;gap:1rem}.error-timeline__list{max-height:none}}.pending-review-panel{display:flex;flex-direction:column;height:100%;background:#fff;overflow:hidden;min-height:0}.pending-review-panel__header{display:flex;align-items:center;justify-content:space-between;padding:20px 32px;background:#fff;border-bottom:1px solid #e7e5e4;flex-shrink:0}.pending-review-panel__header-left{display:flex;align-items:center;gap:12px}.pending-review-panel__header-icon{width:36px;height:36px;border-radius:12px;background:#ffedd5;display:flex;align-items:center;justify-content:center;color:#f97316}.pending-review-panel__title-group{display:flex;flex-direction:column}.pending-review-panel__title{margin:0;font-size:16px;font-weight:700;color:#1c1917;display:flex;align-items:center;gap:6px;letter-spacing:-.01em}.pending-review-panel__title-main,.pending-review-panel__title-accent{background:linear-gradient(135deg,#f97316,#ea580c);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.pending-review-panel__subtitle{margin:0;font-size:12px;color:#78716c}.pending-review-panel__refresh-btn{display:flex;align-items:center;gap:6px;padding:8px 12px;border:1px solid #e7e5e4;border-radius:8px;background:#fff;font-size:12px;font-weight:500;color:#57534e;cursor:pointer;transition:all .15s}.pending-review-panel__refresh-btn:hover:not(:disabled){background:#f5f5f4;border-color:#d6d3d1}.pending-review-panel__refresh-btn:disabled{opacity:.5;cursor:not-allowed}.pending-review-panel__spinning{animation:spin 1s linear infinite}.pending-review-panel__loading{flex:1;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:48px 32px;color:#78716c}.pending-review-panel__loading p{margin:0;font-size:14px}.pending-review-panel__spinner{width:32px;height:32px;border:3px solid #f5f5f4;border-top-color:#f97316;border-radius:50%;animation:spin .8s linear infinite}.pending-review-panel__error{flex:1;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:48px 32px;text-align:center;color:#ef4444}.pending-review-panel__error h3{margin:0;font-size:16px;font-weight:600;color:#1c1917}.pending-review-panel__error p{margin:0;font-size:14px;color:#78716c;max-width:320px}.pending-review-panel__retry-btn{display:flex;align-items:center;gap:6px;margin-top:8px;padding:10px 16px;border:none;border-radius:8px;background:#f97316;font-size:14px;font-weight:500;color:#fff;cursor:pointer;transition:background .15s}.pending-review-panel__retry-btn:hover{background:#ea580c}.pending-review-panel__empty{flex:1;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:48px 32px;text-align:center;color:#a8a29e}.pending-review-panel__empty-title{margin:0;font-size:16px;font-weight:600;color:#57534e}.pending-review-panel__empty-text{margin:0;font-size:14px;color:#78716c;max-width:360px;line-height:1.5}.pending-review-panel__list{flex:1;min-height:0;overflow-y:auto;padding:16px 24px;display:flex;flex-direction:column;gap:12px}.pending-review-panel__list::-webkit-scrollbar{width:6px}.pending-review-panel__list::-webkit-scrollbar-track{background:transparent}.pending-review-panel__list::-webkit-scrollbar-thumb{background:#d6d3d1;border-radius:3px}.pending-review-panel__list::-webkit-scrollbar-thumb:hover{background:#a8a29e}.stride-dashboard-page{min-height:100vh;display:flex;flex-direction:column}.stride-top-nav{display:flex;align-items:center;justify-content:space-between;height:56px;padding:0 20px;background:#fff;border-bottom:1px solid #e5e7eb;position:sticky;top:0;z-index:200}.stride-top-nav__left{display:flex;align-items:center;gap:12px}.stride-top-nav__back{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;background:#0000000d;border:none;cursor:pointer;font-size:16px;color:#374151;transition:background .2s}.stride-top-nav__back:hover{background:#0000001a}.stride-top-nav__title{margin:0;font-size:18px;font-weight:600;color:#111827}.stride-top-nav__tabs{display:flex;align-items:center;gap:4px;background:#f3f4f6;padding:4px;border-radius:10px}.stride-top-nav__tab{display:flex;align-items:center;gap:6px;padding:8px 16px;border:none;border-radius:8px;background:transparent;font-size:14px;font-weight:500;color:#6b7280;cursor:pointer;transition:all .2s}.stride-top-nav__tab:hover{color:#374151;background:#ffffff80}.stride-top-nav__tab--active{background:#fff;color:#3b82f6;box-shadow:0 1px 3px #0000001a}.stride-dashboard__tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;margin-left:6px;background:#ef4444;color:#fff;font-size:11px;font-weight:600;border-radius:9px}.stride-dashboard__tab--active .stride-dashboard__tab-badge{background:#3b82f6}.stride-top-nav__right{width:100px}.stride-view-content{flex:1;background:#f9fafb;overflow:auto}.stride-assignments-view{padding:24px 32px;max-width:1600px;margin:0 auto}.stride-dashboard__container{display:flex;height:calc(100vh - 60px);background:#f9fafb}.stride-dashboard__header{height:60px;background:#fff;border-bottom:1px solid #e5e7eb;position:sticky;top:0;z-index:100}.stride-dashboard__header-content{display:flex;align-items:center;justify-content:space-between;height:100%;padding:0 20px}.stride-dashboard__header-left{display:flex;align-items:center;gap:12px}.stride-dashboard__back-button{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;background-color:#0000000d;border:none;cursor:pointer;transition:background-color .2s ease}.stride-dashboard__back-button:hover:not(:disabled){background-color:#0000001a}.stride-dashboard__back-button:disabled{opacity:.5;cursor:not-allowed}.stride-dashboard__header-title{font-size:18px;font-weight:600;color:#1f2937}.stride-dashboard__header-badges{display:flex;align-items:center;gap:4px;margin-top:4px}.stride-dashboard__badge{font-size:9px;color:#6b7280;padding:1px 4px;background-color:#f8fafc;border-radius:2px;border:1px solid #e5e7eb;line-height:1}.stride-dashboard__header-center{flex:1;display:flex;justify-content:center}.stride-dashboard__tabs{display:flex;gap:4px;background:#f9fafb;padding:4px;border-radius:8px}.stride-dashboard__tab{display:flex;align-items:center;gap:6px;padding:8px 16px;background:transparent;border:none;border-radius:6px;cursor:pointer;transition:all .2s ease;font-size:14px;font-weight:500;color:#64748b}.stride-dashboard__tab:hover{background:#fff;color:#1f2937}.stride-dashboard__tab--active{background:#fff;color:#3b82f6;box-shadow:0 1px 3px #0000001a}.stride-dashboard__header-right{display:flex;align-items:center;gap:12px}.stride-dashboard__refresh-button{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;font-size:13px;color:#374151;cursor:pointer;transition:all .2s ease}.stride-dashboard__refresh-button:hover:not(:disabled){background:#f9fafb;border-color:#d1d5db}.stride-dashboard__refresh-button:disabled{opacity:.6;cursor:not-allowed}.stride-dashboard__refresh-icon--spinning{animation:spin 1s linear infinite}.stride-dashboard__main{flex:1;overflow-y:auto;padding:24px}.stride-dashboard__content{max-width:1400px;margin:0 auto}.stride-dashboard__student-header{margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid #e5e7eb}.stride-dashboard__student-name{font-size:20px;font-weight:600;color:#1f2937;margin:0 0 4px}.stride-dashboard__student-meta{display:flex;align-items:center;gap:8px;font-size:14px;color:#64748b}.stride-dashboard__separator{color:#d1d5db}.stride-dashboard__tab-content{animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.stride-dashboard__loading{display:flex;align-items:center;justify-content:center;min-height:400px}.stride-dashboard__loading-content{text-align:center}.stride-dashboard__spinner{width:40px;height:40px;border:3px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 16px}.stride-dashboard__loading-text{font-size:14px;color:#6b7280}.stride-dashboard__error{display:flex;align-items:center;justify-content:center;min-height:400px}.stride-dashboard__error-content{text-align:center;max-width:400px}.stride-dashboard__error-icon{color:#ef4444;margin-bottom:12px}.stride-dashboard__error-title{font-size:16px;font-weight:600;color:#1f2937;margin-bottom:8px}.stride-dashboard__error-message{font-size:14px;color:#6b7280;margin-bottom:16px}.stride-dashboard__retry-button{padding:10px 20px;background:#3b82f6;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s ease}.stride-dashboard__retry-button:hover{background:#2563eb}.stride-dashboard__welcome{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:calc(100vh - 160px);text-align:center}.stride-dashboard__welcome-icon{color:#9ca3af;margin-bottom:16px}.stride-dashboard__welcome-title{font-size:20px;font-weight:600;color:#374151;margin:0 0 8px}.stride-dashboard__welcome-text{font-size:14px;color:#6b7280;max-width:300px;margin:0 0 16px}.stride-dashboard__welcome-stats{font-size:13px;color:#9ca3af}.stride-dashboard__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;padding:32px}.stride-dashboard__empty-icon{color:#9ca3af;margin-bottom:12px}.stride-dashboard__empty-title{font-size:15px;font-weight:600;color:#374151;margin:0 0 6px}.stride-dashboard__empty-text{font-size:13px;color:#6b7280;text-align:center;max-width:280px;margin:0}.stride-dashboard__card{background:#fff;border-radius:12px;border:1px solid #e5e7eb;overflow:hidden}.stride-dashboard__card-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #f3f4f6}.stride-dashboard__card-title{font-size:15px;font-weight:600;color:#1f2937}.stride-dashboard__card-subtitle{font-size:12px;color:#6b7280;margin-top:2px}.stride-dashboard__view-toggle{display:flex;gap:4px;background:#f3f4f6;border-radius:8px;padding:4px}.stride-dashboard__view-toggle-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;background:transparent;border:none;border-radius:6px;font-size:13px;font-weight:500;color:#6b7280;cursor:pointer;transition:all .15s ease}.stride-dashboard__view-toggle-btn:hover{color:#374151;background:#ffffff80}.stride-dashboard__view-toggle-btn--active{background:#fff;color:#1f2937;box-shadow:0 1px 3px #0000001a}.stride-dashboard__topics-grid{display:flex;flex-direction:column;gap:12px}.stride-dashboard__card-body{padding:16px 20px}.stride-dashboard__grid{display:grid;gap:20px;margin-bottom:20px}.stride-dashboard__grid--2{grid-template-columns:repeat(2,1fr)}.stride-dashboard__grid--3{grid-template-columns:repeat(3,1fr)}.stride-dashboard__grid--4{grid-template-columns:repeat(4,1fr)}@media (max-width: 1200px){.stride-dashboard__grid--4{grid-template-columns:repeat(2,1fr)}}@media (max-width: 900px){.stride-dashboard__grid--2,.stride-dashboard__grid--3,.stride-dashboard__grid--4{grid-template-columns:1fr}}.stride-dashboard__stat{display:flex;flex-direction:column;padding:16px;background:#fff;border-radius:10px;border:1px solid #e5e7eb}.stride-dashboard__stat-header{display:flex;align-items:center;gap:10px;margin-bottom:10px}.stride-dashboard__stat-icon{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:8px;background:#eff6ff;color:#3b82f6}.stride-dashboard__stat-icon--warning{background:#fef3c7;color:#d97706}.stride-dashboard__stat-icon--success{background:#d1fae5;color:#059669}.stride-dashboard__stat-icon--error{background:#fee2e2;color:#dc2626}.stride-dashboard__stat-label{font-size:12px;color:#6b7280}.stride-dashboard__stat-value{font-size:24px;font-weight:700;color:#1f2937;line-height:1}.stride-dashboard__submissions{display:flex;flex-direction:column;gap:10px}.stride-dashboard__submission{display:flex;align-items:flex-start;gap:12px;padding:12px;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb;transition:border-color .2s ease}.stride-dashboard__submission:hover{border-color:#d1d5db}.stride-dashboard__submission-icon{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:8px;background:#fff;border:1px solid #e5e7eb;flex-shrink:0}.stride-dashboard__submission-content{flex:1;min-width:0}.stride-dashboard__submission-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.stride-dashboard__submission-type{font-size:13px;font-weight:600;color:#1f2937}.stride-dashboard__submission-time{display:flex;align-items:center;gap:4px;font-size:11px;color:#9ca3af}.stride-dashboard__submission-details{display:flex;flex-wrap:wrap;gap:10px;font-size:12px;color:#6b7280}.stride-dashboard__submission-stat{display:flex;align-items:center;gap:4px}.stride-dashboard__submission-misconception{color:#dc2626;font-size:12px;font-weight:500}.stride-dashboard__pattern{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb}.stride-dashboard__pattern-info{flex:1}.stride-dashboard__pattern-concept{font-size:13px;font-weight:600;color:#1f2937;margin-bottom:2px}.stride-dashboard__pattern-count{font-size:12px;color:#6b7280}.stride-dashboard__pattern-trend{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:20px;font-size:11px;font-weight:500}.stride-dashboard__pattern-trend--improving{background:#d1fae5;color:#059669}.stride-dashboard__pattern-trend--stable{background:#e0e7ff;color:#4f46e5}.stride-dashboard__pattern-trend--struggling{background:#fee2e2;color:#dc2626}.stride-dashboard__pattern-trend--new{background:#fef3c7;color:#d97706}.stride-dashboard__misconception{padding:12px;background:#fefce8;border-radius:8px;border:1px solid #fef08a}.stride-dashboard__misconception-header{display:flex;align-items:center;gap:8px;margin-bottom:6px}.stride-dashboard__misconception-concept{font-size:13px;font-weight:600;color:#854d0e}.stride-dashboard__misconception-severity{padding:2px 6px;border-radius:10px;font-size:10px;font-weight:500;text-transform:uppercase}.stride-dashboard__misconception-severity--high{background:#fecaca;color:#b91c1c}.stride-dashboard__misconception-severity--medium{background:#fed7aa;color:#c2410c}.stride-dashboard__misconception-severity--low{background:#fef08a;color:#a16207}.stride-dashboard__misconception-description{font-size:12px;color:#713f12;line-height:1.5;margin:0}.stride-dashboard__load-more{display:flex;justify-content:center;padding:16px 0}.stride-dashboard__load-more-button{padding:8px 20px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;font-size:13px;color:#374151;cursor:pointer;transition:all .2s ease}.stride-dashboard__load-more-button:hover:not(:disabled){background:#f9fafb;border-color:#d1d5db}.stride-dashboard__load-more-button:disabled{opacity:.6;cursor:not-allowed}.stride-dashboard__submission--clickable{cursor:pointer;transition:all .2s ease}.stride-dashboard__submission--clickable:hover{background:#f3f4f6;border-color:#d1d5db;transform:translateY(-1px)}.stride-dashboard__submission--clickable:focus{outline:2px solid #3b82f6;outline-offset:2px}.stride-dashboard__modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.stride-dashboard__modal{background:#fff;border-radius:12px;width:100%;max-width:900px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 20px 50px #0003}.stride-dashboard__modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #e5e7eb}.stride-dashboard__modal-title{font-size:18px;font-weight:600;color:#1f2937;margin:0}.stride-dashboard__modal-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:#f3f4f6;border-radius:6px;cursor:pointer;color:#6b7280;transition:all .2s ease}.stride-dashboard__modal-close:hover{background:#e5e7eb;color:#1f2937}.stride-dashboard__modal-body{display:flex;flex:1;overflow:hidden}.stride-dashboard__modal-image-section{flex:1;min-width:0;background:#f9fafb;display:flex;align-items:center;justify-content:center;padding:20px;overflow:auto}.stride-dashboard__modal-image{max-width:100%;max-height:60vh;-o-object-fit:contain;object-fit:contain;border-radius:8px;box-shadow:0 4px 12px #0000001a}.stride-dashboard__modal-loading,.stride-dashboard__modal-no-image{display:flex;flex-direction:column;align-items:center;gap:12px;color:#9ca3af;font-size:14px}.stride-dashboard__modal-details{width:320px;flex-shrink:0;border-left:1px solid #e5e7eb;overflow-y:auto;padding:20px}.stride-dashboard__modal-meta{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:20px}.stride-dashboard__modal-stat{display:flex;flex-direction:column;gap:4px}.stride-dashboard__modal-stat-label{font-size:11px;text-transform:uppercase;color:#9ca3af;font-weight:500}.stride-dashboard__modal-stat-value{font-size:14px;font-weight:600;color:#1f2937}.stride-dashboard__modal-errors{border-top:1px solid #e5e7eb;padding-top:16px}.stride-dashboard__modal-errors h4{font-size:14px;font-weight:600;color:#1f2937;margin:0 0 12px}.stride-dashboard__modal-error{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:12px;margin-bottom:10px}.stride-dashboard__modal-error-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.stride-dashboard__modal-error-concept{font-size:13px;font-weight:600;color:#991b1b}.stride-dashboard__modal-error-desc{font-size:12px;color:#7f1d1d;margin:0 0 8px;line-height:1.5}.stride-dashboard__modal-error-correct{font-size:12px;color:#166534;background:#dcfce7;padding:8px;border-radius:4px;margin:0}@media (max-width: 768px){.stride-dashboard__modal-body{flex-direction:column}.stride-dashboard__modal-details{width:100%;border-left:none;border-top:1px solid #e5e7eb;max-height:300px}.stride-dashboard__modal-image-section{max-height:40vh}}.topic-card{display:flex;align-items:flex-start;gap:14px;padding:16px;background:#fff;border-radius:10px;border:1px solid #e5e7eb;cursor:pointer;transition:all .2s ease}.topic-card:hover{background:#f9fafb;border-color:#d1d5db;transform:translateY(-2px);box-shadow:0 4px 12px #0000000d}.topic-card:focus{outline:2px solid #3b82f6;outline-offset:2px}.topic-card__status-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:10px;flex-shrink:0}.topic-card__status-icon--success{background:#d1fae5;color:#059669}.topic-card__status-icon--error{background:#fee2e2;color:#dc2626}.topic-card__content{flex:1;min-width:0}.topic-card__header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:6px}.topic-card__title{font-size:15px;font-weight:600;color:#1f2937}.topic-card__difficulty{font-size:12px;color:#6b7280;margin-left:6px}.topic-card__timestamp{display:flex;align-items:center;gap:4px;font-size:11px;color:#9ca3af;flex-shrink:0}.topic-card__meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:12px;color:#6b7280;margin-bottom:8px}.topic-card__misconception{color:#dc2626;font-weight:500}.topic-card__error-count{display:flex;align-items:center;gap:4px}.progression-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:20px;font-size:11px;font-weight:500}.progression-badge--first{background:#f3f4f6;color:#6b7280}.progression-badge--mastered{background:#d1fae5;color:#059669}.progression-badge--improving{background:#dbeafe;color:#2563eb}.progression-badge--struggling{background:#fee2e2;color:#dc2626}.progression-badge--perfect_streak{background:#fef3c7;color:#d97706}.topic-detail-modal{background:#fff;border-radius:12px;width:100%;max-width:1000px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 20px 50px #0003}.topic-detail-modal__header{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;border-bottom:1px solid #e5e7eb}.topic-detail-modal__title{font-size:18px;font-weight:600;color:#1f2937;margin:0}.topic-detail-modal__subtitle{font-size:13px;color:#6b7280;margin-top:2px}.topic-detail-modal__close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:#f3f4f6;border-radius:6px;cursor:pointer;color:#6b7280;transition:all .2s ease}.topic-detail-modal__close:hover{background:#e5e7eb;color:#1f2937}.topic-detail-modal__body{display:flex;flex:1;overflow:hidden;min-height:0}.topic-detail-modal__image-panel{flex:1;min-width:0;background:#f9fafb;display:flex;align-items:center;justify-content:center;padding:24px;overflow:auto}.topic-detail-modal__image{max-width:100%;max-height:65vh;-o-object-fit:contain;object-fit:contain;border-radius:8px;box-shadow:0 4px 12px #0000001a}.topic-detail-modal__image-placeholder{display:flex;flex-direction:column;align-items:center;gap:12px;color:#9ca3af;font-size:14px}.topic-detail-modal__history-panel{width:380px;flex-shrink:0;border-left:1px solid #e5e7eb;display:flex;flex-direction:column;overflow:hidden}.topic-detail-modal__history-header{padding:16px 20px;border-bottom:1px solid #f3f4f6}.topic-detail-modal__history-title{font-size:14px;font-weight:600;color:#1f2937;margin:0 0 4px}.topic-detail-modal__history-meta{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:12px}.topic-detail-modal__meta-item{display:flex;flex-direction:column;gap:2px}.topic-detail-modal__meta-label{font-size:10px;text-transform:uppercase;color:#9ca3af;font-weight:500}.topic-detail-modal__meta-value{font-size:13px;font-weight:600;color:#1f2937}.topic-detail-modal__history-list{flex:1;overflow-y:auto;padding:16px 20px}.attempt-card{padding:14px;border-radius:10px;border:1px solid #e5e7eb;margin-bottom:12px;cursor:pointer;transition:all .2s ease}.attempt-card:last-child{margin-bottom:0}.attempt-card--active{border-width:2px}.attempt-card--active.attempt-card--error{background:#fff5f5;border-color:#f87171}.attempt-card--active.attempt-card--success{background:#f0fdf4;border-color:#4ade80}.attempt-card--inactive{background:#f9fafb}.attempt-card--inactive:hover{background:#f3f4f6;border-color:#d1d5db}.attempt-card__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.attempt-card__title{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:#1f2937}.attempt-card__status-dot{width:10px;height:10px;border-radius:50%}.attempt-card__status-dot--success{background:#22c55e}.attempt-card__status-dot--error{background:#ef4444}.attempt-card__accuracy{font-size:13px;font-weight:600}.attempt-card__accuracy--success{color:#059669}.attempt-card__accuracy--error{color:#dc2626}.attempt-card__timestamp{font-size:12px;color:#6b7280;margin-bottom:10px}.attempt-card__errors-label{font-size:12px;font-weight:500;color:#6b7280;margin-bottom:6px}.attempt-card__errors-list{display:flex;flex-direction:column;gap:4px;margin-bottom:10px}.attempt-card__error-item{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:#4b5563}.attempt-card__error-severity{padding:1px 6px;border-radius:8px;font-size:9px;font-weight:600;text-transform:uppercase}.attempt-card__error-severity--high{background:#fecaca;color:#b91c1c}.attempt-card__error-severity--medium{background:#fed7aa;color:#c2410c}.attempt-card__error-severity--low{background:#fef08a;color:#a16207}.attempt-card__status-message{font-size:12px;font-weight:500;padding:6px 10px;border-radius:6px;background:#f3f4f6;color:#4b5563;margin-bottom:10px}.attempt-card__perfect{display:flex;align-items:center;gap:6px;font-size:13px;color:#059669;font-weight:500;margin-bottom:10px}.attempt-card__view-button{display:flex;align-items:center;gap:4px;padding:6px 12px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;font-size:12px;color:#4b5563;cursor:pointer;transition:all .2s ease;width:100%;justify-content:center}.attempt-card__view-button:hover{background:#f9fafb;border-color:#d1d5db;color:#1f2937}@media (max-width: 900px){.topic-detail-modal__body{flex-direction:column}.topic-detail-modal__history-panel{width:100%;border-left:none;border-top:1px solid #e5e7eb;max-height:350px}.topic-detail-modal__image-panel{max-height:40vh}}.stride-dashboard__pattern-category,.stride-dashboard__misconception-category,.stride-dashboard__modal-error-category{font-size:11px;color:#6b7280;margin-bottom:4px}.stride-dashboard__pattern-icon,.stride-dashboard__misconception-icon,.stride-dashboard__modal-error-icon{margin-right:6px}.attempt-history__show-more{display:flex;justify-content:center;padding:12px 0}.attempt-history__show-more-button{padding:8px 16px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;font-size:12px;color:#6b7280;cursor:pointer;transition:all .2s ease}.attempt-history__show-more-button:hover{background:#f9fafb;border-color:#d1d5db;color:#374151}.pending-review__list{display:flex;flex-direction:column;gap:12px}.pending-review-card{display:flex;flex-direction:column;padding:16px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;cursor:pointer;transition:all .2s ease}.pending-review-card:hover{border-color:#3b82f6;box-shadow:0 2px 8px #3b82f61a;transform:translateY(-1px)}.pending-review-card__main{display:flex;flex-direction:column;gap:12px;flex:1}.pending-review-card__student{display:flex;align-items:center;gap:12px}.pending-review-card__avatar{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:#eff6ff;border-radius:50%;color:#3b82f6}.pending-review-card__student-info{display:flex;flex-direction:column}.pending-review-card__student-name{font-size:15px;font-weight:600;color:#111827}.pending-review-card__student-email{font-size:12px;color:#6b7280}.pending-review-card__assignment{display:flex;align-items:center;gap:6px;font-size:13px;color:#4b5563}.pending-review-card__assignment-name{font-weight:500}.pending-review-card__icon{color:#9ca3af}.pending-review-card__pending-time{display:flex;align-items:center;gap:6px;font-size:12px;color:#6b7280}.pending-review-card__independence{display:flex;align-items:center;gap:6px;padding:8px 12px;background:#f0f9ff;border-radius:6px;font-size:13px}.pending-review-card__independence-label{color:#0369a1;font-weight:500}.pending-review-card__independence-value{font-weight:700;margin-left:auto}.pending-review-card__independence-value--high{color:#16a34a}.pending-review-card__independence-value--medium{color:#ca8a04}.pending-review-card__independence-value--low{color:#dc2626}.pending-review-card__usage-row{display:flex;align-items:center;gap:12px}.pending-review-card__usage-row .someta-usage{flex:1}.pending-review-card__action{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:6px;color:#9ca3af;transition:all .2s ease;flex-shrink:0}.pending-review-card:hover .pending-review-card__action{color:#3b82f6;background:#eff6ff}.someta-usage{display:flex;flex-direction:column;gap:6px;padding:10px 12px;background:#f0fdf4;border-radius:8px;border:1px solid #bbf7d0}.someta-usage--compact{flex-direction:row;padding:4px 8px;background:#f9fafb;border:none;gap:12px}.someta-usage__header{display:flex;align-items:center;justify-content:space-between}.someta-usage__label{font-size:11px;font-weight:500;color:#166534;text-transform:uppercase;letter-spacing:.5px}.someta-usage__level{font-size:11px;font-weight:600;padding:2px 8px;border-radius:10px}.someta-usage__level--low{background:#dcfce7;color:#166534}.someta-usage__level--medium{background:#fef9c3;color:#854d0e}.someta-usage__level--high{background:#fee2e2;color:#991b1b}.someta-usage__stats{display:flex;align-items:center;gap:16px}.someta-usage__stat{display:flex;align-items:center;gap:4px}.someta-usage__icon{color:#22c55e}.someta-usage--compact .someta-usage__stat{font-size:12px;color:#6b7280}.someta-usage__value{font-size:14px;font-weight:600;color:#166534}.someta-usage__unit{font-size:12px;color:#16a34a}.someta-usage__problems-list{font-size:13px;font-weight:500;color:#166534}.someta-usage__stat--problems{flex-wrap:wrap}.someta-usage__breakdown{margin-top:8px;padding-top:8px;border-top:1px solid #bbf7d0}.someta-usage__breakdown-toggle{display:flex;align-items:center;gap:4px;background:none;border:none;padding:4px 0;font-size:12px;font-weight:500;color:#16a34a;cursor:pointer;transition:color .15s}.someta-usage__breakdown-toggle:hover{color:#166534}.someta-usage__breakdown-content{display:flex;flex-direction:column;gap:4px;margin-top:8px}.someta-usage__problem-item{display:flex;align-items:center;justify-content:space-between;padding:6px 10px;background:#fff;border-radius:6px;font-size:12px}.someta-usage__problem-number{font-weight:600;color:#166534}.someta-usage__problem-hints{color:#22c55e;font-weight:500}@media (max-width: 640px){.pending-review-card{padding:12px}.pending-review-card__main{gap:8px}.someta-usage__stats{flex-wrap:wrap;gap:8px}}.completion-modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.completion-modal{background:#fff;border-radius:12px;max-width:500px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 25px 50px -12px #00000040}.completion-modal__header{display:flex;align-items:flex-start;justify-content:space-between;padding:20px 20px 0;gap:16px}.completion-modal__title{font-size:18px;font-weight:600;color:#1f2937;margin:0}.completion-modal__subtitle{font-size:14px;color:#6b7280;margin:4px 0 0}.completion-modal__close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:#f3f4f6;border-radius:8px;cursor:pointer;color:#6b7280;transition:all .15s;flex-shrink:0}.completion-modal__close:hover{background:#e5e7eb;color:#374151}.completion-modal__error{display:flex;align-items:center;gap:8px;margin:16px 20px 0;padding:12px;background:#fef2f2;color:#dc2626;border-radius:8px;font-size:14px}.completion-modal__usage-summary{margin:20px 20px 0;padding:16px;background:#f0fdf4;border-radius:8px}.completion-modal__usage-summary h3{font-size:13px;font-weight:600;color:#166534;margin:0 0 12px;text-transform:uppercase;letter-spacing:.05em}.completion-modal__usage-stats{display:flex;gap:24px}.completion-modal__usage-stat{display:flex;flex-direction:column;gap:2px}.completion-modal__usage-value{font-size:20px;font-weight:600;color:#166534}.completion-modal__usage-label{font-size:12px;color:#16a34a}.completion-modal__form{padding:20px}.completion-modal__form h3{font-size:15px;font-weight:600;color:#1f2937;margin:0 0 4px}.completion-modal__form-description{font-size:14px;color:#6b7280;margin:0 0 16px}.completion-modal__field{margin-bottom:16px}.completion-modal__field label{display:block;font-size:13px;font-weight:500;color:#374151;margin-bottom:6px}.completion-modal__input{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;color:#1f2937;transition:border-color .15s}.completion-modal__input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.completion-modal__textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;color:#1f2937;resize:vertical;min-height:80px;font-family:inherit;transition:border-color .15s}.completion-modal__textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.completion-modal__checkbox-field{margin-top:20px;padding-top:16px;border-top:1px solid #e5e7eb}.completion-modal__checkbox-label{display:flex;align-items:center;gap:10px;cursor:pointer;font-size:14px;font-weight:500;color:#374151}.completion-modal__checkbox{width:18px;height:18px;cursor:pointer}.completion-modal__checkbox-hint{font-size:13px;color:#6b7280;margin:6px 0 0 28px}.completion-modal__actions{display:flex;justify-content:flex-end;gap:12px;padding:16px 20px 20px;border-top:1px solid #e5e7eb;background:#f9fafb;border-radius:0 0 12px 12px}.completion-modal__cancel-btn{padding:10px 20px;border:1px solid #d1d5db;background:#fff;border-radius:8px;font-size:14px;font-weight:500;color:#374151;cursor:pointer;transition:all .15s}.completion-modal__cancel-btn:hover:not(:disabled){background:#f3f4f6}.completion-modal__cancel-btn:disabled{opacity:.5;cursor:not-allowed}.completion-modal__submit-btn{display:flex;align-items:center;gap:8px;padding:10px 20px;border:none;background:#10b981;border-radius:8px;font-size:14px;font-weight:500;color:#fff;cursor:pointer;transition:all .15s}.completion-modal__submit-btn:hover:not(:disabled){background:#059669}.completion-modal__submit-btn:disabled{opacity:.7;cursor:not-allowed}.completion-modal__spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}.completion-modal--enhanced{max-width:640px}.completion-modal__problems-section{padding:20px}.completion-modal__problems-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.completion-modal__problems-header h3{font-size:15px;font-weight:600;color:#1f2937;margin:0}.completion-modal__quick-action{padding:6px 12px;background:#dbeafe;color:#1d4ed8;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:background .15s}.completion-modal__quick-action:hover{background:#bfdbfe}.completion-modal__no-problems{padding:20px;text-align:center;color:#6b7280;font-size:14px}.completion-modal__advanced{border-top:1px solid #e5e7eb}.completion-modal__advanced-toggle{display:flex;align-items:center;gap:8px;width:100%;padding:16px 20px;background:none;border:none;font-size:14px;font-weight:500;color:#6b7280;cursor:pointer;transition:color .15s}.completion-modal__advanced-toggle:hover{color:#374151}.completion-modal__advanced-content{padding:0 20px 20px}.problem-results-grid{background:#f9fafb;border-radius:8px;padding:16px}.problem-results-grid__scores{display:flex;gap:16px;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #e5e7eb}.problem-results-grid__score{flex:1;text-align:center;padding:12px;background:#fff;border-radius:8px;border:1px solid #e5e7eb}.problem-results-grid__score--primary{background:#ecfdf5;border-color:#10b981}.problem-results-grid__score-label{display:block;font-size:11px;font-weight:500;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}.problem-results-grid__score--primary .problem-results-grid__score-label{color:#059669}.problem-results-grid__score-value{display:block;font-size:20px;font-weight:700;color:#1f2937}.problem-results-grid__score--primary .problem-results-grid__score-value{color:#047857}.problem-results-grid__list{background:#fff;border-radius:8px;border:1px solid #e5e7eb;overflow:hidden}.problem-results-grid__header{display:grid;grid-template-columns:1fr 80px 100px 60px;gap:8px;padding:10px 12px;background:#f3f4f6;font-size:11px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.problem-results-grid__row{display:grid;grid-template-columns:1fr 80px 100px 60px;gap:8px;padding:12px;border-bottom:1px solid #f3f4f6;align-items:center}.problem-results-grid__row:last-child{border-bottom:none}.problem-results-grid__row--helped{background:#fffbeb}.problem-results-grid__col{display:flex;align-items:center}.problem-results-grid__col--problem{flex-direction:column;align-items:flex-start;gap:2px}.problem-results-grid__col--attempted,.problem-results-grid__col--correct,.problem-results-grid__col--help{justify-content:center}.problem-results-grid__number{font-size:14px;font-weight:600;color:#1f2937}.problem-results-grid__preview{font-size:12px;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.problem-results-grid__checkbox{position:relative;cursor:pointer}.problem-results-grid__checkbox input{width:20px;height:20px;cursor:pointer;accent-color:#10b981}.problem-results-grid__result-toggle{display:flex;gap:4px}.problem-results-grid__result-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid #d1d5db;border-radius:6px;background:#fff;cursor:pointer;transition:all .15s;color:#9ca3af}.problem-results-grid__result-btn:hover{background:#f3f4f6}.problem-results-grid__result-btn--correct.problem-results-grid__result-btn--active{background:#10b981;border-color:#10b981;color:#fff}.problem-results-grid__result-btn--incorrect.problem-results-grid__result-btn--active{background:#ef4444;border-color:#ef4444;color:#fff}.problem-results-grid__help-badge{display:flex;align-items:center;gap:4px;padding:4px 8px;background:#fef3c7;border-radius:12px;font-size:12px;font-weight:500;color:#92400e}.problem-results-grid__legend{margin-top:16px;padding-top:12px;border-top:1px dashed #e5e7eb}.problem-results-grid__legend-item{display:flex;align-items:center;gap:8px;font-size:12px;color:#6b7280;margin-bottom:6px}.problem-results-grid__legend-item:last-child{margin-bottom:0}.problem-results-grid__legend-icon--help{color:#92400e}.problem-results-grid__legend-highlight{font-weight:600;color:#047857}.stride-dashboard__welcome-header{margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid #e5e7eb}.stride-dashboard__welcome-title{font-size:28px;font-weight:700;color:#111827;margin:0 0 4px}.stride-dashboard__welcome-subtitle{font-size:15px;color:#6b7280;margin:0}.stride-dashboard__page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;gap:16px}.stride-dashboard__page-header-left{display:flex;flex-direction:column;gap:4px}.stride-dashboard__page-title{font-size:24px;font-weight:700;color:#111827;margin:0}.stride-dashboard__page-subtitle{font-size:14px;color:#6b7280;margin:0}.stride-dashboard__primary-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;background:#3b82f6;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s ease;white-space:nowrap}.stride-dashboard__primary-btn:hover{background:#2563eb}.stride-dashboard__primary-btn:disabled{opacity:.6;cursor:not-allowed}.stride-dashboard__stats-section{margin-bottom:24px}@media (max-width: 768px){.stride-dashboard__page-header{flex-direction:column;align-items:flex-start}.stride-dashboard__primary-btn{width:100%;justify-content:center}}.mark-done-dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;animation:fadeIn .15s ease-out}.mark-done-dialog{background:#fff;border-radius:16px;width:100%;max-width:420px;box-shadow:0 20px 50px #0003;animation:slideUp .2s ease-out;overflow:hidden}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.mark-done-dialog__header{display:flex;align-items:center;gap:12px;padding:20px 20px 16px;border-bottom:1px solid #E5E7EB}.mark-done-dialog__icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:#d1fae5;border-radius:10px;color:#059669}.mark-done-dialog__title{flex:1;font-size:18px;font-weight:600;color:#1a1a1a;margin:0}.mark-done-dialog__close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:transparent;border-radius:8px;color:#6b7280;cursor:pointer;transition:all .15s}.mark-done-dialog__close:hover:not(:disabled){background:#f3f4f6;color:#374151}.mark-done-dialog__close:disabled{opacity:.5;cursor:not-allowed}.mark-done-dialog__error{display:flex;align-items:center;gap:8px;padding:12px 20px;background:#fee2e2;color:#dc2626;font-size:14px}.mark-done-dialog__content{padding:20px}.mark-done-dialog__assignment-name{font-size:14px;font-weight:500;color:#6b7280;margin:0 0 8px}.mark-done-dialog__description{font-size:15px;color:#374151;line-height:1.5;margin:0 0 16px}.mark-done-dialog__warning{display:flex;align-items:flex-start;gap:10px;padding:12px;background:#fef3c7;border-radius:8px;color:#92400e;font-size:14px;line-height:1.4;margin-bottom:16px}.mark-done-dialog__warning svg{flex-shrink:0;margin-top:2px}.mark-done-dialog__what-happens{background:#f9fafb;border-radius:8px;padding:14px}.mark-done-dialog__what-happens h3{font-size:13px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;margin:0 0 10px}.mark-done-dialog__what-happens ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.mark-done-dialog__what-happens li{display:flex;align-items:center;gap:8px;font-size:14px;color:#374151}.mark-done-dialog__what-happens li svg{color:#10b981;flex-shrink:0}.mark-done-dialog__actions{display:flex;gap:12px;padding:16px 20px 20px;background:#f9fafb;border-top:1px solid #E5E7EB}.mark-done-dialog__cancel-btn,.mark-done-dialog__confirm-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;font-size:15px;font-weight:500;border-radius:8px;cursor:pointer;transition:all .15s}.mark-done-dialog__cancel-btn{background:#fff;border:1px solid #D1D5DB;color:#374151}.mark-done-dialog__cancel-btn:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.mark-done-dialog__cancel-btn:disabled{opacity:.5;cursor:not-allowed}.mark-done-dialog__confirm-btn{background:#10b981;border:none;color:#fff}.mark-done-dialog__confirm-btn:hover:not(:disabled){background:#059669}.mark-done-dialog__confirm-btn:disabled{opacity:.7;cursor:not-allowed}.mark-done-dialog__spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@media (max-width: 480px){.mark-done-dialog-backdrop{padding:16px;align-items:flex-end}.mark-done-dialog{border-radius:16px 16px 0 0;max-width:none}.mark-done-dialog__actions{flex-direction:column-reverse}}.student-feedback-view{display:flex;flex-direction:column;max-width:800px;margin:0 auto;padding:24px;min-height:100vh;background:#fafafa}.feedback-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:16px;flex-wrap:wrap}.feedback-title{font-size:24px;font-weight:600;color:#1a1a1a;margin:0}.feedback-status{display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:20px;font-size:13px;font-weight:500}.feedback-status-not_started{background:#f3f4f6;color:#6b7280}.feedback-status-needs_work{background:#fee2e2;color:#dc2626}.feedback-status-completed{background:#d1fae5;color:#059669}.feedback-status-mastery{background:#fef3c7;color:#d97706}.feedback-images-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}.feedback-image-card{display:flex;flex-direction:column;background:#fff;border:1px solid #E5E7EB;border-radius:12px;overflow:hidden;cursor:pointer;transition:all .2s;text-align:left;padding:0}.feedback-image-card:hover{border-color:#3b82f6;box-shadow:0 4px 12px #3b82f626}.feedback-image-label{display:block;padding:12px 16px;font-size:13px;font-weight:500;color:#6b7280;background:#f9fafb;border-bottom:1px solid #E5E7EB}.feedback-image-container{position:relative;width:100%;padding-top:75%;overflow:hidden}.feedback-image-container img{position:absolute;top:0;left:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.feedback-image-hint{display:block;padding:8px 16px;font-size:11px;color:#9ca3af;text-align:center}.feedback-card{background:#fff;border:1px solid #E5E7EB;border-radius:12px;padding:24px;margin-bottom:24px}.feedback-card-title{display:flex;align-items:center;gap:8px;font-size:18px;font-weight:600;color:#1a1a1a;margin:0 0 20px}.feedback-card-icon{font-size:20px}.step-analysis-collapsible{border:1px solid #E5E7EB;border-radius:8px;overflow:hidden}.step-analysis-header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:14px 16px;background:#f9fafb;border:none;cursor:pointer;transition:background .2s}.step-analysis-header:hover{background:#f3f4f6}.step-analysis-summary{display:flex;align-items:center;gap:12px}.step-analysis-label{font-size:14px;font-weight:600;color:#374151}.steps-summary-pill{font-size:13px;font-weight:600;padding:4px 12px;border-radius:12px}.steps-summary-pill.great-job{background:#d1fae5;color:#059669}.steps-summary-pill.needs-work{background:#fee2e2;color:#dc2626}.step-analysis-chevron{color:#6b7280;transition:transform .2s ease}.step-analysis-chevron.expanded{transform:rotate(180deg)}.step-analysis{display:flex;flex-direction:column;gap:12px;padding:16px;background:#fff}.step-item{display:flex;gap:12px;padding:12px;border-radius:8px;background:#f9fafb}.step-item.step-correct{background:#f0fdf4}.step-item.step-incorrect{background:#fef2f2}.step-item.step-incorrect_due_to_previous{background:#fffbeb}.step-icon{flex-shrink:0;display:flex;align-items:flex-start;padding-top:2px}.step-content{flex:1;min-width:0}.step-label{font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.step-math{display:block;font-family:SF Mono,Fira Code,Consolas,monospace;font-size:16px;color:#1a1a1a;background:none;padding:4px 0;word-break:break-word;border:none;border-radius:0;box-shadow:none}.step-feedback{font-size:14px;color:#4b5563;margin:4px 0 0;line-height:1.5}.step-note{display:inline-block;font-size:11px;color:#d97706;background:#fef3c7;padding:2px 8px;border-radius:4px;margin-top:6px}.no-analysis{text-align:center;padding:32px;color:#9ca3af}.no-analysis-retry{display:flex;flex-direction:column;align-items:center;gap:12px}.no-analysis-retry .loading-spinner{width:28px;height:28px;border:3px solid #E5E7EB;border-top-color:#6366f1;border-radius:50%;animation:feedback-spin .8s linear infinite}.no-analysis-retry p{color:#6b7280;font-size:14px;margin:0}@keyframes feedback-spin{to{transform:rotate(360deg)}}.guiding-box{display:flex;gap:16px;margin-top:20px;padding:20px;background:#eff6ff;border:1px solid #BFDBFE;border-radius:12px}.guiding-icon{font-size:28px;flex-shrink:0}.guiding-content{flex:1}.guiding-content h3{font-size:16px;font-weight:600;color:#1e40af;margin:0 0 8px}.guiding-summary{font-size:14px;color:#374151;margin:0 0 12px;line-height:1.5}.guiding-question{font-size:15px;font-weight:500;color:#1d4ed8;margin:0;padding:12px;background:#fff;border-radius:8px;border-left:3px solid #3B82F6}.guiding-box.teacher-assigned{background:#fef3c7;border-color:#fcd34d}.guiding-box.teacher-assigned h3{color:#92400e}.guiding-box.teacher-assigned .guiding-summary{color:#78350f}.success-box{display:flex;gap:16px;margin-top:20px;padding:20px;background:#ecfdf5;border:1px solid #A7F3D0;border-radius:12px}.success-icon{font-size:28px;flex-shrink:0}.success-content{flex:1}.success-content h3{font-size:18px;font-weight:600;color:#059669;margin:0 0 4px}.success-content p{font-size:14px;color:#065f46;margin:0;line-height:1.5}.feedback-actions{display:flex;justify-content:center;padding:16px 0}.practice-cta{display:flex;align-items:center;gap:8px;padding:14px 28px;background:#3b82f6;color:#fff;border:none;border-radius:10px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s}.practice-cta:hover{background:#2563eb;transform:translateY(-1px);box-shadow:0 4px 12px #2563eb4d}.practice-cta:active{transform:translateY(0)}.done-cta{display:flex;align-items:center;gap:8px;padding:14px 28px;background:#10b981;color:#fff;border:none;border-radius:10px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s}.done-cta:hover{background:#059669}.done-cta--secondary{background:transparent;color:#10b981;border:2px solid #10B981}.done-cta--secondary:hover{background:#ecfdf5}.feedback-action-buttons{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}.pending-review-notice{display:flex;align-items:center;gap:10px;padding:14px 24px;background:#fef3c7;color:#92400e;border-radius:10px;font-size:15px;font-weight:500}.pending-review-notice svg{flex-shrink:0}.completed-notice{display:flex;align-items:center;gap:10px;padding:14px 24px;background:#d1fae5;color:#065f46;border-radius:10px;font-size:15px;font-weight:500}.completed-notice svg{flex-shrink:0}.feedback-status-pending_review{background:#fef3c7;color:#92400e}.image-modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:1000;padding:24px 24px 24px 284px;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.image-modal-content{position:relative;max-width:90vw;max-height:90vh;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 20px 40px #0000004d}.image-modal-content img{display:block;max-width:100%;max-height:85vh;-o-object-fit:contain;object-fit:contain}.image-modal-close{position:absolute;top:12px;right:12px;width:40px;height:40px;background:#0009;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s;z-index:1}.image-modal-close:hover{background:#000c}.pdf-badge{display:inline-block;margin-left:8px;padding:2px 6px;background:#ef4444;color:#fff;font-size:10px;font-weight:600;border-radius:4px;text-transform:uppercase;letter-spacing:.5px}.pdf-thumbnail-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;position:absolute;top:0;left:0;width:100%;height:100%;background:#f3f4f6;color:#6b7280;font-size:12px}.pdf-loading-spinner{width:24px;height:24px;border:3px solid #E5E7EB;border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite}.pdf-loading-spinner.large{width:40px;height:40px;border-width:4px}.pdf-thumbnail-error{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;position:absolute;top:0;left:0;width:100%;height:100%;background:#f9fafb;color:#6b7280;font-size:12px}.pdf-modal-content{position:relative;max-width:90vw;max-height:90vh;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 20px 40px #0000004d;display:flex;flex-direction:column}.pdf-modal-image-container{flex:1;overflow:auto;display:flex;align-items:center;justify-content:center;padding:16px;min-height:400px}.pdf-modal-image-container img{max-width:100%;max-height:75vh;-o-object-fit:contain;object-fit:contain}.pdf-modal-loading,.pdf-modal-error{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;min-height:400px;padding:48px;color:#6b7280;font-size:16px}.pdf-modal-error{color:#ef4444}.pdf-modal-navigation{display:flex;align-items:center;justify-content:center;gap:16px;padding:16px;background:#f9fafb;border-top:1px solid #E5E7EB}.pdf-nav-button{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:#fff;border:1px solid #E5E7EB;border-radius:8px;color:#374151;cursor:pointer;transition:all .2s}.pdf-nav-button:hover:not(:disabled){background:#f3f4f6;border-color:#d1d5db}.pdf-nav-button:disabled{opacity:.4;cursor:not-allowed}.pdf-page-indicator{font-size:14px;font-weight:500;color:#374151;min-width:100px;text-align:center}@media (max-width: 640px){.student-feedback-view{padding:16px}.feedback-header{flex-direction:column;align-items:flex-start}.feedback-title{font-size:20px}.feedback-images-row{grid-template-columns:1fr}.feedback-card{padding:16px}.guiding-box,.success-box{flex-direction:column;gap:12px}.practice-cta,.done-cta{width:100%;justify-content:center}}.feedback-page-container{min-height:100vh;background:#fafafa;position:fixed;top:0;left:60px;right:0;bottom:0;overflow-y:auto;transition:left .3s cubic-bezier(.4,0,.2,1)}.feedback-page-container.sidebar-expanded{left:260px}.feedback-page-container.has-teacher-banner{padding-top:44px}.feedback-teacher-banner{position:fixed;top:0;left:60px;right:0;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;background:#fef3c7;border-bottom:1px solid #FCD34D;color:#92400e;font-size:14px;font-weight:500;z-index:50;transition:left .3s cubic-bezier(.4,0,.2,1)}.sidebar-expanded .feedback-teacher-banner{left:260px}.feedback-teacher-banner svg{flex-shrink:0}.feedback-teacher-banner-subtitle{font-weight:400;color:#b45309}.feedback-back-btn{position:fixed;top:16px;left:76px;display:flex;align-items:center;gap:6px;padding:8px 14px;background:#fff;border:1px solid #E5E7EB;border-radius:8px;font-size:14px;font-weight:500;color:#4b5563;cursor:pointer;transition:all .2s,left .3s cubic-bezier(.4,0,.2,1);z-index:10}.sidebar-expanded .feedback-back-btn{left:276px}.has-teacher-banner .feedback-back-btn{top:56px}.feedback-back-btn:hover{background:#f9fafb;border-color:#d1d5db;color:#1f2937}.feedback-page-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;position:fixed;top:0;left:60px;right:0;bottom:0;gap:16px;background:#fafafa;transition:left .3s cubic-bezier(.4,0,.2,1)}.feedback-page-loading.sidebar-expanded{left:260px}.feedback-page-loading .loading-spinner{width:40px;height:40px;border:3px solid #E5E7EB;border-top-color:#3b82f6;border-radius:50%;animation:spin .8s linear infinite}.feedback-page-loading p{font-size:15px;color:#6b7280;margin:0}.feedback-page-error{display:flex;flex-direction:column;align-items:center;justify-content:center;position:fixed;top:0;left:60px;right:0;bottom:0;gap:12px;padding:24px;background:#fafafa;text-align:center;transition:left .3s cubic-bezier(.4,0,.2,1)}.feedback-page-error.sidebar-expanded{left:260px}.feedback-page-error h2{font-size:20px;font-weight:600;color:#1f2937;margin:0}.feedback-page-error p{font-size:15px;color:#6b7280;margin:0;max-width:400px}.feedback-page-error .sign-in-btn,.feedback-page-error .back-btn{margin-top:12px;padding:10px 24px;background:#3b82f6;color:#fff;border:none;border-radius:8px;font-size:15px;font-weight:500;cursor:pointer;transition:background .2s}.feedback-page-error .sign-in-btn:hover,.feedback-page-error .back-btn:hover{background:#2563eb}.feedback-page-loading-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#ffffffe6;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;z-index:100}.feedback-page-loading-overlay .loading-spinner{width:40px;height:40px;border:3px solid #E5E7EB;border-top-color:#10b981;border-radius:50%;animation:spin .8s linear infinite}.feedback-page-loading-overlay p{font-size:15px;color:#4b5563;font-weight:500;margin:0}.feedback-page-error-toast{position:fixed;top:16px;left:50%;transform:translate(-50%);background:#fef2f2;border:1px solid #FECACA;border-radius:8px;padding:12px 20px;z-index:100;animation:slideDown .3s ease-out}.feedback-page-error-toast p{margin:0;font-size:14px;color:#dc2626;font-weight:500}@keyframes slideDown{0%{opacity:0;transform:translate(-50%) translateY(-10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@media (max-width: 640px){.feedback-back-btn{top:8px;left:8px;padding:6px 12px;font-size:13px}}.assignment-list-item{display:flex;align-items:center;gap:16px;width:100%;padding:16px 20px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .15s ease;text-align:left;font-family:inherit}.assignment-list-item:hover{background:#f9fafb;border-color:#d1d5db;box-shadow:0 1px 3px #0000000d}.assignment-list-item:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.assignment-list-item--new{border-left:4px solid #6366f1}.assignment-list-item__icon{display:flex;flex-direction:column;align-items:center;justify-content:center;width:48px;height:48px;border-radius:8px;background:#f3f4f6;color:#6b7280;flex-shrink:0}.assignment-list-item__icon--pdf{background:#fef2f2;color:#dc2626}.assignment-list-item__icon--image{background:#f0fdf4;color:#16a34a}.assignment-list-item__icon--homework{background:#fefce8;color:#ca8a04}.assignment-list-item__icon--assignment{background:#eff6ff;color:#2563eb}.assignment-list-item__icon-label{font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-top:2px}.assignment-list-item__content{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.assignment-list-item__header{display:flex;align-items:center;gap:8px}.assignment-list-item__title{margin:0;font-size:15px;font-weight:600;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.assignment-list-item__source{font-size:11px;font-weight:500;color:#6366f1;background:#eef2ff;padding:2px 6px;border-radius:4px;flex-shrink:0}.assignment-list-item__description{margin:0;font-size:13px;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.assignment-list-item__errors{margin:0;font-size:12px;font-weight:500;color:#dc2626}.assignment-list-item__meta{display:flex;flex-direction:column;align-items:center;gap:6px;flex-shrink:0}.assignment-list-item__due-date{font-size:13px;color:#6b7280;white-space:nowrap}.assignment-list-item__status{font-size:11px!important;font-weight:600!important;height:24px!important}.assignment-list-item__status.status-new{background-color:#6366f1!important;color:#fff!important}.assignment-list-item__status.status-viewed{background-color:#f59e0b!important;color:#fff!important}.assignment-list-item__status.status-started{background-color:#3b82f6!important;color:#fff!important}.assignment-list-item__status.status-needs-work{background-color:#ef4444!important;color:#fff!important}.assignment-list-item__status.status-completed{background-color:#10b981!important;color:#fff!important}.assignment-list-item__status.status-mastery{background-color:#8b5cf6!important;color:#fff!important}.assignment-list-item__action{display:flex;align-items:center;justify-content:center;color:#9ca3af;flex-shrink:0;transition:color .15s ease;margin-left:8px}.assignment-list-item__action:has(svg:only-child){width:32px;height:32px}.assignment-list-item:hover .assignment-list-item__action{color:#6b7280}@media (max-width: 640px){.assignment-list-item{padding:12px 16px;gap:12px}.assignment-list-item__icon{width:40px;height:40px}.assignment-list-item__icon svg{width:20px;height:20px}.assignment-list-item__icon-label{display:none}.assignment-list-item__title{font-size:14px}.assignment-list-item__description{display:none}.assignment-list-item__meta{flex-direction:row;align-items:center}.assignment-list-item__due-date{font-size:12px}.assignment-list-item__action:has(svg:only-child){width:24px;height:24px}}.status-filter-tabs{border-bottom:1px solid #e5e7eb;margin-bottom:1rem}.status-filter-tabs__tabs{min-height:48px}.status-filter-tabs__tabs .MuiTabs-indicator{height:3px;border-radius:3px 3px 0 0;background-color:#6366f1}.status-filter-tabs__tabs .MuiTab-root{text-transform:none;font-weight:500;font-size:14px;min-height:48px;padding:12px 16px;color:#6b7280}.status-filter-tabs__tabs .MuiTab-root.Mui-selected{color:#111827;font-weight:600}.status-filter-tabs__tab-label{display:flex;align-items:center;gap:8px}.status-filter-tabs__chip{height:20px;font-size:11px;font-weight:600}.status-filter-tabs__chip .MuiChip-label{padding:0 6px}@media (max-width: 640px){.status-filter-tabs__tabs .MuiTab-root{padding:8px 12px;min-width:auto}.status-filter-tabs__chip{height:18px;font-size:10px}}.teacher-assignment-row{display:flex;align-items:center;gap:16px;padding:16px 20px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .15s ease}.teacher-assignment-row:hover{background:#f9fafb;border-color:#d1d5db;box-shadow:0 1px 3px #0000000d}.teacher-assignment-row__icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:8px;background:#f3f4f6;color:#6b7280;flex-shrink:0}.teacher-assignment-row__icon--pdf{background:#fef2f2;color:#dc2626}.teacher-assignment-row__icon--image{background:#f0fdf4;color:#16a34a}.teacher-assignment-row__content{flex:1;min-width:0}.teacher-assignment-row__header{display:flex;align-items:center;gap:8px;margin-bottom:4px}.teacher-assignment-row__name{margin:0;font-size:15px;font-weight:600;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.teacher-assignment-row__dates{display:flex;flex-direction:column;gap:2px}.teacher-assignment-row__date{margin:0;font-size:13px;color:#6b7280}.teacher-assignment-row__due-date{margin:0;font-size:12px;font-weight:500;color:#6b7280}.teacher-assignment-row__due-date--normal{color:#6b7280}.teacher-assignment-row__due-date--soon{color:#d97706}.teacher-assignment-row__due-date--overdue{color:#dc2626}.teacher-assignment-row__chip{height:20px;font-size:10px;font-weight:600;background-color:#f3f4f6;color:#6b7280}.teacher-assignment-row__chip--iready{background-color:#eef2ff;color:#6366f1}.teacher-assignment-row__stats{display:flex;align-items:center;gap:24px;flex-shrink:0}.teacher-assignment-row__student-count{display:flex;align-items:center;gap:6px;font-size:14px;font-weight:500;color:#374151}.teacher-assignment-row__student-count svg{color:#6b7280}.teacher-assignment-row__progress{display:flex;align-items:center;gap:8px}.teacher-assignment-row__progress-label{font-size:13px;font-weight:600;color:#374151;min-width:36px;text-align:right}.teacher-assignment-row__progress-bar{width:60px;height:6px;border-radius:3px;background-color:#e5e7eb}.teacher-assignment-row__progress-bar .MuiLinearProgress-bar{border-radius:3px}.teacher-assignment-row__progress-bar--low .MuiLinearProgress-bar{background-color:#f59e0b}.teacher-assignment-row__progress-bar--medium .MuiLinearProgress-bar{background-color:#3b82f6}.teacher-assignment-row__progress-bar--complete .MuiLinearProgress-bar{background-color:#10b981}.teacher-assignment-row__actions{flex-shrink:0}.teacher-assignment-row__menu-button{color:#9ca3af}.teacher-assignment-row__menu-item{display:flex;align-items:center}.teacher-assignment-row__menu-icon{margin-right:8px}.teacher-assignment-row__menu-item--delete{color:#dc2626}@media (max-width: 640px){.teacher-assignment-row{flex-wrap:wrap;gap:12px;padding:12px 16px}.teacher-assignment-row__icon{width:40px;height:40px}.teacher-assignment-row__content{flex:1 1 calc(100% - 100px)}.teacher-assignment-row__stats{flex:1 1 100%;gap:16px;margin-top:8px;padding-top:8px;border-top:1px solid #f3f4f6}}.assignment-skeleton{display:flex;align-items:center;gap:16px;padding:16px 20px;background-color:#fff;border:1px solid #e5e7eb;border-radius:8px}.assignment-skeleton__icon{flex-shrink:0}.assignment-skeleton__content{flex:1;min-width:0}.assignment-skeleton__title{margin-bottom:4px}.assignment-skeleton__meta{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.assignment-skeleton__action{flex-shrink:0}.assignments-page{min-height:100vh;padding:2rem;padding-left:calc(var(--side-panel-width, 260px) + 2rem);transition:padding-left .3s cubic-bezier(.4,0,.2,1)}.assignments-page-header{max-width:1100px;margin:0 auto 1.5rem}.assignments-page-header h1{font-size:1.75rem;font-weight:600;color:var(--text-primary, #1a1a2e);margin:0 0 .25rem}.assignments-page-subtitle{font-size:.9375rem;color:#6b7280;margin:0}.assignments-page-content{display:flex;flex-direction:column;gap:1.5rem;max-width:1100px;margin:0 auto}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}@media (max-width: 900px){.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 480px){.stats-grid{grid-template-columns:1fr}}.assignments-tabs{border-bottom:1px solid #e5e7eb;margin-bottom:.5rem}.assignments-tabs .MuiTab-root{text-transform:none;font-weight:500;font-size:.9375rem;min-height:48px;padding:12px 16px;color:#64748b;gap:8px}.assignments-tabs .MuiTab-root.Mui-selected{color:#e57800}.assignments-tabs .MuiTab-root:hover{background-color:#f8fafc}.tab-content{min-height:200px}.assignments-page-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;background:#f9fafb;border-radius:12px;border:1px dashed #e5e7eb}.assignments-page-empty .empty-icon{color:#9ca3af;margin-bottom:1.5rem}.assignments-page-empty h2{font-size:1.25rem;font-weight:600;color:#374151;margin:0 0 .5rem}.assignments-page-empty p{color:#6b7280;font-size:.9375rem;margin:0;max-width:400px}.assignments-section{display:flex;flex-direction:column;gap:.75rem}.assignments-section-header{margin-bottom:.5rem}.assignments-section-header h2{display:flex;align-items:center;gap:.5rem;font-size:1rem;font-weight:600;color:#374151;margin:0 0 .25rem}.assignments-section-header .section-icon{font-size:1.125rem}.assignments-section-header p{font-size:.8125rem;color:#6b7280;margin:0}.assignments-section-list{display:flex;flex-direction:column;gap:8px}.assignments-page-solve-btn{text-transform:none;font-size:12px;padding:4px 12px;background-color:#6366f1}.assignments-page-solve-btn:hover{background-color:#4f46e5}.student-tab-label{display:inline-flex;align-items:center;gap:6px}.student-tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;font-size:.6875rem;font-weight:600;color:#fff;background:#6366f1;border-radius:9px}@media (max-width: 768px){.assignments-page{padding:1.5rem 1rem}.assignments-page-header,.assignments-page-content{max-width:100%}.assignments-page-header h1{font-size:1.5rem}.assignments-tabs .MuiTab-root{font-size:.875rem;padding:10px 12px}}@keyframes _modalIn_7oyd1_1{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}._modal_7oyd1_20{animation:_modalIn_7oyd1_1 .35s cubic-bezier(.16,1,.3,1)}._header_7oyd1_26{padding:20px 24px 16px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #f0f0f0}._headerLeft_7oyd1_34{display:flex;align-items:center;gap:10px}._headerIcon_7oyd1_40{width:36px;height:36px;border-radius:10px;background:linear-gradient(135deg,#f59e0b,#d97706);display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0}._headerTitle_7oyd1_52{margin:0;font-size:17px;font-weight:600;color:#1a1a1a;letter-spacing:-.01em}._headerSubtitle_7oyd1_60{margin:1px 0 0;font-size:12px;color:#999}._closeButton_7oyd1_66{width:32px;height:32px;border-radius:8px;border:none;background:#f5f5f5;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;color:#999;transition:all .15s ease;flex-shrink:0}._closeButton_7oyd1_66:hover{background:#eee;color:#666}._body_7oyd1_89{padding:4px 0;overflow-y:auto}._fieldGroup_7oyd1_96{padding:16px 24px 12px;position:relative;transition:all .2s ease}._fieldGroupCompact_7oyd1_102{padding:8px 24px 12px;position:relative;transition:all .2s ease}._fieldGroup_7oyd1_96:focus-within,._fieldGroupCompact_7oyd1_102:focus-within{background:#fffbf5}._fieldGroup_7oyd1_96:focus-within ._fieldLabel_7oyd1_113,._fieldGroupCompact_7oyd1_102:focus-within ._fieldLabel_7oyd1_113{color:#d4760a}._fieldGroup_7oyd1_96:focus-within ._fieldAccent_7oyd1_118,._fieldGroupCompact_7oyd1_102:focus-within ._fieldAccent_7oyd1_118{opacity:1}._fieldAccent_7oyd1_118{position:absolute;left:0;top:12px;bottom:12px;width:3px;border-radius:2px;background:#f59e0b;opacity:0;transition:opacity .2s ease}._fieldLabel_7oyd1_113{display:block;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#999;margin-bottom:6px;transition:color .2s ease}._optionalTag_7oyd1_148{font-weight:400;text-transform:none;letter-spacing:0;color:#bbb;margin-left:4px}._labelRow_7oyd1_156{display:flex;align-items:center;gap:6px;margin-bottom:6px}._labelRow_7oyd1_156 ._fieldLabel_7oyd1_113{margin-bottom:0}._badgeVisible_7oyd1_169{font-size:10px;font-weight:500;padding:2px 7px;border-radius:4px;color:#3b82f6;background:#eff6ff}._badgeHidden_7oyd1_178{font-size:10px;font-weight:500;padding:2px 7px;border-radius:4px;color:#9333ea;background:#f5f3ff}._input_7oyd1_189{width:100%;padding:10px 12px;border:1.5px solid #e8e8e8;border-radius:10px;font-size:15px;font-weight:500;color:#1a1a1a;background:#fff;transition:border-color .15s ease;box-sizing:border-box}._input_7oyd1_189:focus{outline:none;border-color:#f59e0b}._input_7oyd1_189:disabled{opacity:.6;cursor:not-allowed;background:#fafafa}._dateInput_7oyd1_213{width:100%;padding:10px 12px;border:1.5px solid #e8e8e8;border-radius:10px;font-size:14px;color:#1a1a1a;background:#fff;transition:border-color .15s ease;box-sizing:border-box}._dateInput_7oyd1_213:focus{outline:none;border-color:#f59e0b}._dateInput_7oyd1_213:disabled{opacity:.6;cursor:not-allowed;background:#fafafa}._textarea_7oyd1_236{width:100%;padding:10px 12px;border:1.5px solid #e8e8e8;border-radius:10px;font-size:14px;color:#1a1a1a;background:#fff;transition:border-color .15s ease;box-sizing:border-box;line-height:1.5;resize:vertical}._textarea_7oyd1_236:focus{outline:none;border-color:#f59e0b}._textarea_7oyd1_236:disabled{opacity:.6;cursor:not-allowed;background:#fafafa}._aiTextarea_7oyd1_261{width:100%;padding:10px 12px;border:1.5px solid #e8e8e8;border-radius:10px;font-size:13.5px;color:#1a1a1a;background:#fff;transition:border-color .15s ease;box-sizing:border-box;line-height:1.6;resize:vertical}._aiTextarea_7oyd1_261:focus{outline:none;border-color:#f59e0b}._aiTextarea_7oyd1_261:disabled{opacity:.6;cursor:not-allowed;background:#fafafa}._contentPreview_7oyd1_288{border:1.5px solid #e8e8e8;border-radius:10px;overflow:hidden;background:#fafafa}._contentPreviewImage_7oyd1_295{display:block;width:100%;max-height:180px;-o-object-fit:contain;object-fit:contain;background:#fafafa}._contentPreviewLoading_7oyd1_303{display:flex;align-items:center;justify-content:center;height:100px}._contentPreviewFallback_7oyd1_310{display:flex;align-items:center;justify-content:center;gap:8px;height:60px;color:#999;font-size:13px;font-weight:500}._helperText_7oyd1_323{margin:5px 0 0;font-size:11.5px;color:#bbb}._divider_7oyd1_331{height:1px;background:#f0f0f0;margin:8px 24px}._chipContainer_7oyd1_339{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}._chip_7oyd1_339{display:inline-flex;align-items:center;gap:4px;padding:5px 10px;border-radius:8px;font-size:12px;font-weight:500;border:1.5px solid #e8e8e8;background:#fff;color:#888;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:all .15s ease}._chip_7oyd1_339:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 2px 8px #00000014}._chip_7oyd1_339:disabled{opacity:.6;cursor:not-allowed}._chipActive_7oyd1_372{border-color:#f59e0b;background:#fff8eb;color:#b45309}._chipIcon_7oyd1_378{font-size:13px}._chipCheck_7oyd1_382{font-size:11px;margin-left:2px;color:#d97706}._charCountRow_7oyd1_390{display:flex;justify-content:space-between;align-items:center;margin-top:5px}._charCountRow_7oyd1_390 ._helperText_7oyd1_323{margin:0}._charCount_7oyd1_390{font-size:11px;color:#ccc}._charCountWarning_7oyd1_406{font-size:11px;color:#ef4444}._fieldLabelIcon_7oyd1_413{display:inline;vertical-align:-1px;margin-right:3px}._studentCount_7oyd1_419{font-size:11px;font-weight:500;color:#999;margin-left:auto}._studentLoadingRow_7oyd1_426{display:flex;align-items:center;gap:8px;padding:8px 0;font-size:12px;color:#999}._studentChipContainer_7oyd1_435{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:8px;min-height:24px}._studentChip_7oyd1_435{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border-radius:6px;font-size:12px;font-weight:500;border:1px solid #e2e2e2;background:#f8f8f8;color:#555;cursor:pointer;transition:all .15s ease}._studentChip_7oyd1_435:hover:not(:disabled){border-color:#ef4444;background:#fef2f2;color:#dc2626}._studentChip_7oyd1_435:disabled{opacity:.5;cursor:not-allowed}._studentChipPending_7oyd1_469{border-style:dashed;background:#fffbeb;border-color:#fcd34d;color:#92400e}._studentChipPending_7oyd1_469:hover:not(:disabled){border-color:#ef4444;background:#fef2f2;color:#dc2626}._studentChipName_7oyd1_482{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._studentChipPendingIcon_7oyd1_489{display:inline-flex;color:#d97706}._studentChipRemove_7oyd1_494{display:inline-flex;opacity:.4;transition:opacity .15s ease}._studentChip_7oyd1_435:hover ._studentChipRemove_7oyd1_494{opacity:1}._studentDropdownWrapper_7oyd1_506{position:relative}._addStudentButton_7oyd1_510{width:100%;padding:8px 12px;border:1.5px dashed #ddd;border-radius:8px;background:#fff;font-size:12.5px;color:#999;cursor:pointer;text-align:left;transition:all .15s ease}._addStudentButton_7oyd1_510:hover:not(:disabled){border-color:#f59e0b;color:#b45309;background:#fffbf5}._addStudentButton_7oyd1_510:disabled{opacity:.5;cursor:not-allowed}._studentDropdown_7oyd1_506{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#fff;border:1.5px solid #e8e8e8;border-radius:10px;box-shadow:0 8px 24px #0000001f;z-index:20;overflow:hidden}._studentDropdownActions_7oyd1_547{display:flex;gap:4px;padding:8px 10px}._studentDropdownAction_7oyd1_547{padding:3px 8px;border-radius:5px;border:1px solid #e8e8e8;background:#fff;font-size:11px;font-weight:500;color:#888;cursor:pointer;transition:all .15s ease}._studentDropdownAction_7oyd1_547:hover{background:#f5f5f5;color:#555}._studentDropdownDivider_7oyd1_570{height:1px;background:#f0f0f0}._studentDropdownList_7oyd1_575{max-height:200px;overflow-y:auto;padding:4px 0}._studentDropdownItem_7oyd1_581{display:flex;align-items:center;gap:8px;width:100%;padding:7px 12px;border:none;background:transparent;font-size:13px;color:#444;cursor:pointer;text-align:left;transition:background .1s ease}._studentDropdownItem_7oyd1_581:hover{background:#f8f8f8}._studentDropdownItemChecked_7oyd1_600{background:#fffbf5}._studentCheckbox_7oyd1_604{width:16px;height:16px;border-radius:4px;border:1.5px solid #ddd;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .15s ease}._studentCheckboxChecked_7oyd1_616{background:#f59e0b;border-color:#f59e0b;color:#fff}._studentNamePending_7oyd1_622{opacity:.6;font-style:italic}._pendingBadge_7oyd1_627{margin-left:auto;font-size:10px;font-weight:500;padding:1px 6px;border-radius:3px;color:#d97706;background:#fffbeb}._pendingInfo_7oyd1_637{display:flex;align-items:center;gap:4px;margin:6px 0 0;font-size:11px;color:#d97706;font-style:italic}._footer_7oyd1_649{padding:14px 24px;display:flex;align-items:center;justify-content:flex-end;gap:10px;border-top:1px solid #f0f0f0;background:#fafafa}._cancelButton_7oyd1_659{padding:9px 20px;border-radius:10px;border:1.5px solid #e8e8e8;background:#fff;font-size:14px;font-weight:500;color:#888;cursor:pointer;transition:all .15s ease}._cancelButton_7oyd1_659:hover:not(:disabled){background:#f5f5f5}._cancelButton_7oyd1_659:disabled{opacity:.6;cursor:not-allowed}._saveButton_7oyd1_680{padding:9px 24px;border-radius:10px;border:none;background:linear-gradient(135deg,#f59e0b,#d97706);font-size:14px;font-weight:600;color:#fff;cursor:pointer;transition:all .15s ease;box-shadow:0 2px 8px #d4760a33}._saveButton_7oyd1_680:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 16px #d4760a59}._saveButton_7oyd1_680:disabled{opacity:.6;cursor:not-allowed}.assignment-type-dialog__title{text-align:center;font-weight:600}.assignment-type-dialog__content{padding-bottom:8px}.assignment-type-dialog__options{display:flex;flex-direction:column;gap:12px}.assignment-type-dialog__card{display:flex;align-items:center;gap:16px;padding:20px;border:2px solid #e5e7eb;border-radius:12px;background:#fff;cursor:pointer;transition:all .2s ease;text-align:left;width:100%}.assignment-type-dialog__card:hover{border-color:#3b82f6;background:#f0f7ff;box-shadow:0 2px 8px #3b82f61a}.assignment-type-dialog__card:active{transform:scale(.99)}.assignment-type-dialog__card-icon{display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:12px;flex-shrink:0}.assignment-type-dialog__card-icon--help{background:#eff6ff;color:#3b82f6}.assignment-type-dialog__card-icon--feedback{background:#f0fdf4;color:#22c55e}.assignment-type-dialog__card-text{display:flex;flex-direction:column;gap:4px}.assignment-type-dialog__card-title{font-size:16px;font-weight:600;color:#111827}.assignment-type-dialog__card-description{font-size:13px;color:#6b7280;line-height:1.4}.teacher-capture-container{min-height:100vh;min-height:100dvh;width:100%;background-color:#fff;display:flex;flex-direction:column;position:relative;overflow:hidden}.teacher-capture-error{position:absolute;top:1rem;left:1rem;right:1rem;z-index:100;background-color:#fef2f2;border:1px solid #fecaca;border-radius:1rem;padding:.75rem 1rem;display:flex;align-items:center;justify-content:space-between;gap:.5rem}.teacher-capture-error span{color:#dc2626;font-size:.875rem;font-weight:500}.teacher-capture-error button{background:none;border:none;color:#dc2626;cursor:pointer;padding:.25rem;border-radius:.5rem;display:flex;align-items:center;justify-content:center}.teacher-capture-error button:hover{background-color:#fee2e2}.teacher-capture-loading{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background-color:#fffffff2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem}.teacher-capture-loading-spinner{width:2.5rem;height:2.5rem;border:3px solid #e4e4e7;border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite}.teacher-capture-loading p{color:#71717a;font-size:.875rem;font-weight:500;text-align:center;max-width:20rem}.teacher-capture-loading-disclaimer{color:#a1a1aa;font-size:.75rem;font-weight:400;font-style:italic}.teacher-capture-loading-progress-container{display:flex;align-items:center;gap:.75rem;width:16rem}.teacher-capture-loading-progress-track{flex:1;height:.5rem;background-color:#e4e4e7;border-radius:9999px;overflow:hidden}.teacher-capture-loading-progress-fill{height:100%;background-color:#3b82f6;border-radius:9999px;transition:width .3s ease}.teacher-capture-loading-progress-percent{font-size:.75rem;font-weight:600;color:#3b82f6;min-width:2.5rem;text-align:right}.teacher-capture-setup{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;padding:2rem 1.5rem;padding-top:max(2rem,env(safe-area-inset-top));padding-bottom:max(2rem,env(safe-area-inset-bottom));background-color:#fff;overflow-y:auto;z-index:10}.teacher-capture-setup-header{margin-bottom:2rem;display:flex;align-items:flex-start;gap:.75rem}.teacher-capture-setup-back{background:none;border:none;width:2.5rem;height:2.5rem;border-radius:.75rem;display:flex;align-items:center;justify-content:center;color:#71717a;cursor:pointer;flex-shrink:0;margin-top:.125rem}.teacher-capture-setup-back:hover{background-color:#f4f4f5;color:#18181b}.teacher-capture-setup-options{flex:1;display:flex;flex-direction:column;gap:1rem}.teacher-capture-setup-option{width:100%;display:flex;align-items:center;gap:1rem;padding:1.25rem;background-color:#fafafa;border:2px solid #f4f4f5;border-radius:1rem;cursor:pointer;transition:all .2s;text-align:left}.teacher-capture-setup-option:hover{border-color:#3b82f6;background-color:#eff6ff}.teacher-capture-setup-option-icon{font-size:1.75rem;flex-shrink:0}.teacher-capture-setup-option-content{flex:1}.teacher-capture-setup-option-content h3{font-size:1rem;font-weight:700;color:#18181b;margin:0 0 .25rem}.teacher-capture-setup-option-content p{font-size:.8125rem;color:#71717a;margin:0;line-height:1.4}.teacher-capture-setup-option svg{color:#a1a1aa;flex-shrink:0}.teacher-capture-setup-existing-list{flex:1;display:flex;flex-direction:column;gap:.75rem;overflow-y:auto}.teacher-capture-setup-existing-loading,.teacher-capture-setup-existing-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;color:#71717a;text-align:center;padding:2rem}.teacher-capture-setup-existing-empty p{margin:0;font-size:.9375rem}.teacher-capture-setup-existing-item{width:100%;display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;background-color:#fafafa;border:2px solid #f4f4f5;border-radius:1rem;cursor:pointer;transition:all .2s;text-align:left}.teacher-capture-setup-existing-item:hover,.teacher-capture-setup-existing-item-selected{border-color:#3b82f6;background-color:#eff6ff}.teacher-capture-setup-existing-item-content{flex:1}.teacher-capture-setup-existing-item-content h3{font-size:1rem;font-weight:600;color:#18181b;margin:0 0 .25rem}.teacher-capture-setup-existing-item-content p{font-size:.8125rem;color:#71717a;margin:0}.teacher-capture-setup-existing-item svg{color:#a1a1aa;flex-shrink:0}.teacher-capture-setup-title{font-size:1.75rem;font-weight:900;color:#18181b;letter-spacing:-.025em;text-transform:uppercase;margin:0 0 .5rem}.teacher-capture-setup-subtitle{color:#a1a1aa;font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;margin:0}.teacher-capture-setup-form{flex:1;display:flex;flex-direction:column;gap:1.5rem}.teacher-capture-setup-field{display:flex;flex-direction:column;gap:.5rem}.teacher-capture-setup-label{font-size:.625rem;font-weight:900;text-transform:uppercase;letter-spacing:.2em;color:#a1a1aa}.teacher-capture-setup-input{width:100%;padding:1rem 1.25rem;font-size:1rem;font-weight:600;border:2px solid #f4f4f5;border-radius:1.5rem;background-color:#fafafa;color:#18181b;outline:none;transition:all .2s}.teacher-capture-setup-input:focus{border-color:#3b82f6;background-color:#fff}.teacher-capture-setup-input::-moz-placeholder{color:#d4d4d8}.teacher-capture-setup-input::placeholder{color:#d4d4d8}.teacher-capture-setup-helper{margin-top:.5rem;font-size:.75rem;color:#71717a}.teacher-capture-setup-upload{width:100%;padding:2rem;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;border:2px dashed #e4e4e7;border-radius:1.5rem;background-color:#fafafa;color:#71717a;cursor:pointer;transition:all .2s}.teacher-capture-setup-upload:hover{border-color:#3b82f6;background-color:#eff6ff;color:#3b82f6}.teacher-capture-setup-upload span{font-size:.875rem;font-weight:600}.teacher-capture-setup-preview{position:relative;border-radius:1.5rem;overflow:hidden}.teacher-capture-setup-preview img{width:100%;height:auto;max-height:200px;-o-object-fit:cover;object-fit:cover;border-radius:1.5rem}.teacher-capture-setup-preview-remove{position:absolute;top:.75rem;right:.75rem;width:2.5rem;height:2.5rem;background-color:#0009;color:#fff;border:none;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color .2s}.teacher-capture-setup-preview-remove:hover{background-color:#000c}.teacher-capture-setup-actions{display:flex;gap:1rem;margin-top:auto;padding-top:2rem}.teacher-capture-btn-secondary{flex:1;padding:1rem 1.5rem;font-size:.875rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#71717a;background-color:#f4f4f5;border:none;border-radius:1.5rem;cursor:pointer;transition:all .2s}.teacher-capture-btn-secondary:hover{background-color:#e4e4e7}.teacher-capture-btn-secondary:disabled{opacity:.5;cursor:not-allowed}.teacher-capture-btn-primary{flex:2;padding:1rem 1.5rem;font-size:.875rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#fff;background-color:#18181b;border:none;border-radius:1.5rem;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:all .2s}.teacher-capture-btn-primary:hover{background-color:#27272a}.teacher-capture-btn-primary:disabled{opacity:.5;cursor:not-allowed}.teacher-capture-btn-submit{width:100%;padding:1.5rem;font-size:1rem;font-weight:900;text-transform:uppercase;letter-spacing:.15em;color:#fff;background-color:#18181b;border:none;border-radius:1.5rem;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;box-shadow:0 25px 50px -12px #00000040;transition:all .2s}.teacher-capture-btn-submit:hover{background-color:#27272a}.teacher-capture-btn-submit:active{transform:scale(.98)}.teacher-capture-btn-submit:disabled{opacity:.5;cursor:not-allowed}.teacher-capture-roster{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;background-color:#fff;overflow:hidden;z-index:10}.teacher-capture-roster-header{padding:1.5rem 1.5rem 1rem;padding-top:max(1.5rem,env(safe-area-inset-top));background-color:#fff;position:sticky;top:0;z-index:20}.teacher-capture-roster-header-top{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:1rem}.teacher-capture-roster-title{font-size:1.5rem;font-weight:900;color:#18181b;letter-spacing:-.025em;text-transform:uppercase;margin:0}.teacher-capture-roster-subtitle{color:#a1a1aa;font-size:.625rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;margin:0}.teacher-capture-roster-count{text-align:right}.teacher-capture-roster-count-current{font-size:1.25rem;font-weight:900;color:#3b82f6}.teacher-capture-roster-count-total{font-size:.875rem;font-weight:700;color:#d4d4d8}.teacher-capture-roster-progress{height:.625rem;width:100%;background-color:#f4f4f5;border-radius:9999px;overflow:hidden}.teacher-capture-roster-progress-bar{height:100%;background-color:#3b82f6;border-radius:9999px}.teacher-capture-roster-list{flex:1;overflow-y:auto;padding:.5rem 1.5rem 6rem}.teacher-capture-roster-list-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.teacher-capture-roster-list-title{font-size:.625rem;font-weight:900;text-transform:uppercase;letter-spacing:.2em;color:#a1a1aa;margin:0}.teacher-capture-roster-list-badge{padding:.25rem .5rem;background-color:#f4f4f5;border-radius:9999px;font-size:.5625rem;font-weight:900;color:#71717a;text-transform:uppercase;letter-spacing:-.025em}.teacher-capture-roster-item{width:100%;display:flex;align-items:center;justify-content:space-between;padding:1rem;margin-bottom:.75rem;border-radius:1.5rem;border:2px solid #fafafa;background-color:#fff;cursor:pointer;transition:all .3s;text-align:left}.teacher-capture-roster-item:hover{border-color:#dbeafe;background-color:#3b82f60d}.teacher-capture-roster-item-captured{background-color:#ecfdf5;border-color:#d1fae5}.teacher-capture-roster-item-left{display:flex;align-items:center;gap:1rem}.teacher-capture-roster-item-icon{width:3rem;height:3rem;border-radius:1rem;display:flex;align-items:center;justify-content:center;background-color:#f4f4f5;color:#a1a1aa;transition:all .5s}.teacher-capture-roster-item:hover .teacher-capture-roster-item-icon{background-color:#3b82f6;color:#fff}.teacher-capture-roster-item-icon-captured{background-color:#10b981;color:#fff;transform:rotate(360deg) scale(.9)}.teacher-capture-roster-item-info{display:flex;flex-direction:column}.teacher-capture-roster-item-name{font-size:1rem;font-weight:700;color:#18181b;margin:0;transition:color .3s}.teacher-capture-roster-item-captured .teacher-capture-roster-item-name{color:#047857}.teacher-capture-roster-item-status{font-size:.625rem;font-weight:700;color:#a1a1aa;text-transform:uppercase;letter-spacing:.15em;margin:0}.teacher-capture-roster-item-photo-count{color:#10b981;font-weight:900}.teacher-capture-roster-item-action{width:2.5rem;height:2.5rem;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#e4e4e7;transition:all .3s}.teacher-capture-roster-item:hover .teacher-capture-roster-item-action{color:#3b82f6}.teacher-capture-roster-item-action-captured{color:#10b981}.teacher-capture-roster-item-dot{width:.5rem;height:.5rem;border-radius:50%;background-color:#10b981}.teacher-capture-roster-submit{padding-top:1.5rem}.teacher-capture-roster-reset{width:100%;margin-top:1.5rem;padding:.75rem;background:none;border:none;color:#d4d4d8;font-size:.625rem;font-weight:900;text-transform:uppercase;letter-spacing:.3em;cursor:pointer;transition:color .2s}.teacher-capture-roster-reset:hover{color:#71717a}.teacher-capture-roster-back{position:absolute;bottom:1.5rem;left:1.5rem;display:flex;align-items:center;gap:.25rem;padding:.75rem 1rem;background-color:#f4f4f5;border:none;border-radius:1rem;color:#71717a;font-size:.75rem;font-weight:700;cursor:pointer;transition:all .2s}.teacher-capture-roster-back:hover{background-color:#e4e4e7;color:#18181b}.teacher-capture-roster-confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background-color:#00000080;display:flex;align-items:center;justify-content:center;padding:1rem}.teacher-capture-roster-confirm-dialog{background-color:#fff;border-radius:1.5rem;padding:2rem;max-width:320px;width:100%;text-align:center;box-shadow:0 25px 50px -12px #00000040}.teacher-capture-roster-confirm-title{font-size:1.25rem;font-weight:900;color:#18181b;margin:0 0 .75rem}.teacher-capture-roster-confirm-message{font-size:.875rem;color:#71717a;margin:0 0 1.5rem;line-height:1.5}.teacher-capture-roster-confirm-actions{display:flex;flex-direction:column;gap:.75rem}.teacher-capture-roster-confirm-btn-primary{width:100%;padding:1rem 1.5rem;font-size:.875rem;font-weight:700;color:#fff;background-color:#3b82f6;border:none;border-radius:1rem;cursor:pointer;transition:background-color .15s ease}.teacher-capture-roster-confirm-btn-primary:hover{background-color:#2563eb}.teacher-capture-roster-confirm-btn-secondary{width:100%;padding:.75rem 1.5rem;font-size:.875rem;font-weight:600;color:#71717a;background-color:#f4f4f5;border:none;border-radius:1rem;cursor:pointer;transition:background-color .15s ease}.teacher-capture-roster-confirm-btn-secondary:hover{background-color:#e4e4e7}.teacher-capture-roster-item-submitted{background-color:#ecfdf5;border-color:#a7f3d0}.teacher-capture-roster-item-submitted:hover{background-color:#d1fae5;border-color:#6ee7b7}.teacher-capture-roster-item-submitted .teacher-capture-roster-item-name{color:#047857}.teacher-capture-roster-item-pending{background-color:#fffbeb;border-color:#fde68a}.teacher-capture-roster-item-pending:hover{background-color:#fef3c7;border-color:#fcd34d}.teacher-capture-roster-item-icon-submitted{background-color:#10b981;color:#fff}.teacher-capture-roster-item-submitted:hover .teacher-capture-roster-item-icon-submitted{background-color:#059669;color:#fff}.teacher-capture-roster-item-icon-pending{background-color:#f59e0b;color:#fff}.teacher-capture-roster-item-pending:hover .teacher-capture-roster-item-icon-pending{background-color:#d97706;color:#fff}.teacher-capture-roster-item-action-submitted{color:#10b981}.teacher-capture-roster-item-action-pending{color:#f59e0b}.teacher-capture-roster-status-summary{display:flex;gap:1rem;margin-top:.75rem}.teacher-capture-roster-status-submitted{display:flex;align-items:center;gap:.375rem;font-size:.75rem;font-weight:600;color:#10b981}.teacher-capture-roster-status-pending{display:flex;align-items:center;gap:.375rem;font-size:.75rem;font-weight:600;color:#f59e0b}.teacher-capture-roster-all-submitted{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:1.25rem;margin-top:1rem;background-color:#ecfdf5;border-radius:1rem;color:#10b981}.teacher-capture-roster-all-submitted p{font-size:.875rem;font-weight:600;margin:0}.teacher-capture-btn-submit-partial{background-color:#f59e0b}.teacher-capture-btn-submit-partial:hover{background-color:#d97706}.teacher-capture-camera{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background-color:#000;display:flex;flex-direction:column;min-height:100vh;min-height:100dvh}.teacher-capture-camera-header{padding:1rem 1.5rem;padding-top:max(1rem,env(safe-area-inset-top));display:flex;align-items:center;justify-content:space-between;color:#fff}.teacher-capture-camera-back{width:3rem;height:3rem;border-radius:1rem;background-color:#ffffff1a;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:none;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color .2s}.teacher-capture-camera-back:hover{background-color:#fff3}.teacher-capture-camera-title{text-align:center}.teacher-capture-camera-label{font-size:.625rem;font-weight:900;text-transform:uppercase;letter-spacing:.2em;color:#71717a;margin:0 0 .25rem}.teacher-capture-camera-name{font-size:1.25rem;font-weight:900;letter-spacing:-.025em;margin:0}.teacher-capture-camera-counter{width:3rem;height:3rem;border-radius:1rem;border:2px solid rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;font-size:.625rem;font-weight:900}.teacher-capture-camera-thumbnails{display:flex;gap:.5rem;padding:.75rem 1rem;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.teacher-capture-camera-thumbnails::-webkit-scrollbar{display:none}.teacher-capture-camera-thumbnail{position:relative;flex-shrink:0;width:3.5rem;height:3.5rem;border-radius:.75rem;overflow:hidden;border:2px solid rgba(255,255,255,.2);background-color:#18181b}.teacher-capture-camera-thumbnail img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.teacher-capture-camera-thumbnail-delete{position:absolute;top:-.25rem;right:-.25rem;width:1.25rem;height:1.25rem;border-radius:50%;background-color:#ef4444;border:2px solid #000;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;z-index:5}.teacher-capture-camera-thumbnail-delete:hover{background-color:#dc2626;transform:scale(1.1)}.teacher-capture-camera-thumbnail-number{position:absolute;bottom:.125rem;left:.25rem;font-size:.5rem;font-weight:900;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.8)}.teacher-capture-camera-thumbnail-placeholder{flex-shrink:0;width:3.5rem;height:3.5rem;border-radius:.75rem;border:2px dashed rgba(255,255,255,.3);display:flex;align-items:center;justify-content:center;color:#fff6;font-size:1.25rem}.teacher-capture-camera-image-count{text-align:center;padding:.25rem 0}.teacher-capture-camera-image-count span{display:inline-block;padding:.25rem .75rem;background-color:#ffffff1a;border-radius:9999px;font-size:.625rem;font-weight:700;color:#a1a1aa;text-transform:uppercase;letter-spacing:.05em}.teacher-capture-camera-image-count-full{background-color:#10b98133!important;color:#10b981!important}.teacher-capture-camera-viewfinder-container{flex:1;position:relative;display:flex;align-items:center;justify-content:center;padding:.5rem 1rem;padding-bottom:calc(180px + env(safe-area-inset-bottom));overflow:hidden}.teacher-capture-camera-viewfinder{width:100%;max-width:400px;aspect-ratio:4 / 5;max-height:60vh;border-radius:1.5rem;background-color:#18181b;border:1px solid rgba(255,255,255,.1);position:relative;overflow:hidden}@media (min-width: 768px){.teacher-capture-camera-viewfinder-container{padding:1.5rem 2rem;padding-bottom:calc(180px + env(safe-area-inset-bottom));overflow:visible}.teacher-capture-camera-viewfinder{max-width:85vw;max-height:calc(100vh - 300px)}}@media (min-width: 1024px){.teacher-capture-camera-viewfinder-container{padding:2rem 3rem;padding-bottom:calc(170px + env(safe-area-inset-bottom))}.teacher-capture-camera-viewfinder{max-width:90vw;max-height:calc(100vh - 280px)}}.teacher-capture-camera-video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;background-color:#000}.teacher-capture-camera-grid{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);opacity:.2;pointer-events:none;z-index:5}.teacher-capture-camera-grid-cell{border:1px solid rgba(255,255,255,.3)}.teacher-capture-camera-error{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;background-color:#000c;color:#fff;z-index:10;padding:2rem;text-align:center}.teacher-capture-camera-error>svg{color:#ef4444}.teacher-capture-camera-error>p{font-size:.875rem;color:#a1a1aa;margin:0}.teacher-capture-camera-error-actions{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem;width:100%;max-width:200px}.teacher-capture-camera-error-actions>button{padding:.75rem 1.5rem;background-color:#3b82f6;color:#fff;border:none;border-radius:1rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:background-color .2s}.teacher-capture-camera-error-actions>button:hover{background-color:#2563eb}.teacher-capture-camera-error-upload{display:flex;align-items:center;justify-content:center;gap:.5rem;background-color:#27272a!important}.teacher-capture-camera-error-upload:hover{background-color:#3f3f46!important}.teacher-capture-camera-loading{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;background-color:#0009;color:#fff;z-index:10}.teacher-capture-camera-loading-spinner{width:2.5rem;height:2.5rem;border:3px solid rgba(255,255,255,.2);border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite}.teacher-capture-camera-loading>p{font-size:.75rem;color:#a1a1aa;text-transform:uppercase;letter-spacing:.1em;margin:0}.teacher-capture-camera-preview-img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;z-index:2}.teacher-capture-camera-brackets{position:absolute;top:1.5rem;right:1.5rem;bottom:1.5rem;left:1.5rem;border:2px solid rgba(255,255,255,.2);border-radius:.75rem;pointer-events:none;z-index:6}.teacher-capture-camera-bracket{position:absolute;width:2rem;height:2rem}.teacher-capture-camera-bracket-tl{top:0;left:0;border-top:4px solid #fff;border-left:4px solid #fff;border-top-left-radius:.75rem;transform:translate(-.5rem,-.5rem)}.teacher-capture-camera-bracket-tr{top:0;right:0;border-top:4px solid #fff;border-right:4px solid #fff;border-top-right-radius:.75rem;transform:translate(.5rem,-.5rem)}.teacher-capture-camera-bracket-bl{bottom:0;left:0;border-bottom:4px solid #fff;border-left:4px solid #fff;border-bottom-left-radius:.75rem;transform:translate(-.5rem,.5rem)}.teacher-capture-camera-bracket-br{bottom:0;right:0;border-bottom:4px solid #fff;border-right:4px solid #fff;border-bottom-right-radius:.75rem;transform:translate(.5rem,.5rem)}.teacher-capture-camera-flash{position:absolute;top:0;right:0;bottom:0;left:0;background-color:#fff;z-index:20}.teacher-capture-camera-controls{position:fixed;bottom:0;left:0;right:0;padding:1rem 1.5rem;padding-bottom:calc(5px + env(safe-area-inset-bottom,0px));background:linear-gradient(to top,#000 80%,transparent);display:flex;flex-direction:column;align-items:center;gap:.75rem;z-index:50}.teacher-capture-camera-dots{display:flex;gap:.75rem}.teacher-capture-camera-dot{height:.375rem;width:.375rem;border-radius:9999px;background-color:#27272a;transition:all .5s}.teacher-capture-camera-dot-active{width:2rem;background-color:#3b82f6}.teacher-capture-camera-dot-captured{background-color:#10b981}.teacher-capture-camera-status{color:#71717a;font-size:.625rem;font-weight:900;text-transform:uppercase;letter-spacing:.2em;margin:0}.teacher-capture-camera-buttons{display:flex;align-items:center;gap:2rem}.teacher-capture-camera-nav{width:3rem;height:3rem;border-radius:50%;background-color:#ffffff1a;border:none;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.teacher-capture-camera-nav:hover{background-color:#fff3}.teacher-capture-camera-nav:active{transform:scale(.9)}.teacher-capture-camera-nav-disabled{opacity:.3;cursor:not-allowed}.teacher-capture-camera-nav-disabled:hover{background-color:#ffffff1a}.teacher-capture-camera-nav-disabled:active{transform:none}.teacher-capture-camera-nav-next{background-color:#3b82f64d}.teacher-capture-camera-nav-next:hover{background-color:#3b82f680}.teacher-capture-camera-nav-done{background-color:#10b9814d}.teacher-capture-camera-nav-done:hover{background-color:#10b98180}.teacher-capture-camera-shutter{position:relative;width:5rem;height:5rem;border-radius:50%;border:5px solid #fff;background:transparent;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.teacher-capture-camera-shutter:active{transform:scale(.9);opacity:.8}.teacher-capture-camera-shutter:disabled{cursor:not-allowed}.teacher-capture-camera-shutter-disabled{opacity:.4;border-color:#ffffff4d}.teacher-capture-camera-shutter-disabled .teacher-capture-camera-shutter-inner{background-color:#ffffff4d}.teacher-capture-camera-shutter-inner{width:3.75rem;height:3.75rem;border-radius:50%;background-color:#fff;transition:transform .2s}.teacher-capture-camera-shutter:hover .teacher-capture-camera-shutter-inner{transform:scale(.95)}.teacher-capture-camera-shutter-spinner{position:absolute;top:-5px;right:-5px;bottom:-5px;left:-5px;width:calc(100% + 10px);height:calc(100% + 10px);border-radius:50%;border:5px solid transparent;border-top-color:#3b82f6;animation:spin 1s linear infinite}.teacher-capture-confirmation{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1.5rem;padding-top:max(2rem,env(safe-area-inset-top));padding-bottom:max(2rem,env(safe-area-inset-bottom));background-color:#fff;text-align:center;z-index:10}.teacher-capture-confirmation-icon{width:6rem;height:6rem;border-radius:50%;background-color:#ecfdf5;display:flex;align-items:center;justify-content:center;margin-bottom:1.5rem;color:#10b981}.teacher-capture-confirmation-title{font-size:2rem;font-weight:900;color:#18181b;letter-spacing:-.025em;margin:0 0 .5rem}.teacher-capture-confirmation-subtitle{font-size:1rem;color:#71717a;margin:0 0 2rem}.teacher-capture-confirmation-info{display:flex;align-items:flex-start;gap:.75rem;padding:1rem 1.25rem;background-color:#eff6ff;border-radius:1rem;margin-bottom:2rem;max-width:320px;text-align:left}.teacher-capture-confirmation-info>svg{flex-shrink:0;color:#3b82f6;margin-top:.125rem}.teacher-capture-confirmation-info>p{font-size:.875rem;color:#1e40af;margin:0;line-height:1.5}.teacher-capture-confirmation-details{display:flex;flex-direction:column;gap:.75rem;width:100%;max-width:320px;margin-bottom:2rem}.teacher-capture-confirmation-detail{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background-color:#fafafa;border-radius:1rem}.teacher-capture-confirmation-detail-label{font-size:.75rem;font-weight:700;color:#a1a1aa;text-transform:uppercase;letter-spacing:.1em}.teacher-capture-confirmation-detail-value{font-size:.875rem;font-weight:700;color:#18181b}.teacher-capture-confirmation-actions{display:flex;flex-direction:column;gap:.75rem;width:100%;max-width:320px}.teacher-capture-confirmation-icon-processing{background-color:#fef3c7;color:#d97706}.teacher-capture-confirmation-spinner{animation:spin 1.5s linear infinite}.teacher-capture-confirmation-stats{display:flex;gap:1rem;margin-bottom:1.5rem}.teacher-capture-confirmation-stat{display:flex;flex-direction:column;align-items:center;padding:1rem 1.5rem;background-color:#f4f4f5;border-radius:1rem;min-width:80px}.teacher-capture-confirmation-stat-value{font-size:1.75rem;font-weight:900;color:#18181b;line-height:1}.teacher-capture-confirmation-stat-label{font-size:.75rem;font-weight:600;color:#71717a;text-transform:uppercase;letter-spacing:.05em;margin-top:.25rem}.teacher-capture-confirmation-assignment{display:flex;flex-direction:column;align-items:center;padding:.75rem 1.25rem;background-color:#fafafa;border-radius:1rem;margin-bottom:1.5rem;max-width:320px;width:100%}.teacher-capture-confirmation-assignment-label{font-size:.625rem;font-weight:700;color:#a1a1aa;text-transform:uppercase;letter-spacing:.1em;margin-bottom:.25rem}.teacher-capture-confirmation-assignment-value{font-size:.9rem;font-weight:600;color:#18181b;text-align:center;word-break:break-word}.teacher-capture-confirmation-students{width:100%;max-width:320px;margin-bottom:1.5rem}.teacher-capture-confirmation-students-title{font-size:.75rem;font-weight:700;color:#71717a;text-transform:uppercase;letter-spacing:.1em;margin:0 0 .75rem;text-align:left}.teacher-capture-confirmation-students-list{max-height:180px;overflow-y:auto;display:flex;flex-direction:column;gap:.5rem;padding-right:.25rem}.teacher-capture-confirmation-student{display:flex;align-items:center;gap:.75rem;padding:.625rem .875rem;background-color:#f9fafb;border-radius:.75rem}.teacher-capture-confirmation-student-icon{width:28px;height:28px;border-radius:50%;background-color:#e5e7eb;display:flex;align-items:center;justify-content:center;color:#6b7280;flex-shrink:0}.teacher-capture-confirmation-student-name{flex:1;font-size:.875rem;font-weight:500;color:#18181b;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.teacher-capture-confirmation-student-photos{display:flex;align-items:center;gap:.25rem;font-size:.75rem;font-weight:600;color:#6b7280;background-color:#e5e7eb;padding:.25rem .5rem;border-radius:.5rem}.teacher-capture-confirmation-student-photos svg{opacity:.7}.teacher-capture-complete-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1.5rem;background-color:#fffffffa;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.teacher-capture-complete-content{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:320px;width:100%}.teacher-capture-complete-icon{width:5rem;height:5rem;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:1.5rem}.teacher-capture-complete-icon-success{background-color:#ecfdf5;color:#10b981}.teacher-capture-complete-icon-submitting{background-color:#fef3c7;color:#d97706}.teacher-capture-complete-icon-error{background-color:#fef2f2;color:#dc2626}.teacher-capture-complete-spinner{animation:spin 1.5s linear infinite}.teacher-capture-complete-title{font-size:1.75rem;font-weight:900;color:#18181b;letter-spacing:-.025em;margin:0 0 .5rem}.teacher-capture-complete-subtitle{font-size:1.125rem;font-weight:600;color:#52525b;margin:0 0 2rem}.teacher-capture-complete-info{padding:.75rem 1rem;background-color:#eff6ff;border-radius:.75rem;margin-bottom:1.5rem}.teacher-capture-complete-info p{font-size:.875rem;color:#1e40af;margin:0}.teacher-capture-complete-error-message{font-size:.875rem;color:#dc2626;margin:0 0 1.5rem;padding:.75rem 1rem;background-color:#fef2f2;border-radius:.75rem}.teacher-capture-complete-actions{display:flex;flex-direction:column;gap:.75rem;width:100%;margin-bottom:1.5rem}.teacher-capture-complete-btn-primary{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:1rem 1.5rem;font-size:.9rem;font-weight:700;color:#fff;background-color:#10b981;border:none;border-radius:1rem;cursor:pointer;transition:background-color .15s ease,transform .1s ease}.teacher-capture-complete-btn-primary:hover{background-color:#059669}.teacher-capture-complete-btn-primary:active{transform:scale(.98)}.teacher-capture-complete-btn-primary:focus-visible{outline:2px solid #10b981;outline-offset:2px}.teacher-capture-complete-btn-secondary{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:1rem 1.5rem;font-size:.9rem;font-weight:600;color:#52525b;background-color:#f4f4f5;border:none;border-radius:1rem;cursor:pointer;transition:background-color .15s ease,transform .1s ease}.teacher-capture-complete-btn-secondary:hover{background-color:#e4e4e7}.teacher-capture-complete-btn-secondary:active{transform:scale(.98)}.teacher-capture-complete-btn-secondary:focus-visible{outline:2px solid #a1a1aa;outline-offset:2px}.teacher-capture-complete-hint{font-size:.75rem;color:#a1a1aa;margin:0 0 1rem}.teacher-capture-complete-hint kbd{display:inline-block;padding:.125rem .375rem;font-family:inherit;font-size:.75rem;font-weight:600;color:#71717a;background-color:#f4f4f5;border:1px solid #e4e4e7;border-radius:.25rem}.teacher-capture-complete-back{font-size:.875rem;font-weight:500;color:#71717a;background:none;border:none;cursor:pointer;padding:.5rem 1rem;border-radius:.5rem;transition:color .15s ease,background-color .15s ease}.teacher-capture-complete-back:hover{color:#18181b;background-color:#f4f4f5}.teacher-capture-desktop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background-color:#fff;display:flex;flex-direction:column;min-height:100vh;min-height:100dvh}.teacher-capture-desktop-header{padding:1.5rem 2rem 1rem;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #f4f4f5}.teacher-capture-desktop-back{width:2.5rem;height:2.5rem;border-radius:.75rem;background-color:#f4f4f5;border:none;color:#71717a;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.teacher-capture-desktop-back:hover{background-color:#e4e4e7;color:#18181b}.teacher-capture-desktop-title{text-align:center}.teacher-capture-desktop-label{font-size:.625rem;font-weight:900;text-transform:uppercase;letter-spacing:.2em;color:#a1a1aa;margin:0 0 .25rem}.teacher-capture-desktop-name{font-size:1.25rem;font-weight:900;color:#18181b;letter-spacing:-.025em;margin:0}.teacher-capture-desktop-counter{width:3rem;height:3rem;border-radius:.75rem;border:2px solid #f4f4f5;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:900;color:#71717a}.teacher-capture-desktop-body{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;gap:1.5rem;max-width:600px;margin:0 auto;width:100%}.teacher-capture-desktop-dropzone{width:100%;padding:3rem 2rem;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;border:2px dashed #d4d4d8;border-radius:1.5rem;background-color:#fafafa;cursor:pointer;transition:all .2s}.teacher-capture-desktop-dropzone:hover{border-color:#3b82f6;background-color:#eff6ff}.teacher-capture-desktop-dropzone-active{border-color:#3b82f6;background-color:#dbeafe;border-style:solid}.teacher-capture-desktop-dropzone-icon{width:4rem;height:4rem;border-radius:50%;background-color:#eff6ff;color:#3b82f6;display:flex;align-items:center;justify-content:center}.teacher-capture-desktop-dropzone-text{text-align:center}.teacher-capture-desktop-dropzone-text p{margin:0;font-size:1rem;font-weight:600;color:#18181b}.teacher-capture-desktop-dropzone-text span{font-size:.8125rem;color:#71717a}.teacher-capture-desktop-divider{display:flex;align-items:center;gap:1rem;width:100%;color:#d4d4d8;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em}.teacher-capture-desktop-divider:before,.teacher-capture-desktop-divider:after{content:"";flex:1;height:1px;background-color:#e4e4e7}.teacher-capture-desktop-qr-btn{width:100%;padding:1rem 1.5rem;display:flex;align-items:center;justify-content:center;gap:.75rem;background-color:#18181b;color:#fff;border:none;border-radius:1.5rem;font-size:.9375rem;font-weight:700;cursor:pointer;transition:background-color .2s}.teacher-capture-desktop-qr-btn:hover{background-color:#27272a}.teacher-capture-desktop-qr-btn:active{transform:scale(.98)}.teacher-capture-desktop-preview{width:100%;position:relative;border-radius:1.5rem;overflow:hidden;border:2px solid #e4e4e7}.teacher-capture-desktop-preview img{width:100%;max-height:400px;-o-object-fit:contain;object-fit:contain;background-color:#fafafa}.teacher-capture-desktop-preview-remove{position:absolute;top:.75rem;right:.75rem;width:2.5rem;height:2.5rem;background-color:#0009;color:#fff;border:none;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color .2s}.teacher-capture-desktop-preview-remove:hover{background-color:#000c}.teacher-capture-desktop-done-wrapper{padding:0 2rem 1rem;display:flex;justify-content:center}.teacher-capture-desktop-done-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;max-width:320px;padding:.875rem 1.5rem;border-radius:12px;border:none;background-color:#10b981;color:#fff;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.teacher-capture-desktop-done-btn:hover{background-color:#059669}.teacher-capture-desktop-done-btn:active{transform:scale(.98)}.teacher-capture-desktop-controls{padding:1rem 2rem;border-top:1px solid #f4f4f5;display:flex;flex-direction:column;align-items:center;gap:.75rem}.teacher-capture-desktop-dots{display:flex;gap:.5rem}.teacher-capture-desktop-dot{height:.375rem;width:.375rem;border-radius:9999px;background-color:#e4e4e7;transition:all .3s}.teacher-capture-desktop-dot-active{width:1.5rem;background-color:#3b82f6}.teacher-capture-desktop-dot-captured{background-color:#10b981}.teacher-capture-desktop-status{color:#71717a;font-size:.75rem;font-weight:700;margin:0}.teacher-capture-desktop-nav-buttons{display:flex;align-items:center;gap:1rem}.teacher-capture-desktop-nav{width:2.5rem;height:2.5rem;border-radius:50%;background-color:#f4f4f5;border:none;color:#71717a;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.teacher-capture-desktop-nav:hover{background-color:#e4e4e7;color:#18181b}.teacher-capture-desktop-nav-disabled{opacity:.3;cursor:not-allowed}.teacher-capture-desktop-nav-disabled:hover{background-color:#f4f4f5;color:#71717a}.teacher-capture-analysis{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;padding:2rem 1.5rem;padding-top:max(2rem,env(safe-area-inset-top));padding-bottom:max(2rem,env(safe-area-inset-bottom));background-color:#fff;z-index:10;overflow-y:auto}.teacher-capture-analysis-header{text-align:center;margin-bottom:1.5rem}.teacher-capture-analysis-header-icon{width:4rem;height:4rem;border-radius:50%;background-color:#eff6ff;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem}.header-icon-pulse{animation:icon-pulse 2s ease-in-out infinite}.icon-blue{color:#3b82f6}@keyframes icon-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.08);opacity:.8}}.teacher-capture-analysis-title{font-size:1.5rem;font-weight:900;color:#18181b;letter-spacing:-.025em;margin:0 0 .25rem}.teacher-capture-analysis-subtitle{font-size:.875rem;color:#71717a;margin:0}.teacher-capture-analysis-progress{display:flex;align-items:center;gap:.75rem;margin-bottom:1.5rem;padding:0 .5rem}.teacher-capture-analysis-progress-track{flex:1;height:.5rem;background-color:#f4f4f5;border-radius:9999px;overflow:hidden}.teacher-capture-analysis-progress-fill{height:100%;background-color:#3b82f6;border-radius:9999px;transition:width .5s ease}.teacher-capture-analysis-progress-label{font-size:.75rem;font-weight:700;color:#71717a;min-width:2.5rem;text-align:right}.teacher-capture-analysis-list{flex:1;display:flex;flex-direction:column;gap:.5rem;overflow-y:auto;margin-bottom:1.5rem}.teacher-capture-analysis-student{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background-color:#fafafa;border:1px solid #f4f4f5;border-radius:1rem;width:100%;text-align:left;cursor:default;transition:all .2s}.teacher-capture-analysis-student-clickable{cursor:pointer}.teacher-capture-analysis-student-clickable:hover{border-color:#dbeafe;background-color:#eff6ff}.teacher-capture-analysis-student-icon{width:2rem;height:2rem;border-radius:.5rem;display:flex;align-items:center;justify-content:center;flex-shrink:0;background-color:#f4f4f5}.icon-waiting{color:#a1a1aa}.icon-analyzing{color:#3b82f6;animation:spin 1s linear infinite}.icon-success{color:#10b981}.icon-warning{color:#f59e0b}.icon-error{color:#ef4444}.teacher-capture-analysis-student-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.125rem}.teacher-capture-analysis-student-name{font-size:.9375rem;font-weight:700;color:#18181b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.teacher-capture-analysis-student-status{font-size:.75rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.text-muted{color:#a1a1aa}.text-blue{color:#3b82f6}.text-green{color:#059669}.text-amber{color:#d97706}.text-red{color:#dc2626}.teacher-capture-analysis-student-accuracy{font-size:.8125rem;font-weight:700;padding:.25rem .625rem;border-radius:9999px;flex-shrink:0}.accuracy-high{background-color:#ecfdf5;color:#059669}.accuracy-mid{background-color:#fffbeb;color:#d97706}.accuracy-low{background-color:#fef2f2;color:#dc2626}.teacher-capture-analysis-summary{padding:1rem;background-color:#f9fafb;border-radius:1rem;margin-bottom:1.5rem}.teacher-capture-analysis-summary-stats{display:flex;gap:.75rem;justify-content:center;margin-bottom:.75rem}.teacher-capture-analysis-stat{display:flex;flex-direction:column;align-items:center;padding:.75rem 1.25rem;border-radius:.75rem;min-width:5rem}.stat-green{background-color:#ecfdf5}.stat-amber{background-color:#fffbeb}.stat-red{background-color:#fef2f2}.teacher-capture-analysis-stat-value{font-size:1.5rem;font-weight:900;color:#18181b;line-height:1}.teacher-capture-analysis-stat-label{font-size:.6875rem;font-weight:600;color:#71717a;text-transform:uppercase;letter-spacing:.05em;margin-top:.25rem}.teacher-capture-analysis-concepts{display:flex;flex-direction:column;gap:.5rem;padding-top:.75rem;border-top:1px solid #e5e7eb}.teacher-capture-analysis-concepts-label{font-size:.6875rem;font-weight:700;color:#71717a;text-transform:uppercase;letter-spacing:.05em}.teacher-capture-analysis-concepts-list{display:flex;flex-wrap:wrap;gap:.375rem}.teacher-capture-analysis-concept-tag{font-size:.75rem;font-weight:500;padding:.25rem .625rem;background-color:#fff;border:1px solid #e5e7eb;border-radius:9999px;color:#374151}.teacher-capture-analysis-actions{display:flex;flex-direction:column;gap:.75rem;width:100%;max-width:320px;margin:0 auto}.teacher-capture-btn-retry{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.875rem 1.5rem;font-size:.875rem;font-weight:700;color:#dc2626;background-color:#fef2f2;border:1px solid #fecaca;border-radius:1.5rem;cursor:pointer;transition:all .2s}.teacher-capture-btn-retry:hover{background-color:#fee2e2;border-color:#fca5a5}.teacher-capture-analysis-safe-banner{display:flex;align-items:flex-start;gap:.625rem;padding:.875rem 1rem;background-color:#eff6ff;border:1px solid #bfdbfe;border-radius:.75rem;margin-bottom:1rem}.teacher-capture-analysis-safe-banner-icon{flex-shrink:0;color:#3b82f6;margin-top:.125rem}.teacher-capture-analysis-safe-banner-text{font-size:.8125rem;font-weight:500;color:#1e40af;line-height:1.4;margin:0}.feedback-capture-modal__paper{height:85vh;max-height:85vh;position:relative}.feedback-capture-modal__close.feedback-capture-modal__close{position:absolute;top:8px;right:8px;z-index:200;background-color:#0000000d;color:#71717a}.feedback-capture-modal__close.feedback-capture-modal__close:hover{background-color:#0000001a;color:#18181b}.feedback-capture-modal__content{height:100%;position:relative;overflow:hidden}.feedback-capture-modal__content .teacher-capture-container{min-height:unset;height:100%}.feedback-capture-modal__content .teacher-capture-setup,.feedback-capture-modal__content .teacher-capture-roster{position:absolute;z-index:10}.feedback-capture-modal__content .teacher-capture-camera{position:absolute;z-index:100}.feedback-capture-modal__content .teacher-capture-camera-controls{position:absolute}.feedback-capture-modal__content .teacher-capture-desktop{position:absolute;z-index:100}.feedback-capture-modal__content .teacher-capture-confirmation{position:absolute;z-index:10}.feedback-capture-modal__content .teacher-capture-analysis{position:absolute;z-index:10;overflow-y:auto}.feedback-capture-modal__content .teacher-capture-loading{position:absolute;z-index:100}.feedback-capture-modal__content .teacher-capture-complete-overlay{position:absolute;z-index:50}.feedback-capture-modal__content .teacher-capture-roster-confirm-overlay{position:absolute;z-index:100}.phase1-tab{display:flex;flex-direction:column;gap:24px}.phase1-tab__header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px}.phase1-tab__create-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;background:#3b82f6;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s ease;white-space:nowrap}.phase1-tab__create-btn:hover{background:#2563eb}.phase1-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.phase1-stats__card{display:flex;flex-direction:column;padding:16px;background:#fff;border-radius:10px;border:1px solid #e5e7eb;cursor:pointer;transition:all .2s ease}.phase1-stats__card:hover{border-color:#d1d5db;box-shadow:0 2px 8px #0000000d}.phase1-stats__card--active{border-color:#3b82f6;box-shadow:0 0 0 1px #3b82f6}.phase1-stats__header{display:flex;align-items:center;gap:10px;margin-bottom:10px}.phase1-stats__icon{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:8px}.phase1-stats__icon--total{background:#eff6ff;color:#3b82f6}.phase1-stats__icon--active{background:#dbeafe;color:#2563eb}.phase1-stats__icon--attention{background:#fef3c7;color:#d97706}.phase1-stats__icon--completed{background:#d1fae5;color:#059669}.phase1-stats__label{font-size:12px;color:#6b7280}.phase1-stats__value{font-size:24px;font-weight:700;color:#1f2937;line-height:1}.phase1-filters{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.phase1-filters__pills{display:flex;gap:4px;background:#f3f4f6;padding:4px;border-radius:10px}.phase1-filters__pill{padding:7px 14px;border:none;border-radius:8px;background:transparent;font-size:13px;font-weight:500;color:#6b7280;cursor:pointer;transition:all .15s ease;white-space:nowrap}.phase1-filters__pill:hover{color:#374151;background:#ffffff80}.phase1-filters__pill--active{background:#fff;color:#3b82f6;box-shadow:0 1px 3px #0000001a}.phase1-filters__right{display:flex;align-items:center;gap:10px;margin-left:auto}.phase1-filters__search{position:relative}.phase1-filters__search-icon{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:#9ca3af;pointer-events:none}.phase1-filters__search-input{padding:8px 12px 8px 34px;border:1px solid #e5e7eb;border-radius:8px;font-size:13px;color:#1f2937;background:#fff;width:200px;transition:border-color .15s ease,box-shadow .15s ease}.phase1-filters__search-input::-moz-placeholder{color:#9ca3af}.phase1-filters__search-input::placeholder{color:#9ca3af}.phase1-filters__search-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.phase1-filters__sort{padding:8px 12px;border:1px solid #e5e7eb;border-radius:8px;font-size:13px;color:#374151;background:#fff;cursor:pointer;transition:border-color .15s ease}.phase1-filters__sort:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.phase1-card{display:flex;flex-direction:column;gap:12px;padding:16px 20px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;transition:all .2s ease}.phase1-card:hover{border-color:#d1d5db;box-shadow:0 2px 8px #0000000f}.phase1-card__top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.phase1-card__left{display:flex;align-items:flex-start;gap:10px;flex:1;min-width:0}.phase1-card__status-dot{width:10px;height:10px;border-radius:50%;margin-top:5px;flex-shrink:0}.phase1-card__status-dot--active{background:#3b82f6}.phase1-card__status-dot--attention{background:#f59e0b}.phase1-card__status-dot--completed{background:#10b981}.phase1-card__status-dot--overdue{background:#ef4444}.phase1-card__info{flex:1;min-width:0}.phase1-card__name{font-size:15px;font-weight:600;color:#1f2937;margin:0 0 6px;line-height:1.3}.phase1-card__tags{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.phase1-card__tag{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;background:#f3f4f6;border-radius:4px;font-size:11px;font-weight:500;color:#6b7280}.phase1-card__tag--source{background:#eff6ff;color:#2563eb}.phase1-card__right{display:flex;align-items:center;gap:12px;flex-shrink:0}.phase1-card__due{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:6px;font-size:12px;font-weight:500;white-space:nowrap}.phase1-card__due--default{background:#f3f4f6;color:#6b7280}.phase1-card__due--warning{background:#fef3c7;color:#92400e}.phase1-card__due--error{background:#fee2e2;color:#991b1b}.phase1-card__due--success{background:#d1fae5;color:#065f46}.phase1-card__menu-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:transparent;border-radius:6px;cursor:pointer;color:#9ca3af;transition:all .15s ease}.phase1-card__menu-btn:hover{background:#f3f4f6;color:#374151}.phase1-card__menu-wrapper{position:relative}.phase1-card__menu{position:absolute;top:100%;right:0;z-index:50;min-width:180px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 4px 16px #0000001f;padding:4px;margin-top:4px}.phase1-card__menu-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;border:none;background:transparent;border-radius:6px;font-size:13px;color:#374151;cursor:pointer;transition:background .1s ease;text-align:left}.phase1-card__menu-item:hover{background:#f3f4f6}.phase1-card__menu-item--danger{color:#dc2626}.phase1-card__menu-item--danger:hover{background:#fef2f2}.phase1-card__bottom{display:flex;align-items:center;gap:16px}.phase1-card__progress-section{flex:1;min-width:0}.phase1-card__quick-stat{font-size:12px;color:#6b7280;white-space:nowrap;flex-shrink:0}.phase1-card__quick-stat strong{font-weight:600;color:#374151}.phase1-progress{display:flex;flex-direction:column;gap:6px}.phase1-progress__bar{display:flex;height:8px;border-radius:4px;overflow:hidden;background:#f3f4f6}.phase1-progress__segment{transition:width .3s ease;min-width:0}.phase1-progress__segment--completed{background:#10b981}.phase1-progress__segment--started{background:#3b82f6}.phase1-progress__segment--not-started{background:#e5e7eb}.phase1-progress__legend{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.phase1-progress__legend-item{display:flex;align-items:center;gap:4px;font-size:11px;color:#6b7280}.phase1-progress__legend-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.phase1-progress__legend-dot--completed{background:#10b981}.phase1-progress__legend-dot--started{background:#3b82f6}.phase1-progress__legend-dot--not-started{background:#e5e7eb}.phase1-card--compact{padding:12px 16px;gap:8px;background:#fafbfc;border-color:#eef0f2}.phase1-card--compact:hover{border-color:#d1d5db;box-shadow:0 1px 4px #0000000a}.phase1-card--compact .phase1-card__name{font-size:13px;font-weight:500;color:#4b5563;margin-bottom:0}.phase1-card--compact .phase1-card__status-dot{width:8px;height:8px;margin-top:4px}.phase1-card--compact .phase1-card__quick-stat{font-size:11px}.phase1-overdue{border-radius:10px;border:1px solid #fde68a;background:#fffbeb;overflow:hidden}.phase1-overdue__header{display:flex;align-items:center;gap:8px;width:100%;padding:14px 16px;border:none;background:transparent;cursor:pointer;transition:background .15s ease;text-align:left}.phase1-overdue__header:hover{background:#fef3c7}.phase1-overdue__chevron{color:#92400e;flex-shrink:0;transition:transform .2s ease}.phase1-overdue__chevron--open{transform:rotate(90deg)}.phase1-overdue__label{font-size:13px;font-weight:600;color:#92400e}.phase1-overdue__count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;background:#fee2e2;color:#dc2626;border-radius:11px;font-size:12px;font-weight:600;flex-shrink:0}.phase1-overdue__preview{font-size:12px;color:#b45309;margin-left:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.phase1-overdue__list{display:flex;flex-direction:column;gap:6px;padding:0 12px 12px}.phase1-completed{border-radius:10px;border:1px solid #e5e7eb;background:#fafbfc;overflow:hidden}.phase1-completed__header{display:flex;align-items:center;gap:8px;width:100%;padding:14px 16px;border:none;background:transparent;cursor:pointer;transition:background .15s ease;text-align:left}.phase1-completed__header:hover{background:#f3f4f6}.phase1-completed__chevron{color:#6b7280;flex-shrink:0;transition:transform .2s ease}.phase1-completed__chevron--open{transform:rotate(90deg)}.phase1-completed__label{font-size:13px;font-weight:600;color:#374151}.phase1-completed__count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;background:#d1fae5;color:#059669;border-radius:11px;font-size:12px;font-weight:600;flex-shrink:0}.phase1-completed__preview{font-size:12px;color:#9ca3af;margin-left:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.phase1-completed__list{display:flex;flex-direction:column;gap:6px;padding:0 12px 12px}.phase1-tab__list{display:flex;flex-direction:column;gap:10px}.phase1-tab__empty{text-align:center;padding:4rem 2rem;background:#f9fafb;border-radius:12px;border:1px dashed #e5e7eb}.phase1-tab__empty-icon{color:#9ca3af;margin-bottom:16px}.phase1-tab__empty-title{font-size:18px;font-weight:600;color:#374151;margin:0 0 8px}.phase1-tab__empty-description{font-size:14px;color:#6b7280;max-width:400px;margin:0 auto 24px}.phase1-tab__no-results{text-align:center;padding:3rem 2rem;color:#6b7280}.phase1-tab__no-results-icon{color:#d1d5db;margin-bottom:12px}.phase1-tab__no-results-title{font-size:15px;font-weight:600;color:#374151;margin:0 0 4px}.phase1-tab__no-results-text{font-size:13px;color:#9ca3af;margin:0}.phase1-tab__skeleton-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.phase1-tab__skeleton-card{border-radius:10px}.phase1-dialog-loading{display:flex;justify-content:center;padding:2rem}@media (max-width: 1024px){.phase1-stats,.phase1-tab__skeleton-stats{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.phase1-filters{flex-direction:column;align-items:stretch}.phase1-filters__pills{overflow-x:auto;-webkit-overflow-scrolling:touch}.phase1-filters__right{margin-left:0}.phase1-filters__search-input{width:100%}.phase1-card__top{flex-direction:column;gap:8px}.phase1-card__right{align-self:flex-end}}@media (max-width: 640px){.phase1-tab__header{flex-direction:column;align-items:stretch}.phase1-tab__create-btn{width:100%;justify-content:center}.phase1-stats,.phase1-tab__skeleton-stats{grid-template-columns:1fr 1fr}.phase1-card__bottom{flex-direction:column;align-items:stretch;gap:8px}.phase1-card__quick-stat{text-align:right}}.phase2-tab{display:flex;flex-direction:column;gap:24px}.phase2-tab__header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px}.phase2-tab__capture-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;background:#6366f1;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s ease;white-space:nowrap}.phase2-tab__capture-btn:hover{background:#4f46e5}.phase2-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.phase2-stats__card{display:flex;flex-direction:column;padding:16px;background:#fff;border-radius:10px;border:1px solid #e5e7eb;cursor:pointer;transition:all .2s ease}.phase2-stats__card:hover{border-color:#d1d5db;box-shadow:0 2px 8px #0000000d}.phase2-stats__card--active{border-color:#6366f1;box-shadow:0 0 0 1px #6366f1}.phase2-stats__header{display:flex;align-items:center;gap:10px;margin-bottom:10px}.phase2-stats__icon{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:8px}.phase2-stats__icon--total{background:#eef2ff;color:#6366f1}.phase2-stats__icon--attention{background:#fef3c7;color:#d97706}.phase2-stats__icon--in-progress{background:#dbeafe;color:#2563eb}.phase2-stats__icon--completed{background:#d1fae5;color:#059669}.phase2-stats__label{font-size:12px;color:#6b7280}.phase2-stats__value{font-size:24px;font-weight:700;color:#1f2937;line-height:1}.phase2-filters{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.phase2-filters__pills{display:flex;gap:4px;background:#f3f4f6;padding:4px;border-radius:10px}.phase2-filters__pill{padding:7px 14px;border:none;border-radius:8px;background:transparent;font-size:13px;font-weight:500;color:#6b7280;cursor:pointer;transition:all .15s ease;white-space:nowrap}.phase2-filters__pill:hover{color:#374151;background:#ffffff80}.phase2-filters__pill--active{background:#fff;color:#6366f1;box-shadow:0 1px 3px #0000001a}.phase2-filters__right{display:flex;align-items:center;gap:10px;margin-left:auto}.phase2-filters__search{position:relative}.phase2-filters__search-icon{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:#9ca3af;pointer-events:none}.phase2-filters__search-input{padding:8px 12px 8px 34px;border:1px solid #e5e7eb;border-radius:8px;font-size:13px;color:#1f2937;background:#fff;width:200px;transition:border-color .15s ease,box-shadow .15s ease}.phase2-filters__search-input::-moz-placeholder{color:#9ca3af}.phase2-filters__search-input::placeholder{color:#9ca3af}.phase2-filters__search-input:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.phase2-filters__sort{padding:8px 12px;border:1px solid #e5e7eb;border-radius:8px;font-size:13px;color:#374151;background:#fff;cursor:pointer;transition:border-color .15s ease}.phase2-filters__sort:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.phase2-card{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;cursor:pointer;transition:all .2s ease}.phase2-card:hover{border-color:#d1d5db;box-shadow:0 2px 8px #0000000f}.phase2-card__left{display:flex;align-items:flex-start;gap:10px;flex:1;min-width:0}.phase2-card__status-dot{width:10px;height:10px;border-radius:50%;margin-top:5px;flex-shrink:0}.phase2-card__status-dot--attention{background:#f59e0b}.phase2-card__status-dot--in_progress{background:#3b82f6}.phase2-card__status-dot--completed{background:#10b981}.phase2-card__info{flex:1;min-width:0}.phase2-card__name-row{display:flex;align-items:center;gap:8px;margin-bottom:4px}.phase2-card__name{font-size:15px;font-weight:600;color:#1f2937;margin:0;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.phase2-card__new-badge{display:inline-flex;align-items:center;padding:1px 6px;background:#3b82f6;color:#fff;border-radius:4px;font-size:10px;font-weight:700;letter-spacing:.5px;flex-shrink:0}.phase2-card__meta{display:flex;align-items:center;gap:6px;font-size:13px;color:#6b7280}.phase2-card__student{font-weight:500;color:#374151}.phase2-card__student-compact{font-size:12px;color:#6b7280}.phase2-card__separator{color:#d1d5db}.phase2-card__date{color:#6b7280}.phase2-card__errors{color:#dc2626;font-weight:500}.phase2-card__right{display:flex;align-items:center;gap:12px;flex-shrink:0}.phase2-card__status{display:inline-flex;align-items:center;padding:4px 10px;border-radius:6px;font-size:12px;font-weight:600;white-space:nowrap}.phase2-card__status--attention{background:#fef3c7;color:#92400e}.phase2-card__status--in_progress{background:#dbeafe;color:#1e40af}.phase2-card__status--completed{background:#d1fae5;color:#065f46}.phase2-card__arrow{color:#9ca3af;flex-shrink:0}.phase2-card--compact{padding:12px 16px;background:#fafbfc;border-color:#eef0f2}.phase2-card--compact:hover{border-color:#d1d5db;box-shadow:0 1px 4px #0000000a}.phase2-card--compact .phase2-card__name{font-size:13px;font-weight:500;color:#4b5563}.phase2-card--compact .phase2-card__name-row{margin-bottom:2px}.phase2-card--compact .phase2-card__status-dot{width:8px;height:8px;margin-top:4px}.phase2-card--compact .phase2-card__status{font-size:11px;padding:3px 8px}.phase2-completed{border-radius:10px;border:1px solid #e5e7eb;background:#fafbfc;overflow:hidden}.phase2-completed__header{display:flex;align-items:center;gap:8px;width:100%;padding:14px 16px;border:none;background:transparent;cursor:pointer;transition:background .15s ease;text-align:left}.phase2-completed__header:hover{background:#f3f4f6}.phase2-completed__chevron{color:#6b7280;flex-shrink:0;transition:transform .2s ease}.phase2-completed__chevron--open{transform:rotate(90deg)}.phase2-completed__label{font-size:13px;font-weight:600;color:#374151}.phase2-completed__count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;background:#d1fae5;color:#059669;border-radius:11px;font-size:12px;font-weight:600;flex-shrink:0}.phase2-completed__preview{font-size:12px;color:#9ca3af;margin-left:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.phase2-completed__list{display:flex;flex-direction:column;gap:6px;padding:0 12px 12px}.phase2-tab__list{display:flex;flex-direction:column;gap:10px}.phase2-tab__empty{text-align:center;padding:4rem 2rem;background:#f9fafb;border-radius:12px;border:1px dashed #e5e7eb}.phase2-tab__empty-icon{color:#9ca3af;margin-bottom:16px}.phase2-tab__empty-title{font-size:18px;font-weight:600;color:#374151;margin:0 0 8px}.phase2-tab__empty-description{font-size:14px;color:#6b7280;max-width:400px;margin:0 auto 24px}.phase2-tab__no-results{text-align:center;padding:3rem 2rem;color:#6b7280}.phase2-tab__no-results-icon{color:#d1d5db;margin-bottom:12px}.phase2-tab__no-results-title{font-size:15px;font-weight:600;color:#374151;margin:0 0 4px}.phase2-tab__no-results-text{font-size:13px;color:#9ca3af;margin:0}.phase2-tab__skeleton-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}@media (max-width: 1024px){.phase2-stats,.phase2-tab__skeleton-stats{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.phase2-filters{flex-direction:column;align-items:stretch}.phase2-filters__pills{overflow-x:auto;-webkit-overflow-scrolling:touch}.phase2-filters__right{margin-left:0}.phase2-filters__search-input{width:100%}}@media (max-width: 640px){.phase2-tab__header{flex-direction:column;align-items:stretch}.phase2-tab__capture-btn{width:100%;justify-content:center}.phase2-stats,.phase2-tab__skeleton-stats{grid-template-columns:1fr 1fr}.phase2-card{flex-wrap:wrap;gap:8px;padding:12px 16px}.phase2-card__meta{flex-wrap:wrap}}.students-tab{display:flex;flex-direction:column;gap:24px}.students-tab__section{display:flex;flex-direction:column;gap:12px}.students-tab__section-title{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#6b7280;margin:0;padding:0 4px}.students-tab__list{display:flex;flex-direction:column;gap:8px}.students-tab__student-card{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;transition:border-color .2s ease}.students-tab__student-card:hover{border-color:#d1d5db}.students-tab__student-card--pending{background:#f9fafb;opacity:.7}.students-tab__avatar{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:#eff6ff;color:#3b82f6;flex-shrink:0}.students-tab__student-card--pending .students-tab__avatar{background:#f3f4f6;color:#9ca3af}.students-tab__student-info{flex:1;min-width:0}.students-tab__student-name{font-size:14px;font-weight:600;color:#111827;margin:0;display:flex;align-items:center;gap:8px}.students-tab__student-card--pending .students-tab__student-name{color:#6b7280}.students-tab__student-email{font-size:12px;color:#6b7280;margin:2px 0 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.students-tab__pending-badge{display:inline-flex;align-items:center;padding:2px 8px;background:#fef3c7;color:#b45309;font-size:10px;font-weight:600;text-transform:uppercase;border-radius:10px;letter-spacing:.3px}.students-tab__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center;background:#fff;border:1px solid #e5e7eb;border-radius:12px}.students-tab__empty-icon{color:#9ca3af;margin-bottom:16px}.students-tab__empty-title{font-size:16px;font-weight:600;color:#374151;margin:0 0 8px}.students-tab__empty-description{font-size:14px;color:#6b7280;margin:0;max-width:300px}.students-tab__count{font-weight:400;color:#9ca3af}@media (max-width: 640px){.students-tab__student-card{padding:10px 12px}.students-tab__avatar{width:36px;height:36px}}.student-assignments-list{display:flex;flex-direction:column;gap:4px;padding:0 8px 8px;max-height:200px;overflow-y:auto}.student-assignments-list::-webkit-scrollbar{width:4px}.student-assignments-list::-webkit-scrollbar-track{background:transparent}.student-assignments-list::-webkit-scrollbar-thumb{background:#d0d0d0;border-radius:2px}.student-assignments-list::-webkit-scrollbar-thumb:hover{background:#b0b0b0}.student-assignments-loading{display:flex;align-items:center;justify-content:center;gap:8px;padding:16px;color:#8e8e8e;font-size:13px}.loading-spinner-small{width:14px;height:14px;border:2px solid #E0E0E0;border-top-color:#8e8e8e;border-radius:50%;animation:spin .8s linear infinite}.student-assignments-error{padding:12px;text-align:center;color:#ef4444;font-size:12px}.student-assignments-empty{padding:16px 12px;text-align:center;color:#8e8e8e;font-size:13px}.assignment-card{display:flex;flex-direction:column;width:100%;background:transparent;border-radius:8px;transition:background .15s ease}.assignment-card:hover{background:#e5e5e5}.assignment-card-new{background:#fef3c7}.assignment-card-new:hover{background:#fde68a}.assignment-card-clickable{display:flex;width:100%;padding:10px;background:transparent;border:none;border-radius:8px;cursor:pointer;text-align:left}.assignment-card-clickable:active{background:#d0d0d0}.assignment-card-content{display:flex;align-items:center;gap:10px;width:100%}.assignment-card-status-icon{font-size:16px;font-weight:600;flex-shrink:0;width:20px;text-align:center}.assignment-card-main{flex:1;min-width:0}.assignment-card-header{display:flex;align-items:center;gap:6px;margin-bottom:2px}.assignment-card-title{font-size:13px;font-weight:500;color:#1a1a1a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;gap:6px}.assignment-card-new-badge{font-size:9px;font-weight:600;padding:2px 5px;background:#ef4444;color:#fff;border-radius:4px;text-transform:uppercase;letter-spacing:.3px}.assignment-card-teacher-badge{font-size:9px;font-weight:600;padding:2px 5px;background:#6366f1;color:#fff;border-radius:4px;text-transform:uppercase;letter-spacing:.3px}.assignment-card-meta{display:flex;align-items:center;gap:8px}.assignment-card-status{font-size:11px;font-weight:500}.assignment-card-errors{font-size:11px;color:#ef4444;font-weight:500}.assignment-card-arrow{color:#9ca3af;flex-shrink:0}.assignment-card:hover .assignment-card-arrow{color:#6b7280}.assignment-card-pending{background:#f3e8ff;border-left:3px solid #8B5CF6}.assignment-card-pending:hover{background:#e9d5ff}.assignment-card-pending:active{background:#ddd6fe}.assignment-card-description{font-size:10px;color:#6b7280;margin-top:4px;font-style:italic}.assignment-card-actions{display:flex;padding:8px 10px 10px;border-top:1px solid rgba(0,0,0,.05);margin-top:2px}.assignment-card-done-btn{display:flex;align-items:center;gap:4px;padding:4px 8px;background:transparent;border:1px solid #10B981;border-radius:4px;color:#10b981;font-size:11px;font-weight:500;cursor:pointer;transition:all .15s ease}.assignment-card-done-btn:hover{background:#10b981;color:#fff}.assignment-card-done-btn:active{background:#059669;border-color:#059669}.assignment-card-done-btn svg{flex-shrink:0}.hil-chat-panel{display:flex;flex-direction:column;height:100%;background:#fff;overflow:hidden;min-height:0}.hil-chat-panel>.messages-container{flex:1;height:100%;min-height:0;overflow-y:auto}.hil-chat-panel__header{display:flex;align-items:center;justify-content:space-between;padding:20px 32px;background:#fff;border-bottom:1px solid #e7e5e4}.hil-chat-panel__header-left{display:flex;align-items:center;gap:12px}.hil-chat-panel__header-icon{width:36px;height:36px;border-radius:12px;background:#ffedd5;display:flex;align-items:center;justify-content:center;overflow:hidden}.hil-chat-panel__logo-img{width:24px;height:24px;-o-object-fit:contain;object-fit:contain}.hil-chat-panel__title-group{display:flex;flex-direction:column}.hil-chat-panel__title{margin:0;font-size:16px;font-weight:700;color:#1c1917;display:flex;align-items:center;gap:6px;letter-spacing:-.01em}.hil-chat-panel__title-main,.hil-chat-panel__title-accent{background:linear-gradient(135deg,#f97316,#ea580c);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hil-chat-panel__subtitle{margin:0;font-size:12px;color:#78716c}.hil-chat-panel__daily-notice{display:flex;align-items:center;justify-content:center;gap:6px;padding:6px 16px;background:linear-gradient(135deg,#faf5ff,#f3e8ff);border-bottom:1px solid #e9d5ff;font-size:11px;font-weight:500;color:#7c3aed;animation:fadeInOut 60s ease-in-out forwards}@keyframes fadeInOut{0%{opacity:1}90%{opacity:1}to{opacity:0}}.hil-chat-panel__clear-btn{padding:0;border:none;background:transparent;font-size:12px;color:#a8a29e;cursor:pointer;transition:color .15s}.hil-chat-panel__clear-btn:hover:not(:disabled){color:#57534e}.hil-chat-panel__clear-btn:disabled{opacity:.5;cursor:not-allowed}.hil-chat-panel__empty{flex:1;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:48px 32px;overflow-y:auto;background:#fff}.hil-chat-panel__empty-inner{max-width:512px;width:100%}.hil-chat-panel__greeting{width:100%;max-width:512px;margin-bottom:32px}.hil-chat-panel__greeting-bubble{display:flex;gap:12px}.hil-chat-panel__greeting-icon{width:32px;height:32px;border-radius:8px;background:#ffedd5;display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden}.hil-chat-panel__greeting-logo-img{width:20px;height:20px;-o-object-fit:contain;object-fit:contain}.hil-chat-panel__greeting-content{flex:1}.hil-chat-panel__greeting-text{background:#fff;border:1px solid #e7e5e4;border-radius:6px 16px 16px;padding:16px;box-shadow:0 1px 2px #0000000d}.hil-chat-panel__greeting-text p{margin:0;font-size:14px;line-height:1.6;color:#44403c}.hil-chat-panel__greeting-text p strong{color:#1c1917;font-weight:500}.hil-chat-panel__greeting-subtext{margin-top:12px!important;color:#78716c!important}.hil-chat-panel__smart-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.hil-chat-panel__smart-action{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;font-size:14px;color:#57534e;background:#fff;border:1px solid #e7e5e4;border-radius:8px;cursor:pointer;transition:all .15s}.hil-chat-panel__smart-action:hover:not(:disabled){border-color:#fdba74;color:#ea580c}.hil-chat-panel__smart-action--medium:hover:not(:disabled){border-color:#fcd34d;color:#d97706}.hil-chat-panel__smart-action:disabled{opacity:.5;cursor:not-allowed}.hil-chat-panel__action-dot{width:6px;height:6px;border-radius:50%}.hil-chat-panel__action-dot--high{background:#f97316}.hil-chat-panel__action-dot--medium{background:#fbbf24}.hil-chat-panel__separator{display:flex;align-items:center;gap:16px;width:100%;max-width:512px;margin:32px 0}.hil-chat-panel__separator:before,.hil-chat-panel__separator:after{content:"";flex:1;border-top:1px solid #e7e5e4}.hil-chat-panel__separator span{font-size:12px;color:#a8a29e}.hil-chat-panel__secondary-prompts{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;width:100%;max-width:512px}.hil-chat-panel__secondary-prompt{padding:8px 16px;font-size:14px;color:#78716c;background:transparent;border:none;border-radius:8px;cursor:pointer;transition:all .15s}.hil-chat-panel__secondary-prompt:hover:not(:disabled){background:#f5f5f4;color:#44403c}.hil-chat-panel__secondary-prompt:disabled{opacity:.5;cursor:not-allowed}.hil-chat-panel__error{display:flex;align-items:center;gap:8px;padding:12px 16px;margin:0 20px 16px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;font-size:14px}.hil-chat-panel__error-icon{font-size:16px}.hil-chat-panel__input-area{padding:16px 32px;background:#fff;border-top:1px solid #e7e5e4}.hil-chat-panel__input-wrapper{max-width:512px;margin:0 auto;position:relative}.hil-chat-panel__input{width:100%;padding:12px 48px 12px 16px;font-size:14px;color:#1c1917;background:#fafaf9;border:1px solid #e7e5e4;border-radius:12px;transition:all .15s;font-family:inherit}.hil-chat-panel__input::-moz-placeholder{color:#a8a29e}.hil-chat-panel__input::placeholder{color:#a8a29e}.hil-chat-panel__input:focus{outline:none;background:#fff;border-color:#f97316;box-shadow:0 0 0 3px #f973161a}.hil-chat-panel__input:disabled{opacity:.6}.hil-chat-panel__send-btn{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:32px;height:32px;border:none;border-radius:8px;background:#f97316;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s}.hil-chat-panel__send-btn:hover:not(:disabled){background:#ea580c}.hil-chat-panel__send-btn:disabled{opacity:.5;cursor:not-allowed}.hil-chat-panel__quick-prompts{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;max-width:480px}.hil-chat-panel__quick-prompt{padding:10px 16px;border:1px solid #e7e5e4;border-radius:20px;background:#fff;font-size:13px;color:#57534e;cursor:pointer;transition:all .2s}.hil-chat-panel__quick-prompt:hover:not(:disabled){background:#f5f5f4;border-color:#d6d3d1}.hil-chat-panel__quick-prompt:disabled{opacity:.5;cursor:not-allowed}.hil-chat-panel .streamdown-container img{display:block;max-width:100%;height:auto;margin-bottom:40px;border-radius:8px}.hil-chat-panel .streamdown-container p:has(img){position:relative;margin-bottom:24px;padding-bottom:16px}.hil-chat-panel .streamdown-container figure{margin:16px 0 40px;position:relative}.hil-chat-panel .streamdown-container [data-download-button],.hil-chat-panel .streamdown-container button[aria-label*=download i],.hil-chat-panel .streamdown-container a[download]{display:none!important}.hil-chat-panel .streamdown-container div:has(>img){position:relative;margin-bottom:24px}.hil-chat-panel .streamdown-container div:has(>img)>button,.hil-chat-panel .streamdown-container div:has(>img)>a{position:absolute;bottom:-28px;left:0}@media (max-width: 768px){.hil-chat-panel__header{padding:16px 20px}.hil-chat-panel__empty{padding:32px 20px}.hil-chat-panel__input-area{padding:16px 20px}.hil-chat-panel__secondary-prompts{flex-direction:column;align-items:stretch}.hil-chat-panel__secondary-prompt{text-align:left}}.student-roster{display:flex;flex-direction:column;height:100%;background:#fff;overflow:hidden}.student-roster__search{padding:16px}.student-roster__search-input{width:100%;padding:10px 14px;font-size:14px;color:#1c1917;background:#fff;border:1px solid #e7e5e4;border-radius:10px;transition:all .15s;font-family:inherit}.student-roster__search-input::-moz-placeholder{color:#a8a29e}.student-roster__search-input::placeholder{color:#a8a29e}.student-roster__search-input:focus{outline:none;border-color:#f97316;box-shadow:0 0 0 3px #f973161a}.student-roster__search-input:disabled{opacity:.6}.student-roster__list{flex:1;overflow-y:auto;padding:0 8px 16px}.student-roster__item{display:flex;align-items:center;gap:12px;width:100%;padding:12px;margin-bottom:4px;background:transparent;border:none;border-radius:16px;cursor:pointer;text-align:left;transition:background .15s}.student-roster__item:hover{background:#fafaf9}.student-roster__item--selected{background:#fffbf5;border:1px solid #ffe0b2}.student-roster__item--selected:hover{background:#fff3e0}.student-roster__avatar{width:36px;height:36px;border-radius:50%;background:#f5f5f4;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:500;color:#57534e;flex-shrink:0}.student-roster__avatar--selected{background:#ffe0b2;color:#e65100}.student-roster__info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.student-roster__name{font-size:14px;font-weight:500;color:#1c1917;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.student-roster__topic{font-size:12px;color:#78716c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.student-roster__status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.student-roster__empty{display:flex;align-items:center;justify-content:center;padding:40px 20px;color:#a8a29e;font-size:14px}.student-roster__loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:40px 20px;color:#78716c;flex:1}.student-roster__loading span{font-size:13px}.student-roster__spinner{width:24px;height:24px;border:2px solid #e7e5e4;border-top-color:#f97316;border-radius:50%;animation:roster-spin .8s linear infinite}@keyframes roster-spin{to{transform:rotate(360deg)}}.student-roster__actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.student-roster__view-chats{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;color:#78716c;background:transparent;cursor:pointer;transition:all .15s}.student-roster__view-chats:hover{background:#f5f5f4;color:#f97316}.student-roster__view-chats:focus-visible{outline:none;box-shadow:0 0 0 2px #f9731666}.student-roster__item--selected .student-roster__view-chats:hover{background:#ffe0b2}.intervention-list{margin-bottom:1.5rem}.intervention-list__header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:linear-gradient(135deg,#dc2626,#b91c1c);border-radius:8px;margin-bottom:1rem;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:opacity .2s ease}.intervention-list__header:hover{opacity:.92}.intervention-list__header--low{background:linear-gradient(135deg,#3b82f6,#2563eb)}.intervention-list__header-left{display:flex;align-items:center;gap:.5rem}.intervention-list__header-icon,.intervention-list__header-icon--low{color:#fff;flex-shrink:0}.intervention-list__header-title{font-size:.875rem;font-weight:600;color:#fff;margin:0}.intervention-list__count{background-color:#ffffff40;color:#fff;padding:.125rem .5rem;border-radius:12px;font-size:.75rem;font-weight:600}.intervention-list__header-right{display:flex;align-items:center;gap:.5rem}.intervention-list__header-desc{font-size:.75rem;color:#ffffffe6}.intervention-list__header-chevron{color:#fff;transition:transform .2s ease;flex-shrink:0}.intervention-list__header-chevron--open{transform:rotate(180deg)}.intervention-list__items{display:flex;flex-direction:column;gap:.5rem}.intervention-item-wrapper{border:1px solid #e5e7eb;border-radius:6px;overflow:hidden;transition:all .2s ease}.intervention-item-wrapper:hover{border-color:#d1d5db;box-shadow:0 1px 3px #0000001a}.intervention-item{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background-color:#fff;cursor:pointer;transition:background-color .2s ease}.intervention-item:hover,.intervention-item--expanded{background-color:#f9fafb}.intervention-item__left{display:flex;align-items:center;gap:.75rem;flex:1;min-width:0}.intervention-item__icon{color:#dc2626;flex-shrink:0}.intervention-item__icon--low{color:#3b82f6;flex-shrink:0}.intervention-item__info{display:flex;flex-direction:column;gap:.25rem;min-width:0}.intervention-item__type-badge{font-size:.625rem;font-weight:600;text-transform:uppercase;padding:.125rem .5rem;border-radius:4px;display:inline-block;width:-moz-fit-content;width:fit-content}.intervention-item__type-badge--conceptual{background-color:#fef3c7;color:#92400e}.intervention-item__type-badge--procedural{background-color:#dbeafe;color:#1e40af}.intervention-item__type-badge--careless{background-color:#e0e7ff;color:#3730a3}.intervention-item__topic{font-size:.875rem;font-weight:500;color:#111827;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.intervention-item__right{display:flex;align-items:center;gap:.75rem;flex-shrink:0}.intervention-item__progress{font-size:.875rem;font-weight:600;padding:.25rem .5rem;border-radius:4px}.intervention-item__progress--good{background-color:#d1fae5;color:#065f46}.intervention-item__progress--warning{background-color:#fef3c7;color:#92400e}.intervention-item__progress--poor{background-color:#fee2e2;color:#991b1b}.intervention-item__chevron{color:#9ca3af;transition:transform .2s ease}.intervention-item__chevron--expanded{transform:rotate(90deg)}.intervention-item__content{padding:1rem;background-color:#f9fafb;border-top:1px solid #e5e7eb}.intervention-item__content-loading{display:flex;align-items:center;gap:.75rem;padding:1rem 0;color:#6b7280;font-size:.875rem}.intervention-item__spinner{width:1rem;height:1rem;border:2px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:spin .8s linear infinite}.intervention-item__headline{font-size:.875rem;font-weight:600;color:#111827;margin:0 0 .75rem}.intervention-item__rationale{font-size:.875rem;color:#4b5563;margin:0 0 .75rem;line-height:1.5}.intervention-item__steps{margin:0 0 .75rem;padding-left:1.25rem;font-size:.875rem;color:#374151}.intervention-item__steps li{margin-bottom:.5rem;line-height:1.5}.intervention-item__meta{display:flex;align-items:center;gap:1rem;font-size:.75rem;color:#6b7280;margin-top:.75rem;padding-top:.75rem;border-top:1px solid #e5e7eb}.intervention-item__meta span{display:flex;align-items:center;gap:.25rem}.intervention-item__fallback{font-size:.875rem;color:#4b5563;margin:0;font-style:italic}.intervention-item__generate{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:1rem 0}.intervention-item__empty{font-size:.875rem;color:#6b7280;margin:0}.intervention-item__generate-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.intervention-item__generate-btn:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 2px 4px #2563eb33}.intervention-item__generate-btn:disabled{opacity:.6;cursor:not-allowed}.intervention-item__generate-btn svg{flex-shrink:0}.student-detail{display:flex;flex-direction:column;height:100%;background:#fafaf9;overflow:hidden}.student-detail__content{flex:1;overflow-y:auto;padding:16px 20px 32px}.student-detail__header{display:flex;align-items:flex-start;justify-content:space-between;padding:20px;background:#fff;border-bottom:1px solid #e8e5df;flex-shrink:0}.student-detail__header-left{display:flex;align-items:center;gap:14px}.student-detail__avatar{width:44px;height:44px;border-radius:12px;background:linear-gradient(135deg,#ea580c,#fb923c);display:flex;align-items:center;justify-content:center;color:#fff;font-size:15px;font-weight:700;flex-shrink:0;letter-spacing:.02em}.student-detail__header-info{display:flex;flex-direction:column;gap:2px}.student-detail__name{margin:0;font-size:20px;font-weight:700;color:#1a1a1a;letter-spacing:-.02em;line-height:1.2}.student-detail__header-subtitle{font-size:13px;color:#9ca3af;font-weight:500;margin:0}.student-detail__badge{display:flex;align-items:center;gap:6px;padding:5px 12px;border-radius:10px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;flex-shrink:0}.student-detail__badge-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.student-detail__badge--urgent{background:#fef2f2;color:#dc2626;border:1px solid #fecaca}.student-detail__badge--urgent .student-detail__badge-dot{background:#dc2626}.student-detail__badge--attention{background:#fffbeb;color:#d97706;border:1px solid #fde68a}.student-detail__badge--attention .student-detail__badge-dot{background:#d97706}.student-detail__badge--on-track{background:#f0fdf4;color:#059669;border:1px solid #bbf7d0}.student-detail__badge--on-track .student-detail__badge-dot{background:#059669}.student-detail__badge--not-started{background:#f3f4f6;color:#6b7280;border:1px solid #e5e7eb}.student-detail__badge--not-started .student-detail__badge-dot{background:#9ca3af}.student-detail__summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:24px}.student-detail__summary-card{background:#fff;border-radius:12px;padding:14px;border:1px solid #e8e5df;display:flex;align-items:center;gap:12px}.student-detail__summary-icon{width:36px;height:36px;border-radius:9px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.student-detail__summary-card--corrections .student-detail__summary-icon{background:#fef2f2;border:1px solid #fecaca;color:#ef4444}.student-detail__summary-card--progress .student-detail__summary-icon{background:#fffbeb;border:1px solid #fde68a;color:#f59e0b}.student-detail__summary-card--completed .student-detail__summary-icon{background:#f0fdf4;border:1px solid #bbf7d0;color:#22c55e}.student-detail__summary-value{font-size:20px;font-weight:800;font-family:var(--font-family-mono);line-height:1}.student-detail__summary-card--corrections .student-detail__summary-value{color:#ef4444}.student-detail__summary-card--progress .student-detail__summary-value{color:#f59e0b}.student-detail__summary-card--completed .student-detail__summary-value{color:#22c55e}.student-detail__summary-label{font-size:11px;color:#9ca3af;font-weight:500;margin-top:2px}.score-ring{position:relative;width:44px;height:44px;flex-shrink:0}.score-ring--sm{width:36px;height:36px}.score-ring__svg{transform:rotate(-90deg)}.score-ring__track{stroke:#f3f4f6}.score-ring__progress{transition:stroke-dashoffset .6s ease}.score-ring--good .score-ring__progress{stroke:#22c55e}.score-ring--warning .score-ring__progress{stroke:#f59e0b}.score-ring--poor .score-ring__progress{stroke:#ef4444}.score-ring__label{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;font-family:var(--font-family-mono)}.score-ring--sm .score-ring__label{font-size:10px}.score-ring--good .score-ring__label{color:#22c55e}.score-ring--warning .score-ring__label{color:#f59e0b}.score-ring--poor .score-ring__label{color:#ef4444}.student-detail__section{margin-bottom:24px}.student-detail__section:last-child{margin-bottom:0}.student-detail__section-header{display:flex;align-items:center;gap:10px;margin-bottom:12px}.student-detail__section-header h3{margin:0;font-size:14px;font-weight:700;color:#1a1a1a;letter-spacing:-.01em}.student-detail__section-icon{width:24px;height:24px;border-radius:7px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.student-detail__section-icon--corrections{background:#fef2f2;border:1px solid #fecaca;color:#ef4444}.student-detail__section-icon--progress{background:#fffbeb;border:1px solid #fde68a;color:#f59e0b}.student-detail__section-icon--done{background:#f0fdf4;border:1px solid #bbf7d0;color:#22c55e}.student-detail__section-icon--action{background:#eef2ff;border:1px solid #c7d2fe;color:#6366f1}.student-detail__section-icon--neutral{background:#f3f4f6;border:1px solid #e5e7eb;color:#6b7280}.student-detail__section-count{font-size:11px;font-weight:600;color:#9ca3af;background:#f3f4f6;padding:2px 8px;border-radius:6px}.student-detail__card-list{display:flex;flex-direction:column;gap:10px}.student-detail__correction-card{background:#fff;border-radius:14px;padding:16px 18px;cursor:pointer;transition:box-shadow .15s ease;animation:sdp-fadeUp .3s ease both}.student-detail__correction-card:hover{box-shadow:0 2px 8px #0000000f}.student-detail__correction-card--critical{border:1px solid #fecaca;border-left:4px solid #ef4444}.student-detail__correction-card--warning{border:1px solid #fde68a;border-left:4px solid #f59e0b}.student-detail__correction-header{display:flex;align-items:center;justify-content:space-between}.student-detail__correction-left{display:flex;align-items:center;gap:14px}.student-detail__correction-info{display:flex;flex-direction:column;gap:3px}.student-detail__correction-title{font-size:15px;font-weight:600;color:#1a1a1a}.student-detail__correction-subtitle{font-size:12px;color:#9ca3af;font-weight:500}.student-detail__correction-chevron{color:#9ca3af;flex-shrink:0;transition:transform .2s ease}.student-detail__correction-chevron--open{transform:rotate(180deg)}.student-detail__correction-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.student-detail__correction-actions{margin-top:16px;padding-top:16px;border-top:1px solid #f3f4f6;display:flex;gap:8px}.student-detail__progress-card{background:#fff;border-radius:14px;padding:14px 18px;border:1px solid #e8e5df;display:flex;flex-direction:column;gap:8px;animation:sdp-fadeUp .3s ease both}.student-detail__progress-top{display:flex;align-items:center;justify-content:space-between}.student-detail__progress-left{display:flex;align-items:center;gap:14px}.student-detail__progress-icon{width:36px;height:36px;border-radius:9px;background:#fffbeb;border:1px solid #fde68a;display:flex;align-items:center;justify-content:center;color:#f59e0b;flex-shrink:0}.student-detail__progress-info{display:flex;flex-direction:column;gap:2px}.student-detail__progress-title{font-size:14px;font-weight:600;color:#1a1a1a}.student-detail__progress-date{font-size:11px;color:#9ca3af;font-weight:500;display:flex;align-items:center;gap:4px}.student-detail__progress-status{display:flex;align-items:center;gap:6px;color:#1e40af}.student-detail__completed-card{background:#fff;border-radius:14px;padding:14px 18px;border:1px solid #e8e5df;display:flex;align-items:center;justify-content:space-between;animation:sdp-fadeUp .3s ease both}.student-detail__completed-left{display:flex;align-items:center;gap:14px}.student-detail__completed-title{font-size:14px;font-weight:500;color:#6b7280}.student-detail__mastery-badge{font-size:11px;font-weight:600;color:#d97706;background:#fffbeb;border:1px solid #fde68a;padding:3px 10px;border-radius:6px}.student-detail__tag{padding:3px 10px;border-radius:6px;font-size:11px;font-weight:600;white-space:nowrap}.student-detail__tag--default{background:#fefce8;color:#854d0e;border:1px solid #fef08a}.student-detail__tag--error{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}.student-detail__tag--help{background:#eff6ff;color:#1e40af;border:1px solid #bfdbfe}.student-detail__btn-primary{display:flex;align-items:center;gap:6px;padding:8px 16px;background:linear-gradient(135deg,#ea580c,#f97316);color:#fff;border:none;border-radius:8px;font-size:12px;font-weight:600;cursor:pointer;font-family:inherit;transition:opacity .15s}.student-detail__btn-primary:hover:not(:disabled){opacity:.9}.student-detail__btn-primary:disabled{opacity:.4;cursor:not-allowed}.student-detail__btn-view{display:flex;align-items:center;gap:5px;padding:6px 12px;background:#f8f7f4;color:#6b7280;border:1px solid #e8e5df;border-radius:8px;font-size:11px;font-weight:600;cursor:pointer;font-family:inherit;transition:background .15s}.student-detail__btn-view:hover{background:#f0efec}.student-detail__intervention-header{display:flex;flex-direction:column;gap:4px;margin-bottom:16px}.student-detail__intervention-header-left{display:flex;align-items:center;gap:8px}.student-detail__intervention-header-icon{color:#f97316;flex-shrink:0}.student-detail__intervention-header-title{margin:0;font-size:14px;font-weight:600;color:#1c1917}.student-detail__intervention-count{font-size:12px;font-weight:500;color:#57534e;background:#f5f5f4;padding:2px 8px;border-radius:10px}.student-detail__intervention-header-desc{font-size:12px;color:#a8a29e;margin-left:24px}.student-detail__intervention-list{display:flex;flex-direction:column}.student-detail__intervention-item{display:flex;align-items:center;justify-content:space-between;padding:16px 0;cursor:pointer;transition:background .15s}.student-detail__intervention-item:hover{background:#fafaf9;margin:0 -20px;padding:16px 20px}.student-detail__intervention-item-left{display:flex;align-items:center;gap:12px}.student-detail__intervention-item-icon{color:#f97316;flex-shrink:0}.student-detail__intervention-item-info{display:flex;align-items:center;gap:8px}.student-detail__intervention-type-badge{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;padding:3px 8px;border-radius:4px}.student-detail__intervention-type-badge--conceptual{background:#fff7ed;color:#c2410c}.student-detail__intervention-type-badge--procedural{background:#eff6ff;color:#1d4ed8}.student-detail__intervention-type-badge--fluency{background:#faf5ff;color:#7c3aed}.student-detail__intervention-type-badge--slip{background:#f5f5f4;color:#57534e}.student-detail__intervention-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:32px 20px;color:#78716c}.student-detail__intervention-loading span{font-size:13px}.student-detail__intervention-topic{font-size:14px;font-weight:500;color:#1c1917}.student-detail__intervention-item-right{display:flex;align-items:center;gap:8px}.student-detail__intervention-progress{font-size:14px;font-weight:600}.student-detail__intervention-progress--good{color:#059669}.student-detail__intervention-progress--warning{color:#d97706}.student-detail__intervention-progress--poor{color:#f97316}.student-detail__intervention-chevron{color:#d6d3d1;transition:transform .2s ease}.student-detail__intervention-chevron--expanded{transform:rotate(90deg)}.student-detail__intervention-item-wrapper{border-bottom:1px solid #f5f5f4}.student-detail__intervention-item-wrapper:last-child{border-bottom:none}.student-detail__intervention-item--expanded{background:#fafaf9;margin:0 -20px;padding:16px 20px}.student-detail__intervention-content{padding:12px 20px 16px 44px;background:#fafaf9;margin:0 -20px;border-top:1px solid #e7e5e4}.student-detail__intervention-content-loading{display:flex;align-items:center;gap:10px;padding:12px 0;color:#78716c;font-size:13px}.student-detail__intervention-content-loading .student-detail__spinner{width:20px;height:20px;border-width:2px}.student-detail__intervention-rationale{margin:0 0 12px;font-size:13px;color:#57534e;line-height:1.5;font-style:italic}.student-detail__intervention-fallback{margin:0;font-size:13px;color:#57534e;line-height:1.5}.student-detail__intervention-empty{margin:0;font-size:13px;color:#a8a29e;font-style:italic}.student-detail__intervention-header--low{margin-top:8px}.student-detail__intervention-header-icon--low{color:#78716c;flex-shrink:0}.student-detail__intervention-item--low{opacity:.85}.student-detail__intervention-item--low:hover{opacity:1}.student-detail__intervention-item-icon--low{color:#78716c}.student-detail__intervention-generate{display:flex;flex-direction:column;gap:12px}.student-detail__generate-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:500;color:#6366f1;background:#eef2ff;border:1px solid #c7d2fe;border-radius:6px;cursor:pointer;transition:all .15s;width:-moz-fit-content;width:fit-content}.student-detail__generate-btn:hover:not(:disabled){background:#e0e7ff;border-color:#a5b4fc}.student-detail__generate-btn:disabled{opacity:.6;cursor:not-allowed}.student-detail__intervention-card{padding:14px;background:#fff;border:1px solid #e8e5df;border-radius:12px}.student-detail__intervention-headline{margin:0 0 10px;font-size:13px;font-weight:600;color:#111827;line-height:1.4}.student-detail__intervention-steps{margin:0 0 12px;padding-left:20px;font-size:12px;color:#374151;line-height:1.6}.student-detail__intervention-steps li{margin-bottom:4px}.student-detail__intervention-meta{display:flex;gap:16px;font-size:11px;color:#6b7280}.student-detail__intervention-meta span{display:flex;align-items:center;gap:4px}.student-detail__error-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.student-detail__error-chip{display:inline-block;font-size:11px;font-weight:500;padding:3px 8px;border-radius:10px;cursor:default}.student-detail__error-chip--high{background:#fee2e2;color:#991b1b}.student-detail__error-chip--medium{background:#fef3c7;color:#92400e}.student-detail__error-chip--low{background:#f3f4f6;color:#6b7280}.student-detail__error-chip--more{background:#f3f4f6;color:#6b7280;font-style:italic}.step-mini{margin-top:6px}.step-mini__toggle{display:flex;align-items:center;gap:4px;background:none;border:none;padding:0;cursor:pointer;font-size:11px;font-weight:500;color:#6b7280}.step-mini__toggle:hover{color:#374151}.step-mini__summary{text-decoration:underline;text-decoration-style:dotted;text-underline-offset:2px}.step-mini__chevron{transition:transform .2s ease}.step-mini__chevron--open{transform:rotate(180deg)}.step-mini__steps{margin-top:8px;display:flex;flex-direction:column;gap:4px}.step-mini__step{display:flex;gap:8px;padding:8px 10px;border-radius:6px;font-size:12px}.step-mini__step--correct{background:#f0fdf4}.step-mini__step--incorrect{background:#fef2f2}.step-mini__icon{flex-shrink:0;margin-top:1px}.step-mini__content{min-width:0}.step-mini__label{font-weight:600;color:#6b7280;text-transform:uppercase;font-size:10px;letter-spacing:.3px}.step-mini__math{display:block;font-family:var(--font-family-mono);font-size:12px;font-weight:500;color:#111827;margin-top:2px;word-break:break-word}.step-mini__feedback{margin:3px 0 0;font-size:11px;color:#6b7280;line-height:1.4}.step-mini__guiding{display:flex;gap:8px;padding:8px 10px;background:#fffbeb;border-radius:6px;margin-top:4px}.step-mini__guiding-icon{flex-shrink:0}.step-mini__guiding-text{margin:0;font-size:11px;color:#92400e;line-height:1.4}.step-mini__guiding-question{margin:4px 0 0;font-size:11px;font-weight:500;color:#92400e;line-height:1.4}.student-detail__engagement-badges{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.student-detail__engagement-pill{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:500;padding:3px 8px;border-radius:10px;background:#eff6ff;color:#1d4ed8}.student-detail__engagement-pill--socrato{background:#eef2ff;color:#4338ca;font-weight:600;text-transform:uppercase;font-size:10px;letter-spacing:.3px}.student-detail__engagement-pill--stride{background:#fff7ed;color:#c2410c;font-weight:600;text-transform:uppercase;font-size:10px;letter-spacing:.3px}.student-detail__submission{display:flex;gap:24px;padding:16px;background:#fff;border:1px solid #e8e5df;border-radius:12px}.student-detail__stat{display:flex;flex-direction:column;gap:4px}.student-detail__stat-label{font-size:12px;color:#6b7280}.student-detail__stat-value{font-size:18px;font-weight:700}.student-detail__stat-value--secondary{color:#374151;font-size:14px;font-weight:500}.student-detail__verification{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#fff;border:1px solid #e8e5df;border-radius:12px}.student-detail__verification-text{font-size:14px;font-weight:500}.student-detail__warning{display:flex;align-items:center;gap:8px;margin-top:8px;padding:10px 12px;background:#fffbeb;border:1px solid #fde68a;border-radius:8px;font-size:13px;color:#92400e}.student-detail__errors{display:flex;flex-direction:column;gap:8px}.student-detail__error-item{display:flex;align-items:center;gap:8px;padding:10px 12px;background:#fef2f2;border-radius:8px;font-size:13px;color:#991b1b}.student-detail__error-desc{color:#b91c1c;font-size:12px}.student-detail__stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.student-detail__stat-card{display:flex;flex-direction:column;align-items:center;gap:4px;padding:16px;background:#fff;border:1px solid #e8e5df;border-radius:12px;text-align:center}.student-detail__stat-card-value{font-size:24px;font-weight:700;color:#111827}.student-detail__stat-card-label{font-size:12px;color:#6b7280}.student-detail__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;height:100%;padding:40px 20px;color:#9ca3af;text-align:center}.student-detail__empty h3{margin:0;font-size:18px;color:#374151}.student-detail__empty p{margin:0;font-size:14px;max-width:240px}.student-detail__loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;height:100%;color:#6b7280}.student-detail__spinner{width:32px;height:32px;border:3px solid #e5e7eb;border-top-color:#6366f1;border-radius:50%;animation:detail-spin .8s linear infinite}.student-detail__no-assignments{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;padding:48px 24px;text-align:center;color:#78716c}.student-detail__no-assignments svg{color:#d6d3d1;margin-bottom:16px}.student-detail__no-assignments h3{margin:0 0 8px;font-size:18px;font-weight:600;color:#1c1917}.student-detail__no-assignments p{margin:0 0 16px;font-size:14px;max-width:280px;line-height:1.5}.student-detail__no-assignments-hint{font-size:13px;color:#a8a29e;max-width:320px;line-height:1.5;padding:12px 16px;background:#fff;border-radius:8px}.student-detail__review-modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:24px 28px 18px;border-bottom:1px solid #f0eeeb}.student-detail__review-modal-title-row{display:flex;align-items:center;gap:14px}.student-detail__review-modal-title{font-size:18px;font-weight:700;color:#1a1a1a;margin:0;line-height:1.3}.student-detail__review-modal-subtitle{font-size:13px;color:#9ca3af;margin:3px 0 0}.student-detail__review-modal-close{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:8px;border:none;background:#f5f5f4;color:#6b7280;cursor:pointer;transition:background .15s;flex-shrink:0}.student-detail__review-modal-close:hover{background:#e7e5e4;color:#374151}.student-detail__review-modal-body{padding:20px 28px 28px;overflow-y:auto;max-height:calc(85vh - 100px)}.student-detail__review-modal-body .step-mini__steps{gap:8px}.student-detail__review-modal-body .step-mini__step{padding:12px 14px;border-radius:10px;font-size:14px;gap:10px}.student-detail__review-modal-body .step-mini__label{font-size:11px;letter-spacing:.4px}.student-detail__review-modal-body .step-mini__math{font-size:14px;margin-top:4px}.student-detail__review-modal-body .step-mini__feedback{font-size:13px;margin-top:5px;line-height:1.5}.student-detail__review-modal-body .step-mini__icon svg{width:18px;height:18px}.student-detail__review-modal-body .step-mini__guiding{padding:12px 14px;border-radius:10px;gap:10px;margin-top:8px}.student-detail__review-modal-body .step-mini__guiding-text,.student-detail__review-modal-body .step-mini__guiding-question{font-size:13px;line-height:1.5}@keyframes sdp-fadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes detail-spin{to{transform:rotate(360deg)}}@media (max-width: 768px){.student-detail__header{padding:16px}.student-detail__content{padding:12px 16px 24px}.student-detail__summary-grid,.student-detail__stats-grid{grid-template-columns:1fr}}.todays-plan{display:flex;flex-direction:column;height:100%;background:#fff;overflow:hidden}.todays-plan__header{display:flex;align-items:center;justify-content:space-between;padding:20px;border-bottom:1px solid #f5f5f4}.todays-plan__title{margin:0;font-size:15px;font-weight:500;color:#1c1917}.todays-plan__timestamp{font-size:12px;color:#a8a29e}.todays-plan__content{flex:1;overflow-y:auto;padding:20px}.todays-plan__status{display:flex;align-items:flex-start;gap:12px}.todays-plan__status-icon{width:20px;height:20px;border-radius:50%;background:#dcfce7;display:flex;align-items:center;justify-content:center;color:#16a34a;flex-shrink:0;margin-top:2px}.todays-plan__status-text{flex:1}.todays-plan__status-title{margin:0;font-size:14px;color:#1c1917}.todays-plan__status-subtitle{margin:4px 0 0;font-size:12px;color:#78716c}.todays-plan__divider{height:1px;background:#f5f5f4;margin:24px 0}.todays-plan__checkin{margin-bottom:16px}.todays-plan__checkin-title{margin:0 0 12px;font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.5px;color:#a8a29e}.todays-plan__checkin-list{display:flex;flex-direction:column;gap:12px}.todays-plan__checkin-item{display:flex;align-items:center;gap:12px;padding:0;background:transparent;border:none;cursor:pointer;text-align:left;width:100%;transition:opacity .15s}.todays-plan__checkin-item:hover{opacity:.8}.todays-plan__avatar{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:500;flex-shrink:0}.todays-plan__avatar--high{background:#ffedd5;color:#ea580c}.todays-plan__avatar--medium{background:#f5f5f4;color:#57534e}.todays-plan__checkin-info{display:flex;flex-direction:column;min-width:0}.todays-plan__checkin-name{font-size:14px;color:#1c1917}.todays-plan__checkin-topic{font-size:12px;color:#78716c;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.todays-plan__cta{padding:20px;border-top:1px solid #f5f5f4}.todays-plan__cta-button{width:100%;padding:12px 24px;background:#f97316;color:#fff;font-size:14px;font-weight:500;border:none;border-radius:12px;cursor:pointer;transition:background .15s}.todays-plan__cta-button:hover{background:#ea580c}.todays-plan__cta-subtitle{display:block;margin-top:8px;font-size:12px;color:#a8a29e;text-align:center}.todays-plan__loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:48px 20px;color:#78716c;flex:1}.todays-plan__loading span{font-size:13px}.todays-plan__error{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:48px 20px;color:#dc2626;text-align:center;flex:1}.todays-plan__error span{font-size:13px;max-width:200px}.todays-plan__error button{padding:8px 20px;background:#dc2626;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:13px;font-weight:500;transition:background .15s}.todays-plan__error button:hover{background:#b91c1c}.todays-plan__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:48px 20px;color:#a8a29e;text-align:center;flex:1}.todays-plan__empty span{font-size:13px}.spinning{animation:spin 1s linear infinite}.conversations-tab{display:flex;flex-direction:column;height:100%;background:linear-gradient(180deg,#f8fafc,#f1f5f9)}.conversations-tab__header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;background:#fff;border-bottom:1px solid #e2e8f0;flex-wrap:wrap;gap:1rem;box-shadow:0 1px 3px #0000000a}.conversations-tab__title{display:flex;align-items:center;gap:.75rem}.conversations-tab__title h2{font-size:1.25rem;font-weight:700;color:#0f172a;margin:0;letter-spacing:-.025em}.conversations-tab__title svg{color:#f97316;background:linear-gradient(135deg,#fff7ed,#ffedd5);padding:8px;border-radius:10px}.conversations-tab__count{font-size:.75rem;font-weight:600;color:#ea580c;background:linear-gradient(135deg,#fff7ed,#ffedd5);padding:.375rem .75rem;border-radius:100px}.conversations-tab__filters{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.conversations-tab__filter{position:relative}.conversations-tab__filter-trigger{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#fff;border:1px solid #e2e8f0;border-radius:10px;cursor:pointer;font-size:.875rem;font-weight:500;color:#334155;transition:all .2s ease;box-shadow:0 1px 2px #0000000a}.conversations-tab__filter-trigger:hover{border-color:#f97316;background:#fff7ed;box-shadow:0 2px 8px #f973161f}.conversations-tab__filter-trigger svg{color:#64748b}.conversations-tab__dropdown{position:absolute;top:calc(100% + .5rem);left:0;min-width:220px;max-height:300px;overflow-y:auto;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 10px 40px #0000001f;z-index:100;padding:.5rem}.conversations-tab__dropdown-item{padding:.625rem 1rem;font-size:.875rem;font-weight:500;color:#334155;cursor:pointer;border-radius:8px;transition:all .15s ease}.conversations-tab__dropdown-item:hover{background:#f1f5f9}.conversations-tab__dropdown-item--active{background:linear-gradient(135deg,#fff7ed,#ffedd5);color:#ea580c}.conversations-tab__clear-filter{display:flex;align-items:center;gap:.375rem;padding:.5rem .75rem;font-size:.8125rem;font-weight:500;color:#64748b;background:transparent;border:none;border-radius:8px;cursor:pointer;transition:all .15s ease}.conversations-tab__clear-filter:hover{color:#dc2626;background:#fef2f2}.conversations-tab__student-banner{display:flex;align-items:center;gap:1rem;padding:.875rem 1.5rem;background:linear-gradient(135deg,#fff7ed,#ffedd5);border-bottom:1px solid #fed7aa;font-size:.875rem;font-weight:500;color:#c2410c}.conversations-tab__back-btn{display:flex;align-items:center;gap:.375rem;padding:.5rem .875rem;font-size:.8125rem;font-weight:600;color:#ea580c;background:#fff;border:1px solid #fdba74;border-radius:8px;cursor:pointer;transition:all .2s ease;box-shadow:0 1px 2px #0000000d}.conversations-tab__back-btn:hover{background:linear-gradient(135deg,#f97316,#ea580c);border-color:#f97316;color:#fff;box-shadow:0 4px 12px #f973164d}.conversations-tab__content{flex:1;overflow:auto;padding:1.5rem}.conversations-tab__loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.25rem;padding:4rem;color:#64748b}.conversations-tab__spinner{width:40px;height:40px;border:3px solid #e2e8f0;border-top-color:#f97316;border-radius:50%;animation:spin .8s linear infinite}.conversations-tab__error{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:4rem;color:#dc2626;text-align:center}.conversations-tab__error button{padding:.625rem 1.25rem;font-size:.875rem;font-weight:600;color:#dc2626;background:#fff;border:1px solid #fca5a5;border-radius:8px;cursor:pointer;transition:all .15s ease}.conversations-tab__error button:hover{background:#fef2f2;border-color:#dc2626}.conversations-tab__empty{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:5rem 2rem;text-align:center}.conversations-tab__empty svg{color:#fdba74;background:#fff7ed;padding:1.5rem;border-radius:50%}.conversations-tab__empty h3{font-size:1.25rem;font-weight:700;color:#1e293b;margin:0}.conversations-tab__empty p{font-size:.9375rem;color:#64748b;margin:0;max-width:320px;line-height:1.6}.conversations-tab__legend{display:flex;align-items:center;justify-content:center;gap:1.25rem;padding:1rem 1.5rem;background:#fff;border-top:1px solid #e2e8f0;flex-wrap:wrap}.conversations-tab__legend-item{display:flex;align-items:center;gap:.5rem;font-size:.8125rem;font-weight:500;color:#64748b}.conversations-tab__legend-item svg{width:16px;height:16px}.conversations-tab__legend-separator{color:#e2e8f0;font-weight:300}.conversations-tab__legend-item .type-socrato{color:#ea580c}.conversations-tab__legend-item .type-stride{color:#2563eb}.conversation-list{display:flex;flex-direction:column;gap:1rem}.conversation-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:1.25rem;cursor:pointer;transition:all .2s ease;box-shadow:0 1px 3px #0000000a}.conversation-card:hover{border-color:#fdba74;box-shadow:0 8px 24px #f973161f;transform:translateY(-2px)}.conversation-card:focus{outline:none;border-color:#f97316;box-shadow:0 0 0 3px #f9731633}.conversation-card__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.conversation-card__student{font-size:1rem;font-weight:700;color:#0f172a;letter-spacing:-.01em}.conversation-card__type-pill{display:inline-flex;align-items:center;gap:.25rem;font-size:.6875rem;font-weight:700;padding:.375rem .625rem;border-radius:100px;text-transform:uppercase;letter-spacing:.03em}.conversation-card__type-pill.type-socrato{color:#ea580c;background:linear-gradient(135deg,#fff7ed,#ffedd5);border:1px solid #fdba74}.conversation-card__type-pill.type-stride{color:#2563eb;background:linear-gradient(135deg,#eff6ff,#dbeafe);border:1px solid #93c5fd}.conversation-card__status{display:inline-flex;align-items:center;gap:.375rem;font-size:.75rem;font-weight:600;padding:.375rem .75rem;border-radius:100px}.conversation-card__status-label{display:none}@media (min-width: 640px){.conversation-card__status-label{display:inline}}.conversation-card__status.status-completed{color:#15803d;background:linear-gradient(135deg,#f0fdf4,#dcfce7);border:1px solid #86efac}.conversation-card__status.status-incomplete{color:#b45309;background:linear-gradient(135deg,#fffbeb,#fef3c7);border:1px solid #fcd34d}.conversation-card__status.status-gave-up{color:#b91c1c;background:linear-gradient(135deg,#fef2f2,#fee2e2);border:1px solid #fca5a5}.conversation-card__problem{font-size:.8125rem;line-height:1.4;margin-bottom:.75rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-weight:500;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Monaco,Consolas,monospace;letter-spacing:-.01em;background:linear-gradient(135deg,#c2410c,#9a3412);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.conversation-card__meta{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem}.conversation-card__meta-item{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .75rem;font-size:.75rem;font-weight:600;color:#475569;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-radius:100px;border:1px solid #e2e8f0}.conversation-card__meta-item svg{color:#f97316;flex-shrink:0;opacity:.8}.conversation-card__duration{margin-left:auto}.conversation-list__load-more{display:flex;align-items:center;justify-content:center;gap:.625rem;padding:1.25rem;color:#64748b;font-size:.875rem;font-weight:500}.conversation-list__spinner{width:20px;height:20px;border:2px solid #e2e8f0;border-top-color:#f97316;border-radius:50%;animation:spin .8s linear infinite}.conversation-modal__backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.conversation-modal{width:100%;max-width:720px;max-height:85vh;background:#fff;border-radius:20px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 25px 50px -12px #00000040}.conversation-modal__header{display:flex;align-items:flex-start;justify-content:space-between;padding:1.5rem;background:linear-gradient(135deg,#fff7ed,#ffedd5);border-bottom:1px solid #fed7aa;flex-shrink:0}.conversation-modal__header-info{flex:1;min-width:0}.conversation-modal__title{font-size:1.25rem;font-weight:700;color:#0f172a;margin:0 0 .375rem;letter-spacing:-.025em}.conversation-modal__problem{font-size:.9375rem;color:#64748b;margin:0;line-height:1.5}.conversation-modal__close{display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;background:#fff;border:1px solid #e2e8f0;border-radius:10px;color:#64748b;cursor:pointer;transition:all .15s ease;flex-shrink:0}.conversation-modal__close:hover{background:#f1f5f9;color:#0f172a;border-color:#cbd5e1}.conversation-modal__content{flex:1;overflow:auto;padding:1.25rem 1.5rem;background:#fafafa}.conversation-modal__loading,.conversation-modal__error,.conversation-modal__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:4rem;color:#64748b;text-align:center}.conversation-modal__spinner{width:36px;height:36px;border:3px solid #e2e8f0;border-top-color:#f97316;border-radius:50%;animation:spin .8s linear infinite}.conversation-modal__error{color:#dc2626}.conversation-modal__error button{padding:.625rem 1.25rem;font-size:.875rem;font-weight:600;color:#dc2626;background:#fff;border:1px solid #fca5a5;border-radius:8px;cursor:pointer}.conversation-modal__messages{display:flex;flex-direction:column;gap:1rem;max-width:100%}.conversation-modal__date-group{margin-bottom:1rem}.conversation-modal__date-divider{display:flex;align-items:center;justify-content:center;margin:1.25rem 0}.conversation-modal__date-divider span{font-size:.75rem;font-weight:600;color:#64748b;background:#fff;padding:.375rem 1rem;border-radius:100px;border:1px solid #e2e8f0}.conversation-modal__message{display:flex;gap:.75rem;padding:.5rem 0;font-family:Söhne,-apple-system,BlinkMacSystemFont,Inter,Segoe UI,system-ui,sans-serif}.conversation-modal__message--bot{flex-direction:row;justify-content:flex-start;width:100%;margin-bottom:1.5rem}.conversation-modal__message--user{flex-direction:row-reverse;justify-content:flex-start;width:100%;margin-bottom:1rem}.conversation-modal__message-avatar{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:50%;flex-shrink:0}.conversation-modal__message--user .conversation-modal__message-avatar{background:linear-gradient(135deg,#f3f4f6,#e5e7eb);color:#6b7280}.conversation-modal__message--bot .conversation-modal__message-avatar{background:linear-gradient(135deg,#f0fdf4,#dcfce7);color:#16a34a}.conversation-modal__bot-icon{width:18px;height:18px;border-radius:4px;-o-object-fit:cover;object-fit:cover}.conversation-modal__message-content{flex:1;min-width:0;max-width:100%;display:flex;flex-direction:column}.conversation-modal__message--user .conversation-modal__message-content{align-items:flex-end}.conversation-modal__message-bubble{word-break:break-word}.conversation-modal__message--user .conversation-modal__message-bubble{background-color:#f3f4f6;color:#1a1a1a;border-radius:12px;padding:12px 16px;border:1px solid #E5E7EB;box-shadow:0 1px 2px #0000000d;max-width:-moz-fit-content;max-width:fit-content}.conversation-modal__message--bot .conversation-modal__message-bubble{background-color:transparent;border:none;border-radius:0;padding:0;box-shadow:none}.conversation-modal__message-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem}.conversation-modal__message--user .conversation-modal__message-header{flex-direction:row-reverse;justify-content:flex-start}.conversation-modal__message-sender{font-size:.8125rem;font-weight:600;color:#374151}.conversation-modal__message-time{display:flex;align-items:center;gap:.25rem;font-size:.6875rem;font-weight:500;color:#9ca3af}.conversation-modal__message-text{color:#1a1a1a;line-height:1.5}.conversation-modal__message--user .conversation-modal__message-text{font-size:15px;white-space:pre-wrap;text-align:left}.conversation-modal__message--bot .conversation-modal__message-text{font-size:16px;font-weight:400;letter-spacing:.01em}.conversation-modal__message-text p{margin:0 0 .5rem}.conversation-modal__message-text p:last-child{margin-bottom:0}.conversation-modal__message-image{margin-top:.75rem}.conversation-modal__message-image img{max-width:100%;max-height:300px;border-radius:12px;border:1px solid #e2e8f0;box-shadow:0 2px 8px #0000000f}.status-completed{color:#16a34a}.status-incomplete{color:#d97706}.status-gave-up{color:#dc2626}@media (max-width: 768px){.conversations-tab__header{flex-direction:column;align-items:flex-start;padding:1rem}.conversations-tab__filters{width:100%}.conversations-tab__filter{flex:1}.conversations-tab__filter-trigger{width:100%;justify-content:space-between}.conversations-tab__dropdown{width:100%}.conversations-tab__content{padding:1rem}.conversation-card{padding:1rem;border-radius:12px}.conversation-modal{max-height:95vh;border-radius:16px}.conversation-modal__header{padding:1.25rem}.conversation-modal__content{padding:1rem}.conversation-card__meta{gap:.375rem}.conversation-card__meta-item{padding:.25rem .625rem;font-size:.6875rem}.conversation-card__duration{margin-left:0}.conversations-tab__legend{gap:1rem;flex-wrap:wrap}}.grading-tab{display:flex;flex-direction:column;gap:24px;padding:24px;height:100%}.grading-tab__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:64px 24px;text-align:center;gap:12px}.grading-tab__empty-icon{width:64px;height:64px;border-radius:50%;background:#e8f5e9;display:flex;align-items:center;justify-content:center;font-size:1.75rem;color:#2e7d32}.grading-tab__empty-title{font-size:1.125rem;font-weight:700;color:#1a1a1a;margin:0}.grading-tab__empty-subtitle{font-size:.875rem;color:#999;margin:0}.grading-tab__error{padding:16px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#991b1b;font-size:.875rem}.grading-tab__assignment-list{display:flex;flex-direction:column;gap:12px}.grading-tab__assignment-card{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;cursor:pointer;transition:all .15s ease}.grading-tab__assignment-card:hover{border-color:#a5b4fc;box-shadow:0 1px 3px #6366f11a}.grading-tab__assignment-info{display:flex;flex-direction:column;gap:4px}.grading-tab__assignment-name{font-size:1rem;font-weight:600;color:#111827;margin:0}.grading-tab__assignment-meta{font-size:.813rem;color:#6b7280}.grading-tab__assignment-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;background:#eef2ff;color:#4338ca;border-radius:20px;font-size:.813rem;font-weight:600}.grading-overview{display:flex;flex-direction:column;gap:16px}.grading-overview__header{display:flex;align-items:center;gap:12px}.grading-overview__back-btn{display:flex;align-items:center;gap:4px;padding:6px 12px;background:transparent;border:1px solid #d1d5db;border-radius:6px;color:#374151;font-size:.875rem;cursor:pointer;transition:background .15s ease}.grading-overview__back-btn:hover{background:#f9fafb}.grading-overview__title{font-size:1.25rem;font-weight:600;color:#111827;margin:0}.grading-overview__progress{display:flex;align-items:center;gap:16px;padding:12px 16px;background:#f9fafb;border-radius:8px}.grading-overview__progress-bar{flex:1;height:8px;background:#e5e7eb;border-radius:4px;overflow:hidden}.grading-overview__progress-fill{height:100%;background:#22c55e;border-radius:4px;transition:width .3s ease}.grading-overview__progress-text{font-size:.813rem;color:#6b7280;white-space:nowrap}.grading-overview__section{display:flex;flex-direction:column;gap:8px}.grading-overview__section-header{display:flex;align-items:center;gap:8px;font-size:.875rem;font-weight:600;color:#374151}.grading-overview__section-badge{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 8px;border-radius:12px;font-size:.75rem;font-weight:700}.grading-overview__section-badge--warning{background:#fef3c7;color:#92400e}.grading-overview__section-badge--success{background:#dcfce7;color:#166534}.grading-overview__card-list{display:flex;flex-direction:column;gap:8px}.grading-overview__actions{display:flex;gap:12px;padding-top:8px}.grading-overview__release-btn{display:flex;align-items:center;gap:8px;padding:10px 20px;background:#4f46e5;color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:background .15s ease}.grading-overview__release-btn:hover{background:#4338ca}.grading-overview__release-btn:disabled{background:#9ca3af;cursor:not-allowed}.grading-overview__review-btn{display:flex;align-items:center;gap:8px;padding:10px 20px;background:#fff;color:#4f46e5;border:1px solid #4f46e5;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .15s ease}.grading-overview__review-btn:hover{background:#eef2ff}.grading-card{display:flex;flex-direction:column;padding:12px 16px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;transition:border-color .15s ease}.grading-card:hover{border-color:#c7d2fe}.grading-card--flagged{border-left:3px solid #f59e0b}.grading-card--expanded{padding:16px 20px}.grading-card__row{display:flex;align-items:center;justify-content:space-between}.grading-card__info{display:flex;align-items:center;gap:12px}.grading-card__name{font-size:.875rem;font-weight:600;color:#111827}.grading-card__score{font-size:.813rem;font-weight:500;padding:2px 8px;border-radius:12px}.grading-card__score--high{background:#dcfce7;color:#166534}.grading-card__score--medium{background:#fef3c7;color:#92400e}.grading-card__score--low{background:#fef2f2;color:#991b1b}.grading-card__score--pending{background:#f3f4f6;color:#6b7280;font-style:italic}.grading-card__risk{display:flex;align-items:center;gap:6px}.grading-card__risk-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;background:#fef3c7;color:#92400e;border-radius:4px;font-size:.75rem;font-weight:500}.grading-card__actions{display:flex;gap:8px}.grading-card__review-btn{padding:6px 14px;background:#f3f4f6;color:#374151;border:1px solid #d1d5db;border-radius:6px;font-size:.813rem;font-weight:500;cursor:pointer;transition:background .15s ease}.grading-card__review-btn:hover{background:#e5e7eb}.grading-card__chat-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;background:#f0f9ff;color:#0369a1;border:1px solid #bae6fd;border-radius:6px;font-size:.813rem;font-weight:500;cursor:pointer;transition:all .15s ease}.grading-card__chat-btn:hover{background:#e0f2fe;border-color:#7dd3fc}.grading-card__chat-icon{width:16px;height:16px;border-radius:4px}.grading-card__form{display:flex;flex-direction:column;gap:10px;margin-top:12px;padding-top:12px;border-top:1px solid #e5e7eb}.grading-card__form-error{display:flex;align-items:center;gap:6px;padding:8px 12px;background:#fef2f2;border-radius:6px;font-size:.813rem;color:#991b1b}.grading-card__form-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.grading-card__form-field{display:flex;flex-direction:column;gap:4px}.grading-card__form-field label{font-size:.75rem;font-weight:600;color:#6b7280;text-transform:uppercase}.grading-card__form-input{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;color:#111827;background:#f9fafb;transition:border-color .15s ease}.grading-card__form-input:focus{outline:none;border-color:#6366f1;background:#fff}.grading-card__form-textarea{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;color:#111827;background:#f9fafb;resize:vertical;font-family:inherit;transition:border-color .15s ease}.grading-card__form-textarea:focus{outline:none;border-color:#6366f1;background:#fff}.grading-card__form-checkbox{display:flex;align-items:center;gap:8px;font-size:.875rem;color:#374151;cursor:pointer}.grading-card__form-checkbox input[type=checkbox]{width:16px;height:16px;accent-color:#4f46e5}.grading-card__form-hint{font-size:.75rem;color:#92400e;background:#fef3c7;padding:6px 10px;border-radius:4px;margin:0}.grading-card__form-submit{display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 20px;background:#4f46e5;color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:background .15s ease;align-self:flex-start}.grading-card__form-submit:hover{background:#4338ca}.grading-card__form-submit:disabled{background:#9ca3af;cursor:not-allowed}.student-review-modal__content{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-height:70vh;overflow-y:auto}.student-review-modal__work-panel{display:flex;flex-direction:column;gap:12px}.student-review-modal__work-image{width:100%;border-radius:8px;border:1px solid #e5e7eb}.student-review-modal__analysis-panel{display:flex;flex-direction:column;gap:16px}.student-review-modal__risk-banner{display:flex;align-items:center;gap:8px;padding:10px 14px;background:#fef3c7;border-radius:8px;font-size:.813rem;color:#92400e}.student-review-modal__steps{display:flex;flex-direction:column;gap:8px}.student-review-modal__nav{display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-top:1px solid #e5e7eb}.student-review-modal__nav-btn{padding:8px 16px;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease}.student-review-modal__nav-btn--secondary{background:#fff;color:#374151;border:1px solid #d1d5db}.student-review-modal__nav-btn--secondary:hover{background:#f9fafb}.student-review-modal__nav-btn--primary{background:#4f46e5;color:#fff;border:none}.student-review-modal__nav-btn--primary:hover{background:#4338ca}.step-override-row{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb}.step-override-row__content{display:flex;flex-direction:column;gap:6px;flex:1;margin-right:16px}.step-override-row__step-label{font-size:.75rem;font-weight:600;color:#6b7280;text-transform:uppercase}.step-override-row__text{font-size:.875rem;color:#111827}.step-override-row__status{display:inline-flex;padding:2px 8px;border-radius:4px;font-size:.75rem;font-weight:600}.step-override-row__status--correct{background:#dcfce7;color:#166534}.step-override-row__status--incorrect{background:#fef2f2;color:#991b1b}.step-override-row__toggle{display:flex;gap:8px;flex-shrink:0}.step-override-row__toggle-btn{padding:6px 14px;border:1px solid #d1d5db;border-radius:6px;font-size:.813rem;font-weight:500;cursor:pointer;background:#fff;color:#374151;transition:all .15s ease}.step-override-row__toggle-btn--active-correct{background:#dcfce7;border-color:#22c55e;color:#166534}.step-override-row__toggle-btn--active-incorrect{background:#fef2f2;border-color:#ef4444;color:#991b1b}.release-summary{display:flex;flex-direction:column;gap:24px;padding:24px}.release-summary__stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:16px}.release-summary__stat-card{display:flex;flex-direction:column;align-items:center;padding:16px;background:#f9fafb;border-radius:12px;gap:4px}.release-summary__stat-value{font-size:1.5rem;font-weight:700;color:#111827}.release-summary__stat-label{font-size:.75rem;color:#6b7280;text-transform:uppercase;font-weight:500}.release-summary__section{display:flex;flex-direction:column;gap:12px}.release-summary__section-title{font-size:1rem;font-weight:600;color:#111827;margin:0}.release-summary__misconception-list{display:flex;flex-wrap:wrap;gap:8px}.release-summary__misconception-tag{display:inline-flex;align-items:center;gap:4px;padding:4px 12px;background:#fef3c7;border-radius:16px;font-size:.813rem;color:#92400e}.release-summary__misconception-count{font-weight:700}.release-summary__watch-list{display:flex;flex-direction:column;gap:8px}.release-summary__watch-item{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:#fef2f2;border-radius:8px;border:1px solid #fecaca}.release-summary__watch-name{font-size:.875rem;font-weight:600;color:#991b1b}.release-summary__watch-accuracy{font-size:.875rem;font-weight:500;color:#b91c1c}.grading-tab__skeleton{display:flex;flex-direction:column;gap:12px}.grading-tab__skeleton-card{height:72px;background:linear-gradient(90deg,#f3f4f6 25%,#e5e7eb,#f3f4f6 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:12px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.grading-tab__header{display:flex;flex-direction:column;gap:4px}.grading-tab__header-row{display:flex;align-items:center;gap:10px}.grading-tab__title{font-size:1.375rem;font-weight:700;color:#1a1a1a;margin:0;letter-spacing:-.02em}.grading-tab__subtitle{font-size:.875rem;color:#888;margin:0}.grading-tab__pending-badge{display:inline-flex;align-items:center;justify-content:center;padding:2px 8px;background:#ff6d00;color:#fff;border-radius:10px;font-size:.75rem;font-weight:600;line-height:18px}.grading-tab__tabs{display:flex;gap:8px}.grading-tab__tab{display:flex;align-items:center;gap:6px;padding:8px 16px;background:#f3f4f6;border:1px solid transparent;border-radius:20px;font-size:.875rem;font-weight:500;color:#6b7280;cursor:pointer;transition:all .15s ease}.grading-tab__tab:hover{background:#e5e7eb}.grading-tab__tab--active{background:#eef2ff;border-color:#a5b4fc;color:#4338ca;font-weight:600}.grading-tab__tab-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;background:#0000000f;border-radius:10px;font-size:.75rem;font-weight:600}.grading-tab__tab--active .grading-tab__tab-count{background:#4338ca1f}.grading-tab__select-all{padding:8px 0}.grading-tab__select-all-label{display:flex;align-items:center;gap:8px;font-size:.875rem;color:#6b7280;cursor:pointer}.grading-tab__select-all-label input[type=checkbox]{width:16px;height:16px;accent-color:#f97316}.grading-tab__list{display:flex;flex-direction:column;gap:3px}.grading-toolbar{display:flex;align-items:center;gap:12px}.grading-toolbar__search{display:flex;align-items:center;gap:8px;flex:1;padding:8px 12px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;transition:border-color .15s ease}.grading-toolbar__search:focus-within{border-color:#fb923c;background:#fff}.grading-toolbar__search-icon{color:#9ca3af;flex-shrink:0}.grading-toolbar__search-input{flex:1;border:none;outline:none;background:transparent;font-size:.875rem;color:#111827}.grading-toolbar__search-input::-moz-placeholder{color:#9ca3af}.grading-toolbar__search-input::placeholder{color:#9ca3af}.grading-toolbar__controls{display:flex;gap:12px}.grading-toolbar__select-group{display:flex;align-items:center;gap:6px}.grading-toolbar__label{font-size:.75rem;font-weight:600;color:#6b7280;text-transform:uppercase}.grading-toolbar__select{padding:6px 10px;border:1px solid #d1d5db;border-radius:6px;font-size:.813rem;color:#374151;background:#fff;cursor:pointer}.grading-row{display:flex;flex-direction:column;background:#fff;border:1px solid transparent;border-radius:10px;box-shadow:0 1px 2px #00000008;cursor:pointer;transition:all .12s ease}.grading-row:hover{background:#fafafa;box-shadow:0 2px 6px #0000000f}.grading-row__main{display:flex;align-items:center;gap:12px;padding:12px 14px}.grading-row__checkbox{width:20px;flex-shrink:0;display:flex;align-items:center}.grading-row__checkbox input[type=checkbox]{width:16px;height:16px;accent-color:#f97316;cursor:pointer}.grading-row__avatar{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600;flex-shrink:0;letter-spacing:.02em}.grading-row__info{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.grading-row__assignment{font-size:.875rem;font-weight:500;color:#1a1a1a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.grading-row__student{display:flex;align-items:center;gap:0;font-size:.781rem;color:#888;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.grading-row__dot{color:#ccc;font-size:.688rem}.grading-row__date{color:#aaa;font-size:.75rem}.grading-row__completion{display:flex;align-items:center;gap:6px;flex-shrink:0}.grading-row__completion-bar{width:50px;height:4px;background:#f0f0f0;border-radius:2px;overflow:hidden}.grading-row__completion-fill{height:100%;border-radius:2px;transition:width .3s ease}.grading-row__completion-fill--complete{background:#4caf50}.grading-row__completion-fill--partial{background:#ff9800}.grading-row__completion-text{font-size:.75rem;color:#999;white-space:nowrap;font-variant-numeric:tabular-nums}.grading-row__completion-text--empty{color:#ccc}.grading-row__time{font-size:.75rem;color:#bbb;width:65px;text-align:right;flex-shrink:0}.grading-row__action{flex-shrink:0;display:flex;justify-content:flex-end}.grading-row__grade-btn{padding:6px 14px;background:#ff6d00;color:#fff;border:none;border-radius:7px;font-size:.781rem;font-weight:600;cursor:pointer;transition:background .15s ease}.grading-row__grade-btn:hover{background:#e65100}.grading-inline-form{display:flex;flex-direction:column;gap:12px;margin:0 16px 16px 68px;padding:16px;background:#fffbf5;border:1px solid #fed7aa;border-left:3px solid #f97316;border-radius:8px}.grading-inline-form__error{display:flex;align-items:center;gap:6px;padding:8px 12px;background:#fef2f2;border-radius:6px;font-size:.813rem;color:#991b1b}.grading-inline-form__fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.grading-inline-form__field{display:flex;flex-direction:column;gap:4px}.grading-inline-form__field label{font-size:.75rem;font-weight:600;color:#6b7280;text-transform:uppercase}.grading-inline-form__input{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;color:#111827;background:#fff;transition:border-color .15s ease}.grading-inline-form__input:focus{outline:none;border-color:#fb923c}.grading-inline-form__textarea{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;color:#111827;background:#fff;resize:vertical;font-family:inherit;transition:border-color .15s ease}.grading-inline-form__textarea:focus{outline:none;border-color:#fb923c}.grading-inline-form__footer{display:flex;flex-direction:column;gap:8px}.grading-inline-form__checkbox{display:flex;align-items:center;gap:8px;font-size:.875rem;color:#374151;cursor:pointer}.grading-inline-form__checkbox input[type=checkbox]{width:16px;height:16px;accent-color:#f97316}.grading-inline-form__hint{font-size:.75rem;color:#92400e;background:#fef3c7;padding:6px 10px;border-radius:4px;margin:0}.grading-inline-form__submit{display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 20px;background:#f97316;color:#fff;border:none;border-radius:6px;font-size:.875rem;font-weight:600;cursor:pointer;transition:background .15s ease;align-self:flex-start}.grading-inline-form__submit:hover{background:#ea580c}.grading-inline-form__submit:disabled{background:#9ca3af;cursor:not-allowed}.grading-group{display:flex;flex-direction:column;gap:2px}.grading-group__header{display:flex;align-items:center;gap:8px;padding:10px 16px;background:#f9fafb;border:none;border-radius:8px;cursor:pointer;transition:background .15s ease;width:100%;text-align:left}.grading-group__header:hover{background:#f3f4f6}.grading-group__name{font-size:.875rem;font-weight:600;color:#111827;flex:1}.grading-group__count{font-size:.75rem;font-weight:600;color:#6b7280;background:#e5e7eb;padding:2px 8px;border-radius:10px}.grading-group__pending{font-size:.75rem;font-weight:600;color:#f97316;background:#fff7ed;padding:2px 8px;border-radius:10px}.grading-group__rows{display:flex;flex-direction:column;gap:3px}.grading-bulk-bar{position:fixed;bottom:24px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:12px;padding:12px 20px;background:#1f2937;color:#fff;border-radius:12px;box-shadow:0 8px 32px #0003;z-index:50;animation:slideUp .2s ease}@keyframes slideUp{0%{opacity:0;transform:translate(-50%) translateY(20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.grading-bulk-bar__count{font-size:.875rem;font-weight:600}.grading-bulk-bar__action{padding:8px 16px;background:#f97316;color:#fff;border:none;border-radius:6px;font-size:.813rem;font-weight:600;cursor:pointer;transition:background .15s ease}.grading-bulk-bar__action:hover{background:#ea580c}.grading-bulk-bar__action:disabled{background:#6b7280;cursor:not-allowed}.grading-bulk-bar__clear{padding:8px 16px;background:transparent;color:#d1d5db;border:1px solid #4b5563;border-radius:6px;font-size:.813rem;font-weight:500;cursor:pointer;transition:all .15s ease}.grading-bulk-bar__clear:hover{color:#fff;border-color:#9ca3af}.grading-row--active{border-color:#ffcc80;background:#fff8f0;box-shadow:0 2px 6px #0000000f}.grading-row--active:hover{background:#fff8f0;border-color:#ffcc80}@keyframes grading-panel-slide-in{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes grading-panel-fade-in{0%{opacity:0}to{opacity:1}}.grading-panel__backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0003;z-index:100;animation:grading-panel-fade-in .2s ease}.grading-panel{position:fixed;top:0;right:0;bottom:0;width:960px;max-width:calc(100vw - 40px);background:#fff;z-index:101;display:flex;flex-direction:column;box-shadow:-8px 0 30px #0000001a;animation:grading-panel-slide-in .2s ease}.grading-panel__header{display:flex;align-items:center;gap:12px;padding:16px 20px;border-bottom:1px solid #F0F0F0;flex-shrink:0}.grading-panel__avatar{width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.781rem;font-weight:600;flex-shrink:0;letter-spacing:.02em}.grading-panel__header-info{flex:1;min-width:0}.grading-panel__header-assignment{font-size:.938rem;font-weight:600;color:#1a1a1a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}.grading-panel__header-student{font-size:.781rem;color:#999;display:block}.grading-panel__nav{display:flex;align-items:center;gap:4px;flex-shrink:0}.grading-panel__nav-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid #d1d5db;border-radius:6px;background:#fff;color:#374151;cursor:pointer;transition:all .15s ease}.grading-panel__nav-btn:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.grading-panel__nav-btn:disabled{color:#d1d5db;cursor:not-allowed}.grading-panel__nav-counter{font-size:.75rem;color:#6b7280;padding:0 4px;white-space:nowrap}.grading-panel__close-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:6px;background:transparent;color:#6b7280;cursor:pointer;margin-left:4px;flex-shrink:0;transition:all .15s ease}.grading-panel__close-btn:hover{background:#f3f4f6;color:#111827}.grading-panel__content{flex:1;overflow-y:auto;padding:20px}.grading-panel__footer{display:flex;align-items:center;gap:8px;padding:16px 20px;border-top:1px solid #F0F0F0;background:#fafafa;flex-shrink:0}.grading-panel__cancel-btn{padding:11px 20px;background:#fff;color:#666;border:1px solid #E0E0E0;border-radius:9px;font-size:.844rem;font-weight:500;cursor:pointer;transition:all .15s ease}.grading-panel__cancel-btn:hover{background:#f9fafb}.grading-panel__submit-btn{flex:1;padding:11px 0;background:#ff6d00;color:#fff;border:none;border-radius:9px;font-size:.875rem;font-weight:600;cursor:pointer;transition:background .15s ease;display:flex;align-items:center;justify-content:center;gap:6px}.grading-panel__submit-btn:hover:not(:disabled){background:#e65100}.grading-panel__submit-btn:disabled{background:#e0e0e0;color:#999;cursor:not-allowed}.grading-panel__error{display:flex;align-items:center;gap:6px;padding:8px 12px;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;font-size:.813rem;color:#991b1b;margin-bottom:16px}.grading-panel-steps__summary{display:flex;gap:8px;margin-bottom:16px}.grading-panel-steps__summary-cell{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 6px;border-radius:8px;background:#f9fafb}.grading-panel-steps__summary-value{font-size:1.125rem;font-weight:700}.grading-panel-steps__summary-value--correct{color:#2e7d32}.grading-panel-steps__summary-value--incorrect{color:#c62828}.grading-panel-steps__summary-value--other{color:#6b7280}.grading-panel-steps__summary-value--total{color:#111827}.grading-panel-steps__summary-label{font-size:.688rem;font-weight:600;color:#6b7280;text-transform:uppercase}.grading-panel-steps__score{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px;margin-bottom:16px;border-radius:10px}.grading-panel-steps__score--green{background:#e8f5e9}.grading-panel-steps__score--amber{background:#fff8e1}.grading-panel-steps__score--red{background:#ffebee}.grading-panel-steps__score-number{font-size:2rem;font-weight:800;line-height:1}.grading-panel-steps__score-number--green{color:#2e7d32}.grading-panel-steps__score-number--amber{color:#f57f17}.grading-panel-steps__score-number--red{color:#c62828}.grading-panel-steps__score-suffix{font-size:1rem;font-weight:600;color:#6b7280}.grading-panel-steps__section-title{font-size:.75rem;font-weight:700;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}.grading-panel-steps__list{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.grading-panel-steps__item{display:flex;gap:10px;padding:10px 12px;border:1px solid #e5e7eb;border-radius:8px;background:#fff}.grading-panel-steps__status-icon{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;flex-shrink:0}.grading-panel-steps__status-icon--correct{background:#e8f5e9;color:#2e7d32}.grading-panel-steps__status-icon--incorrect{background:#ffebee;color:#c62828}.grading-panel-steps__status-icon--other{background:#f3f4f6;color:#6b7280}.grading-panel-steps__item-body{flex:1;min-width:0}.grading-panel-steps__item-header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:4px}.grading-panel-steps__item-label{font-size:.75rem;font-weight:600;color:#374151}.grading-panel-steps__override-btn{padding:2px 8px;border:1px solid #d1d5db;border-radius:4px;background:#fff;font-size:.688rem;font-weight:600;cursor:pointer;transition:all .15s ease}.grading-panel-steps__override-btn:hover{border-color:#9ca3af}.grading-panel-steps__override-btn--active-correct{background:#e8f5e9;border-color:#2e7d32;color:#2e7d32}.grading-panel-steps__override-btn--active-incorrect{background:#ffebee;border-color:#c62828;color:#c62828}.grading-panel-steps__item-content{font-size:.813rem;color:#111827;margin-bottom:2px}.grading-panel-steps__item-feedback{font-size:.75rem;color:#6b7280}.grading-panel-steps__images{display:flex;flex-direction:column;gap:8px}.grading-panel-steps__image{width:100%;border-radius:8px;border:1px solid #e5e7eb}.grading-panel-manual__details{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:14px 16px;background:#f9fafb;border-radius:10px;margin-bottom:20px}.grading-panel-manual__detail-item{display:flex;flex-direction:column;gap:2px}.grading-panel-manual__detail-label{font-size:.688rem;font-weight:600;color:#6b7280;text-transform:uppercase}.grading-panel-manual__detail-value{font-size:.875rem;font-weight:500;color:#111827}.grading-panel-manual__detail-link{font-size:.813rem;color:#ff6d00;text-decoration:none;font-weight:500}.grading-panel-manual__detail-link:hover{text-decoration:underline}.grading-panel-manual__detail-item--full{grid-column:1 / -1}.grading-panel-manual__problems-input-row{display:flex;align-items:center;gap:6px}.grading-panel-manual__problems-input{width:52px;padding:6px 8px;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;font-weight:600;color:#111827;background:#fff;text-align:center;transition:border-color .15s ease}.grading-panel-manual__problems-input:focus{outline:none;border-color:#ff6d00}.grading-panel-manual__problems-input::-webkit-outer-spin-button,.grading-panel-manual__problems-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.grading-panel-manual__problems-input[type=number]{-moz-appearance:textfield}.grading-panel-manual__problems-separator{font-size:1rem;font-weight:500;color:#6b7280}.grading-panel-manual__problems-total{font-size:.875rem;font-weight:600;color:#111827;padding:6px 0}.grading-panel-manual__detail-progress{display:flex;align-items:center;gap:8px}.grading-panel-manual__detail-progress-bar{flex:1;height:6px;background:#e5e7eb;border-radius:3px;overflow:hidden}.grading-panel-manual__detail-progress-fill{height:100%;background:#22c55e;border-radius:3px}.grading-panel-manual__score-hero{display:flex;flex-direction:column;align-items:center;gap:12px;padding:24px 16px;border-radius:12px;margin-bottom:16px;transition:background .2s ease}.grading-panel-manual__score-hero--empty{background:#f9fafb}.grading-panel-manual__score-hero--green{background:#e8f5e9}.grading-panel-manual__score-hero--amber{background:#fff8e1}.grading-panel-manual__score-hero--red{background:#ffebee}.grading-panel-manual__score-input-wrap{display:flex;align-items:baseline;gap:4px}.grading-panel-manual__score-input{width:100px;border:none;outline:none;background:transparent;font-size:3rem;font-weight:800;text-align:center;color:#111827;line-height:1}.grading-panel-manual__score-input--green{color:#2e7d32}.grading-panel-manual__score-input--amber{color:#f57f17}.grading-panel-manual__score-input--red{color:#c62828}.grading-panel-manual__score-input::-moz-placeholder{color:#d1d5db}.grading-panel-manual__score-input::placeholder{color:#d1d5db}.grading-panel-manual__score-input::-webkit-outer-spin-button,.grading-panel-manual__score-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.grading-panel-manual__score-input[type=number]{-moz-appearance:textfield}.grading-panel-manual__score-suffix{font-size:1.25rem;font-weight:600;color:#6b7280}.grading-panel-manual__grade-preview{font-size:.875rem;font-weight:600;color:#374151;text-align:center}.grading-panel-manual__grade-descriptor{font-weight:400;color:#6b7280;margin-left:6px}.grading-panel-manual__quick-scores{display:flex;gap:6px;justify-content:center;margin-bottom:20px;flex-wrap:wrap}.grading-panel-manual__quick-btn{padding:6px 12px;border:1px solid #d1d5db;border-radius:6px;background:#fff;font-size:.813rem;font-weight:600;color:#374151;cursor:pointer;transition:all .15s ease}.grading-panel-manual__quick-btn:hover{border-color:#ffcc80;background:#fff8f0}.grading-panel-manual__quick-btn--selected{border-color:#ff6d00;background:#fff3e0;color:#e65100}.grading-panel-manual__section-label{font-size:.75rem;font-weight:600;color:#6b7280;text-transform:uppercase;margin-bottom:6px}.grading-panel-manual__notes{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:.875rem;color:#111827;background:#fff;font-family:inherit;resize:vertical;transition:border-color .15s ease;margin-bottom:16px}.grading-panel-manual__notes:focus{outline:none;border-color:#ff6d00}.grading-panel-manual__practice-flag{display:flex;align-items:center;gap:10px;width:100%;padding:12px 14px;border:1px solid #d1d5db;border-radius:8px;background:#fff;cursor:pointer;transition:all .15s ease}.grading-panel-manual__practice-flag:hover{border-color:#ffcc80}.grading-panel-manual__practice-flag--active{border-color:#ef4444;background:#fef2f2}.grading-panel-manual__practice-flag-checkbox{width:18px;height:18px;accent-color:#ef4444;flex-shrink:0}.grading-panel-manual__practice-flag-text{flex:1}.grading-panel-manual__practice-flag-title{font-size:.875rem;font-weight:600;color:#374151;display:block}.grading-panel-manual__practice-flag-desc{font-size:.75rem;color:#6b7280;display:block}.student-engagement{margin-top:16px;border:1px solid #e5e7eb;border-radius:10px;overflow:hidden}.student-engagement__header{display:flex;align-items:center;gap:8px;width:100%;padding:10px 14px;background:#f9fafb;border:none;cursor:pointer;transition:background .15s ease;text-align:left}.student-engagement__header:hover{background:#f3f4f6}.student-engagement__icon{color:#6b7280;flex-shrink:0}.student-engagement__title{font-size:.75rem;font-weight:700;color:#374151;text-transform:uppercase;letter-spacing:.05em}.student-engagement__summary{flex:1;font-size:.75rem;color:#9ca3af;font-weight:500;text-align:right;margin-right:4px}.student-engagement__body{padding:12px 14px;border-top:1px solid #e5e7eb}.student-engagement__table{display:flex;flex-direction:column;gap:0}.student-engagement__table-header{display:grid;grid-template-columns:1fr .6fr .6fr 1fr;gap:8px;padding:6px 8px;font-size:.688rem;font-weight:600;color:#6b7280;text-transform:uppercase;border-bottom:1px solid #e5e7eb}.student-engagement__table-row{display:grid;grid-template-columns:1fr .6fr .6fr 1fr;gap:8px;padding:8px;font-size:.813rem;color:#374151;border-radius:4px}.student-engagement__table-row--warning{background:#fef3c7}.student-engagement__problem-num{font-weight:600;color:#111827}.student-engagement__hint-count--high{font-weight:700;color:#92400e}.assignments-tab{display:flex;flex-direction:column;gap:0;padding:0;height:100%;background:#fff}.assignments-tab__header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:24px 24px 0}.assignments-tab__header-left{display:flex;flex-direction:column;gap:4px}.assignments-tab__title{font-size:1.5rem;font-weight:600;color:#111827;margin:0}.assignments-tab__subtitle{font-size:.875rem;color:#6b7280;margin:0}.assignments-tab__create-btn{display:flex;align-items:center;gap:8px;padding:10px 20px;background:#3b82f6;color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .15s ease}.assignments-tab__create-btn:hover{background:#2563eb}.assignments-tab__stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;padding:24px}@media (max-width: 1200px){.assignments-tab__stats{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.assignments-tab__stats{grid-template-columns:1fr}}.assignments-tab__stat{display:flex;align-items:center;gap:16px;padding:16px 20px;background:#fff;border:1px solid #e5e7eb;border-radius:12px}.assignments-tab__stat-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:#f3f4f6;border-radius:10px;color:#6b7280}.assignments-tab__stat--warning .assignments-tab__stat-icon{background:#fef3c7;color:#d97706}.assignments-tab__stat--success .assignments-tab__stat-icon{background:#d1fae5;color:#059669}.assignments-tab__stat-content{display:flex;flex-direction:column;gap:2px}.assignments-tab__stat-value{font-size:1.5rem;font-weight:600;color:#111827;line-height:1}.assignments-tab__stat-label{font-size:.75rem;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.assignments-tab__subtabs{display:flex;gap:4px;padding:4px;margin:0 24px;background:#f3f4f6;border-radius:10px;width:-moz-fit-content;width:fit-content}.assignments-tab__subtab{padding:8px 16px;font-size:.875rem;font-weight:500;color:#6b7280;background:transparent;border:none;border-radius:6px;cursor:pointer;transition:all .15s ease}.assignments-tab__subtab:hover{color:#374151}.assignments-tab__subtab--active{background:#fff;color:#111827;box-shadow:0 1px 2px #0000000d}.assignments-tab__subtab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;font-size:.6875rem;font-weight:600;color:#fff;background:#dc2626;border-radius:9px;margin-left:6px}.assignments-tab__content{flex:1;min-height:0;overflow:auto;padding:24px}.help-requests-tab{display:flex;flex-direction:column;gap:0;padding:0;height:100%;background:#fafaf9;font-family:DM Sans,-apple-system,BlinkMacSystemFont,sans-serif}.help-requests-tab__header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:32px 48px 0;max-width:1600px;margin:0 auto;width:100%}.help-requests-tab__header-left{display:flex;flex-direction:column;gap:6px}.help-requests-tab__title{font-size:28px;font-weight:700;color:#1a1a1a;margin:0;letter-spacing:-.02em}.help-requests-tab__subtitle{font-size:15px;color:#6b6b6b;margin:0}.help-requests-tab__connection-status{display:flex;align-items:center;gap:6px;padding:6px 12px;background:#f0fdf4;border-radius:20px;border:1px solid #BBF7D0}.help-requests-tab__connection-dot{width:8px;height:8px;border-radius:50%}.help-requests-tab__connection-dot--connected{background:#22c55e;animation:pulse-dot 2s ease-in-out infinite}.help-requests-tab__connection-dot--disconnected{background:#f59e0b;animation:pulse-dot 1s infinite}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.5}}.help-requests-tab__connection-text{font-size:13px;font-weight:500;color:#16a34a}.help-requests-tab__filters-wrapper{max-width:1600px;margin:0 auto;padding:24px 48px 0;width:100%}.help-requests-tab__filters{display:flex;gap:2px;padding:4px;background:#f0efed;border-radius:10px;width:-moz-fit-content;width:fit-content}.help-requests-tab__filter{display:flex;align-items:center;gap:6px;padding:8px 14px;font-size:14px;font-weight:500;color:#6b6b6b;background:transparent;border:none;border-radius:6px;cursor:pointer;transition:all .2s ease;font-family:inherit}.help-requests-tab__filter:hover{color:#1a1a1a}.help-requests-tab__filter--active{background:#fff;color:#1a1a1a;box-shadow:0 1px 3px #00000014}.help-requests-tab__filter-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;padding:2px 6px;font-size:12px;font-weight:600;background:#e8e7e5;border-radius:4px;color:#6b6b6b}.help-requests-tab__filter--active .help-requests-tab__filter-count{background:#fef3e7;color:#e67e22}.help-requests-tab__content{flex:1;min-height:0;overflow:auto;padding:24px 48px 48px;max-width:1600px;margin:0 auto;width:100%}.help-requests-tab__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:64px 24px;text-align:center}.help-requests-tab__empty-icon{color:#d1d5db;margin-bottom:16px}.help-requests-tab__empty-title{font-size:18px;font-weight:600;color:#1a1a1a;margin:0 0 8px}.help-requests-tab__empty-description{font-size:15px;color:#6b6b6b;margin:0;max-width:320px}.help-requests-tab__loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:64px 24px;gap:16px}.help-requests-tab__loading-spinner{width:32px;height:32px;border:3px solid #E8E7E5;border-top-color:#e67e22;border-radius:50%;animation:spin 1s linear infinite}.help-requests-tab__loading p{font-size:15px;color:#6b6b6b;margin:0}.help-requests-tab__error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:64px 24px;gap:12px;color:#dc2626}.help-requests-tab__error p{font-size:15px;margin:0}.help-requests-tab__error-retry{padding:8px 16px;font-size:14px;font-weight:500;color:#e67e22;background:transparent;border:1px solid #E67E22;border-radius:8px;cursor:pointer;transition:all .15s ease;font-family:inherit}.help-requests-tab__error-retry:hover{background:#fef3e7}.help-requests-tab__list{display:flex;flex-direction:column;gap:12px}.help-requests-tab__card{display:flex;flex-direction:column;gap:16px;padding:24px 28px;background:#fff;border:1px solid #F0EFED;border-radius:14px;box-shadow:0 1px 3px #0000000a;transition:all .2s ease}.help-requests-tab__card:hover{box-shadow:0 4px 12px #0000000f}.help-requests-tab__card-header{display:flex;align-items:flex-start;justify-content:space-between}.help-requests-tab__card-student{display:flex;align-items:center;gap:12px}.help-requests-tab__card-avatar{width:40px;height:40px;background:linear-gradient(135deg,#f5f4f2,#e8e7e5);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600;color:#6b6b6b}.help-requests-tab__card-avatar--urgent{background:linear-gradient(135deg,#fef3e7,#fde8d3);color:#e67e22}.help-requests-tab__card-student-info{display:flex;flex-direction:column;gap:3px}.help-requests-tab__card-student-row{display:flex;align-items:center;gap:8px}.help-requests-tab__card-name{font-size:15px;font-weight:600;color:#1a1a1a}.help-requests-tab__card-urgency{font-size:11px;font-weight:500;padding:3px 8px;background:#fef3e7;color:#d97706;border-radius:4px}.help-requests-tab__card-meta{display:flex;align-items:center;gap:6px;font-size:13px;color:#8c8c8c}.help-requests-tab__card-source{display:flex;align-items:center;gap:4px}.help-requests-tab__card-meta-dot{opacity:.5}.help-requests-tab__badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;font-size:12px;font-weight:500;border-radius:6px}.help-requests-tab__badge--pending{background:#fff7ed;color:#ea580c;border:1px solid #FED7AA}.help-requests-tab__badge--responded{background:#f0fdf4;color:#16a34a;border:1px solid #BBF7D0}.help-requests-tab__badge--rejected{background:#f5f4f2;color:#6b6b6b;border:1px solid #E8E7E5}.help-requests-tab__badge--expired{background:#fef2f2;color:#dc2626;border:1px solid #FECACA}.help-requests-tab__card-message{padding:14px 16px;background:#fafaf9;border-radius:10px;border-left:3px solid #E67E22}.help-requests-tab__card-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#8c8c8c;display:block;margin:0 0 6px}.help-requests-tab__card-text{font-size:15px;color:#1a1a1a;margin:0;line-height:1.5;font-style:italic}.help-requests-tab__card-context{font-size:12px;color:#8c8c8c;margin-top:8px;display:block}.help-requests-tab__card-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.help-requests-tab__card-view-btn{display:flex;align-items:center;gap:6px;padding:8px 12px;background:transparent;color:#6b6b6b;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease;font-family:inherit}.help-requests-tab__card-view-btn:hover{background:#f5f4f2;color:#1a1a1a}.help-requests-tab__card-action-buttons{display:flex;gap:8px}.help-requests-tab__card-reject-btn{padding:10px 18px;background:#fff;color:#6b6b6b;border:1px solid #E8E7E5;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;font-family:inherit}.help-requests-tab__card-reject-btn:hover{background:#f5f4f2;border-color:#d1d5db}.help-requests-tab__card-respond-btn{display:flex;align-items:center;gap:6px;padding:10px 20px;background:linear-gradient(135deg,#e67e22,#d97706);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;box-shadow:0 2px 8px #e67e224d;transition:all .2s ease;font-family:inherit}.help-requests-tab__card-respond-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #e67e2266}.help-requests-tab__card-response,.help-requests-tab__card-rejection{padding-top:14px;margin-top:14px;border-top:1px solid #F0EFED}.help-requests-tab__card-response-text{font-size:14px;color:#16a34a;margin:0;line-height:1.5}.help-requests-tab__card-rejection-text{font-size:14px;color:#6b6b6b;margin:4px 0 0;line-height:1.5;font-style:italic}.help-requests-tab__hint{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:24px;padding:12px;color:#8c8c8c;font-size:13px}.help-requests-tab__kbd{display:inline-flex;align-items:center;justify-content:center;padding:2px 6px;background:#f5f4f2;border:1px solid #E8E7E5;border-radius:4px;font-family:DM Mono,monospace;font-size:12px;font-weight:500;color:#6b6b6b;box-shadow:0 1px #e8e7e5}.help-requests-tab__dialog-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;padding:24px;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.help-requests-tab__dialog{width:100%;max-width:600px;max-height:calc(100vh - 48px);background:#fff;border-radius:16px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 20px 40px #00000026}.help-requests-tab__dialog-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #F0EFED}.help-requests-tab__dialog-header h3{font-size:18px;font-weight:600;color:#1a1a1a;margin:0}.help-requests-tab__dialog-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:none;border-radius:6px;color:#8c8c8c;cursor:pointer;transition:all .15s ease}.help-requests-tab__dialog-close:hover{background:#f5f4f2;color:#1a1a1a}.help-requests-tab__dialog-context{padding:20px 24px;background:#fafaf9;border-bottom:1px solid #F0EFED}.help-requests-tab__dialog-context-box{background:#fff;border:1px solid #E8E7E5;border-radius:8px;padding:14px 16px;max-height:180px;overflow-y:scroll;margin-top:8px}.help-requests-tab__dialog-context-box::-webkit-scrollbar{width:8px}.help-requests-tab__dialog-context-box::-webkit-scrollbar-track{background:#f5f4f2;border-radius:4px}.help-requests-tab__dialog-context-box::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:4px}.help-requests-tab__dialog-context-box::-webkit-scrollbar-thumb:hover{background:#9ca3af}.help-requests-tab__dialog-label{font-size:11px;font-weight:600;color:#8c8c8c;text-transform:uppercase;letter-spacing:.05em;margin:0 0 4px}.help-requests-tab__dialog-label:not(:first-child){margin-top:16px}.help-requests-tab__dialog-text{font-size:15px;color:#1a1a1a;margin:0;line-height:1.5}.help-requests-tab__dialog-context-text{font-size:14px;color:#4b5563;margin:0;line-height:1.6;max-height:300px;overflow-y:auto}.help-requests-tab__dialog-context-text .streamdown-container{font-size:14px;line-height:1.6}.help-requests-tab__dialog-context-text .streamdown-container p{margin:.5em 0}.help-requests-tab__dialog-context-text .streamdown-container p:first-child{margin-top:0}.help-requests-tab__dialog-context-text .streamdown-container p:last-child{margin-bottom:0}.help-requests-tab__dialog-form{display:flex;flex-direction:column;gap:20px;padding:24px;overflow-y:auto}.help-requests-tab__dialog-field{display:flex;flex-direction:column;gap:6px;position:relative}.help-requests-tab__dialog-field-label{display:flex;align-items:center;gap:6px;font-size:14px;font-weight:500;color:#1a1a1a}.help-requests-tab__dialog-required{color:#dc2626}.help-requests-tab__dialog-optional{font-size:12px;font-weight:400;color:#8c8c8c}.help-requests-tab__dialog-field-hint{font-size:13px;color:#6b6b6b;margin:0}.help-requests-tab__dialog-field textarea{padding:12px;font-size:15px;font-family:inherit;color:#1a1a1a;background:#fff;border:1px solid #E8E7E5;border-radius:8px;resize:vertical;transition:all .15s ease}.help-requests-tab__dialog-field textarea:focus{outline:none;border-color:#e67e22;box-shadow:0 0 0 3px #e67e221a}.help-requests-tab__dialog-field textarea:disabled{background:#fafaf9;cursor:not-allowed}.help-requests-tab__dialog-char-count{position:absolute;bottom:8px;right:12px;font-size:12px;color:#8c8c8c}.help-requests-tab__dialog-error{display:flex;align-items:center;gap:8px;padding:12px;background:#fef2f2;border-radius:8px;color:#dc2626;font-size:14px}.help-requests-tab__dialog-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:8px;border-top:1px solid #F0EFED;margin-top:4px}.help-requests-tab__dialog-cancel{padding:10px 20px;font-size:14px;font-weight:500;color:#6b6b6b;background:#fff;border:1px solid #E8E7E5;border-radius:8px;cursor:pointer;transition:all .15s ease;font-family:inherit}.help-requests-tab__dialog-cancel:hover{background:#f5f4f2}.help-requests-tab__dialog-cancel:disabled{opacity:.5;cursor:not-allowed}.help-requests-tab__dialog-submit{display:flex;align-items:center;gap:8px;padding:10px 20px;font-size:14px;font-weight:600;color:#fff;background:linear-gradient(135deg,#e67e22,#d97706);border:none;border-radius:8px;cursor:pointer;box-shadow:0 2px 8px #e67e224d;transition:all .15s ease;font-family:inherit}.help-requests-tab__dialog-submit:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #e67e2266}.help-requests-tab__dialog-submit:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.help-requests-tab__dialog-submit--reject{background:#6b6b6b;box-shadow:none}.help-requests-tab__dialog-submit--reject:hover:not(:disabled){background:#4b5563;box-shadow:0 2px 8px #00000026}.help-requests-tab__dialog-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin 1s linear infinite}@media (max-width: 1024px){.help-requests-tab__header,.help-requests-tab__content,.help-requests-tab__filters-wrapper{padding-left:24px;padding-right:24px}}@media (max-width: 768px){.help-requests-tab__header{flex-direction:column;align-items:flex-start;gap:12px;padding:24px 16px 0}.help-requests-tab__title{font-size:24px}.help-requests-tab__filters-wrapper{padding:24px 16px 0}.help-requests-tab__filters{width:100%;overflow-x:auto;scrollbar-width:none}.help-requests-tab__filters::-webkit-scrollbar{display:none}.help-requests-tab__filter{white-space:nowrap;flex-shrink:0}.help-requests-tab__content{padding:20px 16px}.help-requests-tab__dialog{max-width:100%;border-radius:16px 16px 0 0;margin-top:auto}.help-requests-tab__dialog-overlay{align-items:flex-end;padding:0}}@media (max-width: 480px){.help-requests-tab__card{padding:16px 18px}.help-requests-tab__card-actions{flex-direction:column;align-items:stretch}.help-requests-tab__card-action-buttons{justify-content:stretch}.help-requests-tab__card-reject-btn,.help-requests-tab__card-respond-btn{flex:1;justify-content:center}.help-requests-tab__dialog-form{padding:16px}}.session-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;width:100%;background-color:#fafaf9;gap:1rem}.session-loading__spinner{color:#78716c}.session-loading__title{color:#1c1917;font-weight:600;margin-top:1rem}.session-loading__subtitle{color:#78716c}:root{--session-brand-orange: hsl(25, 100%, 45%);--session-brand-gold: hsl(45, 89%, 61%)}.session-inactive{display:flex;align-items:center;justify-content:center;min-height:100vh;width:100%;background:linear-gradient(135deg,#fafafa,#fffaf5,#fffbf0);padding:1.5rem;position:relative;overflow:hidden}.session-inactive__bg-decoration{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none}.session-inactive__bg-decoration:before{content:"";position:absolute;top:-10rem;right:-10rem;width:30rem;height:30rem;background:var(--session-brand-orange);opacity:.15;border-radius:50%;filter:blur(80px)}.session-inactive__bg-decoration:after{content:"";position:absolute;bottom:-10rem;left:-10rem;width:35rem;height:35rem;background:var(--session-brand-gold);opacity:.1;border-radius:50%;filter:blur(80px)}.session-inactive__card{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:400px;width:100%;background:#ffffffe6;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:24px;padding:3rem 2rem 2rem;box-shadow:0 8px 32px #00000014,0 1px 2px #0000000d;border:1px solid rgba(255,255,255,.5);position:relative;z-index:1}.session-inactive__logo{width:72px;height:72px;margin-bottom:1.5rem;-o-object-fit:contain;object-fit:contain;border-radius:16px;box-shadow:0 4px 12px #0000001a}.session-inactive__title{color:#1f2937;font-weight:700;font-size:1.75rem;margin-bottom:.5rem;letter-spacing:-.02em}.session-inactive__subtitle{color:#6b7280;font-size:1rem;margin-bottom:2rem}.session-inactive__next-session{width:100%;background:linear-gradient(135deg,#fff7ed,#ffedd5);border:1px solid #fed7aa;border-radius:16px;padding:1.25rem;margin-bottom:1.5rem}.session-inactive__next-label{display:inline-flex;align-items:center;gap:.375rem;background:linear-gradient(135deg,#f97316,#ea580c);color:#fff;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:.375rem .75rem;border-radius:100px;margin-bottom:1rem}.session-inactive__next-label svg{opacity:.9}.session-inactive__next-details{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.session-inactive__next-row{display:flex;align-items:flex-start;gap:.75rem;text-align:left}.session-inactive__next-row svg{color:#f97316;flex-shrink:0;margin-top:2px}.session-inactive__next-text{display:flex;flex-direction:column;gap:.125rem}.session-inactive__next-day{font-weight:600;color:#1f2937;font-size:.9375rem}.session-inactive__next-date{color:#6b7280;font-size:.8125rem}.session-inactive__next-time{font-weight:600;color:#1f2937;font-size:.9375rem}.session-inactive__next-zone{color:#6b7280;font-size:.8125rem}.session-inactive__countdown{padding-top:1rem;border-top:1px solid #fed7aa}.session-inactive__countdown-text{color:#78716c;font-size:.875rem}.session-inactive__countdown-text strong{color:#ea580c;font-weight:600}.session-inactive__help{color:#9ca3af;font-size:.8125rem;margin-bottom:1rem}.session-inactive__logout{color:#9ca3af;text-transform:none;font-weight:500;font-size:.875rem;padding:.5rem 1rem;border-radius:8px;transition:all .2s ease}.session-inactive__logout:hover{background-color:#f3f4f6;color:#6b7280}.session-inactive__logout svg{opacity:.7}@media (max-width: 480px){.session-inactive{padding:1rem}.session-inactive__card{padding:2.5rem 1.5rem 1.5rem;border-radius:20px}.session-inactive__logo{width:64px;height:64px}.session-inactive__title{font-size:1.5rem}.session-inactive__next-session{padding:1rem}}.session-warning-modal .MuiBackdrop-root{background:linear-gradient(135deg,#fff7edcc,#fed7aa99);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.session-warning-modal__paper{background:#fffffff2!important;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:24px!important;border:1px solid rgba(255,255,255,.5);box-shadow:0 8px 32px #00000014,0 1px 2px #0000000d!important;overflow:visible!important;max-width:400px}.session-warning-modal__icon-wrapper{position:absolute;top:-32px;left:50%;transform:translate(-50%);width:64px;height:64px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f97316,#ea580c);border-radius:50%;box-shadow:0 8px 24px #f9731659}.session-warning-modal__icon-wrapper svg{color:#fff}.session-warning-modal__content{display:flex;flex-direction:column;align-items:center;text-align:center;padding:3rem 2rem 1.5rem!important}.session-warning-modal__title{font-size:1.5rem;font-weight:700;color:#1f2937;margin:0 0 .5rem;letter-spacing:-.02em}.session-warning-modal__subtitle{font-size:1rem;color:#6b7280;margin:0 0 1.5rem}.session-warning-modal__time-card{width:100%;background:linear-gradient(135deg,#fff7ed,#ffedd5);border:1px solid #fed7aa;border-radius:16px;padding:1.25rem;margin-bottom:1.25rem}.session-warning-modal__time-label{display:inline-flex;align-items:center;gap:.375rem;background:linear-gradient(135deg,#f97316,#ea580c);color:#fff;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:.375rem .75rem;border-radius:100px;margin-bottom:1rem}.session-warning-modal__time-value{font-size:2rem;font-weight:700;color:#ea580c;line-height:1;margin-bottom:.25rem}.session-warning-modal__time-unit{font-size:.875rem;color:#78716c;font-weight:500}.session-warning-modal__progress-wrapper{width:100%;padding-top:1rem;border-top:1px solid #fed7aa}.session-warning-modal__progress{height:6px!important;border-radius:3px!important;background-color:#fef3c7!important}.session-warning-modal__progress .MuiLinearProgress-bar{background:linear-gradient(90deg,#f97316,#ea580c)!important;border-radius:3px}.session-warning-modal__message{font-size:.9375rem;color:#6b7280;line-height:1.6;max-width:320px}.session-warning-modal__actions{display:flex;justify-content:center;padding:0 2rem 2rem!important}.session-warning-modal__dismiss-btn{min-width:160px;background:linear-gradient(135deg,#f97316,#ea580c)!important;box-shadow:0 4px 14px -4px #f9731666!important;border-radius:12px!important;text-transform:none!important;font-weight:600!important;font-size:.9375rem!important;padding:.875rem 1.75rem!important;transition:all .2s ease!important}.session-warning-modal__dismiss-btn:hover{background:linear-gradient(135deg,#ea580c,#c2410c)!important;box-shadow:0 6px 20px -4px #f9731680!important;transform:translateY(-1px)}@media (max-width: 480px){.session-warning-modal__paper{margin:1rem!important;border-radius:20px!important}.session-warning-modal__icon-wrapper{width:56px;height:56px;top:-28px}.session-warning-modal__content{padding:2.5rem 1.5rem 1.25rem!important}.session-warning-modal__title{font-size:1.25rem}.session-warning-modal__time-card{padding:1rem}.session-warning-modal__time-value{font-size:1.75rem}.session-warning-modal__actions{padding:0 1.5rem 1.5rem!important}.session-warning-modal__dismiss-btn{width:100%}}.edit-schedule-modal .MuiDialog-paper{border-radius:12px}.edit-schedule-modal__title{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid #e7e5e4}.edit-schedule-modal__title h6{font-weight:600;color:#1c1917}.edit-schedule-modal__content{padding:1.5rem!important}.edit-schedule-modal__error-list{margin:0;padding-left:1.25rem}.edit-schedule-modal__error-list li{margin-bottom:.25rem}.edit-schedule-modal__error-list li:last-child{margin-bottom:0}.edit-schedule-modal__slots{display:flex;flex-direction:column;gap:1rem;margin-bottom:1rem}.edit-schedule-modal__empty{padding:2rem;text-align:center;background-color:#fafaf9;border-radius:8px;border:1px dashed #d6d3d1}.edit-schedule-modal__slot{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;padding:.75rem;background-color:#fafaf9;border-radius:8px;border:1px solid #e7e5e4}.edit-schedule-modal__slot:hover{border-color:#d6d3d1}.edit-schedule-modal__day-select{min-width:140px}.edit-schedule-modal__time-input{width:150px}.edit-schedule-modal__remove-btn{margin-left:auto}.edit-schedule-modal__divider{display:none}.edit-schedule-modal__add-btn{margin-top:.5rem}.edit-schedule-modal__actions{padding:1rem 1.5rem;border-top:1px solid #e7e5e4}@media (max-width: 600px){.edit-schedule-modal__slot{flex-direction:column;align-items:stretch}.edit-schedule-modal__day-select,.edit-schedule-modal__time-input{width:100%}.edit-schedule-modal__remove-btn{align-self:flex-end}}.extension-prompt-modal__paper{border-radius:16px}.extension-prompt-modal__title{padding-bottom:.5rem}.extension-prompt-modal__title-content{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding-top:1rem}.extension-prompt-modal__icon{color:#f59e0b}.extension-prompt-modal__content{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:1rem 1.5rem}.extension-prompt-modal__participants{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background-color:#f5f5f4;border-radius:8px;margin:.5rem 0}.extension-prompt-modal__participants svg{color:#78716c}.extension-prompt-modal__question{font-weight:500;margin-top:.5rem}.extension-prompt-modal__divider{width:100%;margin:1rem 0}.extension-prompt-modal__warning{width:100%}.extension-prompt-modal__countdown{width:100%;margin-top:.5rem}.extension-prompt-modal__time{margin-bottom:.5rem;font-weight:500}.extension-prompt-modal__progress{height:8px;border-radius:4px}.extension-prompt-modal__actions{display:flex;justify-content:center;gap:1rem;padding:1rem 1.5rem 1.5rem}.extension-prompt-modal__extend-btn,.extension-prompt-modal__close-btn{min-width:150px}@media (max-width: 480px){.extension-prompt-modal__actions{flex-direction:column}.extension-prompt-modal__extend-btn,.extension-prompt-modal__close-btn{width:100%}}.start-session-modal .MuiDialog-paper{border-radius:12px}.start-session-modal__title{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid #e7e5e4}.start-session-modal__title-content{display:flex;align-items:center;gap:.75rem}.start-session-modal__title-content svg{color:#16a34a}.start-session-modal__title h6{font-weight:600;color:#1c1917}.start-session-modal__content{padding:1.5rem!important}.start-session-modal__presets{margin-top:1rem;margin-bottom:1rem}.start-session-modal__toggle-group{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.start-session-modal__toggle-group .MuiToggleButtonGroup-grouped{border-radius:8px!important;border:1px solid #d6d3d1!important;margin:0!important}.start-session-modal__toggle-btn{padding:.5rem 1rem!important;text-transform:none!important;font-weight:500!important}.start-session-modal__toggle-btn.Mui-selected{background-color:#16a34a!important;color:#fff!important;border-color:#16a34a!important}.start-session-modal__toggle-btn.Mui-selected:hover{background-color:#15803d!important}.start-session-modal__custom{margin-top:1rem;max-width:200px}.start-session-modal__error{margin-top:1rem}.start-session-modal__summary{margin-top:1.5rem;padding:.75rem 1rem;background-color:#f0fdf4;border-radius:8px;border:1px solid #bbf7d0}.start-session-modal__summary strong{color:#16a34a}.start-session-modal__actions{padding:1rem 1.5rem;border-top:1px solid #e7e5e4}@media (max-width: 600px){.start-session-modal__toggle-group{flex-direction:column}.start-session-modal__toggle-btn{width:100%}.start-session-modal__custom{max-width:100%}}.session-schedule-tab{display:flex;flex-direction:column;height:100%;background:linear-gradient(180deg,#f8fafc,#f1f5f9);position:relative}.session-schedule-tab--loading{padding:1.5rem;gap:1rem}.session-schedule-tab__header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;background:#fff;border-bottom:1px solid #e2e8f0;flex-wrap:wrap;gap:1rem;box-shadow:0 1px 3px #0000000a}.session-schedule-tab__title{font-size:1.25rem;font-weight:700;color:#0f172a;margin:0;letter-spacing:-.025em;background:linear-gradient(135deg,#f97316,#ea580c);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.session-schedule-tab__actions{display:flex;gap:.75rem}.session-schedule-tab__actions button{border-radius:10px;font-weight:600;text-transform:none;box-shadow:0 1px 2px #0000000a}.session-schedule-tab__actions .MuiButton-contained{background:linear-gradient(135deg,#f97316,#ea580c);border:none}.session-schedule-tab__actions .MuiButton-contained:hover{background:linear-gradient(135deg,#ea580c,#c2410c);box-shadow:0 4px 12px #f973164d}.session-schedule-tab__error,.session-schedule-tab__update-error{margin:0 1.5rem;border-radius:12px}.session-schedule-tab__live-session{margin:1.5rem 1.5rem 0;border:1px solid #fed7aa;border-radius:16px;padding:1.25rem 1.5rem;background:linear-gradient(135deg,#fffbeb,#fff7ed);box-shadow:0 1px 3px #f9731614;transition:all .2s ease}.session-schedule-tab__live-session:hover{box-shadow:0 4px 16px #f973161f}.session-schedule-tab__live-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.75rem;margin-bottom:.75rem}.session-schedule-tab__live-title{display:flex;align-items:center;gap:.625rem}.session-schedule-tab__icon-wrapper{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:#ffedd5;border-radius:10px;flex-shrink:0}.session-schedule-tab__icon-wrapper svg{color:#f97316}.session-schedule-tab__live-title h6{font-size:1.125rem;font-weight:700;color:#0f172a;letter-spacing:-.01em;margin:0}.session-schedule-tab__status-chip{margin-left:.375rem;font-weight:600;border-radius:100px}.session-schedule-tab__status-chip.MuiChip-colorSuccess{background:linear-gradient(135deg,#f97316,#ea580c);color:#fff}.session-schedule-tab__participants{display:flex;align-items:center;gap:.5rem;padding:.375rem .875rem;font-size:.875rem;font-weight:600;color:#ea580c;background:#fff;border-radius:100px;border:1px solid #fed7aa}.session-schedule-tab__participants svg{color:#f97316}.session-schedule-tab__session-info{display:flex;align-items:center;gap:1rem;margin-bottom:1rem;flex-wrap:wrap}.session-schedule-tab__controls{display:flex;gap:.75rem;flex-wrap:wrap}.session-schedule-tab__controls button{border-radius:10px;font-weight:600;text-transform:none;box-shadow:0 1px 2px #0000000d;transition:all .2s ease}.session-schedule-tab__controls button:hover:not(:disabled){transform:translateY(-1px)}.session-schedule-tab__controls .MuiButton-containedSuccess{background:linear-gradient(135deg,#f97316,#ea580c);border:none}.session-schedule-tab__controls .MuiButton-containedSuccess:hover:not(:disabled){background:linear-gradient(135deg,#ea580c,#c2410c);box-shadow:0 4px 12px #f9731659}.session-schedule-tab__controls .MuiButton-outlinedPrimary{color:#f97316;border-color:#fdba74;background:#fff}.session-schedule-tab__controls .MuiButton-outlinedPrimary:hover:not(:disabled){background:#fff7ed;border-color:#f97316;box-shadow:0 4px 12px #f9731626}.session-schedule-tab__content{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;padding:1.5rem}@media (max-width: 1024px){.session-schedule-tab__content{grid-template-columns:1fr}}.session-schedule-tab__schedule-card,.session-schedule-tab__upcoming-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;overflow:hidden;box-shadow:0 1px 3px #0000000a;transition:all .2s ease}.session-schedule-tab__schedule-card:hover,.session-schedule-tab__upcoming-card:hover{box-shadow:0 4px 12px #0000000f;border-color:#fdba74}.session-schedule-tab__card-header{display:flex;align-items:center;gap:.625rem;padding:1rem 1.25rem;border-bottom:1px solid #e2e8f0;background:linear-gradient(135deg,#fff7ed,#ffedd5)}.session-schedule-tab__icon-wrapper--card{width:32px;height:32px;background:#fff;border-radius:8px;box-shadow:0 1px 2px #0000000d}.session-schedule-tab__card-header h6{font-size:1rem;font-weight:700;color:#0f172a;letter-spacing:-.01em;margin:0}.session-schedule-tab__empty{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:3rem 2rem;text-align:center}.session-schedule-tab__empty svg{color:#fdba74;background:#fff7ed;padding:1rem;border-radius:50%}.session-schedule-tab__schedule-card .MuiTableCell-head{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#64748b;background-color:transparent;border-bottom:1px solid #e2e8f0}.session-schedule-tab__schedule-card .MuiTableCell-body{font-size:.875rem;font-weight:500;color:#1e293b}.session-schedule-tab__schedule-card .MuiTableRow-root:hover{background-color:#fff7ed}.session-schedule-tab__schedule-card .MuiChip-root{font-weight:600;border-radius:100px}.session-schedule-tab__schedule-card .MuiChip-colorSuccess{background:linear-gradient(135deg,#f97316,#ea580c);color:#fff}.session-schedule-tab__schedule-card .MuiSwitch-switchBase.Mui-checked{color:#f97316}.session-schedule-tab__schedule-card .MuiSwitch-switchBase.Mui-checked+.MuiSwitch-track{background-color:#fdba74}.session-schedule-tab__upcoming-list{display:flex;flex-direction:column}.session-schedule-tab__upcoming-item{display:flex;justify-content:space-between;align-items:center;padding:.875rem 1.25rem;border-bottom:1px solid #f1f5f9;transition:background .15s ease}.session-schedule-tab__upcoming-item:hover{background-color:#fff7ed}.session-schedule-tab__upcoming-item:last-child{border-bottom:none}.session-schedule-tab__upcoming-date{display:flex;flex-direction:column;gap:.125rem}.session-schedule-tab__upcoming-date h6{font-size:.875rem;font-weight:700;color:#0f172a;margin:0}.session-schedule-tab__upcoming-time{display:inline-flex;align-items:center;padding:.25rem .75rem;font-size:.75rem;font-weight:600;color:#ea580c;background:linear-gradient(135deg,#fff7ed,#ffedd5);border-radius:100px;border:1px solid #fed7aa;white-space:nowrap}.session-schedule-tab__loading-overlay{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;background-color:#fffc;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);border-radius:16px;z-index:10}.session-schedule-tab__loading-overlay .MuiCircularProgress-root{color:#f97316}@media (max-width: 768px){.session-schedule-tab__header{flex-direction:column;align-items:flex-start;padding:1rem}.session-schedule-tab__actions{width:100%;justify-content:flex-end}.session-schedule-tab__live-session{margin:1rem;padding:1rem;border-radius:12px}.session-schedule-tab__content{padding:1rem}.session-schedule-tab__schedule-card,.session-schedule-tab__upcoming-card{border-radius:12px}.session-schedule-tab__controls{width:100%}.session-schedule-tab__controls button{flex:1}}@media (max-width: 480px){.session-schedule-tab__live-header{flex-direction:column;align-items:flex-start}.session-schedule-tab__participants{width:100%;justify-content:center}}.teacher-dashboard{display:flex;flex-direction:column;height:100vh;background-color:#fafaf9}.teacher-dashboard--auth-required{display:flex;align-items:center;justify-content:center}.teacher-dashboard__auth-message{text-align:center;padding:2rem}.teacher-dashboard__auth-message h2{margin-bottom:.5rem;color:#1c1917}.teacher-dashboard__auth-message p{color:#78716c}.teacher-dashboard__header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.5rem;background:#fff;border-bottom:1px solid #e7e5e4;flex-shrink:0}.teacher-dashboard__header-left{display:flex;align-items:center;gap:1rem}.teacher-dashboard__title{font-size:1.125rem;font-weight:600;color:#1c1917;margin:0}.teacher-dashboard__student-count{font-size:.8125rem;color:#78716c;padding:.25rem .75rem;background:#f5f5f4;border-radius:1rem}.teacher-dashboard__tabs{display:flex;gap:.25rem;background:#f5f5f4;padding:.25rem;border-radius:.5rem}.teacher-dashboard__tab{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;color:#78716c;background:transparent;border:none;border-radius:.375rem;cursor:pointer;transition:all .15s ease}.teacher-dashboard__tab:hover{color:#44403c;background:#ffffff80}.teacher-dashboard__tab--active{color:#1c1917;background:#fff;box-shadow:0 1px 2px #0000000d}.teacher-dashboard__tab svg{flex-shrink:0}.teacher-dashboard__tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;font-size:.6875rem;font-weight:600;color:#fff;background:#dc2626;border-radius:9px;margin-left:4px}.teacher-dashboard__tab{position:relative}.teacher-dashboard__tab .teacher-dashboard__tab-badge--overlay{position:absolute;top:-4px;right:-4px;margin-left:0}.teacher-dashboard__header-right{display:flex;align-items:center;gap:.5rem}.teacher-dashboard__refresh-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.875rem;color:#57534e;background:#fff;border:1px solid #e7e5e4;border-radius:.375rem;cursor:pointer;transition:all .15s ease}.teacher-dashboard__refresh-btn:hover:not(:disabled){background:#fafaf9;border-color:#d6d3d1}.teacher-dashboard__refresh-btn:disabled{opacity:.5;cursor:not-allowed}.teacher-dashboard__refresh-btn .spinning{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.teacher-dashboard__error{display:flex;align-items:center;justify-content:center;gap:1rem;padding:.75rem 1.5rem;background:#fef2f2;color:#dc2626;font-size:.875rem;flex-shrink:0}.teacher-dashboard__error button{padding:.25rem .75rem;font-size:.75rem;color:#dc2626;background:#fff;border:1px solid currentColor;border-radius:.25rem;cursor:pointer}.teacher-dashboard__error button:hover{background:#fef2f2}.teacher-dashboard__content{flex:1;overflow:hidden;min-height:0;background:transparent}.teacher-dashboard__content--assignments{padding:0!important;background:#fff!important;border:none!important;box-shadow:none!important;outline:none!important}.teacher-dashboard__tab-content{height:100%;overflow:auto;background:transparent}.teacher-dashboard__tab-content--assignments{padding:0!important;margin:0!important;background:#fff!important;border-radius:0!important;border:none!important;box-shadow:none!important;outline:none!important}.teacher-dashboard__tab-content--assignments .assignments-tab{border-radius:0!important;margin:0!important;width:100%!important;border:none!important;box-shadow:none!important;outline:none!important}.teacher-dashboard__tab-content--two-panel{display:grid;grid-template-columns:320px 1fr;overflow:hidden}.teacher-dashboard__tab-content--full-width{padding:0;background:#f9fafb}.teacher-dashboard__tab-content--full-width .user-management-page{min-height:100%;height:auto}.teacher-dashboard__roster{background:#fff;border-right:1px solid #e7e5e4;overflow:hidden;display:flex;flex-direction:column}.teacher-dashboard__detail{background:#fff;overflow:auto}.teacher-dashboard__empty-detail{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#a8a29e;text-align:center;padding:2rem}.teacher-dashboard__empty-detail svg{margin-bottom:1rem;opacity:.5}.teacher-dashboard__empty-detail h3{margin:0 0 .5rem;font-size:1.125rem;font-weight:600;color:#57534e}.teacher-dashboard__empty-detail p{margin:0;font-size:.875rem}.teacher-dashboard__empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;padding:3rem;text-align:center;background:#fff;color:#78716c}.teacher-dashboard__empty-state svg{color:#d6d3d1;margin-bottom:1.5rem}.teacher-dashboard__empty-state h2{margin:0 0 .75rem;font-size:1.5rem;font-weight:600;color:#1c1917}.teacher-dashboard__empty-state>p{margin:0 0 2rem;font-size:1rem;max-width:400px;line-height:1.5}.teacher-dashboard__empty-state-tips{background:#fafaf9;border:1px solid #e7e5e4;border-radius:12px;padding:1.5rem 2rem;text-align:left;max-width:360px}.teacher-dashboard__empty-state-tips h4{margin:0 0 .75rem;font-size:.875rem;font-weight:600;color:#44403c}.teacher-dashboard__empty-state-tips ul{margin:0;padding-left:1.25rem;list-style-type:disc}.teacher-dashboard__empty-state-tips li{font-size:.875rem;color:#57534e;margin-bottom:.5rem;line-height:1.4}.teacher-dashboard__empty-state-tips li:last-child{margin-bottom:0}.teacher-dashboard__chat{background:#fff;border-right:1px solid #e7e5e4;overflow:hidden;display:flex;flex-direction:column}.teacher-dashboard__pending-review{background:#fff;overflow:hidden;display:flex;flex-direction:column;height:100%;min-height:0}.teacher-dashboard__plan{background:#fff;overflow:hidden;display:flex;flex-direction:column;width:320px}.teacher-dashboard__tab-content--two-panel:has(.teacher-dashboard__chat){grid-template-columns:1fr 320px}@media (max-width: 1600px){.teacher-dashboard__header-left,.teacher-dashboard__header-right{flex:1;min-width:0}.teacher-dashboard__header-right{justify-content:flex-end}.teacher-dashboard__student-count{display:none}.teacher-dashboard__tab{padding:.5rem .625rem;gap:.375rem;white-space:nowrap;flex-shrink:0}.teacher-dashboard__tab:not(.teacher-dashboard__tab--active) span:not(.teacher-dashboard__tab-badge){display:none}.teacher-dashboard__tab:not(.teacher-dashboard__tab--active) .teacher-dashboard__tab-badge{position:absolute;top:-4px;right:-4px;margin-left:0;min-width:16px;height:16px;font-size:.625rem}.teacher-dashboard__tab--active{padding:.5rem .75rem}.teacher-dashboard__tabs{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.teacher-dashboard__tabs::-webkit-scrollbar{display:none}}@media (max-width: 1200px){.teacher-dashboard__header{padding:.75rem 1rem}.teacher-dashboard__title{font-size:1rem}}@media (max-width: 1024px){.teacher-dashboard__tab-content--two-panel{grid-template-columns:280px 1fr}.teacher-dashboard__plan{width:280px}.teacher-dashboard__tab-content--two-panel:has(.teacher-dashboard__chat){grid-template-columns:1fr 280px}}@media (max-width: 900px){.teacher-dashboard__header{flex-wrap:wrap;gap:.5rem}.teacher-dashboard__header-left{flex:1;min-width:150px}.teacher-dashboard__tabs{order:3;width:100%;flex-wrap:nowrap;justify-content:flex-start}.teacher-dashboard__header-right{flex-shrink:0}.teacher-dashboard__tab-badge{min-width:16px;height:16px;font-size:.625rem}}@media (max-width: 768px){.teacher-dashboard{margin-left:0;width:100%}.teacher-dashboard__header{flex-direction:column;gap:.75rem;padding:.75rem 1rem}.teacher-dashboard__header-left{width:100%;justify-content:center}.teacher-dashboard__tabs{width:100%;justify-content:center;order:unset;overflow-x:auto}.teacher-dashboard__tab{flex:1;justify-content:center;padding:.5rem;min-width:44px}.teacher-dashboard__tab span:not(.teacher-dashboard__tab-badge){display:none}.teacher-dashboard__tab--active span:not(.teacher-dashboard__tab-badge){display:none}.teacher-dashboard__tab .teacher-dashboard__tab-badge{position:absolute;top:-4px;right:-4px;margin-left:0;min-width:14px;height:14px;font-size:.5625rem;padding:0 3px}.teacher-dashboard__header-right{width:100%;justify-content:center}.teacher-dashboard__refresh-btn span{display:none}.teacher-dashboard__refresh-btn{padding:.5rem}.teacher-dashboard__tab-content--two-panel{grid-template-columns:1fr;grid-template-rows:auto 1fr}.teacher-dashboard__roster{max-height:40vh;border-right:none;border-bottom:1px solid #e7e5e4}.teacher-dashboard__chat{border-right:none;border-bottom:1px solid #e7e5e4}.teacher-dashboard__plan{width:100%}.teacher-dashboard__tab-content--two-panel:has(.teacher-dashboard__chat){grid-template-columns:1fr}}@media (max-width: 480px){.teacher-dashboard__header{padding:.5rem .75rem}.teacher-dashboard__title{font-size:.9375rem}.teacher-dashboard__student-count{font-size:.75rem;padding:.125rem .5rem}.teacher-dashboard__tabs{padding:.1875rem;gap:.125rem}.teacher-dashboard__tab{padding:.375rem;min-width:40px}.teacher-dashboard__tab svg{width:16px;height:16px}}:root{--neutral-50: #f8fafc;--neutral-100: #f1f5f9;--neutral-200: #e2e8f0;--neutral-300: #cbd5e1;--neutral-400: #94a3b8;--neutral-500: #64748b;--neutral-600: #475569;--neutral-700: #334155;--neutral-800: #1e293b;--neutral-900: #0f172a;--primary-50: #eff6ff;--primary-100: #dbeafe;--primary-200: #bfdbfe;--primary-300: #93c5fd;--primary-400: #60a5fa;--primary-500: #3b82f6;--primary-600: #2563eb;--primary-700: #1d4ed8;--primary-800: #1e40af;--primary-900: #1e3a8a;--success-50: #ecfdf5;--success-100: #d1fae5;--success-200: #a7f3d0;--success-300: #6ee7b7;--success-400: #34d399;--success-500: #10b981;--success-600: #059669;--success-700: #047857;--success-800: #065f46;--success-900: #064e3b;--warning-50: #fffbeb;--warning-100: #fef3c7;--warning-200: #fde68a;--warning-300: #fcd34d;--warning-400: #fbbf24;--warning-500: #f59e0b;--warning-600: #d97706;--warning-700: #b45309;--warning-800: #92400e;--warning-900: #78350f;--error-50: #fef2f2;--error-100: #fee2e2;--error-200: #fecaca;--error-300: #fca5a5;--error-400: #f87171;--error-500: #ef4444;--error-600: #dc2626;--error-700: #b91c1c;--error-800: #991b1b;--error-900: #7f1d1d;--color-text-primary: var(--neutral-900);--color-text-secondary: var(--neutral-600);--color-text-tertiary: var(--neutral-500);--color-text-inverse: var(--neutral-50);--color-bg-primary: var(--neutral-50);--color-bg-secondary: var(--neutral-100);--color-bg-tertiary: var(--neutral-200);--color-bg-inverse: var(--neutral-900);--color-border-primary: var(--neutral-200);--color-border-secondary: var(--neutral-300);--color-border-focus: var(--primary-500);--gradient-primary: linear-gradient(135deg, var(--primary-600) 0%, var(--primary-800) 100%);--gradient-success: linear-gradient(135deg, var(--success-500) 0%, var(--success-600) 100%);--gradient-warning: linear-gradient(135deg, var(--warning-500) 0%, var(--warning-600) 100%);--gradient-error: linear-gradient(135deg, var(--error-500) 0%, var(--error-600) 100%);--gradient-hero: linear-gradient(135deg, var(--primary-600) 0%, var(--primary-800) 0%, #f093fb 100%);--shadow-xs: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-sm: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / .25);--shadow-inner: inset 0 2px 4px 0 rgb(0 0 0 / .05);--space-px: 1px;--space-0: 0;--space-0-5: .125rem;--space-1: .25rem;--space-1-5: .375rem;--space-2: .5rem;--space-2-5: .625rem;--space-3: .75rem;--space-3-5: .875rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-7: 1.75rem;--space-8: 2rem;--space-9: 2.25rem;--space-10: 2.5rem;--space-11: 2.75rem;--space-12: 3rem;--space-14: 3.5rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--space-28: 7rem;--space-32: 8rem;--font-family-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;--font-family-serif: ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;--font-family-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--text-5xl: 3rem;--text-6xl: 3.75rem;--text-7xl: 4.5rem;--text-8xl: 6rem;--text-9xl: 8rem;--font-weight-thin: 100;--font-weight-extralight: 200;--font-weight-light: 300;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-extrabold: 800;--font-weight-black: 900;--line-height-none: 1;--line-height-tight: 1.25;--line-height-snug: 1.375;--line-height-normal: 1.5;--line-height-relaxed: 1.625;--line-height-loose: 2;--letter-spacing-tighter: -.05em;--letter-spacing-tight: -.025em;--letter-spacing-normal: 0em;--letter-spacing-wide: .025em;--letter-spacing-wider: .05em;--letter-spacing-widest: .1em;--radius-none: 0;--radius-sm: .125rem;--radius-base: .25rem;--radius-md: .375rem;--radius-lg: .5rem;--radius-xl: .75rem;--radius-2xl: 1rem;--radius-3xl: 1.5rem;--radius-full: 9999px;--transition-duration-fast: .15s;--transition-duration-normal: .3s;--transition-duration-slow: .5s;--transition-timing-ease-in: cubic-bezier(.4, 0, 1, 1);--transition-timing-ease-out: cubic-bezier(0, 0, .2, 1);--transition-timing-ease-in-out: cubic-bezier(.4, 0, .2, 1);--transition-fast: var(--transition-duration-fast) var(--transition-timing-ease-in-out);--transition-normal: var(--transition-duration-normal) var(--transition-timing-ease-in-out);--transition-slow: var(--transition-duration-slow) var(--transition-timing-ease-in-out);--breakpoint-sm: 640px;--breakpoint-md: 768px;--breakpoint-lg: 1024px;--breakpoint-xl: 1280px;--breakpoint-2xl: 1536px;--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070;--z-toast: 1080}@media (prefers-color-scheme: dark){:root{--color-text-primary: var(--neutral-100);--color-text-secondary: var(--neutral-400);--color-text-tertiary: var(--neutral-500);--color-text-inverse: var(--neutral-900);--color-bg-primary: var(--neutral-900);--color-bg-secondary: var(--neutral-800);--color-bg-tertiary: var(--neutral-700);--color-bg-inverse: var(--neutral-100);--color-border-primary: var(--neutral-700);--color-border-secondary: var(--neutral-600)}}.theme-light{--color-text-primary: var(--neutral-900);--color-text-secondary: var(--neutral-600);--color-text-tertiary: var(--neutral-500);--color-text-inverse: var(--neutral-50);--color-bg-primary: var(--neutral-50);--color-bg-secondary: var(--neutral-100);--color-bg-tertiary: var(--neutral-200);--color-bg-inverse: var(--neutral-900);--color-border-primary: var(--neutral-200);--color-border-secondary: var(--neutral-300)}.theme-dark{--color-text-primary: var(--neutral-100);--color-text-secondary: var(--neutral-400);--color-text-tertiary: var(--neutral-500);--color-text-inverse: var(--neutral-900);--color-bg-primary: var(--neutral-900);--color-bg-secondary: var(--neutral-800);--color-bg-tertiary: var(--neutral-700);--color-bg-inverse: var(--neutral-100);--color-border-primary: var(--neutral-700);--color-border-secondary: var(--neutral-600)}.hidden,.dark .dark\:hidden{display:none!important}.dark .dark\:block{display:block!important}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;scroll-behavior:smooth;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;overflow-x:hidden}body{font-family:var(--font-family-sans);font-size:var(--text-base);line-height:var(--line-height-normal);color:var(--color-text-primary);background-color:var(--color-bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-feature-settings:"kern" 1;overflow-x:hidden}#root{min-height:100vh;min-height:100dvh;min-height:-webkit-fill-available;width:100%;position:relative;overflow-x:hidden}@supports (padding-bottom: env(safe-area-inset-bottom)){#root{padding-bottom:env(safe-area-inset-bottom,0px)}}h1,h2,h3,h4,h5,h6{color:var(--color-text-primary);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);letter-spacing:var(--letter-spacing-tight)}h1{font-size:var(--text-4xl)}h2{font-size:var(--text-3xl)}h3{font-size:var(--text-2xl)}h4{font-size:var(--text-xl)}h5{font-size:var(--text-lg)}h6{font-size:var(--text-base)}p{color:var(--color-text-secondary);line-height:var(--line-height-relaxed);margin-bottom:var(--space-4)}p:last-child{margin-bottom:0}small{font-size:var(--text-sm);color:var(--color-text-tertiary)}strong,b{font-weight:var(--font-weight-semibold)}em,i{font-style:italic}code{font-family:var(--font-family-mono);font-size:.9em;background-color:var(--color-bg-secondary);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);border:1px solid var(--color-border-primary)}pre{font-family:var(--font-family-mono);background-color:var(--color-bg-secondary);padding:var(--space-4);border-radius:var(--radius-lg);border:1px solid var(--color-border-primary);overflow-x:auto;white-space:pre-wrap;word-wrap:break-word}pre code{background:none;border:none;padding:0}a{color:var(--primary-600);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--primary-700);text-decoration:underline}a:focus{outline:2px solid var(--color-border-focus);outline-offset:var(--space-1);border-radius:var(--radius-sm)}button{font-family:inherit;font-size:inherit;line-height:inherit;color:inherit;background:none;border:none;cursor:pointer;transition:all var(--transition-fast);border-radius:var(--radius-md)}button:disabled{cursor:not-allowed;opacity:.6}input,textarea,select{font-family:inherit;font-size:var(--text-base);line-height:var(--line-height-normal);color:var(--color-text-primary);background-color:var(--color-bg-primary);border:1px solid var(--color-border-primary);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);transition:all var(--transition-fast);width:100%}input:focus,textarea:focus,select:focus{outline:none}input:disabled,textarea:disabled,select:disabled{background-color:var(--color-bg-secondary);color:var(--color-text-tertiary);cursor:not-allowed}textarea{resize:vertical;min-height:100px}ul,ol{padding-left:var(--space-6);margin-bottom:var(--space-4)}li{margin-bottom:var(--space-1);color:var(--color-text-secondary);line-height:var(--line-height-relaxed)}img,video{max-width:100%;height:auto;border-radius:var(--radius-md)}table{width:100%;border-collapse:collapse;border-spacing:0;margin-bottom:var(--space-6)}th,td{padding:var(--space-3) var(--space-4);text-align:left;border-bottom:1px solid var(--color-border-primary)}th{font-weight:var(--font-weight-semibold);color:var(--color-text-primary);background-color:var(--color-bg-secondary)}tr:hover{background-color:var(--color-bg-secondary)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.visually-hidden{clip:rect(0 0 0 0);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}:focus-visible{outline:2px solid var(--color-border-focus);outline-offset:2px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media print{*,*:before,*:after{background:transparent!important;color:#000!important;box-shadow:none!important;text-shadow:none!important}a,a:visited{text-decoration:underline}pre,blockquote{border:1px solid #999;page-break-inside:avoid}h1,h2,h3,h4,h5,h6{page-break-after:avoid}img{page-break-inside:avoid}p,h2,h3{orphans:3;widows:3}}html{-webkit-user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}p,span,div[contenteditable],textarea,input{-webkit-user-select:text;-moz-user-select:text;user-select:text}*:focus{outline:none!important;-webkit-tap-highlight-color:transparent!important}@keyframes slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.animate-slide-up{animation:slideUp .3s ease-out forwards}@font-face{font-display:block;font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2) format("woff2"),url(/assets/KaTeX_AMS-Regular-DMm9YOAa.woff) format("woff"),url(/assets/KaTeX_AMS-Regular-DRggAlZN.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff) format("woff"),url(/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff) format("woff"),url(/assets/KaTeX_Fraktur-Regular-CB_wures.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Main-Bold-Cx986IdX.woff2) format("woff2"),url(/assets/KaTeX_Main-Bold-Jm3AIy58.woff) format("woff"),url(/assets/KaTeX_Main-Bold-waoOVXN0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2) format("woff2"),url(/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff) format("woff"),url(/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2) format("woff2"),url(/assets/KaTeX_Main-Italic-BMLOBm91.woff) format("woff"),url(/assets/KaTeX_Main-Italic-3WenGoN9.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Main-Regular-B22Nviop.woff2) format("woff2"),url(/assets/KaTeX_Main-Regular-Dr94JaBh.woff) format("woff"),url(/assets/KaTeX_Main-Regular-ypZvNtVU.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2) format("woff2"),url(/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff) format("woff"),url(/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Math-Italic-t53AETM-.woff2) format("woff2"),url(/assets/KaTeX_Math-Italic-DA0__PXp.woff) format("woff"),url(/assets/KaTeX_Math-Italic-flOr_0UB.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:700;src:url(/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff) format("woff"),url(/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:italic;font-weight:400;src:url(/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff) format("woff"),url(/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:400;src:url(/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff) format("woff"),url(/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Script-Regular-D3wIWfF6.woff2) format("woff2"),url(/assets/KaTeX_Script-Regular-D5yQViql.woff) format("woff"),url(/assets/KaTeX_Script-Regular-C5JkGWo-.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2) format("woff2"),url(/assets/KaTeX_Size1-Regular-C195tn64.woff) format("woff"),url(/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2) format("woff2"),url(/assets/KaTeX_Size2-Regular-oD1tc_U0.woff) format("woff"),url(/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAA4oAA4AAAAAHbQAAA3TAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAABmAAgRQIDgmcDBEICo1oijYBNgIkA14LMgAEIAWJAAeBHAyBHBvbGiMRdnO0IkRRkiYDgr9KsJ1NUAf2kILNxgUmgqIgq1P89vcbIcmsQbRps3vCcXdYOKSWEPEKgZgQkprQQsxIXUgq0DqpGKmIvrgkeVGtEQD9DzAO29fM9jYhxZEsL2FeURH2JN4MIcTdO049NCVdxQ/w9NrSYFEBKTDKpLKfNkCGDc1RwjZLQcm3vqJ2UW9Xfa3tgAHz6ivp6vgC2yD4/6352ndnN0X0TL7seypkjZlMsjmZnf0Mm5Q+JykRWQBKCVCVPbARPXWyQtb5VgLB6Biq7/Uixcj2WGqdI8tGSgkuRG+t910GKP2D7AQH0DB9FMDW/obJZ8giFI3Wg8Cvevz0M+5m0rTh7XDBlvo9Y4vm13EXmfttwI4mBo1EG15fxJhUiCLbiiyCf/ZA6MFAhg3pGIZGdGIVjtPn6UcMk9A/UUr9PhoNsCENw1APAq0gpH73e+M+0ueyHbabc3vkbcdtzcf/fiy+NxQEjf9ud/ELBHAXJ0nk4z+MXH2Ev/kWyV4k7SkvpPc9Qr38F6RPWnM9cN6DJ0AdD1BhtgABtmoRoFCvPsBAumNm6soZG2Gk5GyVTo2sJncSyp0jQTYoR6WDvTwaaEcHsxHfvuWhHA3a6bN7twRKtcGok6NsCi7jYRrM2jExsUFMxMQYuJbMhuWNOumEJy9hi29Dmg5zMp/A5+hhPG19j1vBrq8JTLr8ki5VLPmG/PynJHVul440bxg5xuymHUFPBshC+nA9I1FmwbRBTNHAcik3Oae0cxKoI3MOriM42UrPe51nsaGxJ+WfXubAsP84aabUlQSJ1IiE0iPETLUU4CATgfXSCSpuRFRmCGbO+wSpAnzaeaCYW1VNEysRtuXCEL1kUFUbbtMv3Tilt/1c11jt3Q5bbMa84cpWipp8Elw3MZhOHsOlwwVUQM3lAR35JiFQbaYCRnMF2lxAWoOg2gyoIV4PouX8HytNIfLhqpJtXB4vjiViUI8IJ7bkC4ikkQvKksnOTKICwnqWSZ9YS5f0WCxmpgjbIq7EJcM4aI2nmhLNY2JIUgOjXZFWBHb+x5oh6cwb0Tv1ackHdKi0I9OO2wE9aogIOn540CCCziyhN+IaejtgAONKznHlHyutPrHGwCx9S6B8kfS4Mfi4Eyv7OU730bT1SCBjt834cXsf43zVjPUqqJjgrjeGnBxSG4aYAKFuVbeCfkDIjAqMb6yLNIbCuvXhMH2/+k2vkNpkORhR59N1CkzoOENvneIosjYmuTxlhUzaGEJQ/iWqx4dmwpmKjrwTiTGTCVozNAYqk/zXOndWxuWSmJkQpJw3pK5KX6QrLt5LATMqpmPAQhkhK6PUjzHUn7E0gHE0kPE0iKkolgkUx9SZmVAdDgpffdyJKg3k7VmzYGCwVXGz/tXmkOIp+vcWs+EMuhhvN0h9uhfzWJziBQmCREGSIFmQIkgVpAnSBRmC//6hkLZwaVhwxlrJSOdqlFtOYxlau9F2QN5Y98xmIAsiM1HVp2VFX+DHHGg6Ecjh3vmqtidX3qHI2qycTk/iwxSt5UzTmEP92ZBnEWTk4Mx8Mpl78ZDokxg/KWb+Q0QkvdKVmq3TMW+RXEgrsziSAfNXFMhDc60N5N9jQzjfO0kBKpUZl0ZmwJ41j/B9Hz6wmRaJB84niNmQrzp9eSlQCDDzazGDdVi3P36VZQ+Jy4f9UBNp+3zTjqI4abaFAm+GShVaXlsGdF3FYzZcDI6cori4kMxUECl9IjJZpzkvitAoxKue+90pDMvcKRxLl53TmOKCmV/xRolNKSqqUxc6LStOETmFOiLZZptlZepcKiAzteG8PEdpnQpbOMNcMsR4RR2Bs0cKFEvSmIjAFcnarqwUL4lDhHmnVkwu1IwshbiCcgvOheZuYyOteufZZwlcTlLgnZ3o/WcYdzZHW/WGaqaVfmTZ1aWCceJjkbZqsfbkOtcFlUZM/jy+hXHDbaUobWqqXaeWobbLO99yG5N3U4wxco0rQGGcOLASFMXeJoham8M+/x6O2WywK2l4HGbq1CoUyC/IZikQhdq3SiuNrvAEj0AVu9x2x3lp/xWzahaxidezFVtdcb5uEnzyl0ZmYiuKI0exvCd4Xc9CV1KB0db00z92wDPde0kukbvZIWN6jUWFTmPIC/Y4UPCm8UfDTFZpZNon1qLFTkBhxzB+FjQRA2Q/YRJT8pQigslMaUpFyAG8TMlXigiqmAZX4xgijKjRlGpLE0GdplRfCaJo0JQaSxNBk6ZmMzcya0FmrcisDdn0Q3HI2sWSppYigmlM1XT/kLQZSNpMJG0WkjYbSZuDpM1F0uYhFc1HxU4m1QJjDK6iL0S5uSj5rgXc3RejEigtcRBtqYPQsiTskmO5vosV+q4VGIKbOkDg0jtRrq+Em1YloaTFar3EGr1EUC8R0kus1Uus00usL97ABr2BjXoDm/QGNhuWtMVBKOwg/i78lT7hBsAvDmwHc/ao3vmUbBmhjeYySZNWvGkfZAgISDSaDo1SVpzGDsAEkF8B+gEapViUoZgUWXcRIGFZNm6gWbAKk0bp0k1MHG9fLYtV4iS2SmLEQFARzRcnf9PUS0LVn05/J9MiRRBU3v2IrvW974v4N00L7ZMk0wXP1409CHo/an8zTRHD3eSJ6m8D4YMkZNl3M79sqeuAsr/m3f+8/yl7A50aiAEJgeBeMWzu7ui9UfUBCe2TIqZIoOd/3/udRBOQidQZUERzb2/VwZN1H/Sju82ew2H2Wfr6qvfVf3hqwDvAIpkQVFy4B9Pe9e4/XvPeceu7h3dvO56iJPf0+A6cqA2ip18ER+iFgggiuOkvj24bby0N9j2UHIkgqIt+sVgfodC4YghLSMjSZbH0VR/6dMDrYJeKHilKTemt6v6kvzvn3/RrdWtr0GoN/xL+Sex/cPYLUpepx9cz/D46UPU5KXgAQa+NDps1v6J3xP1i2HtaDB0M9aX2deA7SYff//+gUCovMmIK/qfsFcOk+4Y5ZN97XlG6zebqtMbKgeRFi51vnxTQYBUik2rS/Cn6PC8ADR8FGxsRPB82dzfND90gIcshOcYUkfjherBz53odpm6TP8txlwOZ71xmfHHOvq053qFF/MRlS3jP0ELudrf2OeN8DHvp6ZceLe8qKYvWz/7yp0u4dKPfli3CYq0O13Ih71mylJ80tOi10On8wi+F4+LWgDPeJ30msSQt9/vkmHq9/Lvo2b461mP801v3W4xTcs6CbvF9UDdrSt+A8OUbpSh55qAUFXWznBBfdeJ8a4d7ugT5tvxUza3h9m4H7ptTqiG4z0g5dc0X29OcGlhpGFMpQo9ytTS+NViZpNdvU4kWx+LKxNY10kQ1yqGXrhe4/1nvP7E+nd5A92TtaRplbHSqoIdOqtRWti+fkB5/n1+/VvCmz12pG1kpQWsfi1ftlBobm0bpngs16CHkbIwdLnParxtTV3QYRlfJ0KFskH7pdN/YDn+yRuSd7sNH3aO0DYPggk6uWuXrfOc+fa3VTxFVvKaNxHsiHmsXyCLIE5yuOeN3/Jdf8HBL/5M6shjyhxHx9BjB1O0+4NLOnjLLSxwO7ukN4jMbOIcD879KLSi6Pk61Oqm2377n8079PXEEQ7cy7OKEC9nbpet118fxweTafpt69x/Bt8UqGzNQt7aelpc44dn5cqhwf71+qKp/Zf/+a0zcizOUWpl/iBcSXip0pplkatCchoH5c5aUM8I7/dWxAej8WicPL1URFZ9BDJelUwEwTkGqUhgSlydVes95YdXvhh9Gfz/aeFWvgVb4tuLbcv4+wLdutVZv/cUonwBD/6eDlE0aSiKK/uoH3+J1wDE/jMVqY2ysGufN84oIXB0sPzy8ollX/LegY74DgJXJR57sn+VGza0x3DnuIgABFM15LmajjjsNlYj+JEZGbuRYcAMOWxFkPN2w6Wd46xo4gVWQR/X4lyI/R6K/YK0110GzudPRW7Y+UOBGTfNNzHeYT0fiH0taunBpq9HEW8OKSaBGj21L0MqenEmNRWBAWDWAk4CpNoEZJ2tTaPFgbQYj8HxtFilErs3BTRwT8uO1NXQaWfIotchmPkAF5mMBAliEmZiOGVgCG9LgRzpscMAOOwowlT3JhusdazXGSC/hxR3UlmWVwWHpOIKheqONvjyhSiTHIkVUco5bnji8m//zL7PKaT1Vl5I6UE609f+gkr6MZKVyKc7zJRmCahLsdlyA5fdQkRSan9LgnnLEyGSkaKJCJog0wAgvepWBt80+1yKln1bMVtCljfNWDueKLsWwaEbBSfSPTEmVRsUcYYMnEjcjeyCZzBXK9E9BYBXLKjOSpUDR+nEV3TFSUdQaz+ot98QxgXwx0GQ+EEUAKB2qZPkQQ0GqFD8UPFMqyaCHM24BZmSGic9EYMagKizOw9Hz50DMrDLrqqLkTAhplMictiCAx5S3BIUQdeJeLnBy2CNtMfz6cV4u8XKoFZQesbf9YZiIERiHjaNodDW6LgcirX/mPnJIkBGDUpTBhSa0EIr38D5hCIszhCM8URGBqImoWjpvpt1ebu/v3Gl3qJfMnNM+9V+kiRFyROTPHQWOcs1dNW94/ukKMPZBvDi55i5CttdeJz84DLngLqjcdwEZ87bFFR8CIG35OAkDVN6VRDZ7aq67NteYqZ2lpT8oYB2CytoBd6VuAx4WgiAsnuj3WohG+LugzXiQRDeM3XYXlULv4dp5VFYC) format("woff2"),url(/assets/KaTeX_Size3-Regular-CTq5MqoE.woff) format("woff"),url(/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2) format("woff2"),url(/assets/KaTeX_Size4-Regular-BF-4gkZK.woff) format("woff"),url(/assets/KaTeX_Size4-Regular-DWFBv043.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2) format("woff2"),url(/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff) format("woff"),url(/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf) format("truetype")}.katex{font: 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;text-indent:0;text-rendering:auto}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.16.25"}.katex .katex-mathml{clip:rect(1px,1px,1px,1px);border:0;height:1px;overflow:hidden;padding:0;position:absolute;width:1px}.katex .katex-html>.newline{display:block}.katex .base{position:relative;white-space:nowrap;width:-moz-min-content;width:min-content}.katex .base,.katex .strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;display:inline-table;table-layout:fixed}.katex .vlist-r{display:table-row}.katex .vlist{display:table-cell;position:relative;vertical-align:bottom}.katex .vlist>span{display:block;height:0;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{overflow:hidden;width:0}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{display:table-cell;font-size:1px;min-width:2px;vertical-align:bottom;width:2px}.katex .vbox{align-items:baseline;display:inline-flex;flex-direction:column}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{display:inline-flex;flex-direction:row}.katex .thinbox{max-width:0;width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .clap,.katex .llap,.katex .rlap{position:relative;width:0}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.katex .sqrt>.root{margin-left:.2777777778em;margin-right:-.5555555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.1666666667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.6666666667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.4566666667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.1466666667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.7142857143em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.8571428571em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.1428571429em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.2857142857em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.4285714286em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.7142857143em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.0571428571em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.4685714286em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.9628571429em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.5542857143em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.7777777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.8888888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.1111111111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.3044444444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.7644444444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.5833333333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.7283333333em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.0733333333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.4861111111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.4402777778em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.7277777778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.2893518519em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.4050925926em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.462962963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.5208333333em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.5787037037em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.2002314815em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.4398148148em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.2410800386em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.2892960463em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.337512054em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.3857280617em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.4339440694em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.4821600771em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.5785920926em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.6943105111em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.8331726133em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.1996142719em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.2009646302em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.2411575563em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.2813504823em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.3215434084em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.3617363344em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.4019292605em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.4823151125em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.578778135em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.6945337621em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.8336012862em}.katex .fontsize-ensurer.reset-size11.size11,.katex .sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{display:inline-block;width:.12em}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{display:inline-block;min-width:1px}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;fill-rule:nonzero;fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:block;height:inherit;position:absolute;width:100%}.katex svg path{stroke:none}.katex img{border-style:none;max-height:none;max-width:none;min-height:0;min-width:0}.katex .stretchy{display:block;overflow:hidden;position:relative;width:100%}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{overflow:hidden;position:relative;width:100%}.katex .halfarrow-left{left:0;overflow:hidden;position:absolute;width:50.2%}.katex .halfarrow-right{overflow:hidden;position:absolute;right:0;width:50.2%}.katex .brace-left{left:0;overflow:hidden;position:absolute;width:25.1%}.katex .brace-center{left:25%;overflow:hidden;position:absolute;width:50%}.katex .brace-right{overflow:hidden;position:absolute;right:0;width:25.1%}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{border:.04em solid;box-sizing:border-box}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{border-right:.049em solid;border-top:.049em solid;box-sizing:border-box;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{display:inline-block;position:absolute;right:calc(50% + .3em);text-align:left}.katex .cd-label-right{display:inline-block;left:calc(50% + .3em);position:absolute;text-align:right}.katex-display{display:block;margin:1em 0;text-align:center}.katex-display>.katex{display:block;text-align:center;white-space:nowrap}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{padding-left:2em;text-align:left}body{counter-reset:katexEqnNo mmlEqnNo}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }.\!container{width:100%!important}.container{width:100%}@media (min-width: 640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media (min-width: 768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media (min-width: 1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media (min-width: 1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media (min-width: 1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.\!visible{visibility:visible!important}.visible{visibility:visible}.invisible{visibility:hidden}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{top:0;right:0;bottom:0;left:0}.-right-1{right:-.25rem}.-right-3{right:-.75rem}.-top-1{top:-.25rem}.-top-3{top:-.75rem}.bottom-0{bottom:0}.bottom-6{bottom:1.5rem}.left-0{left:0}.left-1\/2{left:50%}.left-3{left:.75rem}.left-4{left:1rem}.right-0{right:0}.right-2\.5{right:.625rem}.right-4{right:1rem}.right-6{right:1.5rem}.top-0{top:0}.top-1\/2{top:50%}.top-10{top:2.5rem}.top-16{top:4rem}.top-4{top:1rem}.isolate{isolation:isolate}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.z-\[10000\]{z-index:10000}.z-\[1000\]{z-index:1000}.z-\[60\]{z-index:60}.mx-4{margin-left:1rem;margin-right:1rem}.mx-auto{margin-left:auto;margin-right:auto}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-2\.5{margin-bottom:.625rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-2{margin-left:.5rem}.ml-3{margin-left:.75rem}.ml-4{margin-left:1rem}.ml-auto{margin-left:auto}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-12{margin-top:3rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-8{margin-top:2rem}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-10{height:2.5rem}.h-12{height:3rem}.h-16{height:4rem}.h-2{height:.5rem}.h-20{height:5rem}.h-24{height:6rem}.h-3{height:.75rem}.h-32{height:8rem}.h-4{height:1rem}.h-40{height:10rem}.h-48{height:12rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-64{height:16rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-96{height:24rem}.h-full{height:100%}.max-h-48{max-height:12rem}.max-h-64{max-height:16rem}.max-h-96{max-height:24rem}.max-h-\[52vh\]{max-height:52vh}.max-h-\[90vh\]{max-height:90vh}.min-h-\[44px\]{min-height:44px}.min-h-screen{min-height:100vh}.w-1\/3{width:33.333333%}.w-1\/4{width:25%}.w-10{width:2.5rem}.w-12{width:3rem}.w-16{width:4rem}.w-2{width:.5rem}.w-2\/3{width:66.666667%}.w-20{width:5rem}.w-28{width:7rem}.w-4{width:1rem}.w-48{width:12rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-64{width:16rem}.w-7{width:1.75rem}.w-8{width:2rem}.w-80{width:20rem}.w-9{width:2.25rem}.w-full{width:100%}.min-w-0{min-width:0px}.min-w-\[200px\]{min-width:200px}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-6xl{max-width:72rem}.max-w-7xl{max-width:80rem}.max-w-\[300px\]{max-width:300px}.max-w-\[400px\]{max-width:400px}.max-w-\[480px\]{max-width:480px}.max-w-\[78\%\]{max-width:78%}.max-w-md{max-width:28rem}.max-w-sm{max-width:24rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.flex-shrink-0{flex-shrink:0}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.animate-\[fadeIn_0\.15s_ease-out\]{animation:fadeIn .15s ease-out}.animate-\[fadeIn_0\.2s_ease-out\]{animation:fadeIn .2s ease-out}.animate-\[slideUp_0\.3s_ease-out\]{animation:slideUp .3s ease-out}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-pointer{cursor:pointer}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.75rem * var(--tw-space-x-reverse));margin-left:calc(.75rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-gray-200>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(229 231 235 / var(--tw-divide-opacity, 1))}.divide-neutral-100>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(241 245 249 / var(--tw-divide-opacity, 1))}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.rounded-b-lg{border-bottom-right-radius:.5rem;border-bottom-left-radius:.5rem}.rounded-t-2xl{border-top-left-radius:1rem;border-top-right-radius:1rem}.border{border-width:1px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-t{border-top-width:1px}.border-none{border-style:none}.border-\[\#FFE8C0\]{--tw-border-opacity: 1;border-color:rgb(255 232 192 / var(--tw-border-opacity, 1))}.border-amber-200{--tw-border-opacity: 1;border-color:rgb(253 230 138 / var(--tw-border-opacity, 1))}.border-amber-300{--tw-border-opacity: 1;border-color:rgb(252 211 77 / var(--tw-border-opacity, 1))}.border-blue-200{--tw-border-opacity: 1;border-color:rgb(191 219 254 / var(--tw-border-opacity, 1))}.border-blue-600{--tw-border-opacity: 1;border-color:rgb(37 99 235 / var(--tw-border-opacity, 1))}.border-emerald-200{--tw-border-opacity: 1;border-color:rgb(167 243 208 / var(--tw-border-opacity, 1))}.border-gray-100{--tw-border-opacity: 1;border-color:rgb(243 244 246 / var(--tw-border-opacity, 1))}.border-gray-200{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.border-gray-300{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.border-neutral-200{--tw-border-opacity: 1;border-color:rgb(226 232 240 / var(--tw-border-opacity, 1))}.border-neutral-300{--tw-border-opacity: 1;border-color:rgb(203 213 225 / var(--tw-border-opacity, 1))}.border-orange-300{--tw-border-opacity: 1;border-color:rgb(253 186 116 / var(--tw-border-opacity, 1))}.border-primary-500{--tw-border-opacity: 1;border-color:rgb(229 120 0 / var(--tw-border-opacity, 1))}.border-red-200{--tw-border-opacity: 1;border-color:rgb(254 202 202 / var(--tw-border-opacity, 1))}.border-slate-100{--tw-border-opacity: 1;border-color:rgb(241 245 249 / var(--tw-border-opacity, 1))}.border-t-amber-500{--tw-border-opacity: 1;border-top-color:rgb(245 158 11 / var(--tw-border-opacity, 1))}.border-t-blue-500{--tw-border-opacity: 1;border-top-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.border-t-orange-500{--tw-border-opacity: 1;border-top-color:rgb(249 115 22 / var(--tw-border-opacity, 1))}.bg-\[\#007AFF\]{--tw-bg-opacity: 1;background-color:rgb(0 122 255 / var(--tw-bg-opacity, 1))}.bg-\[\#D1FAE5\]{--tw-bg-opacity: 1;background-color:rgb(209 250 229 / var(--tw-bg-opacity, 1))}.bg-\[\#DBEAFE\]{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.bg-\[\#E57800\]{--tw-bg-opacity: 1;background-color:rgb(229 120 0 / var(--tw-bg-opacity, 1))}.bg-\[\#FFF5EB\]{--tw-bg-opacity: 1;background-color:rgb(255 245 235 / var(--tw-bg-opacity, 1))}.bg-amber-100{--tw-bg-opacity: 1;background-color:rgb(254 243 199 / var(--tw-bg-opacity, 1))}.bg-amber-50{--tw-bg-opacity: 1;background-color:rgb(255 251 235 / var(--tw-bg-opacity, 1))}.bg-amber-600{--tw-bg-opacity: 1;background-color:rgb(217 119 6 / var(--tw-bg-opacity, 1))}.bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity, 1))}.bg-black\/30{background-color:#0000004d}.bg-black\/50{background-color:#00000080}.bg-blue-100{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.bg-blue-50{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.bg-blue-500{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.bg-blue-500\/90{background-color:#3b82f6e6}.bg-blue-600{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.bg-emerald-100{--tw-bg-opacity: 1;background-color:rgb(209 250 229 / var(--tw-bg-opacity, 1))}.bg-emerald-50{--tw-bg-opacity: 1;background-color:rgb(236 253 245 / var(--tw-bg-opacity, 1))}.bg-emerald-500{--tw-bg-opacity: 1;background-color:rgb(16 185 129 / var(--tw-bg-opacity, 1))}.bg-emerald-600{--tw-bg-opacity: 1;background-color:rgb(5 150 105 / var(--tw-bg-opacity, 1))}.bg-error{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity, 1))}.bg-error-50{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.bg-gray-100{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.bg-gray-200{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.bg-gray-300{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity, 1))}.bg-gray-50{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.bg-green-100{--tw-bg-opacity: 1;background-color:rgb(220 252 231 / var(--tw-bg-opacity, 1))}.bg-green-50{--tw-bg-opacity: 1;background-color:rgb(240 253 244 / var(--tw-bg-opacity, 1))}.bg-green-500{--tw-bg-opacity: 1;background-color:rgb(34 197 94 / var(--tw-bg-opacity, 1))}.bg-green-600{--tw-bg-opacity: 1;background-color:rgb(22 163 74 / var(--tw-bg-opacity, 1))}.bg-indigo-50{--tw-bg-opacity: 1;background-color:rgb(238 242 255 / var(--tw-bg-opacity, 1))}.bg-indigo-600{--tw-bg-opacity: 1;background-color:rgb(79 70 229 / var(--tw-bg-opacity, 1))}.bg-info-100{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.bg-info-50{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.bg-neutral-100{--tw-bg-opacity: 1;background-color:rgb(241 245 249 / var(--tw-bg-opacity, 1))}.bg-neutral-50{--tw-bg-opacity: 1;background-color:rgb(248 250 252 / var(--tw-bg-opacity, 1))}.bg-orange-100{--tw-bg-opacity: 1;background-color:rgb(255 237 213 / var(--tw-bg-opacity, 1))}.bg-orange-50{--tw-bg-opacity: 1;background-color:rgb(255 247 237 / var(--tw-bg-opacity, 1))}.bg-orange-500{--tw-bg-opacity: 1;background-color:rgb(249 115 22 / var(--tw-bg-opacity, 1))}.bg-primary{--tw-bg-opacity: 1;background-color:rgb(229 120 0 / var(--tw-bg-opacity, 1))}.bg-primary-100{--tw-bg-opacity: 1;background-color:rgb(255 228 204 / var(--tw-bg-opacity, 1))}.bg-primary-50{--tw-bg-opacity: 1;background-color:rgb(255 245 235 / var(--tw-bg-opacity, 1))}.bg-purple-100{--tw-bg-opacity: 1;background-color:rgb(243 232 255 / var(--tw-bg-opacity, 1))}.bg-purple-50{--tw-bg-opacity: 1;background-color:rgb(250 245 255 / var(--tw-bg-opacity, 1))}.bg-red-100{--tw-bg-opacity: 1;background-color:rgb(254 226 226 / var(--tw-bg-opacity, 1))}.bg-red-50{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.bg-red-500{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity, 1))}.bg-red-500\/80{background-color:#ef4444cc}.bg-secondary-50{--tw-bg-opacity: 1;background-color:rgb(255 252 240 / var(--tw-bg-opacity, 1))}.bg-sky-500\/10{background-color:#0ea5e91a}.bg-slate-200{--tw-bg-opacity: 1;background-color:rgb(226 232 240 / var(--tw-bg-opacity, 1))}.bg-slate-50{--tw-bg-opacity: 1;background-color:rgb(248 250 252 / var(--tw-bg-opacity, 1))}.bg-success{--tw-bg-opacity: 1;background-color:rgb(16 185 129 / var(--tw-bg-opacity, 1))}.bg-success-100{--tw-bg-opacity: 1;background-color:rgb(209 250 229 / var(--tw-bg-opacity, 1))}.bg-success-50{--tw-bg-opacity: 1;background-color:rgb(236 253 245 / var(--tw-bg-opacity, 1))}.bg-transparent{background-color:transparent}.bg-warning{--tw-bg-opacity: 1;background-color:rgb(245 158 11 / var(--tw-bg-opacity, 1))}.bg-warning-100{--tw-bg-opacity: 1;background-color:rgb(254 243 199 / var(--tw-bg-opacity, 1))}.bg-warning-50{--tw-bg-opacity: 1;background-color:rgb(255 251 235 / var(--tw-bg-opacity, 1))}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-white\/20{background-color:#fff3}.bg-white\/25{background-color:#ffffff40}.bg-white\/80{background-color:#fffc}.bg-yellow-100{--tw-bg-opacity: 1;background-color:rgb(254 249 195 / var(--tw-bg-opacity, 1))}.bg-yellow-50{--tw-bg-opacity: 1;background-color:rgb(254 252 232 / var(--tw-bg-opacity, 1))}.bg-yellow-500{--tw-bg-opacity: 1;background-color:rgb(234 179 8 / var(--tw-bg-opacity, 1))}.bg-yellow-600{--tw-bg-opacity: 1;background-color:rgb(202 138 4 / var(--tw-bg-opacity, 1))}.bg-opacity-50{--tw-bg-opacity: .5}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.from-\[\#E57800\]{--tw-gradient-from: #E57800 var(--tw-gradient-from-position);--tw-gradient-to: rgb(229 120 0 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-emerald-50{--tw-gradient-from: #ecfdf5 var(--tw-gradient-from-position);--tw-gradient-to: rgb(236 253 245 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-orange-400{--tw-gradient-from: #fb923c var(--tw-gradient-from-position);--tw-gradient-to: rgb(251 146 60 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-primary-500{--tw-gradient-from: #E57800 var(--tw-gradient-from-position);--tw-gradient-to: rgb(229 120 0 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-white{--tw-gradient-from: #fff var(--tw-gradient-from-position);--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.to-\[\#F4C542\]{--tw-gradient-to: #F4C542 var(--tw-gradient-to-position)}.to-pink-500{--tw-gradient-to: #ec4899 var(--tw-gradient-to-position)}.to-primary-400{--tw-gradient-to: #FF9933 var(--tw-gradient-to-position)}.to-slate-50{--tw-gradient-to: #f8fafc var(--tw-gradient-to-position)}.to-white{--tw-gradient-to: #fff var(--tw-gradient-to-position)}.fill-gray-800{fill:#1f2937}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-12{padding-left:3rem;padding-right:3rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-4{padding-bottom:1rem}.pb-5{padding-bottom:1.25rem}.pb-6{padding-bottom:1.5rem}.pl-10{padding-left:2.5rem}.pr-4{padding-right:1rem}.pt-0{padding-top:0}.pt-0\.5{padding-top:.125rem}.pt-1{padding-top:.25rem}.pt-2{padding-top:.5rem}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}.pt-8{padding-top:2rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-5xl{font-size:3rem;line-height:1}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.capitalize{text-transform:capitalize}.italic{font-style:italic}.leading-none{line-height:1}.leading-tight{line-height:1.25}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.tracking-wider{letter-spacing:.05em}.text-\[\#059669\]{--tw-text-opacity: 1;color:rgb(5 150 105 / var(--tw-text-opacity, 1))}.text-\[\#2563EB\]{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.text-\[\#B85C00\]{--tw-text-opacity: 1;color:rgb(184 92 0 / var(--tw-text-opacity, 1))}.text-\[\#CC6C00\]{--tw-text-opacity: 1;color:rgb(204 108 0 / var(--tw-text-opacity, 1))}.text-\[\#E57800\]{--tw-text-opacity: 1;color:rgb(229 120 0 / var(--tw-text-opacity, 1))}.text-amber-500{--tw-text-opacity: 1;color:rgb(245 158 11 / var(--tw-text-opacity, 1))}.text-amber-600{--tw-text-opacity: 1;color:rgb(217 119 6 / var(--tw-text-opacity, 1))}.text-amber-800{--tw-text-opacity: 1;color:rgb(146 64 14 / var(--tw-text-opacity, 1))}.text-blue-500{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.text-blue-600{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.text-blue-700{--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity, 1))}.text-blue-800{--tw-text-opacity: 1;color:rgb(30 64 175 / var(--tw-text-opacity, 1))}.text-emerald-500{--tw-text-opacity: 1;color:rgb(16 185 129 / var(--tw-text-opacity, 1))}.text-emerald-600{--tw-text-opacity: 1;color:rgb(5 150 105 / var(--tw-text-opacity, 1))}.text-emerald-700{--tw-text-opacity: 1;color:rgb(4 120 87 / var(--tw-text-opacity, 1))}.text-emerald-900{--tw-text-opacity: 1;color:rgb(6 78 59 / var(--tw-text-opacity, 1))}.text-emerald-900\/80{color:#064e3bcc}.text-emerald-950{--tw-text-opacity: 1;color:rgb(2 44 34 / var(--tw-text-opacity, 1))}.text-error-600{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.text-error-700{--tw-text-opacity: 1;color:rgb(185 28 28 / var(--tw-text-opacity, 1))}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.text-gray-800{--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.text-gray-900{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.text-green-300{--tw-text-opacity: 1;color:rgb(134 239 172 / var(--tw-text-opacity, 1))}.text-green-600{--tw-text-opacity: 1;color:rgb(22 163 74 / var(--tw-text-opacity, 1))}.text-green-700{--tw-text-opacity: 1;color:rgb(21 128 61 / var(--tw-text-opacity, 1))}.text-green-800{--tw-text-opacity: 1;color:rgb(22 101 52 / var(--tw-text-opacity, 1))}.text-indigo-600{--tw-text-opacity: 1;color:rgb(79 70 229 / var(--tw-text-opacity, 1))}.text-indigo-700{--tw-text-opacity: 1;color:rgb(67 56 202 / var(--tw-text-opacity, 1))}.text-info-600{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.text-info-700{--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity, 1))}.text-muted{--tw-text-opacity: 1;color:rgb(241 245 249 / var(--tw-text-opacity, 1))}.text-neutral-400{--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.text-neutral-500{--tw-text-opacity: 1;color:rgb(100 116 139 / var(--tw-text-opacity, 1))}.text-neutral-600{--tw-text-opacity: 1;color:rgb(71 85 105 / var(--tw-text-opacity, 1))}.text-neutral-700{--tw-text-opacity: 1;color:rgb(51 65 85 / var(--tw-text-opacity, 1))}.text-neutral-800{--tw-text-opacity: 1;color:rgb(30 41 59 / var(--tw-text-opacity, 1))}.text-neutral-900{--tw-text-opacity: 1;color:rgb(15 23 42 / var(--tw-text-opacity, 1))}.text-orange-500{--tw-text-opacity: 1;color:rgb(249 115 22 / var(--tw-text-opacity, 1))}.text-orange-600{--tw-text-opacity: 1;color:rgb(234 88 12 / var(--tw-text-opacity, 1))}.text-orange-700{--tw-text-opacity: 1;color:rgb(194 65 12 / var(--tw-text-opacity, 1))}.text-orange-800{--tw-text-opacity: 1;color:rgb(154 52 18 / var(--tw-text-opacity, 1))}.text-primary,.text-primary-500{--tw-text-opacity: 1;color:rgb(229 120 0 / var(--tw-text-opacity, 1))}.text-primary-600{--tw-text-opacity: 1;color:rgb(204 106 0 / var(--tw-text-opacity, 1))}.text-primary-700{--tw-text-opacity: 1;color:rgb(153 79 0 / var(--tw-text-opacity, 1))}.text-purple-600{--tw-text-opacity: 1;color:rgb(147 51 234 / var(--tw-text-opacity, 1))}.text-purple-700{--tw-text-opacity: 1;color:rgb(126 34 206 / var(--tw-text-opacity, 1))}.text-purple-800{--tw-text-opacity: 1;color:rgb(107 33 168 / var(--tw-text-opacity, 1))}.text-red-400{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.text-red-600{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.text-red-700{--tw-text-opacity: 1;color:rgb(185 28 28 / var(--tw-text-opacity, 1))}.text-red-800{--tw-text-opacity: 1;color:rgb(153 27 27 / var(--tw-text-opacity, 1))}.text-secondary-700{--tw-text-opacity: 1;color:rgb(126 100 19 / var(--tw-text-opacity, 1))}.text-sky-600{--tw-text-opacity: 1;color:rgb(2 132 199 / var(--tw-text-opacity, 1))}.text-slate-400{--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.text-slate-500{--tw-text-opacity: 1;color:rgb(100 116 139 / var(--tw-text-opacity, 1))}.text-slate-900{--tw-text-opacity: 1;color:rgb(15 23 42 / var(--tw-text-opacity, 1))}.text-success-600{--tw-text-opacity: 1;color:rgb(5 150 105 / var(--tw-text-opacity, 1))}.text-success-700{--tw-text-opacity: 1;color:rgb(4 120 87 / var(--tw-text-opacity, 1))}.text-teal-600{--tw-text-opacity: 1;color:rgb(13 148 136 / var(--tw-text-opacity, 1))}.text-warning-600{--tw-text-opacity: 1;color:rgb(217 119 6 / var(--tw-text-opacity, 1))}.text-warning-700{--tw-text-opacity: 1;color:rgb(180 83 9 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-white\/90{color:#ffffffe6}.text-yellow-600{--tw-text-opacity: 1;color:rgb(202 138 4 / var(--tw-text-opacity, 1))}.text-yellow-700{--tw-text-opacity: 1;color:rgb(161 98 7 / var(--tw-text-opacity, 1))}.text-yellow-800{--tw-text-opacity: 1;color:rgb(133 77 14 / var(--tw-text-opacity, 1))}.underline{text-decoration-line:underline}.overline{text-decoration-line:overline}.line-through{text-decoration-line:line-through}.underline-offset-4{text-underline-offset:4px}.opacity-25{opacity:.25}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-75{opacity:.75}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.ring{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow{--tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / .1)) drop-shadow(0 1px 1px rgb(0 0 0 / .06));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.\!filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)!important}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur{--tw-backdrop-blur: blur(8px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.\!transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter!important;transition-timing-function:cubic-bezier(.4,0,.2,1)!important;transition-duration:.15s!important}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-shadow{transition-property:box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-150{transition-duration:.15s}.duration-300{transition-duration:.3s}.ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}@keyframes enter{0%{opacity:var(--tw-enter-opacity, 1);transform:translate3d(var(--tw-enter-translate-x, 0),var(--tw-enter-translate-y, 0),0) scale3d(var(--tw-enter-scale, 1),var(--tw-enter-scale, 1),var(--tw-enter-scale, 1)) rotate(var(--tw-enter-rotate, 0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity, 1);transform:translate3d(var(--tw-exit-translate-x, 0),var(--tw-exit-translate-y, 0),0) scale3d(var(--tw-exit-scale, 1),var(--tw-exit-scale, 1),var(--tw-exit-scale, 1)) rotate(var(--tw-exit-rotate, 0))}}.fade-in{--tw-enter-opacity: 0}.fade-out{--tw-exit-opacity: 0}.duration-150{animation-duration:.15s}.duration-300{animation-duration:.3s}.ease-in{animation-timing-function:cubic-bezier(.4,0,1,1)}.ease-in-out{animation-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{animation-timing-function:cubic-bezier(0,0,.2,1)}.running{animation-play-state:running}.paused{animation-play-state:paused}.file\:border-0::file-selector-button{border-width:0px}.file\:bg-transparent::file-selector-button{background-color:transparent}.file\:text-sm::file-selector-button{font-size:.875rem;line-height:1.25rem}.file\:font-medium::file-selector-button{font-weight:500}.placeholder\:text-neutral-400::-moz-placeholder{--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.placeholder\:text-neutral-400::placeholder{--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.hover\:bg-\[\#CC6A00\]:hover{--tw-bg-opacity: 1;background-color:rgb(204 106 0 / var(--tw-bg-opacity, 1))}.hover\:bg-amber-700:hover{--tw-bg-opacity: 1;background-color:rgb(180 83 9 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-600:hover{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-700:hover{--tw-bg-opacity: 1;background-color:rgb(29 78 216 / var(--tw-bg-opacity, 1))}.hover\:bg-emerald-700:hover{--tw-bg-opacity: 1;background-color:rgb(4 120 87 / var(--tw-bg-opacity, 1))}.hover\:bg-error-600:hover{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-100:hover{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-200:hover{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-50:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.hover\:bg-green-700:hover{--tw-bg-opacity: 1;background-color:rgb(21 128 61 / var(--tw-bg-opacity, 1))}.hover\:bg-neutral-100:hover{--tw-bg-opacity: 1;background-color:rgb(241 245 249 / var(--tw-bg-opacity, 1))}.hover\:bg-neutral-200:hover{--tw-bg-opacity: 1;background-color:rgb(226 232 240 / var(--tw-bg-opacity, 1))}.hover\:bg-neutral-50:hover{--tw-bg-opacity: 1;background-color:rgb(248 250 252 / var(--tw-bg-opacity, 1))}.hover\:bg-primary-50:hover{--tw-bg-opacity: 1;background-color:rgb(255 245 235 / var(--tw-bg-opacity, 1))}.hover\:bg-primary-600:hover{--tw-bg-opacity: 1;background-color:rgb(204 106 0 / var(--tw-bg-opacity, 1))}.hover\:bg-red-50:hover{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.hover\:bg-slate-100:hover{--tw-bg-opacity: 1;background-color:rgb(241 245 249 / var(--tw-bg-opacity, 1))}.hover\:bg-success-600:hover{--tw-bg-opacity: 1;background-color:rgb(5 150 105 / var(--tw-bg-opacity, 1))}.hover\:bg-warning-600:hover{--tw-bg-opacity: 1;background-color:rgb(217 119 6 / var(--tw-bg-opacity, 1))}.hover\:bg-white\/30:hover{background-color:#ffffff4d}.hover\:text-blue-600:hover{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.hover\:text-blue-800:hover{--tw-text-opacity: 1;color:rgb(30 64 175 / var(--tw-text-opacity, 1))}.hover\:text-gray-500:hover{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.hover\:text-gray-600:hover{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.hover\:text-gray-700:hover{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.hover\:text-neutral-900:hover{--tw-text-opacity: 1;color:rgb(15 23 42 / var(--tw-text-opacity, 1))}.hover\:text-slate-600:hover{--tw-text-opacity: 1;color:rgb(71 85 105 / var(--tw-text-opacity, 1))}.hover\:text-slate-700:hover{--tw-text-opacity: 1;color:rgb(51 65 85 / var(--tw-text-opacity, 1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:shadow-md:hover{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-sm:hover{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.focus\:border-blue-500:focus{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.focus\:border-primary:focus{--tw-border-opacity: 1;border-color:rgb(229 120 0 / var(--tw-border-opacity, 1))}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-\[\#E57800\]\/50:focus{--tw-ring-color: rgb(229 120 0 / .5)}.focus\:ring-blue-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.focus\:ring-primary-100:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(255 228 204 / var(--tw-ring-opacity, 1))}.focus\:ring-sky-300:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(125 211 252 / var(--tw-ring-opacity, 1))}.focus\:ring-offset-2:focus{--tw-ring-offset-width: 2px}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-primary-300:focus-visible{--tw-ring-opacity: 1;--tw-ring-color: rgb(255 176 102 / var(--tw-ring-opacity, 1))}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width: 2px}.active\:bg-error-700:active{--tw-bg-opacity: 1;background-color:rgb(185 28 28 / var(--tw-bg-opacity, 1))}.active\:bg-neutral-100:active{--tw-bg-opacity: 1;background-color:rgb(241 245 249 / var(--tw-bg-opacity, 1))}.active\:bg-neutral-200:active{--tw-bg-opacity: 1;background-color:rgb(226 232 240 / var(--tw-bg-opacity, 1))}.active\:bg-neutral-300:active{--tw-bg-opacity: 1;background-color:rgb(203 213 225 / var(--tw-bg-opacity, 1))}.active\:bg-primary-700:active{--tw-bg-opacity: 1;background-color:rgb(153 79 0 / var(--tw-bg-opacity, 1))}.active\:bg-success-700:active{--tw-bg-opacity: 1;background-color:rgb(4 120 87 / var(--tw-bg-opacity, 1))}.active\:bg-warning-700:active{--tw-bg-opacity: 1;background-color:rgb(180 83 9 / var(--tw-bg-opacity, 1))}.active\:text-primary-700:active{--tw-text-opacity: 1;color:rgb(153 79 0 / var(--tw-text-opacity, 1))}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:bg-neutral-50:disabled{--tw-bg-opacity: 1;background-color:rgb(248 250 252 / var(--tw-bg-opacity, 1))}.disabled\:opacity-50:disabled{opacity:.5}@media (min-width: 640px){.sm\:table-cell{display:table-cell}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:items-center{align-items:center}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}}@media (min-width: 768px){.md\:flex{display:flex}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.md\:grid-cols-\[1\.2fr_0\.8fr\]{grid-template-columns:1.2fr .8fr}.md\:flex-row{flex-direction:row}.md\:items-center{align-items:center}.md\:space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}.md\:space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(0px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px * var(--tw-space-y-reverse))}}@media (min-width: 1024px){.lg\:col-span-2{grid-column:span 2 / span 2}.lg\:block{display:block}.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:px-8{padding-left:2rem;padding-right:2rem}}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-4 svg{width:1rem;height:1rem}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}
