@import"https://fonts.googleapis.com/css2?family=Lora:ital,wght@0,400;0,600;0,700;1,400&display=swap";.sv-resume-toast{position:fixed;bottom:24px;right:24px;background:#1e143cd9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.15);border-radius:16px;padding:16px 20px;display:flex;align-items:center;gap:16px;color:#fff;box-shadow:0 10px 30px #0000004d,inset 0 1px #ffffff1a;z-index:9999;cursor:pointer;transform:translateY(100px);animation:slideUpToast .5s cubic-bezier(.16,1,.3,1) forwards;transition:transform .2s,box-shadow .2s;max-width:350px}.sv-resume-toast:hover{transform:translateY(-2px);box-shadow:0 12px 35px #0006,inset 0 1px #fff3;border-color:#ffffff40}@keyframes slideUpToast{to{transform:translateY(0)}}.sv-resume-icon{font-size:24px;background:linear-gradient(135deg,#a78bfa,#ec4899);-webkit-background-clip:text;-webkit-text-fill-color:transparent;display:flex;align-items:center;justify-content:center}.sv-resume-content h4{margin:0 0 4px;font-size:15px;font-weight:600;color:#fff}.sv-resume-content p{margin:0;font-size:13px;color:#ffffffb3;line-height:1.4}.sv-resume-content strong{color:#e2e8f0}.sv-resume-close{background:none;border:none;color:#ffffff80;font-size:16px;cursor:pointer;padding:4px;margin-left:auto;transition:color .2s;border-radius:4px}.sv-resume-close:hover{color:#fff;background:#ffffff1a}@font-face{font-display:block;font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2) format("woff2"),url(/assets/KaTeX_AMS-Regular-DMm9YOAa.woff) format("woff"),url(/assets/KaTeX_AMS-Regular-DRggAlZN.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff) format("woff"),url(/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff) format("woff"),url(/assets/KaTeX_Fraktur-Regular-CB_wures.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Main-Bold-Cx986IdX.woff2) format("woff2"),url(/assets/KaTeX_Main-Bold-Jm3AIy58.woff) format("woff"),url(/assets/KaTeX_Main-Bold-waoOVXN0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2) format("woff2"),url(/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff) format("woff"),url(/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2) format("woff2"),url(/assets/KaTeX_Main-Italic-BMLOBm91.woff) format("woff"),url(/assets/KaTeX_Main-Italic-3WenGoN9.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Main-Regular-B22Nviop.woff2) format("woff2"),url(/assets/KaTeX_Main-Regular-Dr94JaBh.woff) format("woff"),url(/assets/KaTeX_Main-Regular-ypZvNtVU.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2) format("woff2"),url(/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff) format("woff"),url(/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Math-Italic-t53AETM-.woff2) format("woff2"),url(/assets/KaTeX_Math-Italic-DA0__PXp.woff) format("woff"),url(/assets/KaTeX_Math-Italic-flOr_0UB.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:700;src:url(/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff) format("woff"),url(/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:italic;font-weight:400;src:url(/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff) format("woff"),url(/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:400;src:url(/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff) format("woff"),url(/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Script-Regular-D3wIWfF6.woff2) format("woff2"),url(/assets/KaTeX_Script-Regular-D5yQViql.woff) format("woff"),url(/assets/KaTeX_Script-Regular-C5JkGWo-.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2) format("woff2"),url(/assets/KaTeX_Size1-Regular-C195tn64.woff) format("woff"),url(/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2) format("woff2"),url(/assets/KaTeX_Size2-Regular-oD1tc_U0.woff) format("woff"),url(/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAA4oAA4AAAAAHbQAAA3TAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAABmAAgRQIDgmcDBEICo1oijYBNgIkA14LMgAEIAWJAAeBHAyBHBvbGiMRdnO0IkRRkiYDgr9KsJ1NUAf2kILNxgUmgqIgq1P89vcbIcmsQbRps3vCcXdYOKSWEPEKgZgQkprQQsxIXUgq0DqpGKmIvrgkeVGtEQD9DzAO29fM9jYhxZEsL2FeURH2JN4MIcTdO049NCVdxQ/w9NrSYFEBKTDKpLKfNkCGDc1RwjZLQcm3vqJ2UW9Xfa3tgAHz6ivp6vgC2yD4/6352ndnN0X0TL7seypkjZlMsjmZnf0Mm5Q+JykRWQBKCVCVPbARPXWyQtb5VgLB6Biq7/Uixcj2WGqdI8tGSgkuRG+t910GKP2D7AQH0DB9FMDW/obJZ8giFI3Wg8Cvevz0M+5m0rTh7XDBlvo9Y4vm13EXmfttwI4mBo1EG15fxJhUiCLbiiyCf/ZA6MFAhg3pGIZGdGIVjtPn6UcMk9A/UUr9PhoNsCENw1APAq0gpH73e+M+0ueyHbabc3vkbcdtzcf/fiy+NxQEjf9ud/ELBHAXJ0nk4z+MXH2Ev/kWyV4k7SkvpPc9Qr38F6RPWnM9cN6DJ0AdD1BhtgABtmoRoFCvPsBAumNm6soZG2Gk5GyVTo2sJncSyp0jQTYoR6WDvTwaaEcHsxHfvuWhHA3a6bN7twRKtcGok6NsCi7jYRrM2jExsUFMxMQYuJbMhuWNOumEJy9hi29Dmg5zMp/A5+hhPG19j1vBrq8JTLr8ki5VLPmG/PynJHVul440bxg5xuymHUFPBshC+nA9I1FmwbRBTNHAcik3Oae0cxKoI3MOriM42UrPe51nsaGxJ+WfXubAsP84aabUlQSJ1IiE0iPETLUU4CATgfXSCSpuRFRmCGbO+wSpAnzaeaCYW1VNEysRtuXCEL1kUFUbbtMv3Tilt/1c11jt3Q5bbMa84cpWipp8Elw3MZhOHsOlwwVUQM3lAR35JiFQbaYCRnMF2lxAWoOg2gyoIV4PouX8HytNIfLhqpJtXB4vjiViUI8IJ7bkC4ikkQvKksnOTKICwnqWSZ9YS5f0WCxmpgjbIq7EJcM4aI2nmhLNY2JIUgOjXZFWBHb+x5oh6cwb0Tv1ackHdKi0I9OO2wE9aogIOn540CCCziyhN+IaejtgAONKznHlHyutPrHGwCx9S6B8kfS4Mfi4Eyv7OU730bT1SCBjt834cXsf43zVjPUqqJjgrjeGnBxSG4aYAKFuVbeCfkDIjAqMb6yLNIbCuvXhMH2/+k2vkNpkORhR59N1CkzoOENvneIosjYmuTxlhUzaGEJQ/iWqx4dmwpmKjrwTiTGTCVozNAYqk/zXOndWxuWSmJkQpJw3pK5KX6QrLt5LATMqpmPAQhkhK6PUjzHUn7E0gHE0kPE0iKkolgkUx9SZmVAdDgpffdyJKg3k7VmzYGCwVXGz/tXmkOIp+vcWs+EMuhhvN0h9uhfzWJziBQmCREGSIFmQIkgVpAnSBRmC//6hkLZwaVhwxlrJSOdqlFtOYxlau9F2QN5Y98xmIAsiM1HVp2VFX+DHHGg6Ecjh3vmqtidX3qHI2qycTk/iwxSt5UzTmEP92ZBnEWTk4Mx8Mpl78ZDokxg/KWb+Q0QkvdKVmq3TMW+RXEgrsziSAfNXFMhDc60N5N9jQzjfO0kBKpUZl0ZmwJ41j/B9Hz6wmRaJB84niNmQrzp9eSlQCDDzazGDdVi3P36VZQ+Jy4f9UBNp+3zTjqI4abaFAm+GShVaXlsGdF3FYzZcDI6cori4kMxUECl9IjJZpzkvitAoxKue+90pDMvcKRxLl53TmOKCmV/xRolNKSqqUxc6LStOETmFOiLZZptlZepcKiAzteG8PEdpnQpbOMNcMsR4RR2Bs0cKFEvSmIjAFcnarqwUL4lDhHmnVkwu1IwshbiCcgvOheZuYyOteufZZwlcTlLgnZ3o/WcYdzZHW/WGaqaVfmTZ1aWCceJjkbZqsfbkOtcFlUZM/jy+hXHDbaUobWqqXaeWobbLO99yG5N3U4wxco0rQGGcOLASFMXeJoham8M+/x6O2WywK2l4HGbq1CoUyC/IZikQhdq3SiuNrvAEj0AVu9x2x3lp/xWzahaxidezFVtdcb5uEnzyl0ZmYiuKI0exvCd4Xc9CV1KB0db00z92wDPde0kukbvZIWN6jUWFTmPIC/Y4UPCm8UfDTFZpZNon1qLFTkBhxzB+FjQRA2Q/YRJT8pQigslMaUpFyAG8TMlXigiqmAZX4xgijKjRlGpLE0GdplRfCaJo0JQaSxNBk6ZmMzcya0FmrcisDdn0Q3HI2sWSppYigmlM1XT/kLQZSNpMJG0WkjYbSZuDpM1F0uYhFc1HxU4m1QJjDK6iL0S5uSj5rgXc3RejEigtcRBtqYPQsiTskmO5vosV+q4VGIKbOkDg0jtRrq+Em1YloaTFar3EGr1EUC8R0kus1Uus00usL97ABr2BjXoDm/QGNhuWtMVBKOwg/i78lT7hBsAvDmwHc/ao3vmUbBmhjeYySZNWvGkfZAgISDSaDo1SVpzGDsAEkF8B+gEapViUoZgUWXcRIGFZNm6gWbAKk0bp0k1MHG9fLYtV4iS2SmLEQFARzRcnf9PUS0LVn05/J9MiRRBU3v2IrvW974v4N00L7ZMk0wXP1409CHo/an8zTRHD3eSJ6m8D4YMkZNl3M79sqeuAsr/m3f+8/yl7A50aiAEJgeBeMWzu7ui9UfUBCe2TIqZIoOd/3/udRBOQidQZUERzb2/VwZN1H/Sju82ew2H2Wfr6qvfVf3hqwDvAIpkQVFy4B9Pe9e4/XvPeceu7h3dvO56iJPf0+A6cqA2ip18ER+iFgggiuOkvj24bby0N9j2UHIkgqIt+sVgfodC4YghLSMjSZbH0VR/6dMDrYJeKHilKTemt6v6kvzvn3/RrdWtr0GoN/xL+Sex/cPYLUpepx9cz/D46UPU5KXgAQa+NDps1v6J3xP1i2HtaDB0M9aX2deA7SYff//+gUCovMmIK/qfsFcOk+4Y5ZN97XlG6zebqtMbKgeRFi51vnxTQYBUik2rS/Cn6PC8ADR8FGxsRPB82dzfND90gIcshOcYUkfjherBz53odpm6TP8txlwOZ71xmfHHOvq053qFF/MRlS3jP0ELudrf2OeN8DHvp6ZceLe8qKYvWz/7yp0u4dKPfli3CYq0O13Ih71mylJ80tOi10On8wi+F4+LWgDPeJ30msSQt9/vkmHq9/Lvo2b461mP801v3W4xTcs6CbvF9UDdrSt+A8OUbpSh55qAUFXWznBBfdeJ8a4d7ugT5tvxUza3h9m4H7ptTqiG4z0g5dc0X29OcGlhpGFMpQo9ytTS+NViZpNdvU4kWx+LKxNY10kQ1yqGXrhe4/1nvP7E+nd5A92TtaRplbHSqoIdOqtRWti+fkB5/n1+/VvCmz12pG1kpQWsfi1ftlBobm0bpngs16CHkbIwdLnParxtTV3QYRlfJ0KFskH7pdN/YDn+yRuSd7sNH3aO0DYPggk6uWuXrfOc+fa3VTxFVvKaNxHsiHmsXyCLIE5yuOeN3/Jdf8HBL/5M6shjyhxHx9BjB1O0+4NLOnjLLSxwO7ukN4jMbOIcD879KLSi6Pk61Oqm2377n8079PXEEQ7cy7OKEC9nbpet118fxweTafpt69x/Bt8UqGzNQt7aelpc44dn5cqhwf71+qKp/Zf/+a0zcizOUWpl/iBcSXip0pplkatCchoH5c5aUM8I7/dWxAej8WicPL1URFZ9BDJelUwEwTkGqUhgSlydVes95YdXvhh9Gfz/aeFWvgVb4tuLbcv4+wLdutVZv/cUonwBD/6eDlE0aSiKK/uoH3+J1wDE/jMVqY2ysGufN84oIXB0sPzy8ollX/LegY74DgJXJR57sn+VGza0x3DnuIgABFM15LmajjjsNlYj+JEZGbuRYcAMOWxFkPN2w6Wd46xo4gVWQR/X4lyI/R6K/YK0110GzudPRW7Y+UOBGTfNNzHeYT0fiH0taunBpq9HEW8OKSaBGj21L0MqenEmNRWBAWDWAk4CpNoEZJ2tTaPFgbQYj8HxtFilErs3BTRwT8uO1NXQaWfIotchmPkAF5mMBAliEmZiOGVgCG9LgRzpscMAOOwowlT3JhusdazXGSC/hxR3UlmWVwWHpOIKheqONvjyhSiTHIkVUco5bnji8m//zL7PKaT1Vl5I6UE609f+gkr6MZKVyKc7zJRmCahLsdlyA5fdQkRSan9LgnnLEyGSkaKJCJog0wAgvepWBt80+1yKln1bMVtCljfNWDueKLsWwaEbBSfSPTEmVRsUcYYMnEjcjeyCZzBXK9E9BYBXLKjOSpUDR+nEV3TFSUdQaz+ot98QxgXwx0GQ+EEUAKB2qZPkQQ0GqFD8UPFMqyaCHM24BZmSGic9EYMagKizOw9Hz50DMrDLrqqLkTAhplMictiCAx5S3BIUQdeJeLnBy2CNtMfz6cV4u8XKoFZQesbf9YZiIERiHjaNodDW6LgcirX/mPnJIkBGDUpTBhSa0EIr38D5hCIszhCM8URGBqImoWjpvpt1ebu/v3Gl3qJfMnNM+9V+kiRFyROTPHQWOcs1dNW94/ukKMPZBvDi55i5CttdeJz84DLngLqjcdwEZ87bFFR8CIG35OAkDVN6VRDZ7aq67NteYqZ2lpT8oYB2CytoBd6VuAx4WgiAsnuj3WohG+LugzXiQRDeM3XYXlULv4dp5VFYC) format("woff2"),url(/assets/KaTeX_Size3-Regular-CTq5MqoE.woff) format("woff"),url(/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2) format("woff2"),url(/assets/KaTeX_Size4-Regular-BF-4gkZK.woff) format("woff"),url(/assets/KaTeX_Size4-Regular-DWFBv043.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2) format("woff2"),url(/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff) format("woff"),url(/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf) format("truetype")}.katex{font: 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;position:relative;text-indent:0;text-rendering:auto}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.16.45"}.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:-webkit-min-content;width:-moz-min-content;width:min-content}.katex .base,.katex .strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;display:inline-table;table-layout:fixed}.katex .vlist-r{display:table-row}.katex .vlist{display:table-cell;position:relative;vertical-align:bottom}.katex .vlist>span{display:block;height:0;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{overflow:hidden;width:0}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{display:table-cell;font-size:1px;min-width:2px;vertical-align:bottom;width:2px}.katex .vbox{align-items:baseline;display:inline-flex;flex-direction:column}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{display:inline-flex;flex-direction:row}.katex .thinbox{max-width:0;width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .smash{display:inline;line-height:0}.katex .clap,.katex .llap,.katex .rlap{position:relative;width:0}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.katex .sqrt>.root{margin-left:.2777777778em;margin-right:-.5555555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.1666666667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.6666666667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.4566666667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.1466666667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.7142857143em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.8571428571em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.1428571429em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.2857142857em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.4285714286em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.7142857143em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.0571428571em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.4685714286em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.9628571429em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.5542857143em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.7777777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.8888888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.1111111111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.3044444444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.7644444444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.5833333333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.7283333333em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.0733333333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.4861111111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.4402777778em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.7277777778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.2893518519em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.4050925926em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.462962963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.5208333333em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.5787037037em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.2002314815em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.4398148148em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.2410800386em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.2892960463em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.337512054em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.3857280617em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.4339440694em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.4821600771em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.5785920926em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.6943105111em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.8331726133em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.1996142719em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.2009646302em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.2411575563em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.2813504823em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.3215434084em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.3617363344em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.4019292605em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.4823151125em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.578778135em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.6945337621em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.8336012862em}.katex .fontsize-ensurer.reset-size11.size11,.katex .sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{display:inline-block;width:.12em}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{display:inline-block;min-width:1px}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;display:block;height:inherit;position:absolute;width:100%}.katex svg path{stroke:none}.katex svg{fill-rule:nonzero;fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1}.katex img{border-style:none;max-height:none;max-width:none;min-height:0;min-width:0}.katex .stretchy{display:block;overflow:hidden;position:relative;width:100%}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{overflow:hidden;position:relative;width:100%}.katex .halfarrow-left{left:0;overflow:hidden;position:absolute;width:50.2%}.katex .halfarrow-right{overflow:hidden;position:absolute;right:0;width:50.2%}.katex .brace-left{left:0;overflow:hidden;position:absolute;width:25.1%}.katex .brace-center{left:25%;overflow:hidden;position:absolute;width:50%}.katex .brace-right{overflow:hidden;position:absolute;right:0;width:25.1%}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{border:.04em solid;box-sizing:border-box}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{border-right:.049em solid;border-top:.049em solid;box-sizing:border-box;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{display:inline-block;position:absolute;right:calc(50% + .3em);text-align:left}.katex .cd-label-right{display:inline-block;left:calc(50% + .3em);position:absolute;text-align:right}.katex-display{display:block;margin:1em 0;text-align:center}.katex-display>.katex{display:block;text-align:center;white-space:nowrap}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{padding-left:2em;text-align:left}body{counter-reset:katexEqnNo mmlEqnNo}*{margin:0;padding:0;box-sizing:border-box}::-webkit-scrollbar{display:none}*{scrollbar-width:none;-ms-overflow-style:none}html,body{width:100%;height:100%;overflow:hidden;background:#fff;font-family:sans-serif}.login-container{height:100vh;width:100vw;display:flex;justify-content:center;align-items:center;position:relative;overflow:hidden}.login-container:before{content:"";position:absolute;left:0;top:0;width:100%;height:100%;background:linear-gradient(180deg,#8b5cf6,#d8b4fe);clip-path:polygon(0 0,calc(50% + 12.65vh + 4.6px) 0,calc(50% - 12.65vh + 4.6px) 100%,0 100%)}.login-card{width:920px;height:400px;background:#fff;border-radius:30px;display:flex;overflow:hidden;position:absolute;left:50%;top:50%;z-index:2;transform:translate(-50%,-50%);box-shadow:0 12px 35px #00000014,0 0 30px #8b5cf614;animation:cardFloat 8s ease-in-out infinite;transition:box-shadow .4s ease,transform .4s ease,filter .4s ease}@keyframes cardFloat{0%,48%,to{transform:translate(-50%,-50%)}50%{transform:translate(-50%,-51%)}}.login-card:hover{box-shadow:0 28px 60px #00000029,0 0 46px #8b5cf62e;filter:saturate(1.05)}.login-card:after{content:"";position:absolute;width:240px;height:240px;background:#8b5cf62e;border-radius:50%;filter:blur(90px);right:-80px;bottom:-80px}.left-section{width:45%;background:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:22px;position:relative}.left-section:after{display:none}.logo{max-width:245px;width:auto;height:auto;display:block;object-fit:contain;border-radius:24px;transition:transform .4s ease,filter .4s ease,box-shadow .4s ease;animation:logoFloat 8s ease-in-out infinite}@keyframes logoFloat{0%,48%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.logo:hover{filter:drop-shadow(0 20px 40px rgba(124,58,237,.18)) saturate(1.05);transform:translateY(-2px)}.brand-text{text-align:center}.brand-text h1{font-size:34px;color:#7c3aed;font-weight:700;letter-spacing:.5px}.brand-text p{margin-top:6px;font-size:15px;color:#777}.right-section{width:55%;background:linear-gradient(135deg,#8b5cf6,#c084fc,#d8b4fe);background-size:300% 300%;animation:gradientMove 8s ease infinite;clip-path:polygon(20% 0,100% 0,100% 100%,0 100%);display:flex;flex-direction:column;justify-content:center;align-items:center;gap:28px;position:relative;padding-left:45px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.right-section>*{animation:fadeSlide .9s ease}@keyframes fadeSlide{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes gradientMove{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.welcome-text{color:#fff;font-size:34px;font-weight:700;letter-spacing:1px;text-shadow:0 3px 8px rgba(0,0,0,.1)}.password-field{position:relative;width:300px}.password-input{width:100%;padding:15px 52px 15px 22px;border:2px solid rgba(255,255,255,.8);border-radius:30px;background:#ffffff14;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#fff;outline:none;font-size:16px;transition:.3s}.password-toggle{position:absolute;right:14px;top:50%;transform:translateY(-50%);width:30px;height:30px;border:none;border-radius:50%;background:#ffffff29;color:#fff;display:grid;place-items:center;cursor:pointer;transition:transform .25s ease,background .25s ease,box-shadow .25s ease}.password-toggle:hover{background:#ffffff47;transform:translateY(-50%) scale(1.05);box-shadow:0 0 12px #fff3}.password-input:focus{background:#ffffff26;transform:scale(1.02);box-shadow:0 0 15px #ffffff59}.password-input::placeholder{color:#fff}.login-btn{width:180px;padding:14px;border:none;border-radius:30px;background:#fff;color:#7c3aed;font-weight:700;font-size:17px;cursor:pointer;transition:.3s;animation:pulse 2.5s infinite}@keyframes pulse{0%{box-shadow:0 0 #fff0}50%{box-shadow:0 0 22px #ffffff73}to{box-shadow:0 0 #fff0}}.google-login-btn{background:#fff;color:#111827;display:flex;align-items:center;justify-content:center;gap:12px;position:relative;box-shadow:0 4px 15px #0000001a;transition:all .3s cubic-bezier(.34,1.56,.64,1);animation:none;z-index:1;border:2px solid transparent}.google-login-btn:before{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border-radius:32px;background:linear-gradient(90deg,#7c3aed,#ec4899,#7c3aed);background-size:200% 100%;z-index:-1;opacity:0;transition:opacity .3s ease;animation:bgScroll 3s linear infinite}@keyframes bgScroll{0%{background-position:0% 0}to{background-position:200% 0}}.google-login-btn:hover{transform:translateY(-4px) scale(1.02);color:#7c3aed;box-shadow:0 12px 24px #7c3aed40;background:#fff}.google-login-btn:hover:before{opacity:1}.google-login-btn svg{transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.google-login-btn:hover svg{transform:scale(1.15) rotate(8deg)}.dashboard-container{display:flex;height:100vh;width:100vw;background-color:#f0f4f8;font-family:Inter,system-ui,-apple-system,sans-serif}.dashboard-window{display:flex;flex-direction:row;width:100%;height:100%;background:#fafbfd;overflow:hidden}.dashboard-sidebar{width:110px;display:flex;flex-direction:column;align-items:center;padding:24px 0;border-right:1px solid rgba(226,232,240,.8);gap:20px;background:#fff;z-index:100;box-shadow:4px 0 20px #94a3b80d}.window-controls-left{display:flex;gap:6px;margin-bottom:12px}.window-controls-left .window-dot{width:10px;height:10px;border-radius:50%}.window-controls-left .window-dot.red{background:#ff5f56}.window-controls-left .window-dot.yellow{background:#ffbd2e}.window-controls-left .window-dot.green{background:#27c93f}.sidebar-item{display:flex;flex-direction:column;align-items:center;gap:6px;position:relative;width:100%}.sidebar-label{font-size:11px;font-weight:600;color:#94a3b8;transition:color .2s ease;-webkit-user-select:none;user-select:none}.sidebar-btn{width:56px;height:56px;border-radius:18px;display:flex;justify-content:center;align-items:center;border:none;cursor:pointer;transition:all .3s cubic-bezier(.34,1.56,.64,1);box-shadow:0 4px 6px #0000000a}.sidebar-btn svg{width:28px;height:28px;transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.sidebar-btn.home-theme{background:linear-gradient(135deg,#3b82f6,#1e40af);color:#fff}.sidebar-btn.subjects-theme{background:linear-gradient(135deg,#8b5cf6,#6d28d9);color:#fff}.sidebar-btn.ask-theme{background:linear-gradient(135deg,#ec4899,#be185d);color:#fff}.sidebar-btn.profile-theme{background:linear-gradient(135deg,#10b981,#047857);color:#fff}.sidebar-btn:hover{transform:scale(1.1)}.sidebar-btn:hover svg{transform:rotate(10deg) scale(1.1)}.sidebar-btn.home-theme:hover{box-shadow:0 10px 25px #3b82f680}.sidebar-btn.subjects-theme:hover{box-shadow:0 10px 25px #8b5cf680}.sidebar-btn.ask-theme:hover{box-shadow:0 10px 25px #ec489980}.sidebar-btn.profile-theme:hover{box-shadow:0 10px 25px #10b98180}.sidebar-item:hover .sidebar-label{color:#4f46e5}.sidebar-item.has-popup{position:relative}.subjects-popover{position:absolute;left:90%;top:50%;transform:translateY(-50%) scale(.9) translate(-10px);width:240px;background:#fff;border:1px solid #E2E8F0;border-radius:20px;box-shadow:0 15px 30px #0f172a1a;padding:16px;opacity:0;pointer-events:none;transition:all .3s cubic-bezier(.34,1.56,.64,1);z-index:1000}.sidebar-item.has-popup:hover .subjects-popover{opacity:1;pointer-events:auto;transform:translateY(-50%) scale(1) translate(15px)}.popover-header{font-size:12px;font-weight:700;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em;margin-bottom:12px;border-bottom:1px solid #F1F5F9;padding-bottom:6px}.popover-list{display:flex;flex-direction:column;gap:10px}.popover-item{display:flex;align-items:center;gap:12px;padding:8px 12px;border-radius:12px;cursor:pointer;background:#f8fafc;border:1px solid transparent;transition:all .25s ease}.popover-item:hover{background:#fff;border-color:#e2e8f0;transform:translate(4px);box-shadow:0 4px 10px #94a3b814}.popover-item.disabled{opacity:.6;cursor:not-allowed}.popover-item.disabled:hover{transform:none;box-shadow:none;background:#f8fafc;border-color:transparent}.popover-icon{width:14px;height:14px;border-radius:50%;flex-shrink:0}.popover-info{display:flex;flex-direction:column}.popover-name{font-size:13px;font-weight:700;color:#1e293b}.popover-status{font-size:10px;font-weight:500;color:#64748b}.sidebar-pie-container{position:relative;width:42px;height:42px;display:flex;justify-content:center;align-items:center}.piechart-svg{transform:rotate(-90deg)}.pie-bg{fill:none;stroke:#f1f5f9;stroke-width:3.5}.pie-fill{fill:none;stroke:#6366f1;stroke-width:3.5;stroke-linecap:round;transition:stroke-dasharray .3s ease}.pie-text{position:absolute;font-size:10px;font-weight:700;color:#4f46e5}.mt-auto{margin-top:auto}.dashboard-main{flex:1;display:flex;flex-direction:column;background:#f8fafc}.dashboard-header{height:76px;display:flex;justify-content:space-between;align-items:center;padding:0 40px;background:#fff;border-bottom:1px solid rgba(226,232,240,.8);box-shadow:0 2px 10px #94a3b805}.branding-space{display:flex;align-items:center;gap:8px}.brand-logo-dot{width:12px;height:12px;border-radius:50%;background:linear-gradient(135deg,#ff3d77,#ff8e53);box-shadow:0 0 10px #ff3d7780;animation:brandPulse 2s infinite ease-in-out}@keyframes brandPulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.2);opacity:.8}}.brand-text-accent{font-family:Outfit,Inter,sans-serif;font-size:20px;font-weight:800;letter-spacing:-.5px;background:linear-gradient(135deg,#1e1b4b,#4338ca);-webkit-background-clip:text;-webkit-text-fill-color:transparent;text-transform:capitalize}.student-dashboard-btn{display:flex;align-items:center;gap:8px;padding:10px 18px;border-radius:12px;background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;border:none;font-size:13px;font-weight:700;cursor:pointer;transition:all .25s ease;box-shadow:0 4px 12px #3b82f640}.student-dashboard-btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px #3b82f659}.dashboard-btn-icon{font-size:14px}.main-title{font-size:28px;font-weight:800;color:#0f172a;letter-spacing:-.5px}.main-subtitle{font-size:15px;color:#64748b;margin-top:6px}.selection-tile.student-tile{background:#fff;border:1px solid #E2E8F0;border-radius:20px;padding:24px;width:180px;transition:all .3s cubic-bezier(.34,1.56,.64,1);box-shadow:0 4px 6px #94a3b805}.selection-tile.student-tile:hover{transform:translateY(-8px) scale(1.02);border-color:#3b82f6;box-shadow:0 15px 30px #3b82f61a}.tile-icon-container{font-size:36px;margin-bottom:12px}.dashboard-content{flex:1;padding:40px;display:flex;flex-direction:column;height:calc(100vh - 76px);box-sizing:border-box;overflow:hidden}.subjects-header-row{margin-bottom:24px}.section-title{font-size:26px;font-weight:800;color:#0f172a}.section-subtitle{font-size:14px;color:#64748b;margin-top:4px}.step2-container{display:flex;flex-direction:column;height:100%;min-height:0}.dashboard-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(3,1fr);gap:24px;flex:1;min-height:0;width:100%;max-width:1200px;margin:0 auto;padding-bottom:12px}@media(max-width:900px){.dashboard-grid{grid-template-columns:1fr;grid-template-rows:repeat(6,1fr)}}.student-subject-card{position:relative;background:#fff;border:1px solid #E2E8F0;border-radius:28px;padding:30px;display:flex;align-items:center;gap:28px;cursor:pointer;overflow:hidden;height:100%;box-sizing:border-box;transition:all .3s cubic-bezier(.34,1.56,.64,1);box-shadow:0 4px 10px #0f172a03}.subject-card-glow-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:var(--card-gradient);opacity:0;z-index:1;transition:opacity .3s ease}.student-subject-card:hover{transform:translateY(-8px);border-color:transparent;box-shadow:0 16px 32px var(--card-glow)}.student-subject-card:hover .subject-card-glow-overlay{opacity:.04}.subject-icon-wrap{width:96px;height:96px;border-radius:24px;display:flex;justify-content:center;align-items:center;background:var(--card-gradient);color:#fff;z-index:2;box-shadow:0 8px 16px var(--card-glow);flex-shrink:0;transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.student-subject-card:hover .subject-icon-wrap{transform:scale(1.08) rotate(3deg)}.subject-icon-wrap svg{width:44px;height:44px}.subject-card-body{flex:1;z-index:2;display:flex;flex-direction:column;justify-content:center}.subject-card-name{font-size:22px;font-weight:800;color:#0f172a;margin:0;letter-spacing:-.3px}.subject-card-desc{font-size:14px;color:#64748b;margin-top:6px;font-weight:500}.card-decorative-lines{display:flex;flex-direction:column;gap:6px;margin-top:14px}.card-dec-line{height:5px;border-radius:3px;background:#e2e8f0;opacity:.55}.card-dec-line.w-long{width:75%}.card-dec-line.w-medium{width:45%}.subject-card-action{z-index:2;align-self:center}.subject-badge{padding:8px 14px;border-radius:12px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.subject-badge.active{background:#ecfdf5;color:#059669}.subject-badge.locked{background:#f1f5f9;color:#64748b}.student-subject-card.coming-soon{opacity:.82}.student-subject-card.coming-soon:hover{transform:translateY(-3px);box-shadow:0 8px 16px #94a3b81f}.sv-app{display:flex;height:100vh;width:100vw;overflow:hidden;background:#fff;font-family:Inter,system-ui,-apple-system,sans-serif}.sv-rail{width:170px;height:100vh;background:linear-gradient(180deg,#fff,#f5f3ff);display:flex;flex-direction:column;align-items:center;padding:20px 0 24px;flex-shrink:0;position:relative;z-index:50;border-right:2px solid rgba(124,58,237,.1);transition:all .4s cubic-bezier(.175,.885,.32,1.275);box-shadow:4px 0 20px #00000008}.sv-rail.collapsed{width:80px}.sv-rail:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#8b5cf60a,#ec489908);pointer-events:none;z-index:-1}.sv-rail-brand{margin-bottom:0;display:flex;align-items:center;flex-shrink:0}.sv-brand-gem{width:42px;height:42px;border-radius:13px;background:linear-gradient(135deg,#7c3aed,#ec4899);display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 4px 16px #7c3aed8c}.sv-brand-logo-img{width:52px;height:52px;object-fit:contain;border-radius:0;background:transparent;box-shadow:none}.st-app .sv-study-rail-tree-logo{width:auto;max-width:200px;height:clamp(48px,7vh,68px);object-fit:contain;object-position:center;background:transparent!important;box-shadow:none!important;border-radius:0!important;flex-shrink:0}.st-app .sv-study-topbar-brand{gap:0}.st-app .sv-topbar .sv-persona-tree-logo{height:clamp(40px,5.5vh,56px);max-width:min(180px,30vw);object-fit:contain;object-position:left center;background:transparent!important;box-shadow:none!important;border-radius:0!important}.sv-rail.collapsed .sv-rail-items{grid-template-columns:1fr;padding:0 12px}.sv-rail-toggle{background:none;border:none;cursor:pointer;padding:10px;margin-bottom:20px;display:flex;flex-direction:column;gap:4px;align-items:center;transition:transform .2s}.sv-rail-toggle:hover{transform:scale(1.1)}.sv-rail-toggle span{width:24px;height:3px;background:#7c3aed;border-radius:2px;transition:all .3s}.sv-rail.collapsed .sv-rail-toggle span:nth-child(2){width:16px}.sv-rail-items{display:grid;grid-template-columns:repeat(2,1fr);gap:16px 10px;width:100%;padding:0 12px}.sv-rail-item{position:relative;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;cursor:pointer;padding:10px 4px;border-radius:14px;transition:all .25s ease}.sv-rail-icon{width:68px;height:68px;border-radius:18px;color:#7c3aed;opacity:1;background:linear-gradient(135deg,#7c3aed14,#ec48990d);box-shadow:0 4px 12px #7c3aed1f;transition:all .28s cubic-bezier(.34,1.56,.64,1);position:relative;display:flex;align-items:center;justify-content:center;font-size:28px}.sv-rail-icon--active,.sv-rail-item:hover .sv-rail-icon{color:#6d28d9;background:linear-gradient(135deg,#8b5cf62e,#ec48991f);opacity:1;transform:scale(1.12) translateY(-2px);box-shadow:0 8px 24px #8b5cf640}.sv-rail-icon--active:after{content:"";position:absolute;right:-1px;top:50%;transform:translateY(-50%);width:3px;height:18px;border-radius:2px;background:linear-gradient(180deg,#a78bfa,#f472b6)}.sv-rail-chip{font-size:11px;font-weight:700;color:#8b5cf6;letter-spacing:.04em;text-transform:uppercase;transition:all .2s ease;text-align:center;width:100%;line-height:1.2;word-break:break-word}.sv-rail-item:hover .sv-rail-chip{color:#7c3aed;font-weight:800}.sv-rail-icon--ring{width:46px;height:46px;position:relative}.sv-ring-pct{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:800;color:#a78bfa}.sv-rail-profile{margin-top:auto;width:100%;display:flex;justify-content:center}.sv-rail-item--flyout{position:relative}.sv-flyout{position:absolute;left:calc(100% + 12px);top:50%;transform:translateY(-50%) translate(-8px) scale(.94);width:218px;background:#f5f3ff;border:1px solid rgba(139,92,246,.15);border-radius:18px;padding:16px;opacity:0;pointer-events:none;transition:all .3s cubic-bezier(.34,1.56,.64,1);z-index:999;box-shadow:0 10px 30px #8b5cf61a}.sv-rail-item--flyout:hover .sv-flyout{opacity:1;pointer-events:auto;transform:translateY(-50%) translate(0) scale(1)}.sv-flyout-label{font-size:10px;font-weight:800;color:#94a3b8;text-transform:uppercase;letter-spacing:.08em;margin:0 0 10px;border-bottom:1px solid rgba(0,0,0,.06);padding-bottom:8px}.sv-flyout-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:10px;cursor:pointer;transition:background .18s;margin-bottom:2px}.sv-flyout-item:hover{background:#0000000a}.sv-flyout-item--locked{opacity:.38;cursor:not-allowed}.sv-flyout-item--locked:hover{background:transparent}.sv-flyout-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.sv-flyout-name{font-size:13px;font-weight:600;color:#334155;flex:1}.sv-flyout-lock{font-size:10px;opacity:.55}.sv-main{flex:1;display:flex;flex-direction:column;min-width:0;overflow:hidden;background:transparent}.sv-topbar{height:70px;display:flex;align-items:center;justify-content:space-between;padding:0 40px;background:#f5f3ffd9;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid rgba(139,92,246,.2);flex-shrink:0}.sv-topbar-left{display:flex;align-items:center;gap:12px;overflow:visible}.sv-logo-wordmark{display:flex;align-items:center;gap:9px}.sv-topbar-brand .sv-brand-logo-img{flex-shrink:0}.sv-logo-dot{width:10px;height:10px;border-radius:50%;background:linear-gradient(135deg,#7c3aed,#ec4899);box-shadow:0 0 9px #7c3aed8c;animation:svLogoPulse 2.2s ease-in-out infinite}@keyframes svLogoPulse{0%,to{transform:scale(1)}50%{transform:scale(1.3)}}.sv-logo-text{font-size:21px;font-weight:900;letter-spacing:-.6px;color:#1e1b4b;font-family:Inter,sans-serif}.sv-breadcrumb{display:flex;align-items:center;gap:7px}.sv-bc-sep{color:#cbd5e1;font-size:14px;font-weight:300}.sv-bc-link{font-size:13px;font-weight:600;color:#7c3aed;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.sv-bc-current{font-size:13px;font-weight:600;color:#64748b}.sv-topbar-right{display:flex;align-items:center}.sv-dash-btn{display:flex;align-items:center;gap:9px;padding:10px 20px;border-radius:12px;background:linear-gradient(135deg,#7c3aed,#ec4899);color:#fff;font-size:13px;font-weight:700;border:none;cursor:pointer;transition:all .25s ease;box-shadow:0 4px 16px #7c3aed52;letter-spacing:.01em}.sv-dash-btn:hover{transform:translateY(-2px);box-shadow:0 8px 24px #7c3aed6b}.sv-logout-btn{padding:9px 18px;border-radius:10px;border:1.5px solid #E2E8F0;background:transparent;color:#64748b;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease}.sv-logout-btn:hover{border-color:#ef4444;color:#ef4444;background:#fef2f2}.sv-profile-btn{display:inline-flex;align-items:center;gap:8px;margin-left:12px;padding:9px 18px;border-radius:10px;border:1.5px solid #E2E8F0;background:transparent;color:#64748b;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease}.sv-profile-btn:hover{border-color:#6366f1;color:#2563eb;background:#eff6ff}.sv-app--no-rail .sv-main{flex:1;width:100%;min-width:0}.sv-app--no-rail .sv-topbar{min-height:80px;padding:12px 36px 12px 28px;align-items:center}.sv-persona-brand-mark{display:flex;align-items:center;gap:18px;flex-shrink:0}.sv-persona-tree-logo{height:clamp(56px,10vh,76px);width:auto;max-width:min(220px,32vw);object-fit:contain;object-position:left center;display:block;flex-shrink:0;background:transparent!important;box-shadow:none!important;border-radius:0!important}.sv-app--no-rail .sv-topbar-left{flex:1;min-width:0;gap:18px;flex-wrap:wrap;align-items:center}.sv-app--no-rail .sv-breadcrumb{flex:1 1 200px;min-width:0;flex-wrap:wrap;row-gap:4px}.sv-rail{border-right:1px solid rgba(139,92,246,.2);border-left:none}@media(max-width:640px){.sv-app--no-rail .sv-topbar{padding-left:16px;padding-right:16px}.sv-persona-brand-mark{gap:12px}.sv-persona-tree-logo{max-width:42vw;height:clamp(48px,11vw,60px)}}.sv-content{flex:1;overflow-y:auto;padding:40px 44px;display:flex;flex-direction:column}.sv-hero{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;gap:40px;text-align:center}.sv-hero--class-only{gap:0;justify-content:center}.sv-hero-title{font-size:36px;font-weight:800;color:#0f0c29;letter-spacing:-.5px}.sv-hero-sub{font-size:16px;color:#64748b;margin-top:8px}.sv-class-grid{display:flex;flex-wrap:wrap;gap:20px;justify-content:center}.sv-class-grid--solo{width:100%;flex:1;align-items:center;align-content:center}.sv-class-card{display:flex;flex-direction:column;align-items:center;gap:10px;padding:28px 24px;background:#fff;border:1.5px solid #E2E8F0;border-radius:20px;cursor:pointer;min-width:155px;transition:all .28s cubic-bezier(.34,1.56,.64,1);box-shadow:0 2px 8px #00000008}.sv-class-card:hover{transform:translateY(-6px);border-color:#7c3aed;box-shadow:0 12px 28px #7c3aed26}.sv-class-card--locked{opacity:.58;cursor:not-allowed}.sv-class-card--locked:hover{transform:none;border-color:#e2e8f0;box-shadow:none}.sv-class-card.sv-class-card--large{min-width:min(92vw,440px);max-width:520px;padding:clamp(40px,7vw,64px) clamp(44px,9vw,80px);border-radius:28px;box-shadow:0 8px 32px #7c3aed1f}.sv-class-card--large .sv-class-icon{font-size:clamp(52px,12vw,88px);line-height:1}.sv-class-card--large .sv-class-name{font-size:clamp(1.35rem,3.5vw,2rem);font-weight:800}.sv-class-landing{position:relative;background:linear-gradient(125deg,#fff,#faf5ff 42%,#fff5f8 78%,#fff);background-size:240% 240%;animation:svLandingBgDrift 18s ease-in-out infinite}@keyframes svLandingBgDrift{0%,to{background-position:0% 40%}50%{background-position:100% 60%}}.sv-class-landing .sv-topbar{animation:svLandingTopbarIn .7s cubic-bezier(.16,1,.3,1) both}.sv-class-landing .sv-persona-brand-mark{animation:svLandingBrandIn .75s cubic-bezier(.34,1.56,.64,1) .06s both}.sv-class-landing .sv-persona-tree-logo{animation:svLandingLogoPulse 3.2s ease-in-out infinite}.sv-class-landing .sv-topbar-right .sv-logout-btn{animation:svLandingFadeUp .55s cubic-bezier(.16,1,.3,1) .1s both}.sv-class-landing .sv-topbar-right .sv-profile-btn{animation:svLandingFadeUp .55s cubic-bezier(.16,1,.3,1) .18s both}.sv-class-landing .sv-hero--class-only{position:relative;isolation:isolate}.sv-class-landing .sv-hero--class-only:before,.sv-class-landing .sv-hero--class-only:after{content:"";position:absolute;border-radius:50%;filter:blur(52px);opacity:.45;z-index:-1;pointer-events:none;animation:svLandingOrbFloat 8s ease-in-out infinite}.sv-class-landing .sv-hero--class-only:before{width:min(420px,70vw);height:min(420px,70vw);left:50%;top:42%;transform:translate(-50%,-50%);background:radial-gradient(circle,rgba(167,139,250,.55) 0%,transparent 68%)}.sv-class-landing .sv-hero--class-only:after{width:min(280px,50vw);height:min(280px,50vw);left:58%;top:58%;transform:translate(-50%,-50%);background:radial-gradient(circle,rgba(244,114,182,.38) 0%,transparent 70%);animation-delay:-3.5s}.sv-class-landing .sv-class-card.sv-class-card--large:not(.sv-class-card--locked){position:relative;overflow:hidden;animation:svLandingCardEnter .9s cubic-bezier(.34,1.56,.64,1) .12s both,svLandingCardGlow 4.5s ease-in-out .8s infinite;transition:transform .35s cubic-bezier(.34,1.56,.64,1),box-shadow .35s ease,border-color .3s ease}.sv-class-landing .sv-class-card.sv-class-card--large:not(.sv-class-card--locked):after{content:"";position:absolute;top:-35%;right:-50%;bottom:-35%;left:-50%;background:linear-gradient(105deg,transparent 38%,rgba(255,255,255,.65) 50%,transparent 62%);transform:translate(-120%) rotate(14deg);animation:svLandingShine 5.5s ease-in-out infinite;pointer-events:none}.sv-class-landing .sv-class-card.sv-class-card--large:not(.sv-class-card--locked):hover{transform:translateY(-10px) scale(1.02);box-shadow:0 22px 48px #7c3aed47,0 0 0 1px #7c3aed1f}.sv-class-landing .sv-class-card--large:not(.sv-class-card--locked):hover .sv-class-icon{animation:svLandingIconPop .55s cubic-bezier(.34,1.56,.64,1)}.sv-class-landing .sv-class-card--large:not(.sv-class-card--locked):active{transform:translateY(-4px) scale(.99)}.sv-class-landing .sv-hero:not(.sv-hero--class-only){animation:svLandingFadeUp .6s cubic-bezier(.16,1,.3,1) both}.sv-class-landing .sv-subjects{animation:svLandingFadeUp .55s cubic-bezier(.16,1,.3,1) both}@keyframes svLandingTopbarIn{0%{opacity:0;transform:translateY(-18px)}to{opacity:1;transform:translateY(0)}}@keyframes svLandingBrandIn{0%{opacity:0;transform:translate(-12px) scale(.92)}to{opacity:1;transform:translate(0) scale(1)}}@keyframes svLandingFadeUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes svLandingLogoPulse{0%,to{box-shadow:0 4px 16px #7c3aed59;transform:scale(1)}50%{box-shadow:0 8px 28px #ec489959;transform:scale(1.04)}}@keyframes svLandingOrbFloat{0%,to{transform:translate(-50%,-50%) scale(1);opacity:.42}50%{transform:translate(-48%,-54%) scale(1.06);opacity:.58}}@keyframes svLandingCardEnter{0%{opacity:0;transform:translateY(28px) scale(.9) rotateX(8deg)}to{opacity:1;transform:translateY(0) scale(1) rotateX(0)}}@keyframes svLandingCardGlow{0%,to{box-shadow:0 8px 32px #7c3aed1f,0 0 #ec489900}50%{box-shadow:0 12px 40px #7c3aed33,0 0 48px #ec489924}}@keyframes svLandingShine{0%,65%{transform:translate(-120%) rotate(14deg);opacity:0}68%{opacity:1}to{transform:translate(120%) rotate(14deg);opacity:0}}@keyframes svLandingIconPop{0%{transform:scale(1) rotate(0)}40%{transform:scale(1.18) rotate(-6deg)}70%{transform:scale(1.08) rotate(4deg)}to{transform:scale(1) rotate(0)}}@media(prefers-reduced-motion:reduce){.sv-class-landing,.sv-class-landing .sv-topbar,.sv-class-landing .sv-persona-brand-mark,.sv-class-landing .sv-persona-tree-logo,.sv-class-landing .sv-topbar-right .sv-logout-btn,.sv-class-landing .sv-topbar-right .sv-profile-btn,.sv-class-landing .sv-class-card.sv-class-card--large:not(.sv-class-card--locked),.sv-class-landing .sv-class-card.sv-class-card--large:not(.sv-class-card--locked):after,.sv-class-landing .sv-hero--class-only:before,.sv-class-landing .sv-hero--class-only:after{animation:none!important}.sv-class-landing .sv-class-card.sv-class-card--large:not(.sv-class-card--locked):hover{transform:none}}.sv-class-icon{font-size:34px}.sv-class-name{font-size:14px;font-weight:700;color:#1e293b;text-align:center}.sv-class-badge{font-size:10px;font-weight:700;padding:3px 9px;background:#f1f5f9;color:#64748b;border-radius:7px;text-transform:uppercase}.sv-subjects{display:flex;flex-direction:column;height:100%;min-height:0;flex:1}.sv-subjects-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:26px;flex-shrink:0}.sv-subjects-title{font-size:26px;font-weight:800;color:#0f0c29;letter-spacing:-.3px}.sv-subjects-sub{font-size:14px;color:#64748b;margin-top:4px}.sv-subjects-tag-row{display:flex;gap:8px}.sv-tag{padding:6px 14px;border-radius:20px;font-size:12px;font-weight:700}.sv-tag--active{background:#ede9fe;color:#6d28d9}.sv-tag--locked{background:#fdf2f8;color:#be185d}.sv-subjects-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(3,1fr);gap:18px;flex:1;min-height:0}.sv-subject-card{position:relative;background:#fff;border:1.5px solid rgba(139,92,246,.1);border-radius:22px;padding:24px 26px;display:flex;align-items:center;gap:22px;cursor:pointer;overflow:hidden;height:100%;box-sizing:border-box;transition:all .3s cubic-bezier(.34,1.56,.64,1);box-shadow:0 2px 8px #0f0c290a}.sv-card-accent{position:absolute;top:-28px;right:-28px;width:90px;height:90px;border-radius:50%;background:var(--card-gradient);opacity:.07;transition:all .4s ease;pointer-events:none}.sv-subject-card:hover{transform:translateY(-6px);border-color:transparent;box-shadow:0 16px 40px var(--card-glow)}.sv-subject-card:hover .sv-card-accent{opacity:.14;transform:scale(1.65)}.sv-card-icon{width:78px;height:78px;border-radius:18px;background:var(--card-gradient);display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0;box-shadow:0 6px 16px var(--card-glow);transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.sv-subject-card:hover .sv-card-icon{transform:scale(1.08) rotate(4deg)}.sv-card-icon svg{width:36px;height:36px}.sv-card-body{flex:1;display:flex;flex-direction:column;justify-content:center;min-width:0}.sv-card-title{font-size:20px;font-weight:800;color:#0f0c29;letter-spacing:-.2px;margin:0}.sv-card-desc{font-size:13px;color:#64748b;margin-top:5px;font-weight:500}.sv-card-lines{display:flex;flex-direction:column;gap:5px;margin-top:13px}.sv-card-line{height:4px;border-radius:3px;background:var(--card-gradient);opacity:.18}.sv-card-line--lg{width:68%}.sv-card-line--sm{width:40%}.sv-card-status{flex-shrink:0;align-self:center}.sv-status-pill{padding:7px 14px;border-radius:20px;font-size:11px;font-weight:800;letter-spacing:.04em;white-space:nowrap}.sv-status-pill--active{background:#ede9fe;color:#5b21b6}.sv-status-pill--locked{background:#f1f5f9;color:#64748b}.sv-subject-card--locked{opacity:.76}.sv-subject-card--locked:hover{transform:translateY(-2px);box-shadow:0 6px 16px #94a3b81a}.ch-content{padding:36px 44px 32px;overflow-y:auto;display:flex;flex-direction:column;gap:0}.ch-loading{display:flex;flex-direction:column;align-items:center;gap:16px;color:#64748b;font-size:15px;font-weight:600}.ch-spinner{width:40px;height:40px;border-radius:50%;border:3px solid #E2E8F0;border-top-color:#7c3aed;animation:chSpin .75s linear infinite}@keyframes chSpin{to{transform:rotate(360deg)}}.ch-page-header{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:32px;flex-shrink:0}.ch-page-title{font-size:28px;font-weight:800;color:#0f0c29;letter-spacing:-.4px;margin:0}.ch-subject-accent{background:linear-gradient(135deg,#7c3aed,#ec4899);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.ch-page-sub{font-size:14px;color:#64748b;margin:6px 0 0}.ch-view-toggle{display:flex;gap:6px;background:#fff;border:1.5px solid #E2E8F0;border-radius:12px;padding:4px}.ch-toggle-btn{display:flex;align-items:center;gap:6px;padding:7px 14px;border-radius:9px;border:none;font-size:13px;font-weight:600;color:#94a3b8;background:transparent;cursor:pointer;transition:all .2s ease}.ch-toggle-btn--active{background:linear-gradient(135deg,#7c3aed,#ec4899);color:#fff;box-shadow:0 4px 12px #7c3aed47}.ch-toggle-btn:not(.ch-toggle-btn--active):hover{color:#4f46e5;background:#f5f3ff}.ch-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}.ch-card{position:relative;background:#fff;border:1.5px solid #E8EAF0;border-radius:20px;padding:26px 24px 20px;display:flex;flex-direction:column;gap:14px;cursor:pointer;overflow:hidden;transition:all .3s cubic-bezier(.34,1.56,.64,1);box-shadow:0 2px 8px #0f0c290a;min-height:180px}.ch-card--locked{opacity:.65;cursor:not-allowed}.ch-card:not(.ch-card--locked):hover{transform:translateY(-6px);border-color:transparent;box-shadow:0 16px 36px var(--ch-glow, rgba(124, 58, 237, .28))}.ch-card-bloom{position:absolute;top:-32px;right:-32px;width:100px;height:100px;border-radius:50%;background:var(--ch-gradient);opacity:.08;transition:all .4s ease;pointer-events:none}.ch-card:not(.ch-card--locked):hover .ch-card-bloom{opacity:.16;transform:scale(1.7)}.ch-card-num{display:flex;align-items:center;gap:10px}.ch-num-circle{width:36px;height:36px;border-radius:10px;background:var(--ch-gradient);display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;font-weight:800;flex-shrink:0;box-shadow:0 4px 10px var(--ch-glow, rgba(124, 58, 237, .3))}.ch-num-label{font-size:11px;font-weight:700;color:#94a3b8;text-transform:uppercase;letter-spacing:.06em}.ch-card-name{font-size:17px;font-weight:700;color:#0f0c29;line-height:1.4;margin:0;flex:1}.ch-card-footer{margin-top:auto;display:flex;align-items:center}.ch-explore-link{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:700;background:var(--ch-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;transition:gap .2s}.ch-card:hover .ch-explore-link{gap:10px}.ch-locked-badge{font-size:12px;font-weight:600;color:#94a3b8;background:#f1f5f9;padding:4px 10px;border-radius:8px}.ch-card-bar{position:absolute;bottom:0;left:0;right:0;height:3px;opacity:0;transition:opacity .25s ease}.ch-card:not(.ch-card--locked):hover .ch-card-bar{opacity:1}.ch-list{display:flex;flex-direction:column;gap:10px;max-width:860px;margin:0 auto;width:100%}.ch-list-row{display:flex;align-items:center;gap:18px;padding:18px 22px;background:#fff;border:1.5px solid #E8EAF0;border-radius:16px;cursor:pointer;transition:all .25s cubic-bezier(.34,1.56,.64,1);box-shadow:0 1px 4px #0f0c290a}.ch-list-row:not(.ch-list-row--locked):hover{border-color:transparent;transform:translate(4px);box-shadow:0 6px 20px var(--ch-glow, rgba(124, 58, 237, .2))}.ch-list-row--locked{opacity:.6;cursor:not-allowed}.ch-list-num{width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:15px;font-weight:800;flex-shrink:0;box-shadow:0 4px 10px var(--ch-glow, rgba(124, 58, 237, .3))}.ch-list-body{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.ch-list-label{font-size:11px;font-weight:700;color:#94a3b8;text-transform:uppercase;letter-spacing:.06em}.ch-list-name{font-size:15px;font-weight:700;color:#0f0c29;margin:0;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ch-list-arrow{width:36px;height:36px;border-radius:10px;background:#f5f3ff;display:flex;align-items:center;justify-content:center;color:#7c3aed;flex-shrink:0;transition:all .2s ease}.ch-list-row:hover .ch-list-arrow{background:linear-gradient(135deg,#7c3aed,#ec4899);color:#fff;transform:translate(2px)}.book-app .sv-main{background:#fff!important}.book-content{flex:1;overflow-y:auto;padding:28px 40px 48px;display:flex;flex-direction:column}.book-loading{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px}.book-loading-icon{display:flex;align-items:flex-end;gap:2px;animation:bookLoadBounce 1.1s ease-in-out infinite alternate}@keyframes bookLoadBounce{0%{transform:scaleY(1)}to{transform:scaleY(.84)}}.book-loading-left,.book-loading-right{width:36px;height:52px;border-radius:3px 6px 6px 3px;background:linear-gradient(160deg,#6d28d9,#ec4899)}.book-loading-right{border-radius:6px 3px 3px 6px;background:linear-gradient(160deg,#ec4899,#6d28d9)}.book-loading-spine{width:6px;height:58px;background:#1e1040;border-radius:2px}.book-loading-text{font-family:Lora,Georgia,serif;font-size:16px;font-style:italic;color:#7c6e5a}.book-header{display:flex;align-items:center;margin-bottom:36px;opacity:0;transform:translateY(-10px);transition:opacity .5s ease .2s,transform .5s ease .2s}.book-header--visible{opacity:1;transform:translateY(0)}.book-header-left{display:flex;align-items:center;gap:18px}.book-icon-deco{width:56px;height:56px;border-radius:14px;background:linear-gradient(135deg,#7c3aed,#ec4899);display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0;box-shadow:0 6px 18px #7c3aed59}.book-icon-deco--subject svg{width:36px;height:36px}.book-title{font-family:Lora,Georgia,serif;font-size:30px;font-weight:700;color:#1e1040;margin:0;letter-spacing:-.3px}.book-title-light{font-weight:400;font-style:italic;color:#6d5b8a}.book-subtitle{font-size:14px;color:#7c6e5a;margin:5px 0 0;font-weight:500}.book-shelf{display:grid;grid-template-columns:repeat(4,max-content);gap:32px 40px;justify-content:center;align-items:flex-start}.book-card{position:relative;width:172px;height:256px;border-radius:4px 10px 10px 4px;display:grid;grid-template-columns:22px 1fr;grid-template-rows:55% 45%;cursor:pointer;flex-shrink:0;overflow:hidden;opacity:0;transform:perspective(900px) rotateY(calc(var(--flip-dir, -1) * 60deg)) rotateX(8deg) scale(.85);box-shadow:6px 8px 24px #00000040,2px 2px 8px #00000026,inset -3px 0 8px #0000001f;transition:box-shadow .4s cubic-bezier(.34,1.56,.64,1),transform .4s cubic-bezier(.34,1.56,.64,1),filter .3s ease}.book-card--open:not(.book-card--locked):hover{transform:perspective(900px) rotateY(0) rotateX(0) scale(1) translateY(-14px)!important;box-shadow:12px 28px 56px #9333ea59,4px 8px 16px #0003,inset -3px 0 8px #0000001f;filter:brightness(1.08)}.book-card--open{animation:bookPageFlip .8s cubic-bezier(.22,1,.36,1) forwards}@keyframes bookPageFlip{0%{opacity:0;transform:perspective(900px) rotateY(calc(var(--flip-dir, -1) * 60deg)) rotateX(8deg) scale(.85)}55%{transform:perspective(900px) rotateY(calc(var(--flip-dir, -1) * -8deg)) rotateX(4deg) scale(1.04) translateY(-6px);opacity:1}to{opacity:1;transform:perspective(900px) rotateY(0) rotateX(0) scale(1) translateY(-10px)}}.book-card--clicked{z-index:100!important;animation:bookComeUp .8s cubic-bezier(.22,1,.36,1) forwards!important}@keyframes bookComeUp{0%{transform:perspective(900px) rotateY(0) rotateX(0) scale(1);opacity:1}30%{transform:perspective(1200px) translateY(-30px) scale(1.2) rotateX(-5deg);box-shadow:0 0 60px var(--book-accent, rgba(147, 51, 234, .4)),20px 40px 80px #0006;opacity:1}to{transform:perspective(1200px) translateY(-40px) scale(1.4) rotateX(-8deg);opacity:0}}.book-card-flip-page{position:absolute;top:0;left:22px;right:0;bottom:0;background:var(--book-cover);border-radius:0 10px 10px 0;transform-origin:left center;z-index:10;pointer-events:none;animation:pageFlipOpen .6s cubic-bezier(.4,0,.2,1) forwards;animation-delay:.1s;box-shadow:inset 2px 0 5px #fff3,-2px 0 5px #0003;display:flex;justify-content:center;align-items:center;backface-visibility:hidden}.book-card-flip-page-inner{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--book-page-bg);border-radius:0 10px 10px 0;transform:rotateY(-180deg);backface-visibility:hidden;box-shadow:inset -2px 0 5px #0000000d}@keyframes pageFlipOpen{0%{transform:rotateY(0)}to{transform:rotateY(-175deg)}}.book-opening-content{padding:24px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;width:100%;transform:rotateY(180deg)}.book-opening-number{font-family:Lora,Georgia,serif;font-size:1.2rem;font-weight:700;color:var(--book-spine);opacity:.8}.book-opening-line{width:40px;height:3px;background:var(--book-accent);margin:12px 0;border-radius:2px}.book-opening-title{font-family:Lora,Georgia,serif;font-size:1.4rem;font-weight:800;color:#1a1a1a;line-height:1.3;margin:0}.book-card--locked{opacity:.55!important;cursor:not-allowed;filter:grayscale(.5)}.book-card--locked:hover{transform:none!important}.book-card-spine{grid-column:1;grid-row:1 / 3;background:var(--book-spine, #6B21A8);display:flex;align-items:center;justify-content:center;position:relative;z-index:2;box-shadow:inset 1px 0 2px #ffffff1a,inset -1px 0 3px #0000004d}.book-card-spine:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to right,rgba(255,255,255,.25) 0%,transparent 40%,rgba(0,0,0,.2) 100%)}.book-card-cover{grid-column:2;grid-row:1;position:relative;overflow:hidden;border-radius:0 10px 0 0;display:flex;align-items:flex-end;padding:20px 16px 18px}.book-card-cover:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--book-cover);transition:filter .4s ease}.book-card--open:not(.book-card--locked):hover .book-card-cover:before{filter:brightness(1.12) saturate(1.15)}.book-card-cover:after{content:"";position:absolute;top:0;left:0;right:0;height:100%;background:linear-gradient(to bottom,rgba(255,255,255,.12),transparent 50%),linear-gradient(135deg,rgba(255,255,255,.08),transparent),linear-gradient(to right,rgba(0,0,0,.2) 0%,rgba(255,255,255,.15) 3px,transparent 12px);border-radius:0 10px 0 0;z-index:1}.book-cover-heading{position:relative;z-index:2}.book-cover-number{display:inline-flex;color:#fff;font-size:22px;font-weight:900;letter-spacing:-.02em;text-shadow:0 2px 6px rgba(0,0,0,.2)}.book-cover-lines{position:absolute;bottom:14px;left:16px;right:16px;display:flex;flex-direction:column;gap:5px;z-index:2;opacity:.4;animation:bookshelflinesGlow 2s ease-in-out infinite}@keyframes bookshelflinesGlow{0%,to{opacity:.35}50%{opacity:.55}}.book-cover-line{height:3px;border-radius:999px;background:#ffffff59;transition:background .3s ease}.book-card--open:not(.book-card--locked):hover .book-cover-line{background:#fff9}.book-cover-line--lg{width:68%}.book-cover-line--md{width:48%}.book-cover-line--sm{width:32%}.book-cover-ornament{position:absolute;top:12px;right:12px;width:24px;height:24px;border-radius:50%;border:2px solid rgba(255,255,255,.35);z-index:2;background:radial-gradient(circle at 30% 30%,rgba(255,255,255,.3),transparent);animation:bookOrnamentSpin 8s linear infinite}@keyframes bookOrnamentSpin{0%,to{transform:rotate(0)}to{transform:rotate(360deg)}}.book-cover-ornament:after{content:"";position:absolute;top:6px;right:6px;bottom:6px;left:6px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.4),transparent)}.book-card-page{grid-column:2;grid-row:2;background:var(--book-page-bg, #FDF2F8);padding:18px 14px 16px;display:flex;flex-direction:column;gap:8px;border-radius:0 0 10px;border-top:2px solid rgba(255,255,255,.5);overflow:hidden;position:relative;transition:background .3s ease}.book-card-page:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,transparent 0%,rgba(0,0,0,.02) 100%);pointer-events:none}.book-card--open:not(.book-card--locked):hover .book-card-page{background:color-mix(in srgb,var(--book-page-bg, #FDF2F8) 90%,var(--book-cover, #9333ea))}.book-card-title{font-family:Inter,system-ui,sans-serif;font-size:14px;font-weight:800;color:var(--book-dark, #3F0F6B);line-height:1.35;margin:0;flex:1;overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;transition:color .3s ease;text-shadow:0 1px 2px rgba(255,255,255,.5)}.book-card--open:not(.book-card--locked):hover .book-card-title{color:color-mix(in srgb,var(--book-dark, #3F0F6B) 80%,black)}.book-card-cta{display:flex;align-items:center;gap:4px;font-size:10.5px;font-weight:700;color:var(--book-spine, #6B21A8);margin-top:auto;transition:gap .3s cubic-bezier(.34,1.56,.64,1)}.book-card--open:not(.book-card--locked):hover .book-card-cta{gap:8px}.book-card-locked{font-size:10px;color:#9c8a72;margin-top:auto;font-weight:600}.book-card-pages-edge{position:absolute;top:6px;right:-4px;bottom:6px;width:6px;background:repeating-linear-gradient(to bottom,#fdfbf7,#fdfbf7 1px,#ede8e0 1px,#ede8e0 2.5px);border-radius:0 2px 2px 0;opacity:.95;z-index:3;box-shadow:-1px 0 2px #0000001a;transition:box-shadow .3s ease}.book-card--open:not(.book-card--locked):hover .book-card-pages-edge{box-shadow:-2px 0 4px #9333ea33}.st-page{display:flex;flex-direction:column;height:100vh;overflow:hidden;background:#f8f9fb;font-family:Inter,system-ui,-apple-system,sans-serif;position:relative}.st-topbar{height:60px;display:flex;align-items:center;justify-content:space-between;padding:0 20px 0 28px;background:#fff;border-bottom:1px solid #E8EAF0;flex-shrink:0;z-index:10}.st-topbar-left{display:flex;align-items:center;gap:16px}.st-topbar-right{display:flex;align-items:center;gap:12px}.st-breadcrumb{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.st-bc-sep{color:#cbd5e1;font-size:13px}.st-bc-link{font-size:13px;font-weight:600;color:#6d28d9;cursor:pointer;transition:color .15s}.st-bc-link:hover{color:#4f46e5;text-decoration:underline}.st-bc-current{font-size:13px;font-weight:600;color:#64748b;max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.st-tool-badge{padding:5px 14px;border-radius:8px;background:linear-gradient(135deg,#7c3aed,#ec4899);color:#fff;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}.st-persona-row{display:flex;gap:4px}.st-persona-pill{padding:5px 12px;border-radius:8px;border:1.5px solid #E2E8F0;background:transparent;color:#64748b;font-size:12px;font-weight:600;cursor:pointer;transition:all .18s}.st-auth-btn{padding:10px 14px;border-radius:10px;border:1.5px solid #E2E8F0;background:#f8f9fb;color:#1f2937;font-size:13px;font-weight:700;cursor:pointer;transition:all .2s}.st-auth-btn:hover{background:#ede9fe;border-color:#7c3aed}.st-persona-pill--active{background:#ede9fe;border-color:#7c3aed;color:#5b21b6}.st-persona-pill:not(.st-persona-pill--active):hover{border-color:#c4b5fd;color:#4f46e5}.st-profile-btn{width:36px;height:36px;border-radius:50%;border:1.5px solid #E2E8F0;background:#f8f9fb;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;transition:all .2s}.st-profile-btn:hover{background:#ede9fe;border-color:#7c3aed}.st-chapter-strip{padding:16px 28px 12px;background:#fff;border-bottom:1px solid #F1F3F7;flex-shrink:0}.st-chapter-title{font-size:22px;font-weight:800;color:#0f0c29;letter-spacing:-.3px;margin:0}.st-body{flex:1;display:flex;overflow:hidden;position:relative}.st-mainview{flex:1;overflow-y:auto;padding:28px;min-width:0}.st-mainview--flashcards{display:flex;flex-direction:column;align-items:center;flex:1;min-height:0;overflow:hidden;padding:0 20px 12px}.st-rich-sidebar{height:100%;background:#fff;border-right:1px solid rgba(226,232,240,.8);display:flex;flex-direction:column;flex-shrink:0;transition:width .4s cubic-bezier(.34,1.56,.64,1),box-shadow .4s ease;z-index:20;overflow:hidden;box-shadow:4px 0 16px #00000005}.st-rich-sidebar--collapsed{width:72px}.st-rich-sidebar--expanded{width:280px;box-shadow:8px 0 30px #7c3aed14}.st-sidebar-toggle{height:72px;width:100%;display:flex;align-items:center;padding:0 22px;background:transparent;border:none;border-bottom:1px solid rgba(226,232,240,.5);cursor:pointer;outline:none}.hamburger-icon{width:24px;height:18px;position:relative;display:flex;flex-direction:column;justify-content:space-between}.hamburger-icon span{display:block;height:2.5px;width:100%;border-radius:3px;background:#64748b;transition:all .3s cubic-bezier(.34,1.56,.64,1)}.st-sidebar-toggle:hover .hamburger-icon span{background:#7c3aed}.hamburger-icon.open span:nth-child(1){transform:translateY(7.5px) rotate(45deg);background:#ec4899}.hamburger-icon.open span:nth-child(2){opacity:0}.hamburger-icon.open span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg);background:#7c3aed}.st-sidebar-scroll{flex:1;overflow-y:auto;overflow-x:hidden;padding:12px}.st-sidebar-tools{display:flex;flex-direction:column;gap:6px}.st-sidebar-btn{display:flex;align-items:center;width:100%;padding:10px;border-radius:14px;border:none;background:transparent;cursor:pointer;position:relative;transition:all .25s cubic-bezier(.34,1.56,.64,1);overflow:hidden}.st-sidebar-btn:hover{background:#f8fafc;transform:translate(4px)}.st-btn-icon{width:28px;height:28px;display:flex;align-items:center;justify-content:center;font-size:1.25rem;flex-shrink:0;transition:transform .3s ease}.st-sidebar-btn:hover .st-btn-icon{transform:scale(1.15) rotate(5deg)}.st-btn-text{display:flex;flex-direction:column;align-items:flex-start;margin-left:16px;white-space:nowrap;opacity:0;transform:translate(-10px);transition:opacity .3s ease,transform .3s cubic-bezier(.34,1.56,.64,1)}.st-rich-sidebar--expanded .st-btn-text{opacity:1;transform:translate(0)}.st-btn-label{font-size:.95rem;font-weight:700;color:#1e293b}.st-btn-desc{font-size:.75rem;font-weight:500;color:#94a3b8;margin-top:2px}.st-sidebar-btn.active{background:linear-gradient(135deg,#7c3aed14,#ec48990d);border:1px solid rgba(124,58,237,.15);box-shadow:0 4px 12px #7c3aed0d}.st-sidebar-btn.active .st-btn-label{color:#7c3aed}.st-btn-glow{position:absolute;right:0;top:50%;transform:translateY(-50%);width:4px;height:20px;border-radius:4px 0 0 4px;background:linear-gradient(to bottom,#7c3aed,#ec4899);box-shadow:-2px 0 8px #ec489966}.st-sidebar-footer{padding:12px;border-top:1px solid rgba(226,232,240,.5)}.st-footer-btn{display:flex;align-items:center;width:100%;padding:12px;border-radius:12px;border:none;background:#f1f5f9;cursor:pointer;transition:all .2s ease;overflow:hidden}.st-footer-btn:hover{background:#e2e8f0}.st-rich-sidebar--collapsed .st-footer-btn .st-btn-label{display:none}.st-bottom-bar{height:56px;display:flex;align-items:center;gap:4px;padding:0 14px;background:#fff;border-top:1px solid #E8EAF0;flex-shrink:0}.st-bottom-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;border-radius:10px;border:1.5px solid #E2E8F0;background:transparent;color:#64748b;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap}.st-bottom-btn:hover{border-color:#7c3aed;color:#7c3aed;background:#f5f3ff;transform:translateY(-2px);box-shadow:0 4px 10px #7c3aed1f}.st-bottom-btn--accent{background:linear-gradient(135deg,#7c3aed,#ec4899);border-color:transparent;color:#fff;box-shadow:0 4px 12px #7c3aed47}.st-bottom-btn--accent:hover{color:#fff;transform:translateY(-2px);box-shadow:0 8px 20px #7c3aed61;background:linear-gradient(135deg,#6d28d9,#db2777);border-color:transparent}.sv-rail--collapsed{width:0;padding:0;border:none;overflow:hidden}@media(min-width:993px){.st-app .sv-rail{transition:width .38s cubic-bezier(.4,0,.2,1),padding .38s cubic-bezier(.4,0,.2,1),border-color .3s ease,box-shadow .35s ease}.st-app .sv-rail.sv-rail--collapsed{width:76px;min-width:76px;padding:18px 6px 22px;overflow:hidden;border-right:1px solid rgba(139,92,246,.2);box-shadow:2px 0 18px #8b5cf60f}.st-app .sv-rail.sv-rail--collapsed .sv-rail-brand{margin-bottom:20px}.st-app .sv-rail.sv-rail--collapsed .sv-rail-chip{opacity:0;transform:translate(-10px);max-width:0;margin:0;padding:0;overflow:hidden;pointer-events:none;transition:opacity .22s ease,transform .26s cubic-bezier(.4,0,.2,1),max-width .32s cubic-bezier(.4,0,.2,1)}.st-app .sv-rail:not(.sv-rail--collapsed) .sv-rail-chip{opacity:1;transform:translate(0);max-width:120px;transition:opacity .28s ease .05s,transform .32s cubic-bezier(.34,1.56,.64,1) .05s,max-width .35s cubic-bezier(.4,0,.2,1) .04s}.st-app .sv-rail:not(.sv-rail--collapsed){box-shadow:4px 0 24px #7c3aed14}}.sv-rail-bottom-group{display:flex;flex-direction:column;align-items:center;gap:16px;width:100%}.sv-hamburger-btn{background:transparent;border:none;cursor:pointer;color:#64748b;padding:8px;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:all .2s ease;margin-right:12px}.sv-hamburger-btn:hover{background:#0000000d;color:#0f172a}.sv-rail-toggle{color:#fff6;cursor:pointer;padding:10px;border-radius:50%;transition:all .2s;display:flex;justify-content:center;align-items:center}.sv-rail-toggle:hover{color:#fff;background:#ffffff1a}.sv-logout-btn{display:flex;align-items:center;gap:8px;padding:10px 18px;border-radius:12px;background:#ef44441a;color:#ef4444;border:1px solid rgba(239,68,68,.2);font-size:13px;font-weight:700;cursor:pointer;transition:all .25s ease}.sv-logout-btn:hover{background:#ef4444;color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #ef44444d}.view-mode-toggle{display:flex;gap:6px;background:#fff;padding:4px;border-radius:10px;box-shadow:0 2px 8px #0000000d;border:1px solid rgba(0,0,0,.05)}.mode-btn{background:transparent;border:none;padding:6px 10px;border-radius:6px;color:#94a3b8;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.mode-btn:hover{color:#64748b;background:#f8fafc}.mode-btn.active{background:#f1f5f9;color:#334155;box-shadow:inset 0 1px 3px #0000000d}.flip-mode-container{display:flex;align-items:center;justify-content:center;gap:40px;width:100%;padding-top:24px}.flip-nav-btn{background:#fff;border:1px solid #E2E8F0;border-radius:50%;width:64px;height:64px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#64748b;box-shadow:0 4px 12px #0000000d;transition:all .2s ease}.flip-nav-btn:hover:not(:disabled){transform:scale(1.1);color:#0f172a;box-shadow:0 8px 24px #0000001a}.flip-nav-btn:disabled{opacity:.3;cursor:not-allowed;box-shadow:none}.flip-mode-stack{display:flex;flex-direction:column;align-items:center;gap:0;width:100%;padding-bottom:28px;animation:flipStackReveal .65s cubic-bezier(.16,1,.3,1) both}@keyframes flipStackReveal{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.flip-card-wrapper{transform:scale(1.8);transform-origin:center top;margin:0 80px;padding-bottom:210px;animation:flipBookSwap .55s cubic-bezier(.34,1.56,.64,1) both}@keyframes flipBookSwap{0%{opacity:0;transform:scale(1.8) translateY(22px) rotateX(6deg);filter:blur(5px)}to{opacity:1;transform:scale(1.8) translateY(0) rotateX(0);filter:blur(0)}}.chapter-flip-meta{width:100%;max-width:560px;margin:-12px auto 0;padding:0 16px;animation:chapterMetaRise .6s cubic-bezier(.16,1,.3,1) .12s both}@keyframes chapterMetaRise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.chapter-progress-row{display:flex;align-items:center;gap:14px;width:100%}.chapter-progress-track{flex:1;height:11px;border-radius:999px;background:#e2e8f0;overflow:hidden;box-shadow:inset 0 1px 2px #0f172a0f}.chapter-progress-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,#6d28d9,#a78bfa,#c084fc);background-size:180% 100%;transition:width .55s cubic-bezier(.34,1.56,.64,1);animation:chapterProgressShimmer 2.8s ease-in-out infinite;box-shadow:0 0 14px #7c3aed59}@keyframes chapterProgressShimmer{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.chapter-progress-pct{font-weight:800;font-size:.95rem;color:#6d28d9;min-width:44px;text-align:right;flex-shrink:0;animation:chapterPctPop .5s cubic-bezier(.34,1.56,.64,1) .25s both}@keyframes chapterPctPop{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}.chapter-topics-block{margin-top:14px;text-align:left}.chapter-topics-heading{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#64748b;margin-bottom:8px;animation:chapterTopicsHeadingIn .45s ease .2s both}@keyframes chapterTopicsHeadingIn{0%{opacity:0;letter-spacing:.2em}to{opacity:1;letter-spacing:.08em}}.chapter-topics-list{margin:0;padding-left:1.15rem;color:#334155;font-size:.95rem;line-height:1.55}.chapter-topics-list li{margin-bottom:4px;opacity:0;animation:chapterTopicLine .42s cubic-bezier(.16,1,.3,1) forwards}.chapter-topics-list li:nth-child(1){animation-delay:.22s}.chapter-topics-list li:nth-child(2){animation-delay:.28s}.chapter-topics-list li:nth-child(3){animation-delay:.34s}.chapter-topics-list li:nth-child(4){animation-delay:.4s}.chapter-topics-list li:nth-child(5){animation-delay:.46s}.chapter-topics-list li:nth-child(6){animation-delay:.52s}.chapter-topics-list li:nth-child(7){animation-delay:.58s}.chapter-topics-list li:nth-child(8){animation-delay:.64s}.chapter-topics-list li:nth-child(9){animation-delay:.7s}.chapter-topics-list li:nth-child(10){animation-delay:.76s}.chapter-topics-list li:nth-child(11){animation-delay:.82s}.chapter-topics-list li:nth-child(12){animation-delay:.88s}@keyframes chapterTopicLine{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.chapter-topics-empty{margin:0;font-size:.9rem;color:#94a3b8;line-height:1.5}@media(prefers-reduced-motion:reduce){.flip-mode-stack,.flip-card-wrapper,.chapter-flip-meta,.chapter-progress-fill,.chapter-progress-pct,.chapter-topics-heading,.chapter-topics-list li{animation:none!important}.chapter-topics-list li{opacity:1;transform:none}}.list-mode-container{width:100%;max-width:800px;margin:0 auto}.list-mode-table{background:#fff;border-radius:16px;border:1px solid #E2E8F0;box-shadow:0 4px 16px #00000008;overflow:hidden}.list-mode-header{display:flex;padding:16px 24px;background:#f8fafc;border-bottom:1px solid #E2E8F0;font-weight:700;font-size:13px;color:#64748b;text-transform:uppercase;letter-spacing:.05em}.list-mode-row{display:flex;align-items:center;padding:20px 24px;border-bottom:1px solid #F1F5F9;cursor:pointer;transition:background .2s ease}.list-mode-row:hover:not(.disabled){background:#f8fafc}.list-mode-row:last-child{border-bottom:none}.list-mode-row.disabled{opacity:.6;cursor:not-allowed;background:#fafafa}.list-col-num{width:80px;font-weight:700;color:#94a3b8;font-size:16px}.list-col-name{flex:1;font-weight:600;color:#1e293b;font-size:16px}.list-col-action{width:120px;text-align:right}.list-badge-open{background:#8b5cf61a;color:#7c3aed;padding:6px 12px;border-radius:20px;font-size:12px;font-weight:700}.list-badge-locked{background:#f1f5f9;color:#94a3b8;padding:6px 12px;border-radius:20px;font-size:12px;font-weight:600}.sv-progress-wrapper{margin-top:14px;display:flex;flex-direction:column;gap:8px}.sv-progress-segments{display:flex;gap:4px;height:6px;width:100%}.sv-progress-segment{flex:1;border-radius:4px;background:#e2e8f0;transition:background .3s ease}.sv-progress-segment.filled{background:var(--card-gradient);box-shadow:0 1px 3px var(--card-glow)}.sv-progress-meta{display:flex;justify-content:space-between;gap:10px;align-items:baseline}.sv-progress-percent{font-size:14px;font-weight:800;color:#7c3aed;letter-spacing:.02em;flex-shrink:0}.sv-progress-count{font-size:20px;font-weight:800;color:#0f0c29;letter-spacing:-.2px;text-align:right;min-width:0}.sv-subjects:has(.sv-persona-grid){justify-content:center;align-items:center;flex:1}.sv-persona-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;max-width:1100px;margin:0 auto;width:100%;align-items:center}.sv-persona-card{position:relative;background:linear-gradient(145deg,#fff,#fdfdff);border:1px solid rgba(139,92,246,.15);border-radius:36px;padding:40px 30px;display:flex;flex-direction:column;align-items:center;gap:28px;cursor:pointer;overflow:hidden;box-sizing:border-box;transition:all .4s cubic-bezier(.34,1.56,.64,1);box-shadow:0 4px 10px #0f172a05,inset 0 0 0 2px #ffffff80;text-align:center;height:100%}.sv-persona-card:hover{transform:translateY(-12px);border-color:transparent;box-shadow:0 24px 48px var(--card-glow),inset 0 0 0 1px #fffc}.sv-persona-card-glow-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:var(--card-gradient);opacity:0;z-index:1;transition:opacity .4s ease}.sv-persona-card:hover .sv-persona-card-glow-overlay{opacity:.03}.sv-persona-icon-wrap{width:130px;height:130px;border-radius:36px;display:flex;justify-content:center;align-items:center;font-size:36px;background:var(--card-gradient);color:#fff;z-index:2;box-shadow:0 16px 32px var(--card-glow);transition:transform .4s cubic-bezier(.34,1.56,.64,1);padding:4px}.sv-persona-img{width:100%;height:100%;object-fit:cover;border-radius:32px;background-color:#fff}.sv-persona-card:hover .sv-persona-icon-wrap{transform:scale(1.12) rotate(6deg)}.sv-persona-body{z-index:2}.sv-persona-title{font-size:26px;font-weight:900;color:#0f172a;margin:0 0 12px;letter-spacing:-.5px}.sv-persona-desc{font-size:15px;color:#64748b;font-weight:500;line-height:1.6}@media(max-width:1200px){.sv-subjects-grid{gap:14px}}@media(max-width:992px){.sv-rail{position:fixed;top:0;left:0;bottom:0;z-index:1000;transform:translate(0);transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.sv-rail--collapsed{transform:translate(-100%);width:96px}.sv-mobile-overlay{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:999}.sv-main{width:100%}.sv-subjects-grid,.sv-persona-grid{grid-template-columns:repeat(2,1fr)}.sv-class-grid{gap:16px}}@media(max-width:768px){.sv-subjects-grid,.sv-persona-grid{grid-template-columns:1fr}.sv-topbar{padding:0 20px;height:60px}.sv-content{padding:24px 20px}.sv-hero-title,.sv-subjects-title,.sv-persona-title,.book-title{font-size:24px}.sv-hero-sub,.sv-subjects-sub,.sv-persona-desc,.book-subtitle{font-size:14px}.sv-dash-btn,.sv-logout-btn{padding:8px 12px;font-size:12px}.sv-logo-text{font-size:18px}.book-shelf{grid-template-columns:1fr}}@media(max-width:576px){.sv-class-grid{flex-direction:column;align-items:stretch}.sv-subject-card,.sv-persona-card{padding:20px}.sv-card-icon,.sv-persona-icon-wrap{width:60px;height:60px;border-radius:14px}.sv-card-icon svg,.sv-persona-icon-wrap svg{width:28px;height:28px}.sv-card-title,.sv-persona-title{font-size:18px}.sv-card-accent{width:70px;height:70px}.book-card{min-height:250px}}@media(max-width:992px){.st-topbar{padding:0 16px}.st-chapter-strip{padding:12px 16px 8px}.st-mainview{padding:16px}.st-toolbar-rail{width:48px}}@media(max-width:768px){.st-topbar{height:auto;min-height:54px;padding:8px 12px;flex-wrap:wrap;gap:8px}.st-breadcrumb,.st-bc-link,.st-bc-current,.st-bc-sep{font-size:11px}.st-chapter-title{font-size:18px}.st-mainview{padding:12px}.st-bottom-bar{padding:12px;gap:6px;flex-wrap:wrap;justify-content:center}.st-bottom-btn{padding:8px 12px;font-size:12px}}@media(max-width:576px){.st-toolbar-rail{display:none}.st-topbar-right{width:100%;justify-content:flex-end}.st-chapter-strip{padding:10px 12px}.st-bottom-btn{flex:1 1 calc(50% - 12px);text-align:center;justify-content:center}}body{overflow-x:hidden}@media(max-width:1024px){.login-card{width:90%;max-width:920px}.left-section{width:40%}.right-section{width:60%;clip-path:polygon(15% 0,100% 0,100% 100%,0 100%)}}@media(max-width:768px){.login-card{flex-direction:column;width:85%;max-width:480px;height:auto;min-height:550px}.left-section,.right-section{width:100%;height:auto}.left-section{padding:30px 20px;background:transparent}.right-section{padding:30px 20px;clip-path:none;flex:1;border-radius:0 0 30px 30px}.logo{max-width:160px}.welcome-text{font-size:28px;text-align:center}.password-field,.login-btn{width:90%;max-width:300px}.login-card:after{display:none}form[style*="align-items: center"]>.password-field,form[style*="align-items: center"]>.login-btn,form[style*="align-items: center"]>button{width:90%;max-width:none}}@media(max-width:480px){.login-card{width:92%;border-radius:24px;min-height:500px}.right-section{border-radius:0 0 24px 24px;padding:24px 16px}.logo{max-width:130px}.password-field,.login-btn{width:90%}form[style*="align-items: center"]>.password-field,form[style*="align-items: center"]>.login-btn,form[style*="align-items: center"]>button{width:90%}}h1{font-size:clamp(1.5rem,4vw,2.5rem)}h2{font-size:clamp(1.2rem,3.5vw,2rem)}h3{font-size:clamp(1.1rem,3vw,1.5rem)}.dashboard-grid{display:grid;gap:16px}.podcast-player-real{padding:16px;border-radius:16px}.player-row{display:flex;align-items:center;gap:12px;width:100%}.player-bar-wrap{flex:1;position:relative;height:8px;border-radius:4px;background:#0000001a;overflow:hidden}.seek-slider{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.active-subject-progress-wrap{width:100%;display:flex;align-items:center;gap:12px}.active-subject-progress-bar{flex:1;height:8px;border-radius:4px;background:#e2e8f0;overflow:hidden}@media(max-width:1024px){.dashboard-content{padding:24px}.dashboard-grid{grid-template-columns:repeat(3,1fr)}.dashboard-sidebar{width:80px}}@media(max-width:768px){.dashboard-content{padding:16px;height:auto;min-height:100vh;overflow-y:auto}.dashboard-grid{grid-template-columns:repeat(2,1fr)}.dashboard-sidebar{position:fixed;bottom:0;left:0;width:100%;height:60px;flex-direction:row;justify-content:space-around;padding:0;border-right:none;border-top:1px solid #E2E8F0;z-index:1000}.sidebar-item .sidebar-label{display:none}.dashboard-window{flex-direction:column;padding-bottom:60px}.podcast-track-selector{flex-direction:column}.player-row{flex-wrap:wrap;justify-content:center}.player-bar-wrap{min-width:100%;order:-1;margin-bottom:12px}.active-subject-card-inner{padding:20px}}@media(max-width:480px){.dashboard-grid{grid-template-columns:1fr}.dashboard-action-card{padding:16px;flex-direction:row;align-items:center;gap:16px;text-align:left}.dashboard-action-card .card-icon{font-size:24px;margin-bottom:0}.player-time{font-size:.8rem}.btn-pomodoro{width:100%}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes spinGear{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .4s ease forwards}.slide-up{animation:slideUp .4s ease forwards}.selection-page{max-width:1200px;margin:0 auto;padding:56px 40px;text-align:center}.selection-grid{display:flex;flex-wrap:wrap;gap:20px;justify-content:center;align-items:stretch;margin-top:32px}.selection-tile{background:var(--surface);border:2px solid var(--border);border-radius:24px;padding:48px 36px;width:320px;display:flex;flex-direction:column;align-items:center;gap:20px;cursor:pointer;transition:transform .2s,box-shadow .2s,border-color .2s;box-shadow:var(--card-shadow)}.selection-tile:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001a;border-color:var(--primary)}.selection-tile.active{border-color:var(--primary);background:var(--primary-light)}.selection-tile.disabled{opacity:.6;cursor:not-allowed;filter:grayscale(1)}.selection-tile.disabled:hover{transform:none;box-shadow:none;border-color:var(--border)}.tile-icon{font-size:72px}.tile-label{font-size:var(--fs-h2);font-weight:var(--fw-bold);color:var(--text)}.tile-badge{font-size:var(--fs-sm);background:#e0e0e0;padding:6px 12px;border-radius:8px;color:var(--text-secondary)}.persona-tile{width:360px;text-align:left;align-items:flex-start;align-self:stretch}.persona-tile .tile-icon{font-size:52px}.persona-tile .tile-desc{font-size:var(--fs-base);color:var(--text-secondary);line-height:var(--lh-snug)}.breadcrumb-nav{display:flex;align-items:center;gap:10px;font-size:var(--fs-base);color:var(--text-secondary);flex-wrap:wrap;margin-bottom:12px}.breadcrumb-sep{color:var(--text-secondary);opacity:.5;font-size:1.1em}.breadcrumb-item.link{cursor:pointer;color:var(--primary);font-weight:600}.breadcrumb-item.link:hover{text-decoration:underline}.profile-link-icon:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a;border-color:var(--primary)!important;background:var(--primary-light)!important}.persona-badge{background:#e8f4f8;color:var(--primary);padding:4px 10px;border-radius:20px;font-size:.75rem;font-weight:700}#root,.layout,.main-content{max-width:none!important;margin:0!important;padding:0!important}..study-table-layout{display:flex;flex-direction:column;height:100%;width:calc(100vw - 420px)!important;margin-left:calc(-50vw + 50%)!important;padding:32px 56px;box-sizing:border-box}.study-table-header{margin-bottom:32px}.study-table-header h1{margin:0 0 8px;font-size:var(--fs-h1);font-weight:var(--fw-bold)}.st-page-title{font-size:1.6rem;margin:0;letter-spacing:-.02em;color:#1e1040;font-weight:700;white-space:nowrap}.st-page-subtitle-row{display:flex;gap:8px;align-items:center;margin-top:6px;flex-wrap:wrap}.st-page-subtitle,.st-chapter-subtitle{color:#64748b;font-size:.9rem;font-weight:600}.st-page-subtitle-sep{color:#cbd5e1}.study-table-header-row{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.persona-switcher{display:flex;gap:6px;flex-shrink:0}.persona-pill{padding:8px 20px;border-radius:20px;border:1.5px solid var(--border);background:var(--surface);color:var(--text-secondary);font-size:var(--fs-sm);font-weight:var(--fw-semibold);cursor:pointer;transition:all .18s ease;white-space:nowrap}.persona-pill:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-light)}.persona-switcher-row{display:flex;justify-content:center;width:100%;margin-top:8px}.persona-switcher--icons{display:flex;align-items:center;gap:8px;padding:4px 8px;background:#f8fafcf2;border:1px solid #E2E8F0;border-radius:20px;box-shadow:0 4px 12px #0f172a0a}.persona-icon-btn{width:44px;height:44px;border-radius:14px;border:1.5px solid #E2E8F0;background:#fff;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;position:relative;transition:border-color .2s ease,background .2s ease,box-shadow .2s ease;padding:0}.persona-icon-btn:hover{transform:scale(1.15) translateY(-5px);z-index:10}.persona-icon-btn img{width:28px;height:28px;object-fit:contain}.persona-icon-btn:hover,.persona-icon-btn.active{border-color:#7c3aed;background:#eef2ff;box-shadow:0 8px 14px #7c3aed26}.persona-icon-btn:hover:after,.persona-icon-btn:focus-visible:after{opacity:1}.persona-icon-btn:after{content:attr(data-label);position:absolute;top:-28px;left:50%;transform:translate(-50%);padding:4px 6px;border-radius:999px;background:#0f172aeb;color:#fff;font-size:.65rem;font-weight:700;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .2s ease;z-index:5}.read-aloud-toolbar-row{display:flex;justify-content:flex-end;margin-bottom:8px;margin-top:0}.st-sticky-controls{position:sticky;top:0;z-index:60;padding-top:6px;padding-bottom:6px;margin-top:-6px;background:linear-gradient(180deg,#f5f3fff2,#f5f3ffa6 55%,#f5f3ff00);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.sv-rail-hover-zone{position:fixed;left:0;top:0;height:100vh;width:14px;z-index:65;background:transparent}.read-aloud-toolbar-split{display:inline-flex;align-items:center;gap:12px;position:relative}.read-aloud-tool-pill{display:inline-flex;align-items:center;padding:4px 6px;border-radius:20px;background:linear-gradient(135deg,#fff,#f8fafc);border:1px solid rgba(139,92,246,.15);box-shadow:0 4px 12px #8b5cf60f}.read-aloud-tool-pill--view{padding:3px 5px}.read-aloud-tool-pill--transport{padding:4px 6px}.read-aloud-play-cluster{display:inline-flex;align-items:center;gap:6px}.read-aloud-view-toggle-btn{width:40px;height:40px;border-radius:14px;border:none;background:transparent;color:#64748b;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .18s ease,color .18s ease,transform .18s ease;flex-shrink:0;position:relative}.read-aloud-view-toggle-btn:hover{transform:translateY(-1px);background:#7c3aed14;color:#5b21b6}.read-aloud-view-toggle-btn:after{content:attr(data-label);position:absolute;bottom:-26px;left:50%;transform:translate(-50%);padding:4px 8px;border-radius:999px;background:#0f172aeb;color:#fff;font-size:.64rem;font-weight:700;opacity:0;pointer-events:none;transition:opacity .18s ease;white-space:nowrap;z-index:10}.read-aloud-view-toggle-btn:hover:after,.read-aloud-view-toggle-btn:focus-visible:after{opacity:1}.read-aloud-action-group{display:flex;align-items:center;gap:6px}.read-aloud-action-btn,.read-aloud-play-btn{width:36px;height:36px;border-radius:50%;border:none;background:#f8fafc;color:#64748b;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;position:relative;font-size:.7rem}.read-aloud-action-btn:hover,.read-aloud-play-btn:hover{transform:translateY(-1px);background:#eef2ff;color:#4338ca}.read-aloud-action-btn.active{background:#7c3aed;color:#fff;box-shadow:0 6px 12px #7c3aed33}.read-aloud-action-btn:after,.read-aloud-play-btn:after{content:attr(data-label);position:absolute;bottom:-24px;left:50%;transform:translate(-50%);padding:4px 6px;border-radius:999px;background:#0f172aeb;color:#fff;font-size:.64rem;opacity:0;pointer-events:none;transition:opacity .2s ease}.read-aloud-action-btn:hover:after,.read-aloud-play-btn:hover:after{opacity:1}.read-aloud-play-btn{width:40px;height:40px;background:linear-gradient(135deg,#8b5cf6,#6d28d9);color:#fff;box-shadow:0 4px 10px #7c3aed33}.read-aloud-play-btn:hover{background:linear-gradient(135deg,#7c3aed,#5b21b6);box-shadow:0 6px 14px #7c3aed47}.persona-pill.active{background:var(--primary);color:#fff;border-color:var(--primary);box-shadow:0 2px 8px #1976d240}.qbank-root{padding:12px 20px}.qbank-simple-header{margin-bottom:14px}.qbank-simple-title{margin:0;font-size:2rem;font-weight:800;color:#1f1147}.qbank-simple-subtitle{margin:6px 0 0;color:#475569;font-weight:600}.qbank-topbar{display:flex;justify-content:flex-end;align-items:center;width:100%;margin-bottom:18px}.qbank-simple-chapter-row{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.qbank-simple-chapter-pill{min-width:36px;height:36px;border-radius:999px;border:1px solid #ddd6fe;background:#f5f3ff;color:#6d28d9;font-size:.82rem;font-weight:700;padding:0 12px;cursor:pointer;white-space:nowrap}.qbank-go-row{margin-top:10px;display:flex;justify-content:center}.qbank-go-btn{border:0;border-radius:999px;padding:8px 22px;font-size:.88rem;font-weight:700;color:#fff;background:linear-gradient(135deg,#7c3aed,#ec4899);cursor:pointer;box-shadow:0 4px 12px #7c3aed3d}.qbank-go-btn--sm{padding:6px 18px;font-size:.82rem}.qbank-go-btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.qbank-simple-selector{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:12px 16px;margin-bottom:10px}.qbank-simple-subject{font-weight:800;color:#334155;margin-bottom:10px}.qbank-simple-chapter-pill.active{background:linear-gradient(135deg,#7c3aed,#ec4899);color:#fff;border-color:transparent;box-shadow:0 6px 14px #7c3aed47}.qbank-simple-question-card{background:linear-gradient(135deg,#f8efff,#fcecff);border:1px solid #e9d5ff;border-radius:18px;padding:18px;box-shadow:0 6px 16px #7c3aed14}.glb-page{padding:24px 0}.glb-topbar{display:flex;justify-content:flex-start;margin-bottom:18px}.glb-back-btn{background:#7c3aed1a;border:1px solid rgba(124,58,237,.25);color:#6d28d9;border-radius:999px;padding:8px 14px;font-size:.9rem;font-weight:700;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.glb-back-btn:hover{transform:translateY(-1px);box-shadow:0 10px 20px #7c3aed1f}.glb-hero{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:18px;background:linear-gradient(135deg,#7c3aed1f,#ec48991a);border:1px solid rgba(124,58,237,.18);border-radius:18px;margin-bottom:16px;animation:glbPop .36s cubic-bezier(.16,1,.3,1) both}.glb-title{margin:0;font-size:clamp(1.35rem,1.3rem + 1vw,2rem);font-weight:900;color:#1f1147}.glb-subtitle{margin:6px 0 0;color:#475569;font-weight:600}.glb-badge{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:#ffffffbf;box-shadow:0 10px 24px #7c3aed2e}.glb-podium{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:16px}.glb-podium-card{position:relative;border-radius:18px;padding:14px 12px 12px;border:1px solid rgba(226,232,240,.9);background:#fffffff2;box-shadow:0 10px 26px #0f172a0f;overflow:hidden;transform:translateY(0);transition:transform .18s ease,box-shadow .18s ease;animation:glbFloat .9s ease-in-out infinite alternate}.glb-podium-card:hover{transform:translateY(-2px);box-shadow:0 16px 34px #7c3aed29}.glb-podium-card.is-me{border-color:#7c3aed59;box-shadow:0 16px 40px #7c3aed2e}.glb-podium-card.rank-1{background:linear-gradient(135deg,#ffd7002e,#fffffff2);border-color:#ffd70059}.glb-podium-card.rank-2{background:linear-gradient(135deg,#94a3b838,#fffffff2)}.glb-podium-card.rank-3{background:linear-gradient(135deg,#f59e0b2e,#fffffff2)}.glb-podium-medal{position:absolute;top:10px;left:10px;font-size:1.15rem}.glb-avatar{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;margin:6px auto 10px;font-weight:900;color:#4c1d95;background:#ffffffd9;border:1px solid rgba(124,58,237,.18)}.glb-name{text-align:center;font-weight:800;color:#1f1147;font-size:.95rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.glb-points{text-align:center;margin-top:4px;font-weight:900;color:#6d28d9}.glb-rank{position:absolute;bottom:10px;right:12px;font-weight:900;color:#0f172a59}.glb-list{padding:8px 10px;border-radius:18px}.glb-row{display:flex;align-items:center;justify-content:space-between;padding:12px 10px;border-bottom:1px solid rgba(226,232,240,.9);transition:background .18s ease}.glb-row:last-child{border-bottom:none}.glb-row:hover{background:#7c3aed0f}.glb-row.is-me{background:#7c3aed1a}.glb-row-left{display:flex;align-items:center;gap:10px;min-width:0}.glb-row-rank{width:46px;color:#0f172a8c;font-weight:800}.glb-row-avatar{width:34px;height:34px;border-radius:12px;display:grid;place-items:center;font-weight:900;color:#4c1d95;background:#ffffffd9;border:1px solid rgba(124,58,237,.14);flex:0 0 auto}.glb-row-name{font-weight:750;color:#1f1147;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.glb-row-points{font-weight:900;color:#6d28d9;white-space:nowrap}@keyframes glbPop{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes glbFloat{0%{transform:translateY(0)}to{transform:translateY(-3px)}}@media(max-width:720px){.glb-podium{grid-template-columns:1fr}}.qbank-header{background:linear-gradient(135deg,#6366f1,#a855f7);color:#fff;padding:32px;border-radius:24px;margin-bottom:32px;box-shadow:0 10px 25px -5px #6366f166,0 8px 10px -6px #a855f766;display:flex;flex-direction:column;align-items:flex-start;gap:8px}.qbank-title{margin:0;font-size:2.25rem;font-weight:800;color:#fff!important}.qbank-subtitle{margin:0;color:#ffffffd9!important;font-size:1rem;max-width:640px}.qbank-section{background:#fff;padding:24px;border-radius:16px;margin-bottom:24px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;border:1px solid #e5e7eb}.qbank-section-label{font-size:1.1rem;font-weight:700;color:#1f2937;margin-bottom:16px}.qbank-selected-label{color:var(--text-secondary)}.qbank-pill-button{padding:10px 22px;border-radius:999px;border:1px solid var(--primary);background:var(--surface);color:var(--text-secondary);cursor:pointer;font-weight:700;transition:all .2s ease}.qbank-pill-button.active{background:var(--primary);color:#fff;box-shadow:var(--card-shadow)}.qbank-dropdown-shell{position:relative;margin-bottom:22px;max-width:600px}.qbank-dropdown-toggle{width:100%;padding:14px 18px;border-radius:20px;border:1px solid var(--border);background:var(--surface);display:flex;align-items:center;justify-content:space-between;cursor:pointer;color:var(--text);font-weight:700}.qbank-dropdown-panel{position:absolute;top:100%;left:0;width:100%;margin-top:10px;background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:18px;box-shadow:0 20px 50px #0f172a14;z-index:10}.qbank-dropdown-list{display:flex;flex-direction:column;gap:12px}.qbank-option{display:flex;align-items:center;gap:10px;cursor:pointer;color:var(--text)}.qbank-option input{accent-color:var(--primary)}.qbank-option-label{color:var(--text);font-weight:600}.qbank-section{margin-bottom:28px}.qbank-section-label{margin-bottom:16px;color:var(--text);font-weight:700}.qbank-card-grid{display:grid;gap:18px}.qbank-card{padding:18px;border-radius:24px;border:1px solid var(--border);background:var(--surface);box-shadow:var(--card-shadow)}.qbank-chip-row{margin-top:14px;display:flex;flex-wrap:wrap;gap:10px}.qbank-chip{padding:10px 16px;border-radius:999px;border:1px solid rgba(147,51,234,.25);background:#f8f0ffbf;color:#5b21b6;cursor:pointer;font-weight:600;transition:transform .2s ease,background .2s ease,border-color .2s ease,color .2s ease}.qbank-chip:hover{transform:translateY(-1px);background:#eee8fff2}.qbank-chip.selected{border-color:#c084fc;background:#f5d0fe;color:#7c3aed}.qbank-question-card-list{display:grid;gap:24px}.qbank-question-card-shell{perspective:1200px}.qbank-question-card{position:relative;min-height:280px;border-radius:28px;transform-style:preserve-3d;transition:transform .7s ease}.qbank-question-card.flipped{transform:rotateY(180deg)}.qbank-question-face{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:28px;padding:28px;backface-visibility:hidden;display:flex;flex-direction:column;justify-content:space-between;box-shadow:0 26px 60px #7c3aed1f;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.qbank-question-front{background:linear-gradient(135deg,#f8f0ffcc,#f5d0fe80);border:1px solid rgba(167,139,250,.35)}.qbank-question-back{transform:rotateY(180deg);background:linear-gradient(135deg,#fff0f5cc,#ec489926);border:1px solid rgba(244,114,182,.25)}.qbank-question-meta{margin-bottom:10px;font-size:.9rem;font-weight:700;color:#7c3aed}.qbank-question-meta-back{color:#be185d}.qbank-question-title{margin-bottom:16px;font-size:1.25rem;font-weight:800;color:#1f2937}.qbank-question-answer{color:#4b5563;line-height:1.8;font-size:1rem}.qbank-question-answer-back{color:#5b21b6}.qbank-long-answer-icon-wrap{position:relative;flex-shrink:0}.qbank-long-answer-icon{width:28px;height:28px;border-radius:50%;border:1.5px solid #ddd6fe;background:#f5f3ff;color:#7c3aed;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s ease,border-color .15s ease;flex-shrink:0}.qbank-long-answer-icon:hover{background:#ede9fe;border-color:#7c3aed}.qbank-long-answer-tooltip{display:none;position:absolute;right:0;top:34px;width:320px;background:#fff;border:1.5px solid #ddd6fe;border-radius:14px;padding:14px 16px;box-shadow:0 12px 32px #7c3aed26;font-size:.88rem;color:#334155;line-height:1.65;z-index:50}.qbank-long-answer-icon-wrap:hover .qbank-long-answer-tooltip{display:block}.qbank-dropdown-arrow{display:inline-block;transition:transform .2s ease}.qbank-dropdown-arrow.open{transform:rotate(180deg)}.qbank-stats{margin-bottom:20px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;color:var(--text-secondary)}.qbank-stat-label{color:var(--text-secondary);font-weight:600}.qbank-empty{padding:24px;border-radius:24px;background:#f5d4ff73;border:1px solid rgba(168,85,247,.3);color:#7c3aed}.study-table-body{gap:24px;align-items:flex-start;position:relative}.study-table-mainview{flex:1;width:100%;margin:0;min-width:0;background:var(--surface);border-radius:20px;padding:48px 52px;box-sizing:border-box;box-shadow:var(--card-shadow);border:1px solid var(--border);min-height:680px;transition:none}.study-table-mainview.full-width{flex:1}.mic-top-center{display:flex;justify-content:center;align-items:center;flex:1}.btn-mic-top{width:50px;height:50px;border-radius:50%;border:2px solid rgba(147,51,234,.3);background:linear-gradient(135deg,#ffffffe6,#f8fafce6);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:20px;transition:all .3s ease;box-shadow:0 4px 12px #0000001a}.btn-mic-top:hover{transform:scale(1.05);box-shadow:0 6px 16px #9333ea33;border-color:#9333ea80}.btn-mic-top.recording{background:linear-gradient(135deg,#ec489933,#9333ea33);border-color:#ec489999;animation:pulse 1.5s ease-in-out infinite}.btn-mic-top.holding{transform:scale(1.1);background:linear-gradient(135deg,#9333ea4d,#ec48994d);border-color:#ec4899b3;box-shadow:0 8px 20px #9333ea4d}.btn-mic-top.transcribing{opacity:.7;cursor:not-allowed}.btn-mic.holding{transform:scale(1.1);background:linear-gradient(135deg,#9333ea33,#ec489933);border-color:#ec489980}.voice-wave-container{display:flex;align-items:center;justify-content:center;gap:5px;height:80px;pointer-events:none}.voice-wave-bar{width:5px;height:4px;border-radius:4px;background:linear-gradient(180deg,#7c3aed,#ec4899);transition:height .1s ease}.btn-send.wave-active{position:relative;overflow:hidden;background:linear-gradient(135deg,#9333ea4d,#ec48994d);transform:scale(1.05)}.btn-send.wave-active:before{content:"";position:absolute;top:50%;left:50%;width:100%;height:100%;background:radial-gradient(circle,#9333ea66,#ec489966);border-radius:inherit;transform:translate(-50%,-50%) scale(0);animation:clickWave .6s ease-out;pointer-events:none}@keyframes clickWave{0%{transform:translate(-50%,-50%) scale(0);opacity:1}to{transform:translate(-50%,-50%) scale(2);opacity:0}}.study-table-mainview.flashcards-mode{background:transparent;border:none;box-shadow:none;padding:0;min-height:unset}.tools-menu{position:fixed;top:76px;right:0;width:380px;z-index:90;background:var(--surface);border-radius:20px;transition:opacity .2s}.tools-menu.expanded{padding:20px;box-shadow:0 8px 32px #00000026;border:1px solid var(--border);max-height:calc(100vh - 88px);overflow-y:auto}.tools-menu.collapsed{background:transparent;box-shadow:none;border:none;padding:0;width:auto;display:flex;flex-direction:column;align-items:flex-end;gap:0}.tools-icon-column{display:flex;flex-direction:column;align-items:center;gap:4px;padding:6px 4px;margin-top:40px;max-height:calc(100vh - 150px);overflow-y:auto;overflow-x:hidden;scrollbar-width:none;-ms-overflow-style:none;background:var(--surface);border-radius:12px 0 0 12px;border:1px solid var(--border);border-right:none;box-shadow:-2px 4px 12px #0000001a}.tools-icon-column::-webkit-scrollbar{display:none}.tool-icon-btn{width:44px;height:44px;border-radius:12px;border:2px solid transparent;background:var(--surface);font-size:22px;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 2px 6px #00000014;transition:all .15s ease;flex-shrink:0}.tool-icon-btn:hover{transform:translate(-2px);box-shadow:0 4px 10px #0000001f;background:#f0f4ff}.tool-icon-btn.active{border-color:var(--primary);background:#e8f0fe;box-shadow:0 0 0 2px var(--primary-light)}.tools-menu-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.tools-menu-header h2{margin:0;font-size:var(--fs-h3);font-weight:var(--fw-semibold)}.tools-menu-toggle{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:6px 8px;cursor:pointer;font-size:var(--fs-sm);color:var(--text-secondary)}.tools-menu-toggle:hover{background:#f0f0f0}.tools-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.tools-menu.collapsed .tools-grid,.tools-menu.collapsed h2{display:none}.tool-tile{background:var(--surface);border-radius:14px;padding:16px 10px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;cursor:pointer;border:2px solid transparent;transition:all .2s ease;box-shadow:0 2px 6px #0000000a}.tool-tile:hover{transform:translateY(-2px);box-shadow:0 6px 12px #00000014}.tool-tile.active{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-light)}.tool-icon{font-size:28px;margin-bottom:2px}.tool-name{font-size:var(--fs-xs);font-weight:var(--fw-semibold);text-align:center;line-height:1.2}.tile-red{background:#fff5f5}.tile-blue{background:#f0f8ff}.tile-green{background:#f0fff4}.tile-purple{background:#faf5ff}.tile-orange{background:#fff3e0}.tile-teal{background:#e6fffa}.tile-yellow{background:ivory}.tile-pink{background:#fff5f7}.tile-grey{background:#f7fafc}.tile-gold{background:#fefcbf}.tile-dark{background:#2d3748;color:#fff}.tile-sky{background:#ebf8ff}.tools-menu-toggle-floating{position:fixed;top:76px;right:0;z-index:91;background:var(--primary);color:#fff;border:none;border-radius:20px 0 0 20px;padding:10px 14px;font-size:var(--fs-sm);font-weight:var(--fw-bold);cursor:pointer;box-shadow:-2px 2px 10px #1976d24d;transition:all .2s;display:flex;align-items:center;gap:4px;white-space:nowrap}.tools-menu-toggle-floating:hover{filter:brightness(1.1)}.tools-menu.expanded .tools-menu-header .tools-menu-toggle-floating{position:static;background:transparent;color:var(--text-secondary);border:none;box-shadow:none;padding:4px;font-size:1.2rem}.tools-menu.expanded .tools-menu-header .tools-menu-toggle-floating:hover{background:#f0f0f0;color:var(--primary)}.ask-bot-view{display:flex;flex-direction:column;height:100%;overflow:hidden}.ask-header{margin-bottom:20px;border-bottom:1px solid rgba(156,39,176,.1);padding-bottom:16px}.ask-chat-window{flex:1;padding:10px 0 20px;overflow-y:auto;display:flex;flex-direction:column;gap:20px;margin-bottom:10px;scrollbar-width:thin}.chat-placeholder{text-align:center;color:#7b1fa2;margin:auto;animation:floatChat 3s ease-in-out infinite;background:#fffc;padding:24px 32px;border-radius:20px;box-shadow:0 8px 24px #9c27b014;border:1px solid rgba(255,255,255,.8)}@keyframes floatChat{0%{transform:translateY(0)}50%{transform:translateY(-8px)}to{transform:translateY(0)}}.chat-bubble{max-width:80%;padding:16px 20px;border-radius:20px;font-size:1.15rem;line-height:1.6;box-shadow:0 4px 15px #0000000d;animation:chatPopIn .4s cubic-bezier(.175,.885,.32,1.275) forwards;opacity:0;transform:translateY(10px) scale(.95)}@keyframes chatPopIn{to{opacity:1;transform:translateY(0) scale(1)}}.gear-spin{animation:spinGear 2s linear infinite}.chat-bubble.user{background:linear-gradient(135deg,#9c27b0,#e91e63);color:#fff;align-self:flex-end;border-bottom-right-radius:4px;box-shadow:0 6px 20px #e91e6340}.chat-bubble.bot{background:#fffffff2;border:1px solid rgba(156,39,176,.15);align-self:flex-start;border-bottom-left-radius:4px;display:flex;gap:12px;align-items:flex-start;color:#333;box-shadow:0 6px 20px #9c27b014}.play-tts{background:none;border:none;cursor:pointer;color:#9c27b0;font-size:1.2rem;padding:0;transition:transform .2s}.play-tts:hover{transform:scale(1.1)}.ask-input-area{display:flex;gap:12px;align-items:center;background:#fffc;padding:12px;border-radius:24px;box-shadow:0 8px 32px #9c27b01a;border:1px solid rgba(255,255,255,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.ask-input-area textarea{flex:1;resize:none;padding:14px 18px;border-radius:16px;border:1px solid rgba(156,39,176,.2);background:#ffffffe6;font-family:inherit;font-size:1.15rem;line-height:1.5;color:#0f172a;caret-color:#0f172a;transition:all .3s;box-shadow:inset 0 2px 6px #00000005}.ask-input-area textarea:disabled{opacity:1;color:#64748b;-webkit-text-fill-color:#64748b}.ask-input-area textarea:focus{outline:none;border-color:#e91e63;box-shadow:0 0 0 3px #e91e6326,inset 0 2px 6px #00000005}.ask-question-input{flex:1;height:54px;padding:0 18px;border-radius:16px;border:1px solid rgba(156,39,176,.2);background:#fffffff2;color:#0f172a;caret-color:#0f172a;font-family:inherit;font-size:1.05rem;line-height:54px;transition:all .2s ease}.ask-question-input::placeholder{color:#94a3b8;opacity:1}.ask-question-input:focus{outline:none;border-color:#e91e63;box-shadow:0 0 0 3px #e91e6326}.ask-question-input:disabled{opacity:1;color:#64748b;-webkit-text-fill-color:#64748b}.btn-mic{height:56px;width:56px;border-radius:50%;border:none;background:linear-gradient(135deg,#f3e5f5,#e1bee7);color:#9c27b0;font-size:1.4rem;cursor:pointer;transition:all .3s cubic-bezier(.175,.885,.32,1.275);box-shadow:0 4px 12px #9c27b026;display:flex;align-items:center;justify-content:center}.btn-mic:hover{transform:scale(1.1) translateY(-2px);background:linear-gradient(135deg,#e1bee7,#ce93d8);box-shadow:0 6px 16px #9c27b040}.btn-mic.recording{background:linear-gradient(135deg,#ff4081,#f50057);color:#fff;animation:pulseMic 1.2s infinite;box-shadow:0 4px 15px #f5005766}@keyframes pulseMic{0%{transform:scale(1);box-shadow:0 0 #f50057b3}70%{transform:scale(1.05);box-shadow:0 0 0 10px #f5005700}to{transform:scale(1);box-shadow:0 0 #f5005700}}.btn-mic.transcribing{background:linear-gradient(135deg,#ff9800,#f57c00);color:#fff;cursor:not-allowed;opacity:.85}.btn-send{height:56px;padding:0 28px;border-radius:28px;border:none;background:linear-gradient(135deg,#9c27b0,#e91e63);color:#fff;font-weight:var(--fw-bold);font-size:var(--fs-sm);cursor:pointer;transition:all .3s cubic-bezier(.175,.885,.32,1.275);box-shadow:0 6px 16px #e91e634d;text-transform:uppercase;letter-spacing:.5px}.btn-send:hover:not(:disabled){transform:translateY(-2px) scale(1.05);box-shadow:0 8px 24px #e91e6366}.btn-send:disabled{background:#e0e0e0;color:#9e9e9e;box-shadow:none;cursor:not-allowed;transform:none}.listening-indicator{display:flex;align-items:center;gap:8px;margin-top:8px;padding:8px 14px;border-radius:10px;font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--text-secondary);background:var(--bg);border:1px solid var(--border)}.pulse-dot{width:10px;height:10px;border-radius:50%;background:#f44;display:inline-block;animation:pulseGlow 1s infinite alternate;flex-shrink:0}.pulse-dot.recording{background:#e53935;box-shadow:0 0 0 3px #e5393540}.pulse-dot.transcribing{background:#ff9800;box-shadow:0 0 0 3px #ff980040;animation:pulseGlow .6s infinite alternate}@keyframes pulseGlow{0%{opacity:1;transform:scale(1)}to{opacity:.4;transform:scale(1.3)}}.ask-header-row{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.lang-selector{display:flex;align-items:center;gap:6px}.lang-selector label{font-size:1.1rem;cursor:default}.lang-selector select{padding:6px 12px;border-radius:12px;border:1px solid rgba(156,39,176,.2);font-size:var(--fs-sm);background:#ffffffe6;color:#333;cursor:pointer;transition:all .2s;box-shadow:0 2px 8px #9c27b00d}.lang-selector select:focus{outline:none;border-color:#9c27b0;box-shadow:0 0 0 3px #9c27b01a}.tts-controls{display:flex;gap:4px;align-items:center;flex-shrink:0}.btn-tts{background:#fffc;border:1px solid rgba(156,39,176,.2);border-radius:8px;cursor:pointer;font-size:var(--fs-sm);padding:6px 10px;transition:all .3s cubic-bezier(.175,.885,.32,1.275);color:#9c27b0;box-shadow:0 2px 8px #9c27b00d}.btn-tts:hover{background:linear-gradient(135deg,#f3e5f5,#e1bee7);border-color:#ce93d8;color:#7b1fa2;transform:translateY(-2px) scale(1.05);box-shadow:0 4px 12px #9c27b026}.btn-tts.speaking{background:linear-gradient(135deg,#e91e63,#c2185b);color:#fff;border-color:#c2185b;animation:pulseSpeaking 1.5s infinite alternate;box-shadow:0 4px 15px #e91e634d}@keyframes pulseSpeaking{0%{transform:scale(1);box-shadow:0 4px 15px #e91e634d}to{transform:scale(1.1);box-shadow:0 6px 20px #e91e6380}}.podcast-track-selector{display:flex;gap:12px;margin-bottom:12px}.podcast-track-card{display:flex;align-items:center;gap:12px;padding:10px 16px;cursor:pointer;border:2px solid transparent;border-radius:12px;background:linear-gradient(135deg,#fff,#f8f9fa);box-shadow:0 2px 8px #0000001a;transition:all .3s cubic-bezier(.4,0,.2,1);flex:1;position:relative;overflow:hidden}.podcast-track-card:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(156,39,176,.1),transparent);transition:left .5s}.podcast-track-card:hover:before{left:100%}.podcast-track-card:hover{border-color:#9c27b0;transform:translateY(-2px) scale(1.01);box-shadow:0 6px 20px #9c27b033}.podcast-track-card.active{border-color:#9c27b0;background:linear-gradient(135deg,#f3e5f5,#e1bee7);box-shadow:0 4px 15px #9c27b04d}.track-icon{font-size:1.4rem;transition:transform .2s}.podcast-track-card:hover .track-icon{transform:scale(1.1)}.track-info{display:flex;flex-direction:column;gap:2px}.track-info strong{font-size:var(--fs-base);font-weight:var(--fw-semibold)}.track-desc{font-size:var(--fs-xs);color:var(--text-secondary)}.podcast-sticky-top{flex-shrink:0;padding-bottom:12px;border-bottom:1px solid rgba(156,39,176,.1)}.podcast-player-real{padding:12px 0 0;background:transparent;position:relative;overflow:visible}.podcast-player-real:before{display:none}.player-row{display:flex;align-items:center;gap:12px;justify-content:center}.player-bar-wrap{width:50%;max-width:480px;flex:none;position:relative;height:8px;background:linear-gradient(90deg,#0000001a,#0000000d);border-radius:6px;cursor:pointer;box-shadow:inset 0 1px 2px #0000001a;transition:all .2s}.player-bar-wrap:hover{height:10px;box-shadow:inset 0 2px 4px #00000026}.player-bar-fill{position:absolute;left:0;top:0;height:100%;background:linear-gradient(90deg,#9c27b0,#ba68c8);border-radius:6px;pointer-events:none;transition:width .1s linear;box-shadow:0 0 10px #9c27b04d}.podcast-transcript-scroll{flex:1;overflow-y:auto;padding-top:8px;min-height:0}.podcasts-view{display:flex;flex-direction:column;height:100%;min-height:0;gap:0}.seek-slider{position:absolute;left:0;top:50%;transform:translateY(-50%);width:100%;height:20px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;outline:none;cursor:pointer;margin:0}.seek-slider::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;border-radius:50%;background:var(--primary);border:2px solid #fff;box-shadow:0 1px 4px #0000004d;cursor:pointer}.seek-slider::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--primary);border:2px solid #fff;cursor:pointer}.player-btn{padding:10px 24px;border-radius:24px;border:none;font-weight:var(--fw-semibold);cursor:pointer;font-size:var(--fs-sm);transition:all .2s}.player-btn.play{background:var(--primary);color:#fff}.player-btn.pause{background:#ff9800;color:#fff}.player-btn.pause:hover{filter:brightness(1.1)}.player-btn.stop{background:#f0f0f0;color:var(--text);border:1px solid var(--border)}.player-btn.stop:hover{background:#e0e0e0}.transcript-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:24px;margin-bottom:8px}.transcript-toggle h4{margin:0;font-size:var(--fs-h3);font-weight:var(--fw-bold);color:var(--text-primary)}.btn-transcript-toggle{padding:8px 20px;border:1.5px solid var(--primary);border-radius:20px;background:var(--surface);color:var(--primary);font-size:var(--fs-sm);font-weight:var(--fw-semibold);cursor:pointer;transition:all .2s}.btn-transcript-toggle:hover{background:var(--primary-light)}.transcript-box{min-height:40px;margin-top:4px;line-height:1.9;font-size:var(--fs-base);color:var(--text-primary);white-space:pre-wrap;word-break:break-word;position:relative}.transcript-body{display:block}.transcript-word{display:inline-block;margin-right:.18rem;padding:0 .1rem;border-radius:6px;transition:all .15s cubic-bezier(.34,1.56,.64,1)}.transcript-word.active{background:#7c3aed;color:#fff;padding:.15rem .35rem;margin:0;border-radius:8px;transform:translateY(-2px) scale(1.05);box-shadow:0 4px 14px #7c3aed66;font-weight:600}.transcript-phrase-active{display:inline-block;background:#7c3aed;color:#fff;border-radius:8px;padding:.15rem .38rem;margin:0 .08rem;transform:translateY(-2px) scale(1.03);box-shadow:0 4px 14px #7c3aed59;font-weight:600}.transcript-body span{white-space:pre-wrap}.markdown-view{font-size:1rem;color:#1e293b}.markdown-view p{margin:0 0 1.1em;line-height:1.9}.markdown-view p:last-child{margin-bottom:0}.markdown-view h1,.markdown-view h2,.markdown-view h3,.markdown-view h4{margin:1.4em 0 .5em;line-height:1.35;font-weight:700;color:#0f172a}.markdown-view h1{font-size:1.5rem}.markdown-view h2{font-size:1.25rem}.markdown-view h3{font-size:1.1rem}.markdown-view h4{font-size:1rem}.markdown-view ul,.markdown-view ol{margin:.5em 0 1em 1.4em;padding:0}.markdown-view li{margin-bottom:.45em;line-height:1.75}.markdown-view strong{font-weight:700;color:#0f172a}.markdown-view em{font-style:italic}.markdown-view blockquote{border-left:3px solid #c4b5fd;margin:1em 0;padding:.5em 1em;color:#475569;background:#c4b5fd14;border-radius:0 8px 8px 0}.reading-highlight-view{white-space:pre-wrap;line-height:1.9;color:#1e293b;font-size:1.02rem}.reading-word{display:inline}.reading-phrase-active{background:#7c3aed;color:#fff;border-radius:8px;padding:.12rem .3rem;box-shadow:0 3px 10px #7c3aed47}mark.reading-mark{background:#7c3aed;color:#fff;border-radius:6px;padding:.1rem .25rem;box-shadow:0 2px 8px #7c3aed40;font-style:inherit;font-weight:inherit}.qbank-card--highlighted{border-color:#7c3aed!important;background:linear-gradient(135deg,#f5f3ff,#fff)!important;box-shadow:0 8px 30px #7c3aed26!important;transform:scale(1.02);transition:all .3s cubic-bezier(.34,1.56,.64,1)}.qbank-card--highlighted .qbank-question-title{color:#7c3aed!important}.podcast-player-real{position:relative;z-index:50}.pyq-view .pyq-controls{display:flex;gap:16px;margin-bottom:24px}.pyq-year-btn{padding:8px 16px;border-radius:12px;border:1.5px solid #e2e8f0;background:#fff;color:#64748b;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 4px #00000005}.pyq-year-btn:hover{border-color:#7c3aed;color:#7c3aed;background:#f5f3ff;transform:translateY(-1px);box-shadow:0 4px 12px #7c3aed14}.pyq-year-btn.active{background:#7c3aed;color:#fff;border-color:#7c3aed;box-shadow:0 4px 14px #7c3aed59;transform:scale(1.05)}.pyq-controls select{padding:10px;border-radius:8px;border:1px solid var(--border)}.pdf-viewer-mock{min-height:400px;display:flex;align-items:center;justify-content:center;background:#e0e0e0;font-weight:600;color:#666}.video-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.video-tile{padding:16px;text-align:center;cursor:pointer}.video-tile.active{border-color:var(--primary)}.video-thumbnail{height:120px;background:#333;color:#fff;display:flex;align-items:center;justify-content:center;border-radius:8px;margin-bottom:12px;font-size:2rem}.player-canvas{background:#000;color:#fff;height:360px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1.2rem;margin-top:24px}.popquiz-view .quiz-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.quiz-score{font-weight:600;color:var(--primary)}.quiz-card{padding:20px 28px 16px;margin-bottom:0;border-radius:28px;background:#fff;border:none;box-shadow:0 16px 40px #7c3aed14,inset 0 0 0 1px #ec48991a;position:relative;overflow:hidden}.quiz-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:6px;background:linear-gradient(90deg,#7c3aed,#ec4899)}.quiz-q{font-size:1.15rem;font-weight:800;margin-bottom:12px;line-height:1.4;color:#1e1b4b;letter-spacing:-.3px}.quiz-options{display:flex;flex-direction:column;gap:7px;margin-bottom:0}.quiz-opt{padding:8px 14px;border-radius:12px;border:2px solid transparent;background:#f8fafcf2;text-align:left;font-size:.93rem;font-weight:600;color:#334155;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease;display:flex;align-items:center;position:relative;overflow:hidden}.quiz-opt:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 14px 32px #0f172a1f}.quiz-opt.option-0{background:linear-gradient(135deg,#e0e7ff,#c7d2fe);border-color:#4338ca;color:#312e81}.quiz-opt.option-1{background:linear-gradient(135deg,#f5d0fe,#f0abfc);border-color:#a855f7;color:#6d28d9}.quiz-opt.option-2{background:linear-gradient(135deg,#fef3c7,#fde68a);border-color:#d97706;color:#92400e}.quiz-opt.option-3{background:linear-gradient(135deg,#cffafe,#a5f3fc);border-color:#0ea5e9;color:#0c4a6e}.quiz-opt:not(:disabled):hover{transform:translateY(-2px) scale(1.01);box-shadow:0 10px 24px #0f172a1f}.quiz-opt.option-0:not(:disabled):hover{background:#dbeafe}.quiz-opt.option-1:not(:disabled):hover{background:#ddd6fe}.quiz-opt.option-2:not(:disabled):hover{background:#fde68a}.quiz-opt.option-3:not(:disabled):hover{background:#bae6fd}.quiz-opt.selected{box-shadow:0 10px 28px #7c3aed2e;border-color:#7c3aed;transform:translateY(-1px)}.quiz-opt .option-text{flex:1;line-height:1.6}.correct-indicator{display:inline-flex;align-items:center;justify-content:center;margin-left:12px;color:#4338ca;font-size:1.1rem;font-weight:700}.quiz-opt:disabled{cursor:default}.quiz-opt.correct{background:linear-gradient(135deg,#dcfce7,#bbf7d0)!important;border-color:#16a34a!important;color:#14532d!important;box-shadow:0 8px 20px #16a34a33;animation:popIn .4s cubic-bezier(.34,1.56,.64,1)}.quiz-opt.correct .opt-letter{background:#16a34a!important;color:#fff!important}.quiz-opt.wrong{background:linear-gradient(135deg,#fff1f2,#ffe4e6);border-color:#fb7185;color:#9f1239;animation:shake .4s ease-in-out}.quiz-opt.reveal{background:#f0fff4;border-color:#4ade80;color:#166534;opacity:.8}@keyframes shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-6px)}40%,80%{transform:translate(6px)}}@keyframes popIn{0%{transform:scale(.95);opacity:.5}50%{transform:scale(1.02);opacity:1}to{transform:scale(1)}}.quiz-explanation-modal{position:relative}.quiz-modal-close{position:absolute;top:18px;right:18px;width:34px;height:34px;border:none;border-radius:9999px;background:#0f172a14;color:#0f172a;font-size:1.2rem;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .18s ease,transform .18s ease}.quiz-modal-close:hover{background:#0f172a29}.opt-letter{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;background:#e2e8f0;color:#64748b;font-weight:700;font-size:.85rem;margin-right:12px;transition:all .3s;flex-shrink:0}.quiz-opt:hover .opt-letter{background:#7c3aed;color:#fff}.quiz-opt.wrong .opt-letter{background:#e11d48;color:#fff}.quiz-explanation-box{margin-top:24px;padding:24px;border-radius:20px;background:#f8fafc;border:2px solid transparent;animation:popIn .5s cubic-bezier(.34,1.56,.64,1)}.quiz-explanation-box:has(.correct-heading){background:linear-gradient(135deg,#f0fff4,#fff);border-color:#bbf7d0;box-shadow:0 10px 30px #4ade801a}.quiz-explanation-box:has(.wrong-heading){background:linear-gradient(135deg,#fff1f2,#fff);border-color:#fecdd3;box-shadow:0 10px 30px #fb71851a}.correct-heading{margin:0 0 12px;color:#16a34a;font-size:1.4rem;font-weight:800;display:flex;align-items:center;gap:8px}.wrong-heading{margin:0 0 12px;color:#e11d48;font-size:1.4rem;font-weight:800;display:flex;align-items:center;gap:8px}.quiz-explanation-text{font-size:1.05rem;line-height:1.6;color:#334155;padding-top:12px;border-top:1px solid rgba(0,0,0,.08)}.quiz-explanation-text strong{color:#1e293b;font-weight:700;margin-right:6px}.quiz-nav{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}.quiz-icon-btn{width:56px;height:56px;border-radius:18px;border:1px solid #d1d5db;background:#fff;color:#111827;font-size:1.65rem;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease;box-shadow:0 6px 18px #0f172a14}.quiz-icon-btn:hover:not(:disabled){transform:translateY(-3px) scale(1.03);box-shadow:0 10px 22px #00000029}.quiz-icon-btn:disabled{opacity:.35;cursor:default;transform:none}.quiz-icon-btn.skip{border-color:#cbd5e0;padding:0;background:#f8fafc;color:#475569}.quiz-icon-btn.skip:hover:not(:disabled){border-color:#64748b;background:#e2e8f0}.quiz-icon-btn.quit{border-color:#f43f5e;background:#fef2f2;color:#b91c1c}.quiz-icon-btn.quit:hover:not(:disabled){background:#fee2e2;border-color:#dc2626}.quiz-icon-btn.previous,.quiz-icon-btn.next{background:#f8fafc;color:#334155}.quiz-icon-btn.previous:hover:not(:disabled),.quiz-icon-btn.next:hover:not(:disabled){background:#eef2ff}.quiz-icon-btn.submit{border-color:#48bb78;background:#f0fff4}.quiz-icon-btn.submit:hover:not(:disabled){border-color:#276749;background:#c6f6d5}.quiz-icon-btn.next{border-color:var(--primary);background:#ebf8ff}.quiz-icon-btn.next:hover:not(:disabled){background:#bee3f8}.quiz-content-scroll{scrollbar-width:thin;scrollbar-color:rgba(124,58,237,.3) transparent}.quiz-content-scroll::-webkit-scrollbar{width:6px}.quiz-content-scroll::-webkit-scrollbar-track{background:transparent}.quiz-content-scroll::-webkit-scrollbar-thumb{background:#7c3aed4d;border-radius:10px;transition:background .2s}.quiz-content-scroll::-webkit-scrollbar-thumb:hover{background:#7c3aed80}.quiz-btn-primary{padding:10px 24px;border-radius:24px;border:none;background:var(--primary);color:#fff;font-weight:var(--fw-bold);font-size:var(--fs-sm);cursor:pointer;transition:filter .2s,transform .15s}.quiz-btn-primary:not(:disabled):hover{filter:brightness(1.1);transform:translateY(-1px)}.quiz-btn-primary:disabled{background:var(--primary);color:#fff;opacity:.45;cursor:not-allowed}.quiz-btn-secondary{padding:10px 20px;border-radius:24px;border:1.5px solid var(--border);background:var(--surface);color:var(--text-secondary);font-weight:var(--fw-semibold);font-size:var(--fs-sm);cursor:pointer;transition:all .18s}.quiz-btn-secondary:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-light)}.quiz-btn-danger{padding:10px 20px;border-radius:24px;border:none;background:#f44336;color:#fff;font-weight:var(--fw-bold);font-size:var(--fs-sm);cursor:pointer;transition:filter .2s}.quiz-btn-danger:hover{filter:brightness(1.1)}.quiz-btn-quit{padding:5px 12px;border-radius:20px;border:1.5px solid #f44336;background:transparent;color:#f44336;font-size:var(--fs-xs);font-weight:var(--fw-bold);cursor:pointer;transition:all .18s}.quiz-btn-quit:hover{background:#f44336;color:#fff}.quiz-quit-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:3000;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.quiz-quit-modal{width:340px;max-width:90vw;padding:32px 28px;border-radius:20px;text-align:left;animation:slideUp .2s ease}.quiz-quit-stats{display:flex;align-items:stretch;gap:0;border:1px solid var(--border);border-radius:14px;overflow:hidden;margin-top:4px}.quit-stat-item{flex:1;display:flex;flex-direction:column;align-items:center;padding:20px 16px;gap:6px}.quit-stat-item.attempted{background:#f0fff4}.quit-stat-item.skipped{background:#fff5f5}.quit-stat-num{font-size:2.2rem;font-weight:800;line-height:1}.quit-stat-item.attempted .quit-stat-num{color:#276749}.quit-stat-item.skipped .quit-stat-num{color:#c53030}.quit-stat-label{font-size:var(--fs-caps);font-weight:var(--fw-semibold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em}.quit-stat-divider{width:1px;background:var(--border);flex-shrink:0}.quiz-explanation-modal{width:420px;max-width:90vw;padding:32px;border-radius:20px;text-align:left;animation:slideUp .2s ease;background:#fff;box-shadow:0 25px 50px #0003}.quiz-explanation-modal .quiz-explanation-text{border-top:none;padding-top:0}.quiz-explanation-modal .quiz-explanation-text p{margin:0 0 12px;font-size:.95rem;line-height:1.6}.quiz-explanation-modal .quiz-explanation-text p:last-child{margin-bottom:0}.mt-4{margin-top:24px}.flashcards-wide{max-width:900px}.flashcard-open{cursor:default;min-height:220px;padding:36px 40px}.flashcard-topic{font-size:var(--fs-h3);font-weight:var(--fw-bold);color:var(--text);line-height:var(--lh-snug)}.flashcard-divider{height:1px;background:var(--border);margin:12px 0}.flashcard-explanation{font-size:var(--fs-base);color:var(--text-secondary);line-height:var(--lh-relaxed)}.flashcard-hint{font-size:var(--fs-xs);color:var(--text-secondary)}.flashcards-rich{display:flex;flex-direction:column;gap:16px;width:100%;max-width:980px;margin:0 auto;flex:1;min-height:0}.flashcards-fast .flashcards-topbar{display:flex;justify-content:space-between;align-items:center;gap:16px}.flashcards-tag{display:inline-flex;padding:8px 16px;border-radius:999px;font-size:.8rem;font-weight:700;background:#a78bfa2e;color:#6d28d9;letter-spacing:.02em}.flashcards-topbar h2{margin:0;font-size:1.5rem;font-weight:700;color:#4c1d95}.flashcards-summary{padding:10px 16px;border-radius:999px;background:#a78bfa1f;color:#6d28d9;font-weight:700}.flashcards-stage{display:flex;align-items:stretch;justify-content:center;gap:20px;width:100%;flex:1;min-height:0;overflow:hidden}.flashcard-nav-button{width:48px;height:48px;border:none;border-radius:50%;background:linear-gradient(135deg,#fffffff2,#f8f1fff2);color:#7c3aed;font-size:1.5rem;cursor:pointer;box-shadow:0 8px 32px #8b5cf626,inset 0 2px 4px #fffc;transition:all .3s cubic-bezier(.34,1.56,.64,1);display:flex;align-items:center;justify-content:center;flex-shrink:0;align-self:center}.flashcard-nav-button:hover:not(:disabled){transform:translateY(-4px) scale(1.08);background:linear-gradient(135deg,#fbcfe8,#f472b6);color:#fff;box-shadow:0 16px 40px #f472b659,inset 0 2px 4px #fff6}.flashcard-nav-button:active:not(:disabled){transform:translateY(0) scale(.95);box-shadow:0 4px 16px #f472b633}.flashcard-nav-button:disabled{opacity:.4;cursor:not-allowed;transform:none;background:#f1f5f9;color:#94a3b8;box-shadow:none}.flashcard-frame.single-face{position:relative;width:min(100%,420px);border-radius:28px;box-shadow:inset 0 0 0 1px #ffffffbf,0 24px 60px #8b5cf61f;background:linear-gradient(180deg,#fffffffa,#f8f5fff2);transition:transform .3s ease,box-shadow .3s ease;display:flex;flex-direction:column;border:1px solid rgba(196,181,253,.3);cursor:default;flex:1;min-height:0;overflow:hidden;perspective:1400px}.flashcard-frame.single-face:hover{transform:translateY(-2px);box-shadow:inset 0 0 0 1px #ffffffd9,0 30px 70px #8b5cf629}.flashcard-content-static{padding:16px 24px;display:flex;flex-direction:column;flex:1;min-height:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(167,139,250,.3) transparent}.flashcard-top-row{display:none}.flashcard-top-row .qna-tag{background:#7c3aed1a;padding:6px 14px;border-radius:14px;font-size:.85rem;text-transform:uppercase;letter-spacing:.05em;color:#6d28d9}.flashcard-top-row .card-counter{font-size:1rem;color:#8b5cf6}.flashcard-speak-btn{width:34px;height:34px;border:none;border-radius:50%;background:linear-gradient(135deg,#ede9fee6,#ddd6fee6);color:#7c3aed;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .2s ease;box-shadow:0 2px 8px #7c3aed26}.flashcard-speak-btn:hover{background:linear-gradient(135deg,#a78bfa,#8b5cf6);color:#fff;box-shadow:0 4px 14px #7c3aed59;transform:scale(1.08)}.flashcard-scroll-area{display:flex;flex-direction:column;flex:1;min-height:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(167,139,250,.3) transparent}.flashcard-section.question-section{padding-bottom:10px;flex-shrink:0}.flashcard-section.answer-section{padding-top:10px;flex-shrink:0}.flashcard-title{margin:0;font-size:clamp(1rem,2.2vw,1.4rem);line-height:1.4;font-weight:800;color:#4c1d95}.flashcard-separator{height:2px;background:linear-gradient(90deg,transparent,rgba(167,139,250,.3),transparent);width:100%;margin:6px 0;flex-shrink:0}.flashcard-back-content{margin:0;color:#334155;font-size:clamp(.82rem,1.5vw,.98rem);line-height:1.6;white-space:pre-wrap;overflow-wrap:break-word}.flashcards-action-row{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}.flashcards-action-row.single-action{justify-content:center}.flashcard-action-button{min-width:220px;border:none;border-radius:24px;padding:16px 28px;font-size:1.05rem;font-weight:700;color:#fff;background:linear-gradient(135deg,#a78bfa,#8b5cf6);cursor:pointer;box-shadow:0 12px 30px #a78bfa33;transition:all .2s cubic-bezier(.34,1.56,.64,1)}.flashcard-action-button.secondary{background:#ede9fecc;color:#6d28d9;border:1px solid rgba(167,139,250,.3);box-shadow:none}.flashcard-action-button:hover{transform:translateY(-2px);box-shadow:0 16px 40px #a78bfa4d}.flashcard-action-button.secondary:hover{background:#ede9fe;box-shadow:0 8px 24px #a78bfa26}.flashcard-progress-row{display:flex;align-items:center;justify-content:center;gap:12px;flex-shrink:0;padding-bottom:12px}.flashcard-progress-bar{height:8px;width:200px;border-radius:999px;background:#ede9fe80;overflow:hidden;flex-shrink:0}.flashcard-progress-label{font-size:.9rem;font-weight:700;color:#8b5cf6;white-space:nowrap;flex-shrink:0}.flashcard-progress-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,#c4b5fd,#a78bfa);transition:width .3s ease}@keyframes flashcardFlipInNext{0%{opacity:0;transform:perspective(1400px) rotateY(80deg) translate(60px) scaleX(.6);transform-origin:left center;filter:brightness(.6) blur(1px);box-shadow:-20px 0 40px #7c3aed66;background:linear-gradient(180deg,#ffdcebfa,#ffc8e1f2)}25%{opacity:.5;transform:perspective(1400px) rotateY(50deg) translate(36px) scaleX(.75);transform-origin:left center;filter:brightness(.8) blur(.5px);background:linear-gradient(180deg,#ffe6f2fa,#ffd2ebf2)}55%{opacity:.85;transform:perspective(1400px) rotateY(18deg) translate(12px) scaleX(.95);transform-origin:left center;filter:brightness(1.05) blur(0px);background:linear-gradient(180deg,#fff0f8fa,#fce6f5f2)}75%{opacity:.95;transform:perspective(1400px) rotateY(-4deg) translate(-3px) scaleX(1.01);transform-origin:left center;filter:brightness(1.02);background:linear-gradient(180deg,#fff8fcfa,#faf0faf2)}to{opacity:1;transform:perspective(1400px) rotateY(0) translate(0) scaleX(1);transform-origin:left center;filter:brightness(1);box-shadow:none;background:linear-gradient(180deg,#fffffffa,#f8f5fff2)}}@keyframes flashcardFlipInPrev{0%{opacity:0;transform:perspective(1400px) rotateY(-80deg) translate(-60px) scaleX(.6);transform-origin:right center;filter:brightness(.6) blur(1px);box-shadow:20px 0 40px #7c3aed66;background:linear-gradient(180deg,#ffdcebfa,#ffc8e1f2)}25%{opacity:.5;transform:perspective(1400px) rotateY(-50deg) translate(-36px) scaleX(.75);transform-origin:right center;filter:brightness(.8) blur(.5px);background:linear-gradient(180deg,#ffe6f2fa,#ffd2ebf2)}55%{opacity:.85;transform:perspective(1400px) rotateY(-18deg) translate(-12px) scaleX(.95);transform-origin:right center;filter:brightness(1.05) blur(0px);background:linear-gradient(180deg,#fff0f8fa,#fce6f5f2)}75%{opacity:.95;transform:perspective(1400px) rotateY(4deg) translate(3px) scaleX(1.01);transform-origin:right center;filter:brightness(1.02);background:linear-gradient(180deg,#fff8fcfa,#faf0faf2)}to{opacity:1;transform:perspective(1400px) rotateY(0) translate(0) scaleX(1);transform-origin:right center;filter:brightness(1);box-shadow:none;background:linear-gradient(180deg,#fffffffa,#f8f5fff2)}}.flashcard-animate-flip-next{animation:flashcardFlipInNext .6s cubic-bezier(.22,1,.36,1) forwards;transform-style:preserve-3d;backface-visibility:hidden;will-change:transform,opacity}.flashcard-animate-flip-prev{animation:flashcardFlipInPrev .6s cubic-bezier(.22,1,.36,1) forwards;transform-style:preserve-3d;backface-visibility:hidden;will-change:transform,opacity}@keyframes pageTurnIn{0%{transform:rotateY(-180deg) translate(-100px) translateZ(-50px);transform-origin:left center;opacity:0;filter:brightness(.5) blur(2px)}20%{transform:rotateY(-144deg) translate(-80px) translateZ(-30px);transform-origin:left center;opacity:.3;filter:brightness(.7) blur(1px);box-shadow:-5px 5px 20px #9333ea66}40%{transform:rotateY(-108deg) translate(-60px) translateZ(-10px);transform-origin:left center;opacity:.6;filter:brightness(.9) blur(.5px);box-shadow:-3px 3px 30px #ec489980}60%{transform:rotateY(-72deg) translate(-40px) translateZ(10px);transform-origin:left center;opacity:.8;filter:brightness(1.1) blur(0px);box-shadow:-2px 2px 25px #9333ea66}80%{transform:rotateY(-36deg) translate(-20px) translateZ(30px);transform-origin:left center;opacity:.95;filter:brightness(1.05) blur(0px);box-shadow:-1px 1px 15px #ec48994d}to{transform:rotateY(0) translate(0) translateZ(0);transform-origin:left center;opacity:1;filter:brightness(1) blur(0px);box-shadow:0 0 10px #9333ea33}}@keyframes pageShadow{0%{box-shadow:-10px 10px 40px #0000004d,inset 5px 0 20px #0003}50%{box-shadow:-5px 5px 60px #9333ea66,inset 2px 0 30px #ec48994d}to{box-shadow:0 0 20px #ec489933,inset 0 0 10px #9333ea1a}}.flashcard-animate-flip{animation:pageTurnIn .6s cubic-bezier(.25,.46,.45,.94) forwards;transform-style:preserve-3d;backface-visibility:hidden;position:relative;animation-timing-function:ease-in-out}.flashcard-animate-flip:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,#9333ea1a,#ec48990d,#9333ea1a);border-radius:inherit;z-index:-1;animation:pageShadow .6s ease-in-out;pointer-events:none}.flashcard-animate-flip:after{content:"";position:absolute;top:0;left:0;width:3px;height:100%;background:linear-gradient(to bottom,#9333ea99,#ec489999,#9333ea99);border-radius:inherit;z-index:10;animation:pageEdge .6s ease-in-out}@keyframes pageEdge{0%{opacity:0;transform:translate(-10px)}50%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(0)}}.flashcard-frame.flipping{perspective:3000px;transform-style:preserve-3d;position:relative;overflow:visible}.flashcard-frame{transition:all .3s cubic-bezier(.25,.46,.45,.94);position:relative;background:linear-gradient(135deg,#fffffffa,#f8fafcfa);border:1px solid rgba(147,51,234,.15);border-radius:8px;box-shadow:0 4px 20px #0000001a,0 1px 3px #0000000d}.flashcard-frame:hover{transform:translateY(-2px);box-shadow:0 8px 30px #9333ea33,0 2px 6px #0000001a;border-color:#ec48994d}.flashcard-frame.flipping{box-shadow:-8px 8px 40px #9333ea4d,inset 3px 0 20px #ec489933;border-color:#ec489966}@media(max-width:720px){.flashcards-rich{padding:20px}.flashcards-stage{flex-direction:column}.flashcard-nav-button{width:100%}}.chapters-carousel-wrapper{position:relative;display:flex;align-items:center;gap:8px}.chapters-carousel{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none;padding:8px 4px 16px;flex:1}.chapters-carousel::-webkit-scrollbar{display:none}.chapter-card-carousel{min-width:320px;max-width:380px;flex-shrink:0;scroll-snap-align:start;display:flex;flex-direction:column;gap:10px;padding:28px 24px;cursor:pointer;transition:transform .2s,box-shadow .2s}.chapter-card-carousel:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001a}.carousel-btn{flex-shrink:0;width:40px;height:40px;border-radius:50%;border:1px solid var(--border);background:var(--surface);font-size:1.5rem;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px #00000014;color:var(--text);transition:background .15s}.carousel-btn:hover{background:var(--primary-light);color:var(--primary)}.transcript-toggle{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.transcript-toggle h4{margin:0;font-size:var(--fs-xs);color:var(--text-secondary);font-weight:var(--fw-semibold)}.btn-transcript-toggle{background:none;border:1px solid var(--border);border-radius:6px;padding:2px 10px;font-size:var(--fs-xs);cursor:pointer;color:var(--text-secondary)}.btn-transcript-toggle:hover{background:#f0f0f0}@media(max-width:1024px){.study-table-layout{width:100%}.study-table-body{flex-direction:column}.tools-menu{width:100%!important}.tools-menu.expanded{flex:none;margin-top:24px}.study-table-mainview{width:100%!important;min-height:50vw}}@media(max-width:768px){.selection-grid{gap:12px}.selection-tile,.persona-tile{width:100%;max-width:320px;padding:20px}.selection-page{padding:24px 16px}.page h1,.ask-page h1{font-size:1.3rem}.breadcrumb-nav{font-size:.8rem;row-gap:4px}.dashboard-grid{grid-template-columns:repeat(2,1fr);gap:12px}.dashboard-topbar{flex-direction:column;align-items:flex-start;gap:12px}.btn-start-session{width:100%;text-align:center}.tools-menu.expanded{position:fixed;top:0;left:0;height:100vh;width:100vw;background:var(--surface);z-index:2000;margin:0;overflow-y:auto;padding:24px;box-shadow:none;border:none}.tools-menu.collapsed{display:none}.tools-menu-toggle-floating{top:auto;bottom:24px;right:24px;transform:none!important;box-shadow:0 4px 16px #1976d266;font-size:1rem;padding:12px 20px;border-radius:30px}.podcast-track-selector{flex-direction:column}.ask-chat-window{min-height:350px;max-height:50vh}.chat-bubble{max-width:90%}.player-seek{font-size:.75rem}.player-btn{padding:10px 16px}.flashcard-card{padding:16px;min-height:140px}.chapter-card-carousel{min-width:85vw;max-width:85vw}.hide-on-mobile{display:none!important}}.chapter-list-header{text-align:center}.chapter-list-header h1{margin-bottom:4px}.resource-tabs>h1:first-of-type{text-align:center}.study-table-header h1{text-align:center}.page>h1{text-align:center}.selection-page h1,.dashboard-greeting,.branding-header h1{text-align:center}@media(max-width:992px){.ask-bot-view{padding:16px;border-radius:16px;min-height:400px}.chat-bubble{font-size:1rem;padding:12px 16px}.flashcard-card{min-height:200px}}@media(max-width:768px){.ask-bot-view{padding:12px;min-height:300px}.ask-chat-window{padding:12px;gap:12px}.chat-bubble{font-size:.95rem;max-width:95%}.chat-input-container{flex-direction:column;border-radius:16px;padding:12px}.chat-input-textarea{min-height:60px}.chat-mic-btn,.chat-send-btn{width:100%;justify-content:center}.flashcards-view-inner{padding:0 16px}.flashcard-card{font-size:1.1rem;padding:20px}}
