@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}:root{--bg-primary: #f8f7f5;--bg-secondary: #f0eeeb;--bg-tertiary: #e8e5e0;--bg-elevated: #ffffff;--bg-hover: rgba(139, 92, 246, .06);--surface-glass: rgba(255, 255, 255, .65);--surface-glass-strong: rgba(255, 255, 255, .82);--surface-hover: rgba(139, 92, 246, .05);--surface-deep: rgba(15, 13, 10, .03);--border-subtle: rgba(139, 92, 246, .12);--border-default: rgba(139, 92, 246, .22);--border-strong: rgba(139, 92, 246, .4);--text-primary: #1c1917;--text-secondary: #57534e;--text-muted: #a8a29e;--text-faint: #d6d3d1;--accent-primary: #7c3aed;--accent-primary-hover: #8b5cf6;--accent-secondary: #db2777;--accent-tertiary: #0891b2;--accent-success: #059669;--accent-warning: #d97706;--accent-error: #dc2626;--accent-purple: #7c3aed;--accent-purple-hover: #8b5cf6;--accent-pink: #db2777;--accent-cyan: #0891b2;--accent-green: #059669;--accent-yellow: #d97706;--accent-orange: #ea580c;--accent-blue: #2563eb;--gradient-primary: linear-gradient(135deg, #7c3aed 0%, #db2777 50%, #0891b2 100%);--gradient-accent: linear-gradient(135deg, #8b5cf6 0%, #c026d3 50%, #06b6d4 100%);--gradient-glow: radial-gradient(ellipse at 50% 0%, rgba(124, 58, 237, .08) 0%, transparent 55%), radial-gradient(ellipse at 90% 70%, rgba(219, 39, 119, .06) 0%, transparent 45%), radial-gradient(ellipse at 10% 80%, rgba(8, 145, 178, .07) 0%, transparent 45%);--gradient-grid: linear-gradient(rgba(139, 92, 246, .04) 1px, transparent 1px), linear-gradient(90deg, rgba(139, 92, 246, .04) 1px, transparent 1px);--shadow-xs: 0 1px 2px rgba(28, 25, 23, .06);--shadow-sm: 0 1px 3px rgba(28, 25, 23, .07), 0 1px 2px rgba(28, 25, 23, .04);--shadow-md: 0 4px 6px rgba(28, 25, 23, .04), 0 2px 4px rgba(28, 25, 23, .04), 0 8px 24px rgba(124, 58, 237, .08);--shadow-lg: 0 8px 16px rgba(28, 25, 23, .06), 0 4px 8px rgba(28, 25, 23, .04), 0 16px 48px rgba(124, 58, 237, .1);--shadow-xl: 0 16px 32px rgba(28, 25, 23, .08), 0 8px 16px rgba(28, 25, 23, .05), 0 32px 64px rgba(124, 58, 237, .12);--shadow-glow: 0 0 0 1px rgba(124, 58, 237, .15), 0 4px 20px rgba(124, 58, 237, .18);--shadow-glow-cyan: 0 0 0 1px rgba(8, 145, 178, .12), 0 4px 16px rgba(8, 145, 178, .16);--shadow-glow-pink: 0 0 0 1px rgba(219, 39, 119, .12), 0 4px 16px rgba(219, 39, 119, .16);--shadow-glow-success: 0 0 0 1px rgba(5, 150, 105, .12), 0 4px 16px rgba(5, 150, 105, .16);--radius-xs: 4px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 20px;--radius-2xl: 28px;--transition-fast: .12s cubic-bezier(.4, 0, .2, 1);--transition-normal: .22s cubic-bezier(.4, 0, .2, 1);--transition-slow: .38s cubic-bezier(.4, 0, .2, 1);--spring-bounce: cubic-bezier(.34, 1.56, .64, 1)}*{margin:0;padding:0;box-sizing:border-box}.matrix-bg{position:fixed;top:0;left:0;width:100%;height:100%;z-index:-1;pointer-events:none}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg-primary);background-image:var(--gradient-glow),var(--gradient-grid),linear-gradient(rgba(139,92,246,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(139,92,246,.03) 1px,transparent 1px);background-size:100% 100%,36px 36px,24px 24px,24px 24px;background-attachment:fixed;color:var(--text-primary);min-height:100vh;line-height:1.5;overflow-x:hidden;max-width:100vw;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::selection{background:#7c3aed2e;color:var(--text-primary)}.app{min-height:100vh;display:flex;flex-direction:column;overflow-x:hidden}.header{display:flex;justify-content:space-between;align-items:center;padding:0 2rem;height:64px;background:var(--surface-glass-strong);backdrop-filter:blur(24px) saturate(1.8);-webkit-backdrop-filter:blur(24px) saturate(1.8);border-bottom:1px solid var(--border-subtle);position:sticky;top:0;z-index:100;box-shadow:var(--shadow-sm)}.header:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent 0%,rgba(124,58,237,.3) 20%,rgba(219,39,119,.5) 50%,rgba(8,145,178,.3) 80%,transparent 100%);opacity:.8;animation:header-shimmer 4s ease-in-out infinite}@keyframes header-shimmer{0%,to{opacity:.6;transform:scaleX(.98)}50%{opacity:1;transform:scaleX(1)}}.header-left{display:flex;align-items:center;gap:1.5rem}.logo{display:flex;align-items:center;gap:.75rem;text-decoration:none}.logo-icon{width:38px;height:38px;display:flex;align-items:center;justify-content:center;background:var(--gradient-primary);border-radius:10px;color:#fff;box-shadow:var(--shadow-glow);position:relative;overflow:hidden;flex-shrink:0}.logo-icon:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,rgba(255,255,255,.25) 0%,rgba(255,255,255,.05) 40%,transparent 60%);border-radius:inherit}.logo-icon:after{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border-radius:12px;border:1px solid rgba(124,58,237,.3);animation:logo-pulse 3s ease-in-out infinite}@keyframes logo-pulse{0%,to{opacity:0;transform:scale(1)}50%{opacity:.5;transform:scale(1.08)}}.logo-text{font-size:1.2rem;font-weight:800;background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:-.03em;line-height:1}.header-tagline{font-size:.78rem;color:var(--text-muted);padding-left:1rem;border-left:1px solid var(--border-subtle);font-weight:400;letter-spacing:.01em}.nav{display:flex;gap:.25rem}.auth-area{display:flex;align-items:center;gap:.75rem}.auth-actions{display:flex;gap:.5rem}.auth-user{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:var(--text-secondary)}.auth-name{display:flex;align-items:center;gap:.4rem}.auth-role-badge{font-size:.68rem;padding:.12rem .45rem;border-radius:999px;background:#0596691f;color:var(--accent-green);font-weight:600;letter-spacing:.02em}.auth-btn{padding:.4rem 1rem;border-radius:var(--radius-md);border:1px solid transparent;font-size:.82rem;font-weight:500;cursor:pointer;transition:all var(--transition-normal);font-family:inherit;letter-spacing:.01em}.auth-btn.ghost{background:var(--surface-glass);color:var(--text-secondary);border-color:var(--border-subtle);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.auth-btn.ghost:hover{background:var(--surface-glass-strong);border-color:var(--border-default);color:var(--text-primary);box-shadow:var(--shadow-xs)}.auth-btn.primary{background:var(--gradient-primary);color:#fff;border:none;box-shadow:var(--shadow-glow)}.auth-btn.primary:hover{filter:brightness(1.06);box-shadow:var(--shadow-md);transform:translateY(-1px)}.auth-btn.secondary{background:var(--surface-glass);color:var(--text-secondary);border-color:var(--border-subtle);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.auth-btn:hover{filter:none}.nav-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:transparent;border:1px solid transparent;border-radius:var(--radius-md);color:var(--text-secondary);font-size:.875rem;font-weight:500;cursor:pointer;transition:all var(--transition-normal);font-family:inherit;position:relative}.nav-btn:hover{background:var(--surface-hover);color:var(--text-primary);border-color:var(--border-subtle)}.nav-btn.active{background:var(--gradient-primary);color:#fff;border-color:transparent;box-shadow:var(--shadow-glow);font-weight:600}.nav-btn.active:before{content:"";position:absolute;bottom:-1px;left:50%;transform:translate(-50%);width:16px;height:2px;background:#fff;border-radius:2px 2px 0 0}.main{flex:1;min-height:0;padding:1.75rem 2rem 2.5rem;max-width:none;margin:0;width:100%;display:flex;flex-direction:column;gap:1.5rem}.solve-container{display:flex;flex-direction:column;gap:1.5rem;flex:1;min-height:0;height:100%}.hero-row{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;flex-wrap:wrap;margin-bottom:.5rem;padding:.25rem 0}.hero-section{text-align:left;margin-bottom:0;padding:0;flex:0 1 auto;min-width:0}.hero-section h1{display:flex;align-items:center;justify-content:flex-start;gap:.5rem;font-size:1.5rem;font-weight:800;margin-bottom:.25rem;background:linear-gradient(135deg,var(--text-primary) 0%,var(--accent-purple) 50%,var(--accent-cyan) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:-.03em}.hero-icon{color:var(--accent-cyan);animation:float 3s ease-in-out infinite}.hero-section p{font-size:.875rem;color:var(--text-muted);margin:0}.hero-actions{display:flex;align-items:center;gap:.75rem;flex-shrink:0}.mode-switch{display:flex;justify-content:center;margin-bottom:0;background:var(--surface-glass-strong);padding:.25rem;border-radius:var(--radius-lg);border:1px solid var(--border-subtle);width:fit-content;flex-shrink:0;box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.panel-toggle-row{display:flex;justify-content:flex-end;margin-bottom:.75rem}.panel-toggle{display:inline-flex;align-items:center;gap:.35rem;font-size:.8rem;color:var(--text-secondary);padding:.35rem .6rem;border-radius:var(--radius-lg);background:var(--surface-glass);border:1px solid var(--border-subtle);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:all var(--transition-fast)}.panel-toggle:hover{border-color:var(--border-default);background:var(--surface-glass-strong)}.panel-toggle input[type=checkbox]{width:.9rem;height:.9rem;accent-color:var(--accent-purple)}.mode-option{display:flex;align-items:center;gap:.5rem;padding:.6rem 1.5rem;background:transparent;border:none;border-radius:var(--radius-md);color:var(--text-secondary);font-size:.875rem;font-weight:500;cursor:pointer;transition:all var(--transition-normal);position:relative;font-family:inherit}.mode-option:hover{color:var(--text-primary);background:var(--surface-hover)}.mode-option.active{background:var(--gradient-primary);color:#fff;box-shadow:var(--shadow-glow);font-weight:600}.content-grid{display:grid;grid-template-columns:.95fr 1.3fr;grid-auto-rows:minmax(0,1fr);gap:1.75rem;align-items:stretch;flex:1;min-height:0}.content-grid.resizable{gap:0}.content-grid.resizable>.grid-splitter{position:relative;cursor:col-resize;-webkit-user-select:none;user-select:none;touch-action:none}.content-grid.resizable>.grid-splitter:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;margin:.25rem .45rem;border-radius:999px;background:#94a3b81f;border:1px solid rgba(148,163,184,.18);transition:all var(--transition-fast)}.content-grid.resizable>.grid-splitter:hover:before,.content-grid.resizable>.grid-splitter.is-dragging:before{background:#ec489929;border-color:#ec489961;box-shadow:0 0 0 3px #ec48991f}.home-container{max-width:1480px;margin:0 auto;padding:1.5rem 2rem 2.5rem}.home-hero{background:var(--surface-glass-strong);border:1px solid var(--border-subtle);border-radius:var(--radius-2xl);padding:2.5rem;box-shadow:var(--shadow-lg);text-align:center;margin-bottom:1.5rem;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);position:relative;overflow:hidden}.home-hero-spectacular{position:relative;overflow:hidden;border:1px solid rgba(124,58,237,.25);box-shadow:0 0 0 1px #06b6d41f,var(--shadow-lg)}.home-hero-spectacular:before{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;background:linear-gradient(135deg,#7c3aedd9,#db2777d9 40%,#0891b2d9);filter:blur(20px);opacity:.2;transform:translateZ(0);animation:home-aurora 10s ease-in-out infinite;pointer-events:none}.home-hero-spectacular:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at 20% 20%,rgba(236,72,153,.16),transparent 55%),radial-gradient(ellipse at 80% 30%,rgba(6,182,212,.12),transparent 60%),radial-gradient(ellipse at 45% 90%,rgba(124,58,237,.18),transparent 60%);opacity:.9;pointer-events:none}@keyframes home-aurora{0%{transform:translate(-2%,-3%) scale(1);opacity:.18}50%{transform:translate(3%,2%) scale(1.04);opacity:.26}to{transform:translate(-2%,-3%) scale(1);opacity:.18}}.home-kicker{position:relative;z-index:1;display:flex;justify-content:center;gap:.5rem;flex-wrap:wrap;margin-bottom:.85rem}.kicker-chip{display:inline-flex;align-items:center;gap:.4rem;padding:.25rem .55rem;border-radius:999px;font-size:.75rem;color:var(--text-secondary);background:#ffffffd9;border:1px solid var(--border-subtle);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.home-title{position:relative;z-index:1;display:flex;flex-direction:column;gap:.25rem;margin-bottom:.85rem}.home-title-main{font-size:3.25rem;font-weight:900;letter-spacing:-.04em;background:linear-gradient(135deg,#fff,#c4b5fd 25%,#f9a8d4 55%,#67e8f9);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;line-height:1.1;filter:drop-shadow(0 0 30px rgba(124,58,237,.3))}.home-title-sub{font-size:1rem;color:#e8e8f0d9}.home-lead{position:relative;z-index:1;color:var(--text-secondary);max-width:920px;margin:0 auto .8rem;line-height:1.85}.home-highlight-rotator{position:relative;z-index:1;margin-bottom:1rem}.home-highlight-inner{display:inline-flex;align-items:center;gap:.45rem;padding:.35rem .85rem;border-radius:999px;background:#ffffffeb;border:1px solid rgba(99,102,241,.4);box-shadow:0 0 18px #6366f173;animation:home-highlight-fade .6s ease-out}.home-highlight-dot{width:7px;height:7px;border-radius:999px;background:radial-gradient(circle at 30% 30%,#fff,#ec4899);box-shadow:0 0 10px #ec4899cc}.home-highlight-text{font-size:.9rem;color:var(--text-primary)}@keyframes home-highlight-fade{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.home-actions{display:flex;justify-content:center;gap:.75rem;position:relative;z-index:1}.home-badges{position:relative;z-index:1;margin-top:1.25rem;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem}.home-badge{display:flex;gap:.6rem;align-items:center;padding:1rem;border-radius:var(--radius-xl);background:var(--surface-glass);border:1px solid var(--border-subtle);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);transition:all var(--transition-normal)}.home-badge:hover{box-shadow:var(--shadow-md);border-color:var(--border-default);transform:translateY(-2px)}.home-badge svg{color:var(--accent-cyan);filter:drop-shadow(0 0 8px rgba(8,145,178,.2));flex-shrink:0}.home-badge-title{font-size:.9rem;font-weight:700;color:var(--text-primary)}.home-badge-desc{font-size:.78rem;color:var(--text-muted)}.home-section{margin-top:1.15rem}.home-section-title{font-size:.85rem;color:#e8e8f0bf;margin:.25rem 0 .75rem;text-transform:uppercase;letter-spacing:.12em}.home-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.home-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.home-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.home-card{background:var(--surface-glass);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);padding:1.5rem;position:relative;overflow:hidden;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:var(--shadow-sm);transition:all var(--transition-normal)}.home-card:hover{box-shadow:var(--shadow-lg);border-color:var(--border-default);transform:translateY(-2px)}.home-card-glow:before{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;background:linear-gradient(135deg,#7c3aed4d,#db277733,#0891b233);opacity:.15;filter:blur(16px);pointer-events:none}.home-card-head{display:flex;align-items:center;gap:.65rem;margin-bottom:.5rem;position:relative;z-index:1}.home-card-icon{width:34px;height:34px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:#ffffffe0;border:1px solid rgba(99,102,241,.22)}.home-card-icon.cyan{color:var(--accent-cyan)}.home-card-icon.pink{color:var(--accent-pink)}.home-card-icon.green{color:var(--accent-green)}.home-card p{position:relative;z-index:1;margin:.25rem 0 .75rem;color:var(--text-secondary);line-height:1.8}.home-card h3{margin-bottom:.75rem;font-size:1rem;color:var(--accent-tertiary);position:relative;z-index:1;margin:0}.home-card ul{margin:0;padding-left:1.2rem;color:var(--text-secondary);line-height:1.8;position:relative;z-index:1}@media (max-width: 900px){.home-grid,.home-grid-3,.home-grid-4{grid-template-columns:1fr}.home-badges{grid-template-columns:repeat(2,minmax(0,1fr))}.home-title-main{font-size:2.1rem}.home-title-sub{font-size:.9rem}}.home-mini-card{background:#ffffffd9;border:1px solid rgba(99,102,241,.18);border-radius:var(--radius-xl);padding:1rem 1rem 1.1rem;box-shadow:0 0 0 1px #06b6d40f;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.home-mini-icon{width:38px;height:38px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#7c3aed40,#ec48992e,#06b6d42e);border:1px solid rgba(99,102,241,.22);color:var(--text-primary);margin-bottom:.6rem;box-shadow:var(--shadow-glow)}.home-mini-title{font-weight:800;font-size:.95rem;margin-bottom:.35rem}.home-mini-desc{color:var(--text-secondary);font-size:.85rem;line-height:1.7}.home-section-cta{margin-top:1.25rem}.home-cta{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.25rem 1.5rem;border-radius:var(--radius-xl);border:1px solid rgba(236,72,153,.22);background:radial-gradient(ellipse at 20% 0%,rgba(236,72,153,.2),transparent 55%),radial-gradient(ellipse at 80% 100%,rgba(6,182,212,.16),transparent 60%),#0f172aa6;box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.home-cta-title{font-size:1.05rem;font-weight:900;letter-spacing:-.02em}.home-cta-desc{margin-top:.35rem;font-size:.85rem;color:var(--text-secondary);line-height:1.7}.home-cta-actions{display:flex;gap:.65rem;flex-shrink:0}@media (max-width: 900px){.home-cta{flex-direction:column;align-items:stretch}.home-cta-actions{justify-content:center}}.home-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin-top:.5rem}.home-metric{padding:1rem;border-radius:var(--radius-xl);background:var(--surface-glass-strong);border:1px solid var(--border-subtle);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);transition:all var(--transition-normal)}.home-metric:hover{box-shadow:var(--shadow-md);border-color:var(--border-default)}.home-metric-label{font-size:.72rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em;margin-bottom:.25rem;font-weight:600}.home-metric-value{font-size:1.5rem;font-weight:900;color:var(--accent-cyan);margin-bottom:.25rem;letter-spacing:-.03em}.home-metric-desc{font-size:.8rem;color:var(--text-secondary)}@media (max-width: 1024px){.home-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 640px){.home-metrics{grid-template-columns:1fr}}.home-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem}.home-flow-step{padding:1.25rem;border-radius:var(--radius-xl);background:var(--surface-glass-strong);border:1px solid var(--border-subtle);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);transition:all var(--transition-normal);position:relative;overflow:hidden}.home-flow-step:before{content:attr(data-step);position:absolute;top:-8px;right:8px;font-size:3rem;font-weight:900;color:#7c3aed0f;letter-spacing:-.04em;line-height:1;pointer-events:none}.home-flow-step:hover{box-shadow:var(--shadow-md);border-color:var(--border-default);transform:translateY(-2px)}.home-flow-index{font-size:.72rem;letter-spacing:.15em;text-transform:uppercase;color:var(--accent-cyan);margin-bottom:.35rem;font-weight:700}.home-flow-title{font-weight:800;font-size:.95rem;margin-bottom:.35rem;color:var(--text-primary)}.home-flow-desc{font-size:.85rem;color:var(--text-secondary);line-height:1.7}@media (max-width: 1024px){.home-flow{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 640px){.home-flow{grid-template-columns:1fr}}.content-grid.three-column{grid-template-columns:350px 1fr 1fr;gap:1.25rem}.content-grid.one-column{grid-template-columns:1fr;gap:0}.content-grid.four-column{grid-template-columns:320px 2fr 1.15fr 1.15fr;gap:1.25rem}@media (max-width: 1400px){.content-grid.three-column,.content-grid.four-column{grid-template-columns:320px 1fr}}@media (max-width: 1024px){.content-grid,.content-grid.three-column,.content-grid.four-column{grid-template-columns:1fr}.input-panel,.overview-panel,.model-panel,.analysis-panel{min-width:100%}}@media (max-width: 1024px){.solve-container{min-height:auto}}.panel{background:var(--surface-glass-strong);backdrop-filter:blur(24px) saturate(1.6);-webkit-backdrop-filter:blur(24px) saturate(1.6);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);padding:1.5rem;box-shadow:var(--shadow-md);transition:all var(--transition-normal);display:flex;flex-direction:column;overflow:hidden;height:100%;position:relative}.panel:before{content:"";position:absolute;top:0;left:1.5rem;right:1.5rem;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(139,92,246,.15) 30%,rgba(219,39,119,.15) 70%,transparent 100%);border-radius:0 0 1px 1px}.panel:hover{border-color:var(--border-default);box-shadow:var(--shadow-lg)}.panel-focused{position:fixed;top:80px;right:2rem;bottom:1.5rem;left:2rem;z-index:40;max-width:none;width:auto;height:auto;margin:0;transform:none!important}.panel-dimmed{filter:blur(1px) brightness(.85);pointer-events:none}.input-panel{min-width:250px;min-height:0}.overview-panel{min-width:250px}.model-panel{min-width:250px;display:flex;flex-direction:column;min-height:0}.panel-body{flex:1;min-height:0;overflow-y:auto;overflow-x:auto;padding-right:.25rem}.panel-body::-webkit-scrollbar{width:6px;height:6px}.panel-body::-webkit-scrollbar-track{background:#8b5cf60a;border-radius:3px}.panel-body::-webkit-scrollbar-thumb{background:#8b5cf640;border-radius:3px}.panel-body::-webkit-scrollbar-thumb:hover{background:#8b5cf673}.solver-compare-section{margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--border-default, rgba(255, 255, 255, .08))}.solver-compare-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.75rem}.solver-compare-header h4{font-size:.9375rem;font-weight:600;color:var(--text-primary);margin:0}.solver-compare-btn{padding:.4rem .75rem;font-size:.8125rem;background:var(--surface-glass-strong, rgba(255, 255, 255, .06));border:1px solid var(--border-default, rgba(255, 255, 255, .1));border-radius:6px;color:var(--text-primary);cursor:pointer;transition:background .2s,border-color .2s}.solver-compare-btn:hover:not(:disabled){background:#ffffff1a;border-color:#fff3}.solver-compare-btn:disabled{opacity:.7;cursor:not-allowed}.solver-compare-table-wrap{overflow-x:auto;border-radius:8px;border:1px solid var(--border-default, rgba(255, 255, 255, .08));background:#00000026}.solver-compare-table{width:100%;border-collapse:collapse;font-size:.8125rem}.solver-compare-table th,.solver-compare-table td{padding:.5rem .75rem;text-align:left;border-bottom:1px solid var(--border-default, rgba(255, 255, 255, .06))}.solver-compare-table th{font-weight:600;color:var(--text-muted);background:#ffffff08}.solver-compare-table tbody tr:last-child td{border-bottom:none}.solver-compare-table tbody tr:hover{background:#ffffff0a}.solver-compare-table .solver-row-ai{background:#22c55e14}.solver-compare-table .solver-row-error{color:var(--text-muted)}.solver-compare-table .status-badge{display:inline-block;padding:.15rem .4rem;border-radius:4px;font-size:.75rem;background:#ffffff1a;color:var(--text-primary)}.solver-compare-table .solver-error-msg{color:var(--text-muted);max-width:180px;display:inline-block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.solver-compare-hint{margin:.5rem 0 0;font-size:.8125rem;color:var(--text-muted)}.analysis-panel{min-width:250px}@media (max-width: 1400px){.model-panel{grid-column:1 / -1}}.panel-header{margin-bottom:1.25rem;display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.panel-header h2,.panel-header h3{display:flex;align-items:center;gap:.5rem;font-size:1.05rem;font-weight:700;color:var(--text-primary);margin:0;letter-spacing:-.01em}.panel-header p{font-size:.8rem;color:var(--text-muted);margin-top:.25rem}.conversation-panel-header{flex-direction:column;align-items:stretch}.conversation-panel-header .panel-header-title{display:flex;justify-content:space-between;align-items:center;width:100%;gap:.75rem}.conversation-panel-header .panel-header-left{display:flex;align-items:center;gap:.5rem}.panel-expand-btn{border:1px solid var(--border-subtle);background:var(--surface-glass);box-shadow:var(--shadow-xs);cursor:pointer;padding:6px 10px;display:flex;align-items:center;color:var(--text-secondary);border-radius:var(--radius-md);transition:all var(--transition-normal);font-family:inherit;font-size:.8rem;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.panel-expand-btn:hover{background:var(--surface-glass-strong);color:var(--accent-purple);border-color:var(--border-default);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.panel-expand-btn:active{transform:translateY(0);box-shadow:var(--shadow-xs)}.panel-expand-btn.danger{background:#dc26260f;border-color:#dc262633;color:#dc2626d9}.panel-expand-btn.danger:hover{background:#dc26261f;border-color:#dc262659;color:#dc2626;box-shadow:0 4px 12px #dc262626}.panel-header-llm-config-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.38rem .75rem;margin-left:.5rem;font-size:.78rem;font-weight:600;color:var(--accent-purple);background:#7c3aed14;border:1px solid rgba(124,58,237,.25);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-normal);font-family:inherit;letter-spacing:.01em}.panel-header-llm-config-btn:hover{background:#7c3aed24;border-color:#7c3aed66;color:var(--accent-purple);box-shadow:0 2px 8px #7c3aed1f;transform:translateY(-1px)}.clarification-section{background:#fbbf241a;border:1px solid rgba(251,191,36,.3);border-radius:8px;padding:1rem;margin-top:1rem}.clarification-header{display:flex;align-items:center;gap:.5rem;color:#fbbf24;font-weight:600;margin-bottom:1rem}.clarification-questions{margin-bottom:1rem}.clarification-question{display:flex;align-items:flex-start;gap:.5rem;margin-bottom:.5rem;font-size:.9rem}.q-number{background:#fbbf2433;color:#fbbf24;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600;flex-shrink:0}.q-text{color:var(--text-secondary)}.clarification-input{width:100%;padding:.75rem;border:1px solid rgba(255,255,255,.2);border-radius:6px;background:#0000004d;color:var(--text-primary);font-size:.9rem;resize:vertical;margin-bottom:.75rem}.clarification-input:focus{outline:none;border-color:#fbbf24;box-shadow:0 0 0 2px #fbbf2433}.badge.warning{background:#fbbf2433;color:#fbbf24}.input-form,.agent-form{display:flex;flex-direction:column;gap:1rem}.conversation-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;color:var(--text-secondary);gap:1rem}.conversation-loading svg{color:var(--accent-pink)}.conversation-body{flex:1;min-height:0;display:flex;flex-direction:column;margin-bottom:.75rem}.conversation-messages{display:flex;flex-direction:column;gap:1rem;flex:1;min-height:0;overflow-y:auto;padding:.5rem;background:var(--bg-tertiary);border-radius:var(--radius-lg)}.conversation-footer{flex-shrink:0;display:flex;flex-direction:column;gap:.75rem}.conversation-message{display:flex;gap:.75rem;padding:.75rem;border-radius:var(--radius-md);animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.conversation-message.user{background:linear-gradient(135deg,var(--accent-purple) 0%,var(--accent-pink) 100%);color:#fff;flex-direction:row-reverse}.conversation-message.assistant{background:var(--bg-elevated);border:1px solid var(--border-subtle);color:var(--text-primary)}.message-avatar{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.conversation-message.user .message-avatar{background:#fff3}.conversation-message.assistant .message-avatar{background:var(--accent-pink);color:#fff}.message-content{flex:1;font-size:.9rem;line-height:1.5;white-space:pre-wrap;word-break:break-word;color:#1a1a1a}.conversation-message.assistant .message-content{color:#1a1a1a}.message-content.typing{display:flex;gap:.25rem;align-items:center}.typing-dot{width:6px;height:6px;border-radius:50%;background:var(--accent-pink);animation:typingBounce 1.4s infinite ease-in-out}.typing-dot:nth-child(1){animation-delay:0s}.typing-dot:nth-child(2){animation-delay:.2s}.typing-dot:nth-child(3){animation-delay:.4s}@keyframes typingBounce{0%,80%,to{transform:translateY(0)}40%{transform:translateY(-8px)}}.extracted-info-strip{display:flex;align-items:center;gap:.5rem;padding:.4rem .6rem;margin-bottom:.5rem;background:linear-gradient(135deg,#ec489914,#3b82f614);border:1px solid rgba(236,72,153,.35);border-radius:var(--radius-md);font-size:.75rem;color:#1a1a1a;line-height:1.35}.extracted-info-strip .extracted-info-icon{flex-shrink:0;color:var(--accent-pink)}.extracted-info-strip .extracted-info-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;line-clamp:3;word-break:break-word}.extracted-info-strip .extracted-info-text em{font-style:normal;font-weight:600;color:var(--accent-pink);margin-right:.15rem}.conversation-info-summary{background:linear-gradient(135deg,#ec48991a,#3b82f61a);border:1px solid var(--accent-pink);border-radius:var(--radius-lg);padding:1rem;margin-bottom:1rem;color:#1a1a1a}.info-summary-header{display:flex;align-items:center;gap:.5rem;color:var(--accent-pink);font-weight:600;font-size:.875rem;margin-bottom:.75rem}.info-summary-content{display:flex;flex-direction:column;gap:.5rem;color:#1a1a1a}.info-item{display:flex;flex-wrap:wrap;gap:.25rem;font-size:.8rem;color:#1a1a1a}.info-label{color:var(--text-secondary);font-weight:500}.info-value{color:#1a1a1a}.conversation-input-area{display:flex;gap:.75rem;align-items:flex-end;position:relative}.conversation-input{flex:1;min-height:56px;max-height:280px;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:.75rem;color:var(--text-primary);font-family:inherit;font-size:.9rem;resize:vertical;transition:all var(--transition-normal);box-shadow:var(--shadow-xs)}.conversation-input::placeholder{color:var(--text-muted)}.conversation-input:focus{outline:none;border-color:var(--accent-purple);box-shadow:0 0 0 3px #7c3aed1a,var(--shadow-sm)}.conversation-input:disabled{opacity:.5;cursor:not-allowed;resize:none}.conversation-send-btn{width:44px;height:44px;border-radius:50%;background:var(--gradient-primary);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-normal);flex-shrink:0;box-shadow:var(--shadow-glow);position:relative;overflow:hidden}.conversation-send-btn:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,rgba(255,255,255,.15) 0%,transparent 50%);border-radius:inherit}.conversation-send-btn:hover:not(:disabled){transform:scale(1.05) translateY(-1px);box-shadow:var(--shadow-lg)}.conversation-send-btn:active:not(:disabled){transform:scale(.97)}.conversation-send-btn:disabled{opacity:.5;cursor:not-allowed}.llm-config-section{background:var(--bg-tertiary);border-radius:var(--radius-lg);padding:1rem;margin-bottom:1rem;border:1px solid var(--border-default)}.llm-config-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem;color:var(--text-secondary);font-size:.875rem}.llm-config-header svg{color:var(--accent-purple)}.llm-test-btn{margin-left:auto;padding:.375rem .75rem;font-size:.75rem;background:var(--accent-purple);color:#fff;border:none;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.llm-test-btn:hover:not(:disabled){background:var(--accent-purple-hover)}.llm-test-btn:disabled{opacity:.6;cursor:not-allowed}.llm-config-info{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.config-item{display:flex;flex-direction:column;gap:.25rem}.config-label{font-size:.7rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.config-value{font-size:.8rem;color:var(--text-primary)}.llm-test-result{display:flex;align-items:center;gap:.5rem;margin-top:.75rem;padding:.5rem;border-radius:var(--radius-md);font-size:.8rem}.llm-test-result.success{background:#22c55e1a;color:#22c55e}.llm-test-result.error{background:#ef44441a;color:#ef4444}.drop-zone{border:2px dashed var(--border-default);border-radius:var(--radius-xl);padding:2.5rem;text-align:center;cursor:pointer;transition:all var(--transition-normal);background:var(--bg-tertiary);position:relative;overflow:hidden}.drop-zone:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at center,rgba(124,58,237,.1),transparent 70%);opacity:0;transition:opacity var(--transition-normal)}.drop-zone:hover{border-color:var(--accent-purple);background:#7c3aed0a;transform:translateY(-2px);box-shadow:var(--shadow-md),var(--shadow-glow)}.drop-zone:hover:before{opacity:1}.drop-zone.has-file{border-color:var(--accent-success);border-style:solid;background:#10b98114}.drop-zone.has-file:hover{box-shadow:0 0 20px #10b9814d}.drop-content{display:flex;flex-direction:column;align-items:center;gap:.5rem;color:var(--text-muted)}.drop-content span{font-size:.9375rem}.drop-content small{font-size:.75rem}.file-info{display:flex;flex-direction:column;align-items:center;gap:.375rem;color:var(--text-primary)}.file-name{font-weight:500;font-size:.9375rem}.file-size{font-size:.75rem;color:var(--text-muted)}.form-row{display:flex;gap:1rem;flex-wrap:wrap}.input-group{display:flex;flex-direction:column;gap:.375rem;flex:1;min-width:120px}.input-group label{font-size:.8125rem;color:var(--text-secondary)}.input-group input[type=number]{padding:.625rem .875rem;background:var(--bg-tertiary);border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-primary);font-size:.875rem;transition:all var(--transition-fast)}.input-group input[type=number]:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px #6366f126}.input-group.checkbox{flex-direction:row;align-items:center;gap:.5rem}.input-group.checkbox input{width:1rem;height:1rem;accent-color:var(--accent-primary)}.input-group.checkbox label{display:flex;align-items:center;gap:.375rem;cursor:pointer;font-size:.875rem}.nl-textarea{width:100%;padding:.875rem;background:var(--bg-tertiary);border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-primary);font-size:.875rem;font-family:inherit;resize:vertical;min-height:160px;line-height:1.6;transition:all var(--transition-fast)}.nl-textarea:focus{outline:none;border-color:var(--accent-secondary);box-shadow:0 0 0 3px #8b5cf626}.nl-textarea::placeholder{color:var(--text-muted)}.submit-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.875rem 1.5rem;border:none;border-radius:var(--radius-lg);color:#fff;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all var(--transition-normal);position:relative;overflow:hidden}.submit-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.submit-btn:hover:before{left:100%}.submit-btn.primary{background:var(--gradient-primary);box-shadow:var(--shadow-md)}.submit-btn.primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-glow),0 8px 25px #7c3aed66}.submit-btn.primary:active:not(:disabled){transform:translateY(0) scale(.98)}.submit-btn.ai{background:linear-gradient(135deg,var(--accent-secondary) 0%,var(--accent-tertiary) 100%);box-shadow:0 4px 20px #ec48994d}.submit-btn.ai:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-glow-pink),0 8px 25px #ec489966}.submit-btn.ai:active:not(:disabled){transform:translateY(0) scale(.98)}.submit-btn:disabled{opacity:.5;cursor:not-allowed}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}@keyframes glow{0%,to{box-shadow:0 0 20px #7c3aed66}50%{box-shadow:0 0 40px #7c3aed99}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes gradient-shift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.spin{animation:spin 1s linear infinite}.pulse{animation:pulse 1.5s ease-in-out infinite}.glow{animation:glow 2s ease-in-out infinite}.shake{animation:shake .5s ease-in-out}.float{animation:float 3s ease-in-out infinite}@keyframes data-flow{0%{background-position:0% 0%}to{background-position:100% 100%}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes ripple{0%{transform:scale(0);opacity:.5}to{transform:scale(4);opacity:0}}@keyframes scan-line{0%{top:0}to{top:100%}}.ripple-effect{position:relative;overflow:hidden}.ripple-effect:after{content:"";position:absolute;width:100px;height:100px;background:radial-gradient(circle,rgba(255,255,255,.3) 0%,transparent 70%);border-radius:50%;transform:scale(0);animation:ripple .6s ease-out}@keyframes count-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.count-animate{animation:count-up .3s ease-out}.agent-progress{display:flex;flex-wrap:wrap;gap:.5rem;padding:.875rem;background:var(--bg-tertiary);border-radius:var(--radius-md);border:1px solid var(--border-subtle)}.progress-step{font-size:.75rem;padding:.25rem .625rem;border-radius:var(--radius-sm);background:var(--bg-elevated);color:var(--text-muted)}.progress-step.completed{color:var(--accent-success);background:#10b9811a}.progress-step.active{color:var(--accent-primary);background:#6366f11a}.ai-progress-bar{margin-top:1rem;padding:.75rem .95rem;background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:inset 0 0 0 1px #ffffff0a;display:flex;flex-direction:column;gap:.35rem}.ai-progress-bar-track{width:100%;height:6px;background:#94a3b840;border-radius:999px;overflow:hidden}.ai-progress-bar-fill{height:100%;background:linear-gradient(90deg,var(--accent-purple),var(--accent-primary));border-radius:999px;transition:width .35s ease}.ai-progress-meta{display:flex;justify-content:space-between;font-size:.75rem;color:var(--text-muted);text-transform:none}.ai-progress-meta span:last-child{font-variant-numeric:tabular-nums;font-weight:600;color:var(--text-primary)}.model-preview-card{margin-top:1rem;padding:1rem;background:var(--bg-tertiary);border-radius:var(--radius-md);border:1px solid var(--border-subtle)}.preview-header{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}.preview-header h4{margin:0;color:var(--accent-success)}.preview-header .success-icon{color:var(--accent-success)}.mps-preview{margin-bottom:1rem}.preview-label{font-size:.75rem;color:var(--text-muted);margin-bottom:.5rem}.mps-content{background:var(--bg-elevated);padding:.75rem;border-radius:var(--radius-sm);font-size:.7rem;font-family:Fira Code,monospace;overflow-x:auto;white-space:pre;max-height:150px;overflow-y:auto}.math-model-preview{display:flex;flex-direction:column;gap:1rem}.preview-section{background:var(--bg-elevated);padding:.75rem;border-radius:var(--radius-sm)}.section-title{font-size:.75rem;color:var(--text-muted);margin-bottom:.5rem;font-weight:600}.objective-display{display:flex;align-items:center;gap:.5rem}.sense-badge{font-size:.7rem;padding:.125rem .375rem;border-radius:var(--radius-sm);background:#ec489933;color:var(--accent-pink)}.objective-display .expr{font-family:Fira Code,monospace;font-size:.8rem}.variables-list,.constraints-list{display:flex;flex-direction:column;gap:.375rem}.var-item,.constraint-item{display:flex;align-items:center;gap:.5rem;font-size:.75rem;padding:.25rem;background:var(--bg-tertiary);border-radius:var(--radius-sm)}.var-name,.constraint-name{font-weight:600;color:var(--accent-primary)}.var-desc{color:var(--text-muted)}.var-bounds{font-size:.65rem;color:var(--text-muted)}.constraint-expr{font-family:Fira Code,monospace;font-size:.7rem;flex:1}.constraint-type{font-size:.65rem;padding:.125rem .25rem;border-radius:var(--radius-sm);background:#6366f133;color:var(--accent-primary)}.confirm-solve-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;margin-top:1rem;padding:.875rem 1rem;background:linear-gradient(135deg,var(--accent-green) 0%,#047857 100%);color:#fff;border:none;border-radius:var(--radius-lg);font-size:.875rem;font-weight:600;cursor:pointer;transition:all var(--transition-normal);box-shadow:var(--shadow-glow-success);font-family:inherit}.confirm-solve-btn:hover{box-shadow:var(--shadow-lg),var(--shadow-glow-success);transform:translateY(-1px)}.preview-loading{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem;color:var(--text-muted);font-size:.875rem}.original-problem-preview{margin-bottom:1rem;padding:.75rem;background:var(--bg-elevated);border-radius:var(--radius-sm);border-left:3px solid var(--accent-primary)}.original-problem-preview .preview-label{font-size:.7rem;color:var(--text-muted);margin-bottom:.375rem}.problem-text{font-size:.8rem;color:var(--text-primary);line-height:1.5;margin:0}.label-hint{font-size:.65rem;color:var(--text-muted);font-weight:400}.check-content{display:flex;flex-direction:column;gap:.5rem}.check-item{display:flex;gap:.5rem;font-size:.75rem}.check-label{font-weight:600;color:var(--text-muted)}.check-value{color:var(--text-primary)}.check-item.warning .check-label{color:#f59e0b}.issues-list{margin:0;padding-left:1rem;color:#f59e0b}.preview-notice{display:flex;align-items:center;gap:.5rem;padding:.75rem;margin-top:.75rem;background:#10b9811a;border-radius:var(--radius-sm);color:var(--accent-success);font-size:.8rem}.ai-model-card{max-height:calc(100vh - 200px);overflow-y:auto}.ai-model-card .card-header{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}.ai-model-card .card-header h3{flex:1;margin:0}.ai-preview-section{margin-bottom:1rem}.section-label{font-size:.7rem;color:var(--text-muted);margin-bottom:.375rem;font-weight:600}.problem-summary{font-size:.9rem;color:var(--text-primary);line-height:1.5;padding:.5rem;background:var(--bg-elevated);border-radius:var(--radius-sm);border-left:3px solid var(--accent-primary)}.mps-code{font-family:Fira Code,monospace;font-size:.8rem;padding:.5rem;background:var(--bg-elevated);border-radius:var(--radius-sm);overflow-x:auto;white-space:pre;max-height:120px;overflow-y:auto}.ai-model-details{display:flex;flex-direction:column;gap:.75rem}.detail-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem;background:var(--bg-elevated);border-radius:var(--radius-sm)}.detail-label{font-size:.75rem;color:var(--text-muted)}.detail-value{font-size:.8rem;font-weight:600;color:var(--accent-primary)}.detail-section{padding:.5rem;background:var(--bg-elevated);border-radius:var(--radius-sm)}.detail-title{font-size:.7rem;color:var(--text-muted);margin-bottom:.5rem;font-weight:600}.objective-box{display:flex;align-items:center;gap:.5rem}.sense-tag{font-size:.65rem;padding:.125rem .375rem;background:#ec489933;color:var(--accent-pink);border-radius:var(--radius-sm)}.objective-box code{font-family:Fira Code,monospace;font-size:.9rem}.vars-grid,.constraints-grid{display:flex;flex-wrap:wrap;gap:.375rem}.var-chip{display:flex;flex-direction:column;padding:.375rem .5rem;background:var(--bg-tertiary);border-radius:var(--radius-sm);font-size:.85rem}.var-chip .var-name{font-weight:600;color:var(--accent-primary)}.var-chip .var-desc{color:var(--text-muted);font-size:.8rem}.constraint-chip{display:flex;flex-direction:column;gap:.25rem;padding:.375rem .5rem;background:var(--bg-tertiary);border-radius:var(--radius-sm);font-size:.85rem;width:calc(50% - .2rem)}.constraint-chip .c-name{font-weight:600;color:var(--accent-success)}.constraint-chip .c-expr{font-family:Fira Code,monospace;font-size:.8rem;color:var(--text-muted)}.constraint-chip .c-type{font-size:.75rem;padding:.125rem .25rem;background:#6366f133;color:var(--accent-primary);border-radius:var(--radius-sm);width:fit-content}.model-check{border:1px solid rgba(251,191,36,.3);background:#fbbf240d}.check-info{font-size:.75rem;color:var(--text-primary)}.confirm-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;margin-top:1rem;padding:.75rem 1rem;background:linear-gradient(135deg,var(--accent-success),#059669);color:#fff;border:none;border-radius:var(--radius-md);font-size:.875rem;font-weight:600;cursor:pointer;transition:all var(--transition-normal)}.confirm-btn:hover{box-shadow:0 4px 12px #10b98166}.output-panel{display:flex;flex-direction:column;gap:1rem;min-height:55vh;max-height:calc(100vh - 180px);overflow-y:auto}.result-card{background:var(--surface-glass-strong);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);padding:1.5rem;-webkit-backdrop-filter:blur(24px) saturate(1.6);backdrop-filter:blur(24px) saturate(1.6);box-shadow:var(--shadow-md);transition:all var(--transition-normal)}.result-card:hover{box-shadow:var(--shadow-lg);border-color:var(--border-default)}.result-card.unified-result{display:flex;flex-direction:column;flex:1;min-height:450px;overflow:hidden;border:1px solid var(--border-subtle);position:relative}.result-card.unified-result:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--gradient-primary);border-radius:var(--radius-xl) var(--radius-xl) 0 0}.unified-header{display:flex;justify-content:space-between;align-items:flex-start;padding:1rem 0;border-bottom:1px solid var(--border-subtle);margin-bottom:1rem;flex-wrap:wrap;gap:1rem}.unified-status{display:flex;align-items:center;gap:.75rem;padding:.5rem 1rem;background:var(--bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--border-subtle)}.unified-status h3{font-size:1.125rem;font-weight:700}.unified-header.success .unified-status{color:var(--accent-green);border-color:#05966940;background:#0596690f}.unified-header.error .unified-status{color:var(--accent-error);border-color:#dc262640;background:#dc26260f}.unified-error-hint{margin:0 0 .75rem;padding:.5rem .75rem;font-size:.85rem;color:var(--accent-error);background:#ef444414;border:1px solid rgba(239,68,68,.25);border-radius:var(--radius-md);line-height:1.4}.unified-metrics{display:flex;gap:1.25rem;flex-wrap:wrap}.metric-item{display:flex;flex-direction:column;align-items:flex-end;gap:.125rem;padding:.5rem .75rem;background:var(--bg-secondary);border-radius:var(--radius-md);border:1px solid var(--border-subtle);min-width:80px}.metric-label{font-size:.68rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.metric-value{font-size:1.125rem;font-weight:800;color:var(--text-primary);font-family:JetBrains Mono,Fira Code,monospace;letter-spacing:-.02em}.metric-value.status-badge{font-size:.875rem;padding:.25rem .5rem;border-radius:4px;background:var(--accent-cyan);color:var(--bg-primary);font-weight:600}.ai-solving-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1.5rem;text-align:center;color:var(--text-muted, #8b949e);gap:.75rem}.ai-solving-placeholder .pulse{color:var(--accent-purple, #a78bfa);animation:pulse-animation 2s ease-in-out infinite}.ai-solving-placeholder p{margin:0;font-size:.95rem;line-height:1.6}.ai-solving-placeholder .solving-hint{font-size:.8rem;opacity:.7}@keyframes pulse-animation{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.95)}}.ai-analysis-section{flex:1;min-height:0;padding:1.25rem;background:var(--bg-secondary);border-radius:var(--radius-lg);margin-bottom:0;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:var(--accent-purple) var(--bg-secondary)}.ai-analysis-section::-webkit-scrollbar{width:6px}.ai-analysis-section::-webkit-scrollbar-track{background:var(--bg-secondary);border-radius:3px}.ai-analysis-section::-webkit-scrollbar-thumb{background:var(--accent-purple);border-radius:3px}.ai-analysis-section::-webkit-scrollbar-thumb:hover{background:var(--accent-purple-hover)}.ai-block.strict-model{margin:1rem 0;padding:1rem;background:var(--bg-secondary);border-radius:var(--radius-md);border-left:3px solid var(--accent-pink)}.ai-block.strict-model h4{color:var(--accent-pink);margin-bottom:1rem;font-size:1rem}.variable-list-strict{display:flex;flex-direction:column;gap:.75rem}.variable-item-strict{padding:.75rem;background:var(--bg-tertiary);border-radius:var(--radius-sm)}.var-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem}.var-symbol{font-family:JetBrains Mono,monospace;font-weight:700;color:var(--accent-cyan);font-size:1rem}.var-type{font-size:.75rem;padding:.125rem .375rem;background:var(--accent-purple);color:#fff;border-radius:4px}.var-desc{color:var(--text-secondary);font-size:.875rem;margin-bottom:.375rem}.var-bounds{display:flex;align-items:center;gap:.5rem;font-size:.8rem}.bounds-label{color:var(--text-muted)}.bounds-value{font-family:JetBrains Mono,monospace;color:var(--accent-green)}.var-unit{color:var(--text-muted);font-size:.75rem}.constraints-strict{display:flex;flex-direction:column;gap:.75rem}.constraint-item-strict{padding:.75rem;background:var(--bg-tertiary);border-radius:var(--radius-sm)}.constraint-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem}.constraint-symbol{font-weight:700;color:var(--accent-orange)}.constraint-name{font-weight:600;color:var(--text-primary)}.constraint-type-tag{font-size:.7rem;padding:.125rem .375rem;background:var(--accent-yellow);color:var(--bg-primary);border-radius:4px}.constraint-desc{color:var(--text-secondary);font-size:.875rem;margin-bottom:.375rem}.constraint-expression code{display:block;padding:.5rem;background:var(--bg-primary);border-radius:4px;font-family:JetBrains Mono,monospace;font-size:.85rem;color:var(--accent-cyan)}.constraint-latex{margin-top:.5rem;padding:.5rem;background:var(--bg-primary);border-radius:4px}.objective-block{border-left-color:var(--accent-green)}.objective-strict{padding:1rem;background:var(--bg-tertiary);border-radius:var(--radius-sm)}.obj-sense{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.sense-label{color:var(--text-muted);font-size:.875rem}.sense-value{font-weight:700;color:var(--accent-green)}.obj-expression{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.expr-label{font-weight:700;color:var(--accent-green)}.expr-text{font-family:JetBrains Mono,monospace;font-size:1rem;color:var(--text-primary);background:var(--bg-primary);padding:.375rem .75rem;border-radius:4px}.obj-latex{padding:.75rem;background:var(--bg-primary);border-radius:4px;margin-bottom:.75rem}.obj-variables{display:flex;align-items:center;gap:.5rem}.vars-label{color:var(--text-muted);font-size:.875rem}.vars-value{font-family:JetBrains Mono,monospace;color:var(--accent-cyan)}.card-header{display:flex;align-items:center;gap:.625rem;padding-bottom:.875rem;margin-bottom:1rem;border-bottom:1px solid var(--border-subtle);color:var(--text-primary)}.card-header h3{font-size:1rem;font-weight:600;flex:1}.card-header.success{color:var(--accent-success)}.card-header.error{color:var(--accent-error)}.math-card .card-header{color:var(--accent-primary)}.badge{font-size:.6875rem;padding:.1875rem .5rem;border-radius:var(--radius-sm);font-weight:500}.badge.loading{background:#6366f126;color:var(--accent-primary);animation:pulse 1.5s ease-in-out infinite}.math-content{display:flex;flex-direction:column;gap:.75rem}.math-row{display:flex;justify-content:space-between;align-items:center}.math-row .label{font-size:.8125rem;color:var(--text-muted)}.math-row .value{font-size:.875rem;color:var(--text-primary);font-weight:500}.math-row .value.tags{display:flex;gap:.375rem}.tag{font-size:.6875rem;padding:.125rem .5rem;border-radius:var(--radius-sm);font-weight:600}.tag.type{background:#6366f126;color:var(--accent-primary)}.tag.milp{background:#8b5cf626;color:var(--accent-secondary)}.tag.qp{background:#06b6d426;color:var(--accent-tertiary)}.math-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem;padding:.875rem;background:var(--bg-tertiary);border-radius:var(--radius-md)}.stat-box{display:flex;flex-direction:column;align-items:center;gap:.125rem}.stat-box .num{font-size:1.25rem;font-weight:700;color:var(--accent-tertiary)}.stat-box .lbl{font-size:.6875rem;color:var(--text-muted)}.math-footer{display:flex;align-items:center;gap:.625rem;padding-top:.75rem;border-top:1px solid var(--border-subtle)}.format-tag{font-size:.6875rem;padding:.1875rem .5rem;background:#10b98126;color:var(--accent-success);border-radius:var(--radius-sm);font-weight:500}.filename{font-size:.8125rem;color:var(--text-muted)}.result-stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.stat-item{display:flex;flex-direction:column;gap:.25rem;padding:.75rem;background:var(--bg-tertiary);border-radius:var(--radius-md)}.stat-label{font-size:.75rem;color:var(--text-muted)}.stat-value{font-size:1.125rem;font-weight:700;color:var(--text-primary)}.raw-output{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden;background:#0a0a12;border-radius:var(--radius-lg);border:1px solid rgba(124,58,237,.2);box-shadow:var(--shadow-sm)}.raw-output h4{font-size:.8125rem;color:var(--accent-cyan);margin-bottom:0;flex-shrink:0;padding:.75rem 1rem;background:linear-gradient(90deg,rgba(8,145,178,.12),transparent);border-bottom:1px solid rgba(124,58,237,.15);display:flex;align-items:center;gap:.5rem;font-family:JetBrains Mono,Fira Code,monospace}.raw-output h4:before{content:">";color:var(--accent-cyan);font-weight:700}.raw-output pre{flex:1;padding:1rem;background:transparent;font-size:.8125rem;line-height:1.7;color:#c084fc;overflow:auto;white-space:pre-wrap;word-break:break-all;font-family:JetBrains Mono,Fira Code,Consolas,monospace}.raw-output-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.gateway-output{display:flex;flex-direction:column;gap:1rem}.gateway-summary,.gateway-vars{background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:var(--radius-lg);overflow:hidden}.gateway-summary-title,.gateway-vars-header{padding:.75rem 1rem;border-bottom:1px solid var(--border-subtle);background:var(--bg-tertiary);display:flex;align-items:center;justify-content:space-between;gap:1rem}.gateway-summary-title h4,.gateway-vars-header h4{font-size:.9rem;margin:0;color:var(--text-primary)}.gateway-actions{display:flex;gap:.5rem;flex-wrap:wrap}.gateway-metrics-grid{padding:1rem;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}@media (max-width: 1100px){.gateway-metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.gateway-vars-controls{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;justify-content:flex-end}.gateway-table{max-height:340px;overflow:auto}.gateway-row{display:grid;grid-template-columns:1fr 160px;gap:.75rem;padding:.6rem 1rem;border-bottom:1px solid var(--border-subtle);font-family:JetBrains Mono,Fira Code,Consolas,monospace;font-size:.85rem;background:var(--bg-elevated)}.gateway-row:last-child{border-bottom:none}.gateway-row.gateway-head{position:sticky;top:0;background:var(--bg-tertiary);z-index:1;font-weight:700;color:var(--text-secondary)}.gateway-var{color:var(--text-primary)}.gateway-val{text-align:right;color:var(--text-primary);word-break:break-word}.gateway-more{padding:.75rem 1rem;display:flex;justify-content:center}.mini-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem .6rem;border-radius:999px;border:1px solid var(--border-default);background:#ffffff08;color:var(--text-secondary);cursor:pointer;transition:var(--transition-fast);font-size:.78rem}.mini-btn:hover{background:#ffffff0f;color:var(--text-primary);border-color:var(--border-strong)}.mini-btn.primary{background:#06b6d433;color:var(--accent-cyan, #06b6d4);border-color:#06b6d480}.mini-btn.primary:hover{background:#06b6d44d;border-color:var(--accent-cyan, #06b6d4)}.mini-btn .rot-180{transform:rotate(180deg)}.mini-input{padding:.4rem .6rem;border-radius:999px;border:1px solid var(--border-default);background:#ffffff08;color:var(--text-primary);outline:none;min-width:220px}.mini-input:focus{border-color:#06b6d48c;box-shadow:0 0 0 3px #06b6d424}.mini-check{display:inline-flex;align-items:center;gap:.4rem;font-size:.8rem;color:var(--text-secondary)}.mini-check input{accent-color:var(--accent-tertiary)}.mini-hint{font-size:.78rem;color:var(--text-muted)}.ai-content{display:flex;flex-direction:column;gap:1rem;flex:1;overflow:hidden}.ai-block h4{font-size:1rem;color:var(--accent-tertiary);margin-bottom:.375rem}.ai-block p{font-size:.9rem;color:var(--text-secondary);line-height:1.8}.ai-block pre{padding:.75rem;background:var(--bg-tertiary);border-radius:var(--radius-md);font-size:.8125rem;line-height:1.6;color:var(--text-primary);overflow:auto;white-space:pre-wrap;word-break:break-all;border:1px solid var(--border-subtle)}.problem-tag{display:inline-block;padding:.375rem .75rem;background:#8b5cf626;color:var(--accent-secondary);border-radius:var(--radius-md);font-size:.8125rem;font-weight:500}.parameter-list{display:flex;flex-direction:column;gap:.5rem}.parameter-item{display:flex;align-items:center;gap:.75rem;padding:.5rem;background:var(--bg-secondary);border-radius:var(--radius-sm)}.param-name{font-family:monospace;font-size:.85rem;color:var(--accent-tertiary);min-width:60px}.param-desc{flex:1;font-size:.85rem;color:var(--text-primary)}.param-unit{font-size:.75rem;color:var(--text-muted)}.constraint-meaning-list{display:flex;flex-direction:column;gap:.5rem}.constraint-meaning-item{display:flex;align-items:flex-start;gap:.75rem;padding:.5rem;background:var(--bg-secondary);border-radius:var(--radius-sm);border-left:3px solid var(--accent-warning)}.constraint-meaning-item .constraint-name{font-family:monospace;font-size:.8rem;color:var(--accent-warning);min-width:50px}.constraint-meaning-item .constraint-desc{flex:1;font-size:.8rem;color:var(--text-primary)}.math-model-section{display:flex;flex-direction:column;gap:.75rem}.math-sub-block{padding:.5rem;background:var(--bg-secondary);border-radius:var(--radius-sm)}.math-label{font-size:.75rem;color:var(--text-muted);margin-right:.5rem}.math-sense{font-size:.75rem;color:var(--accent-success);font-weight:600}.math-expression{font-family:monospace;font-size:.85rem;color:var(--accent-tertiary);margin-top:.25rem}.math-vars{font-size:.8rem;color:var(--text-primary)}.result-interpretation{background:linear-gradient(135deg,#10b9811a,#06b6d41a);border:1px solid rgba(16,185,129,.3)}.interpretation-content{display:flex;flex-direction:column;gap:.75rem}.optimal-value{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:var(--bg-secondary);border-radius:var(--radius-sm)}.optimal-value .label{font-size:.85rem;color:var(--text-muted)}.optimal-value .value{font-size:1.25rem;font-weight:700;color:var(--accent-success)}.practical-implications,.ai-recommendations,.constraints-satisfied,.benefit-analysis,.sensitivity-summary,.implementation-notes{padding:.75rem;background:var(--bg-secondary);border-radius:var(--radius-sm)}.constraints-satisfied{border-left:3px solid var(--accent-warning)}.benefit-analysis{border-left:3px solid var(--accent-success)}.sensitivity-summary{border-left:3px solid #9b59b6}.implementation-notes{border-left:3px solid var(--accent-info)}.practical-implications .label,.ai-recommendations .label,.constraints-satisfied .label,.benefit-analysis .label,.sensitivity-summary .label,.implementation-notes .label{font-size:.8rem;color:var(--text-muted);display:block;margin-bottom:.25rem}.practical-implications p,.ai-recommendations p,.constraints-satisfied p,.benefit-analysis p,.sensitivity-summary p,.implementation-notes p{font-size:.85rem;color:var(--text-primary);margin:0}.recommendations-bullet{white-space:pre-line;line-height:1.6}.optimal-solution{padding:.75rem;background:var(--bg-secondary);border-radius:var(--radius-sm)}.optimal-solution .label{font-size:.8rem;color:var(--text-muted);display:block;margin-bottom:.5rem}.solution-values{display:flex;flex-wrap:wrap;gap:.5rem}.solution-item{font-family:monospace;font-size:.8rem;padding:.25rem .5rem;background:var(--bg-tertiary);border-radius:var(--radius-sm);color:var(--accent-tertiary)}.mathmodel-container{padding:1.5rem;max-width:1400px;margin:0 auto}.mathmodel-container .page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--border-subtle)}.mathmodel-container .page-header h2{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin:0}.header-actions{display:flex;align-items:center;gap:1rem}.file-info{font-size:.9rem;color:var(--text-secondary)}.format-badge{padding:.25rem .75rem;background:var(--accent-primary);color:#fff;border-radius:var(--radius-sm);font-size:.8rem;font-weight:600}.math-overview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:1.5rem}.overview-card{display:flex;align-items:center;gap:1rem;padding:1rem;background:var(--surface-glass);border-radius:var(--radius-lg);border:1px solid var(--border-subtle)}.overview-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#7c3aed26;color:var(--accent-primary);border-radius:var(--radius-md)}.overview-info{display:flex;flex-direction:column}.overview-label{font-size:.75rem;color:var(--text-muted)}.overview-value{font-size:1.1rem;font-weight:600;color:var(--text-primary)}.math-section{background:var(--surface-glass);border-radius:var(--radius-lg);padding:1.25rem;margin-bottom:1rem;border:1px solid var(--border-subtle)}.math-section h3{font-size:1rem;font-weight:600;color:var(--accent-tertiary);margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-subtle)}.var-stats-grid{display:flex;gap:2rem}.var-stat-item{display:flex;flex-direction:column;align-items:center}.var-stat-num{font-size:1.5rem;font-weight:700;color:var(--accent-primary)}.var-stat-label{font-size:.8rem;color:var(--text-muted)}.objective-display{background:var(--bg-tertiary);border-radius:var(--radius-md);padding:1rem}.objective-header{margin-bottom:.75rem}.sense-label{font-size:.9rem;font-weight:600;color:var(--accent-success)}.objective-expression{background:var(--bg-secondary);padding:1rem;border-radius:var(--radius-sm);margin-bottom:.75rem;text-align:center}.objective-raw{display:flex;flex-direction:column;gap:.25rem}.raw-label{font-size:.75rem;color:var(--text-muted)}.objective-raw code{font-family:Fira Code,monospace;font-size:.85rem;color:var(--accent-tertiary)}.variables-grid{display:flex;flex-wrap:wrap;gap:.5rem}.variable-chip{padding:.4rem .75rem;background:var(--bg-tertiary);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);font-family:monospace;font-size:.85rem;color:var(--accent-tertiary)}.constraints-full-list{display:flex;flex-direction:column;gap:.75rem;max-height:600px;overflow-y:auto}.constraint-full-item{background:var(--bg-tertiary);border-radius:var(--radius-md);padding:1rem;border-left:4px solid var(--accent-tertiary)}.constraint-full-item.type-E{border-left-color:var(--accent-primary)}.constraint-full-item.type-L{border-left-color:var(--accent-warning)}.constraint-full-item.type-G{border-left-color:var(--accent-success)}.constraint-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.constraint-full-item .constraint-name{font-family:monospace;font-size:.9rem;font-weight:600;color:var(--text-primary)}.constraint-type{padding:.2rem .5rem;border-radius:var(--radius-sm);font-size:.8rem;font-weight:600}.constraint-type.type-E{background:#7c3aed26;color:var(--accent-primary)}.constraint-type.type-L{background:#f59e0b26;color:var(--accent-warning)}.constraint-type.type-G{background:#10b98126;color:var(--accent-success)}.constraint-body{display:flex;flex-direction:column;gap:.5rem}.constraint-latex-display{font-size:1rem;padding:.5rem;background:var(--bg-secondary);border-radius:var(--radius-sm)}.constraint-raw code{font-family:Fira Code,monospace;font-size:.8rem;color:var(--text-secondary)}.bounds-full-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:.75rem}.bound-full-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:var(--bg-tertiary);border-radius:var(--radius-sm);flex-wrap:wrap}.bound-full-item .bound-var{font-family:monospace;font-size:.9rem;color:var(--accent-tertiary);min-width:60px}.bound-full-item .bound-type{font-size:.75rem;color:var(--text-muted)}.bound-full-item .bound-val{font-family:monospace;font-size:.85rem;color:var(--accent-success)}.bound-latex{flex:1;font-size:.8rem}.no-bounds{padding:1rem;text-align:center;color:var(--text-muted);font-size:.9rem}.matrix-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.matrix-stat-full{display:flex;flex-direction:column;align-items:center;padding:1rem;background:var(--bg-tertiary);border-radius:var(--radius-md)}.matrix-stat-label{font-size:.8rem;color:var(--text-muted)}.matrix-stat-value{font-size:1.25rem;font-weight:600;color:var(--accent-primary)}.mps-raw-section{background:var(--bg-tertiary);border-radius:var(--radius-md);padding:1rem;max-height:300px;overflow:auto}.mps-raw{font-family:Fira Code,monospace;font-size:.8rem;color:var(--text-secondary);white-space:pre;margin:0}@media (max-width: 768px){.math-overview-grid,.matrix-stats{grid-template-columns:repeat(2,1fr)}.var-stats-grid{flex-direction:column;gap:1rem}}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:350px;background:var(--bg-tertiary);border:1px dashed var(--border-default);border-radius:var(--radius-xl);color:var(--text-muted);text-align:center;gap:1rem;position:relative;overflow:hidden}.empty-state:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 50% 30%,rgba(124,58,237,.1),transparent 60%)}.empty-state h3{font-size:1.125rem;color:var(--text-secondary)}.empty-state p{font-size:.875rem}.empty-state.small{min-height:auto;padding:2rem}.matrix-decoration{display:flex;gap:.25rem;margin-top:.5rem;font-family:JetBrains Mono,Fira Code,monospace;font-size:1rem;color:var(--accent-tertiary);opacity:.6}.matrix-decoration span{animation:matrix-pulse 2s ease-in-out infinite}.matrix-decoration span:nth-child(1){animation-delay:0s}.matrix-decoration span:nth-child(2){animation-delay:.2s}.matrix-decoration span:nth-child(3){animation-delay:.4s}.matrix-decoration span:nth-child(4){animation-delay:.6s}@keyframes matrix-pulse{0%,to{opacity:.4}50%{opacity:1}}.brain-icon{color:var(--accent-secondary)}.tasks-container .tasks-desc{color:var(--text-secondary);font-size:.875rem;margin:-.5rem 0 1rem}.tasks-container,.analytics-container,.dashboard-container{max-width:1500px;margin:0 auto;padding:0 .5rem 1.5rem}.dashboard-grid{display:flex;flex-direction:column;gap:1.25rem}.dashboard-section{background:var(--surface-glass-strong);border:1px solid var(--border-default);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);padding:1.25rem}.dashboard-section-header{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;margin-bottom:1rem}.dashboard-section-header h3{margin:0;font-size:1rem;font-weight:800}.dashboard-meta{font-size:.8rem;color:var(--text-muted)}.dashboard-split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.dashboard-trends{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1rem}.mini-chart{background:#ffffffb8;border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:.85rem 1rem}.mini-chart-head{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;margin-bottom:.5rem}.mini-chart-title{font-size:.9rem;font-weight:800;color:var(--text-secondary)}.mini-chart-meta{font-size:.75rem;color:var(--text-muted)}.mini-chart-svg{width:100%;height:84px;display:block;background:linear-gradient(180deg,rgba(99,102,241,.1),transparent 70%);border-radius:var(--radius-md)}.mini-chart-line{fill:none;stroke:var(--accent-primary);stroke-width:2.25;stroke-linecap:round;stroke-linejoin:round}.dashboard-card{background:#ffffffb8;border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:1rem}.dashboard-card h4{margin:0 0 .75rem;font-size:.9rem;font-weight:800;color:var(--text-secondary)}.mini-bar{display:flex;flex-direction:column;gap:.65rem}.mini-bar-head{display:flex;align-items:baseline;justify-content:space-between}.mini-bar-title{font-size:.8rem;color:var(--text-muted);font-weight:700}.mini-bar-list{display:flex;flex-direction:column;gap:.5rem}.mini-bar-row{display:grid;grid-template-columns:minmax(0,1.2fr) 2.2fr auto;gap:.6rem;align-items:center}.mini-bar-name{min-width:0;font-size:.85rem;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mini-bar-track{height:10px;border-radius:999px;background:#6366f11a;border:1px solid rgba(99,102,241,.18);overflow:hidden}.mini-bar-fill{height:100%;background:linear-gradient(90deg,var(--accent-primary),var(--accent-secondary));border-radius:999px}.mini-bar-count{font-variant-numeric:tabular-nums;font-weight:800;color:var(--accent-primary)}.dash-list{display:flex;flex-direction:column;gap:.5rem}.dash-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.5rem .6rem;border-radius:var(--radius-md);border:1px solid rgba(99,102,241,.16);background:#ffffffa6}.dash-name{min-width:0;color:var(--text-primary);font-size:.875rem}.dash-count{flex-shrink:0;font-variant-numeric:tabular-nums;font-weight:800;color:var(--accent-primary)}.dashboard-events{display:flex;flex-direction:column;gap:.75rem}.dashboard-event{background:#ffffffb8;border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:.85rem 1rem}.dashboard-event-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.35rem}.dashboard-event-src{font-size:.75rem;color:var(--text-muted)}.dashboard-event-line{color:var(--text-secondary);font-size:.85rem;line-height:1.6;word-break:break-word}@media (max-width: 768px){.dashboard-section{padding:1rem}.dashboard-split,.dashboard-trends{grid-template-columns:1fr}}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.page-header h2{font-size:1.375rem;font-weight:600}.auth-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at 50% 0%,rgba(124,58,237,.2) 0%,transparent 60%),radial-gradient(ellipse at 80% 70%,rgba(6,182,212,.12) 0%,transparent 55%),#0a0f1ebf;display:flex;align-items:center;justify-content:center;z-index:200;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:1.5rem}.auth-modal{width:640px;max-width:calc(100vw - 2rem);background:#ffffffeb;border-radius:var(--radius-xl);padding:1.75rem 1.75rem 1.5rem;border:1px solid rgba(255,255,255,.1);box-shadow:0 24px 80px #000000a6;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);position:relative;overflow:hidden;transform:translateY(0);animation:authModalIn .16s ease-out}.auth-modal:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;padding:1px;border-radius:inherit;background:linear-gradient(135deg,#7c3aed8c,#ec489966,#06b6d459);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;opacity:.9}.auth-modal:after{content:"";position:absolute;top:-120px;left:-120px;width:240px;height:240px;background:radial-gradient(circle,rgba(124,58,237,.28),transparent 65%);filter:blur(8px);pointer-events:none}.auth-modal.is-register{width:min(540px,calc(100% - 2rem));max-height:min(80vh,720px);overflow:auto}.auth-modal.is-register::-webkit-scrollbar{width:10px}.auth-modal.is-register::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:999px}.auth-modal.is-register::-webkit-scrollbar-track{background:transparent}.auth-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;margin-bottom:.75rem}.auth-modal-title h3{margin:0;font-size:1.15rem;font-weight:700;letter-spacing:-.01em;background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.auth-modal-close{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid rgba(255,255,255,.1);background:#ffffff0f;color:var(--text-secondary);width:34px;height:34px;border-radius:12px;cursor:pointer;transition:all var(--transition-fast);display:inline-flex;align-items:center;justify-content:center;font-size:18px;line-height:1}.auth-modal-close:hover{background:#ffffff1a;color:var(--text-primary);transform:translateY(-1px)}.auth-icon-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;color:#e8e8f08c;cursor:pointer;padding:4px;border-radius:10px;transition:all var(--transition-fast);display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}.auth-icon-btn:hover{color:#e8e8f0e6;background:#ffffff0f}.auth-icon-btn:active{transform:translateY(1px)}.auth-tip{font-size:.8rem;color:#e8e8f099;margin:.25rem 0 0;line-height:1.35}.auth-section{padding:.9rem .85rem;border-radius:16px;background:#ffffff08;border:1px solid rgba(255,255,255,.06);box-shadow:inset 0 1px #ffffff0d}.auth-section+.auth-section{margin-top:.85rem}.auth-section-title{display:flex;align-items:center;gap:.5rem;color:#e8e8f0c7;font-size:.82rem;font-weight:700;letter-spacing:.02em;margin-bottom:.75rem}.auth-section-title svg{color:#06b6d4bf;filter:drop-shadow(0 0 10px rgba(6,182,212,.18))}.auth-register-success{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1.5rem;min-height:200px;text-align:center}.auth-register-success-icon{color:#22c55e;margin-bottom:1rem;flex-shrink:0}.auth-register-success-text{font-size:1.25rem;font-weight:700;color:var(--text-primary, #f1f5f9);margin:0 0 .5rem}.auth-register-success-sub{font-size:.9rem;color:var(--text-secondary, #94a3b8);margin:0}.auth-form{display:flex;flex-direction:column;gap:.85rem}.auth-form label{display:flex;flex-direction:column;gap:.25rem;font-size:.8rem}.auth-grid{display:grid;grid-template-columns:1fr;gap:.8rem .9rem}.auth-grid.grid-2{grid-template-columns:1fr}.auth-grid .span-2{grid-column:1 / -1}@media (min-width: 640px){.auth-grid.grid-2{grid-template-columns:1fr 1fr}}.auth-control{display:flex;align-items:center;gap:.55rem;padding:.58rem .85rem;border-radius:14px;border:1px solid rgba(255,255,255,.1);background:#ffffffe6;transition:box-shadow var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast),background var(--transition-fast)}.auth-control.textarea{align-items:flex-start}.auth-icon{color:#e8e8f08c;flex:0 0 auto}.auth-control input,.auth-control textarea{width:100%;border:none;outline:none;background:transparent;color:var(--text-primary);font-size:.86rem;min-width:0}.auth-control textarea{line-height:1.45}.auth-control input::placeholder,.auth-control textarea::placeholder{color:#e8e8f059}.auth-control:focus-within{border-color:#06b6d48c;box-shadow:0 0 0 4px #06b6d41f,0 0 18px #7c3aed2e;transform:translateY(-1px);background:#ffffffeb}.auth-control:focus-within .auth-icon{color:#06b6d4d9}.auth-capslock{display:inline-flex;align-items:center;gap:.35rem;font-size:.75rem;color:#f59e0bf2;margin-top:.2rem}.auth-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.1rem .1rem .2rem}.auth-check{display:inline-flex;align-items:center;gap:.5rem;color:#e8e8f0bf;font-size:.8rem;-webkit-user-select:none;user-select:none}.auth-check input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent-tertiary)}.auth-mini-hint{font-size:.75rem;color:#e8e8f073}.auth-captcha-row{display:flex;align-items:center;gap:1.25rem;padding:.5rem 0}.auth-captcha-input-wrap{flex:1;min-width:160px}.auth-captcha-input{width:100%;min-width:0;padding:.6rem .9rem;border-radius:12px;border:1px solid rgba(255,255,255,.12);background:#ffffffe6;color:var(--text-primary);font-size:1rem;letter-spacing:.25em;text-align:center;text-transform:uppercase;outline:none;transition:box-shadow var(--transition-fast),border-color var(--transition-fast)}.auth-captcha-input::placeholder{color:#e8e8f059;letter-spacing:0;text-transform:none}.auth-captcha-input:focus{border-color:#06b6d48c;box-shadow:0 0 0 4px #06b6d41f,0 0 18px #7c3aed2e}.auth-captcha-img-wrap{cursor:pointer;border-radius:10px;overflow:hidden;border:1px solid rgba(255,255,255,.1);transition:border-color var(--transition-fast),transform var(--transition-fast)}.auth-captcha-img-wrap:hover{border-color:#06b6d480;transform:scale(1.02)}.auth-captcha-img{display:block;width:280px;height:88px;min-width:240px;min-height:72px;max-width:100%;object-fit:contain;image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges;background:#f8fafc}.auth-captcha-refresh{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid rgba(255,255,255,.12);background:#ffffff0d;color:var(--text-secondary);width:88px;height:88px;min-width:88px;min-height:88px;border-radius:10px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.auth-captcha-refresh:hover{background:#ffffff1a;color:var(--text-primary)}.auth-captcha-refresh:active{transform:scale(.96)}@media (max-width: 768px){.auth-captcha-row{flex-wrap:wrap;align-items:center;gap:.65rem;row-gap:.75rem}.auth-captcha-input-wrap{flex:1 0 100%;min-width:0;max-width:100%}.auth-captcha-img-wrap{flex:1 1 auto;min-width:140px;max-width:calc(100% - 3.5rem)}.auth-captcha-img{width:100%;max-width:280px;height:auto;min-width:0;min-height:52px;aspect-ratio:200 / 64}.auth-captcha-refresh{width:48px;height:48px;min-width:48px;min-height:48px}}.auth-form input::placeholder,.auth-textarea::placeholder{color:#e8e8f059}.auth-modal .auth-form input,.auth-modal .auth-password-input input{color:#1e293b}.auth-modal .auth-form input::placeholder,.auth-modal .auth-textarea::placeholder{color:#64748b}.auth-form input:focus,.auth-textarea:focus{border-color:#06b6d48c;box-shadow:0 0 0 4px #06b6d41f,0 0 18px #7c3aed2e;transform:translateY(-1px)}.auth-textarea{min-height:92px;resize:vertical;line-height:1.45}.auth-required{color:var(--accent-error);font-weight:700;margin-left:.25rem}.auth-field-error{font-size:.75rem;color:var(--accent-error)}.auth-password-hint{font-size:.72rem;color:var(--text-muted)}.auth-api-key-hint{font-size:.75rem;color:var(--text-muted);margin:.35rem 0 0;line-height:1.4}.auth-error{font-size:.8rem;color:var(--accent-error);padding:.4rem .6rem;background:#ef44441a;border-radius:var(--radius-md);border:1px solid rgba(239,68,68,.35);animation:authErrorShake .26s ease-out}.auth-success{font-size:.8rem;color:#22c55e;padding:.4rem .6rem;background:#22c55e1a;border-radius:var(--radius-md);border:1px solid rgba(34,197,94,.35);margin-bottom:1rem}.auth-checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-weight:500}.auth-checkbox-label input[type=checkbox]{width:1.2rem;height:1.2rem;cursor:pointer}.auth-select{width:100%;padding:.6rem;border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--text-primary);font-size:.9rem;cursor:pointer}.auth-range{width:100%;cursor:pointer}.auth-password-input{display:flex;gap:.5rem}.auth-password-input input{flex:1}.auth-password-toggle{padding:.4rem .8rem;border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;font-size:.8rem}.auth-password-toggle:hover{background:var(--bg-tertiary)}.auth-actions-row{display:flex;gap:.5rem;margin-top:1rem}.auth-actions-row .auth-submit{flex:1;margin-top:0}.auth-btn.danger{background:var(--accent-error);color:#fff;border:none;padding:.6rem 1rem;border-radius:var(--radius-md);cursor:pointer;font-size:.85rem}.auth-btn.danger:hover{background:#dc2626}.auth-loading{padding:2rem;text-align:center;color:var(--text-muted)}.user-config-modal .user-config-body{max-height:70vh;overflow-y:auto;padding:0 0 1rem}.user-config-section{margin-bottom:1.5rem}.user-config-section:last-child{margin-bottom:0}.user-config-section-title{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0 0 .35rem;padding-bottom:.35rem;border-bottom:1px solid var(--border-default)}.user-config-section-desc{font-size:.8rem;color:var(--text-muted);margin:0 0 1rem;line-height:1.45}.user-config-modal .auth-form input,.user-config-modal .auth-password-input input,.user-config-modal .auth-select{color:#1e293b!important;background-color:#fff!important}.user-config-modal .auth-form input::placeholder,.user-config-modal .auth-password-input input::placeholder{color:#64748b!important}.user-config-action-area{display:flex;gap:.75rem}.auth-submit{margin-top:.5rem;width:100%;padding:.6rem;border-radius:var(--radius-md);border:none;background:var(--gradient-primary);color:#fff;font-size:.9rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast);position:relative;overflow:hidden}.auth-submit:before{content:"";position:absolute;top:-40%;left:-60%;width:60%;height:180%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.22),transparent);transform:rotate(18deg);opacity:0}.auth-submit:hover:not(:disabled):before{opacity:1;animation:authBtnShine .9s ease-out}.auth-submit:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 10px 30px #7c3aed40,0 0 18px #06b6d42e}.auth-submit:active:not(:disabled){transform:translateY(0)}.auth-submit:disabled{opacity:.6;cursor:not-allowed;filter:saturate(.85)}.auth-switch{margin-top:.75rem;width:100%;border:none;background:transparent;color:var(--accent-tertiary);font-size:.8rem;cursor:pointer}.auth-switch:hover{filter:brightness(1.15)}@keyframes authBtnShine{0%{left:-60%}to{left:130%}}@keyframes authModalIn{0%{opacity:0;transform:translateY(8px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes authErrorShake{0%{transform:translate(0)}20%{transform:translate(-3px)}40%{transform:translate(3px)}60%{transform:translate(-2px)}80%{transform:translate(2px)}to{transform:translate(0)}}.refresh-btn{display:flex;align-items:center;gap:.375rem;padding:.5rem 1rem;background:var(--bg-tertiary);border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-secondary);font-size:.8125rem;cursor:pointer;transition:all var(--transition-fast)}.refresh-btn:hover{background:var(--surface-hover);color:var(--text-primary)}.tasks-list-wrap{background:var(--surface-glass);border:1px solid var(--border-subtle);border-radius:var(--radius-md);overflow:hidden}.tasks-table{width:100%;border-collapse:collapse;font-size:.9375rem}.tasks-table thead{background:var(--bg-elevated);border-bottom:1px solid var(--border-default)}.tasks-table th{text-align:left;padding:.75rem 1rem;font-weight:600;color:var(--text-secondary)}.tasks-table .col-type{width:88px}.tasks-table .col-type .meta-tag.ai{background:var(--accent-purple);color:#fff}.tasks-table .col-status{width:48px;text-align:center}.tasks-table .col-name{min-width:160px}.tasks-table .col-time{width:160px;white-space:nowrap}.tasks-table .col-meta{min-width:180px}.tasks-table .col-actions{width:120px;text-align:right}.task-row{border-bottom:1px solid var(--border-subtle);transition:background var(--transition-fast)}.task-row:hover{background:var(--bg-tertiary)}.task-row td{padding:.75rem 1rem;vertical-align:middle}.task-row .col-name{color:var(--text-primary);font-weight:500}.task-row .col-time{color:var(--text-muted);font-size:.8125rem}.task-row .col-meta{display:flex;flex-wrap:wrap;gap:.35rem}.task-row .col-actions{display:flex;gap:.5rem;justify-content:flex-end}.admin-container{padding:2rem}.admin-section{background:var(--surface-glass);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:1.5rem}.admin-section-header{margin-bottom:1rem}.admin-section-header h3{font-size:1.125rem;font-weight:600;color:var(--text-primary)}.admin-user-section-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem}.admin-user-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.admin-user-search-input{min-width:200px;max-width:360px;flex:1;padding:.5rem .75rem;border-radius:var(--radius-md);border:1px solid var(--border-default);background:var(--bg-elevated);color:var(--text-primary);font-size:.875rem}.admin-user-search-input:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 2px #3b82f633}.admin-user-search-btn{display:inline-flex;align-items:center;gap:.35rem}.mini-btn.danger-outline{border:1px solid rgba(239,68,68,.55);color:#f87171;background:transparent}.mini-btn.danger-outline:hover:not(:disabled){background:#ef44441f}.admin-users-table .col-check{width:40px;text-align:center}.admin-users-table .col-check input[type=checkbox]{cursor:pointer}.admin-users-table .col-check input[type=checkbox]:disabled{cursor:not-allowed;opacity:.35}.admin-user-pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-subtle)}.admin-user-pagination-info{font-size:.8125rem;color:var(--text-muted)}.admin-user-pagination-btns{display:flex;align-items:center;gap:.5rem}.admin-user-pagination-btns .mini-btn{display:inline-flex;align-items:center;gap:.25rem}.tasks-table .col-id{width:60px}.tasks-table .col-username{font-weight:500}.tasks-table .col-role{width:100px}.tasks-table .col-company,.tasks-table .col-phone{min-width:120px}.tasks-table .col-email{min-width:150px}.tasks-table .col-date{width:120px}.admin-tag{color:var(--accent-primary);background:#3b82f61a;font-weight:600}.task-detail-row td{padding:0;border-bottom:1px solid var(--border-subtle);vertical-align:top}.ai-history-detail-cell{background:var(--bg-elevated);padding:1rem 1.25rem!important}.ai-history-detail{font-size:.875rem;color:var(--text-secondary)}.ai-history-detail .ai-detail-block{margin:.25rem 0}.ai-history-detail .ai-detail-block:first-child{margin-top:0}.meta-tag.success{color:var(--accent-success);background:#10b9811a}.tasks-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1rem}.task-card{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;background:var(--surface-glass);border:1px solid var(--border-subtle);border-radius:var(--radius-md);transition:all var(--transition-fast)}.task-card:hover{border-color:var(--border-default);background:var(--bg-tertiary);transform:translate(4px)}.task-status{flex-shrink:0}.status-icon{width:20px;height:20px}.status-icon.success{color:var(--accent-success)}.status-icon.error{color:var(--accent-error)}.status-icon.running{color:var(--accent-primary)}.status-icon.pending{color:var(--accent-warning)}.task-details{flex:1;display:flex;flex-direction:column;gap:.125rem;min-width:0}.task-name{font-size:.9375rem;font-weight:500;white-space:normal;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-clamp:2;word-break:break-word}.task-date{font-size:.75rem;color:var(--text-muted)}.task-meta{display:flex;gap:.5rem;flex-shrink:0}.meta-tag{font-size:.75rem;padding:.25rem .5rem;background:var(--bg-elevated);border-radius:var(--radius-sm);color:var(--text-secondary)}.meta-tag.obj{color:var(--accent-success);background:#10b9811a}.stats-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}.stat-card{display:flex;align-items:center;gap:1rem;padding:1.25rem;background:var(--surface-glass);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);transition:all var(--transition-fast)}.stat-card:hover{transform:translateY(-2px);border-color:var(--border-default);box-shadow:0 8px 25px #0000004d}.stat-icon{width:52px;height:52px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md)}.stat-icon.blue{background:#6366f126;color:var(--accent-primary)}.stat-icon.green{background:#10b98126;color:var(--accent-success)}.stat-icon.red{background:#ef444426;color:var(--accent-error)}.stat-icon.purple{background:#8b5cf626;color:var(--accent-secondary)}.stat-info{display:flex;flex-direction:column;gap:.125rem}.stat-num{font-size:1.75rem;font-weight:700;color:var(--text-primary);line-height:1}.stat-lbl{font-size:.8125rem;color:var(--text-muted)}@media (max-width: 768px){.header{padding:.75rem 1rem;flex-direction:column;gap:.75rem}.header-left{flex-direction:column;gap:.5rem}.header-tagline{padding-left:0;border-left:none}.main{padding:.75rem .75rem 1.5rem;width:100%}.hero-row{flex-direction:column;align-items:stretch;gap:.75rem}.hero-actions{flex-wrap:wrap;justify-content:center}.hero-section{text-align:center}.hero-section h1{font-size:1.35rem;justify-content:center}.mode-switch{width:100%}.mode-option{flex:1;justify-content:center;padding:.5rem .75rem}.panel{padding:1rem}.result-stats-grid,.math-stats-grid{grid-template-columns:repeat(2,1fr)}.task-card{flex-wrap:wrap}.task-meta{width:100%;margin-top:.5rem}.tasks-table-container{overflow-x:auto;-webkit-overflow-scrolling:touch}.tasks-table{min-width:600px}.tasks-table th,.tasks-table td{padding:.5rem;font-size:.8rem}}@media (max-width: 480px){.header{padding:.5rem .75rem;gap:.5rem}.logo-text{font-size:1rem}.header-tagline{display:none}.nav{gap:.25rem}.nav-btn{padding:.4rem .6rem;font-size:.75rem;gap:.3rem}.nav-btn span{display:none}.main{padding:.5rem .5rem 1rem;gap:1rem}.solve-container{gap:1rem}.panel{padding:.75rem;border-radius:var(--radius-lg)}.hero-section h1{font-size:1.15rem}.hero-section p{font-size:.75rem}.mode-switch{padding:.2rem;border-radius:var(--radius-md)}.mode-option{padding:.4rem .5rem;font-size:.75rem;gap:.3rem}.content-grid{gap:1rem}.panel-toggle{font-size:.7rem;padding:.3rem .5rem}.panel-header h3{font-size:.9rem}.result-stats-grid,.math-stats-grid{grid-template-columns:1fr;gap:.5rem}.metric-item{padding:.5rem}.metric-label{font-size:.7rem}.metric-value{font-size:.9rem}.gateway-metrics-grid{grid-template-columns:1fr}.gateway-summary-title{flex-direction:column;align-items:flex-start;gap:.5rem}.gateway-actions{width:100%;flex-wrap:wrap;gap:.5rem}.mini-btn{padding:.3rem .5rem;font-size:.7rem}.btn,.btn-primary{padding:.5rem 1rem;font-size:.8rem}.input-group{margin-bottom:.75rem}.input-group label{font-size:.8rem;margin-bottom:.25rem}.input-group input,.input-group textarea,.input-group select{padding:.5rem;font-size:.85rem}.file-drop-zone{padding:1rem;min-height:80px}.file-drop-text{font-size:.8rem}.vars-grid,.constraints-grid{grid-template-columns:1fr}.var-item,.constraint-item{padding:.5rem;font-size:.8rem}.task-card{padding:.75rem;gap:.5rem}.task-name{font-size:.85rem}.task-status{font-size:.7rem;padding:.15rem .4rem}.task-meta{font-size:.7rem}.home-hero{padding:1rem}.home-title-main{font-size:1.5rem}.home-title-sub{font-size:.8rem}.home-grid{gap:.75rem}.home-mini-card{padding:.75rem}.home-mini-icon{width:32px;height:32px}.home-mini-title{font-size:.85rem}.home-mini-desc{font-size:.75rem}.home-metrics{gap:.5rem}.home-metric{padding:.6rem .75rem}.home-metric-label{font-size:.65rem}.home-metric-value{font-size:1rem}.home-metric-desc{font-size:.7rem}.auth-container{padding:1rem}.auth-card{padding:1.5rem 1rem}.auth-title{font-size:1.25rem}}@media (max-width: 375px){.header{padding:.4rem .5rem}.logo-icon{width:32px;height:32px}.logo-text{font-size:.9rem}.auth-area{gap:.4rem}.auth-btn{padding:.25rem .6rem;font-size:.7rem}.nav-btn{padding:.35rem .5rem}.main{padding:.4rem .4rem .75rem}.panel{padding:.6rem}.hero-section h1{font-size:1rem}.mode-option span{display:none}.btn,.btn-primary{padding:.4rem .8rem;font-size:.75rem}.home-title-main{font-size:1.25rem}.home-mini-card{padding:.6rem}.home-cta{padding:1rem}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-secondary);border-radius:4px}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--accent-primary)}.latex-container{position:relative;display:inline-block;width:100%}.latex-content{font-size:.9rem;color:var(--text-primary);padding:.5rem;background:var(--bg-tertiary);border-radius:var(--radius-sm);overflow-x:auto}.latex-content.display-mode{padding:1rem;font-size:1.1rem;text-align:center}.latex-copy-btn{position:absolute;top:4px;right:4px;padding:4px 8px;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;opacity:0;transition:opacity .2s}.latex-container:hover .latex-copy-btn{opacity:1}.latex-copy-btn:hover{background:var(--accent-primary);color:#fff}.full-model-display{display:flex;flex-direction:column;gap:.75rem}.model-section{background:var(--bg-tertiary);border-radius:var(--radius-md);overflow:hidden}.section-header{display:flex;justify-content:space-between;align-items:center;padding:.6rem .75rem;background:var(--bg-elevated);cursor:pointer;transition:background .2s}.section-header:hover{background:#7c3aed26}.section-header h4{display:flex;align-items:center;gap:.4rem;font-size:.85rem;font-weight:600;color:var(--text-primary);margin:0}.section-icon{display:flex;color:var(--accent-tertiary)}.sense-badge,.constraint-count,.bounds-count,.matrix-info{font-size:.7rem;padding:.2rem .4rem;background:var(--accent-primary);color:#fff;border-radius:var(--radius-sm)}.constraint-count{background:var(--accent-tertiary)}.bounds-count{background:var(--accent-warning)}.matrix-info{background:var(--accent-secondary)}.section-content{padding:.75rem;max-height:300px;overflow-y:auto}.expression-block,.latex-block,.coefficients-block{margin-bottom:.75rem}.expression-label{font-size:.7rem;color:var(--text-muted);margin-bottom:.4rem;text-transform:uppercase;letter-spacing:.5px}.expression-text{font-family:Fira Code,Consolas,monospace;font-size:.8rem;color:var(--accent-tertiary);background:var(--bg-secondary);padding:.5rem;border-radius:var(--radius-sm);word-break:break-all}.coefficients-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(70px,1fr));gap:.4rem}.coef-item{display:flex;flex-direction:column;padding:.4rem;background:var(--bg-secondary);border-radius:var(--radius-sm)}.coef-var{font-size:.75rem;color:var(--accent-tertiary);font-family:monospace}.coef-value{font-size:.7rem;color:var(--text-secondary)}.coef-more{grid-column:1 / -1;text-align:center;padding:.4rem;color:var(--text-muted);font-size:.75rem}.constraints-list{display:flex;flex-direction:column;gap:.4rem;max-height:250px;overflow-y:auto}.constraint-item{padding:.5rem;background:var(--bg-secondary);border-radius:var(--radius-sm);border-left:3px solid var(--accent-tertiary)}.constraint-name{font-size:.65rem;color:var(--text-muted);margin-bottom:.2rem;font-family:monospace}.constraint-expression{font-family:Fira Code,monospace;font-size:.75rem;color:var(--text-primary);margin-bottom:.2rem}.constraint-latex{font-size:.8rem}.constraints-more{text-align:center;padding:.4rem;color:var(--text-muted);font-size:.75rem}.bounds-list{display:flex;flex-direction:column;gap:.4rem;max-height:200px;overflow-y:auto}.bound-item{display:flex;align-items:center;gap:.5rem;padding:.4rem .6rem;background:var(--bg-secondary);border-radius:var(--radius-sm)}.bound-var{font-family:monospace;font-size:.8rem;color:var(--accent-tertiary);min-width:50px}.bound-type{font-size:.7rem;color:var(--text-muted);flex:1}.bound-value{font-family:monospace;font-size:.75rem;color:var(--accent-success)}.bounds-more{text-align:center;padding:.4rem;color:var(--text-muted);font-size:.75rem}.matrix-summary{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.matrix-stat{display:flex;flex-direction:column;align-items:center;padding:.5rem;background:var(--bg-secondary);border-radius:var(--radius-sm)}.matrix-stat .stat-label{font-size:.7rem;color:var(--text-muted);margin-bottom:.2rem}.matrix-stat .stat-value{font-size:1rem;font-weight:600;color:var(--accent-tertiary)}.show-full-model-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.6rem;margin-top:.75rem;background:linear-gradient(135deg,var(--accent-primary) 0%,var(--accent-secondary) 100%);border:none;border-radius:var(--radius-md);color:#fff;font-size:.85rem;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.show-full-model-btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-glow)}.view-full-page-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.75rem;margin-top:1rem;background:linear-gradient(135deg,var(--accent-primary) 0%,var(--accent-secondary) 100%);border:none;border-radius:var(--radius-md);color:#fff;font-size:.9rem;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.view-full-page-btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-glow)}.mps-summary-card{background:var(--surface-glass-strong);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:1rem;margin-top:1rem;box-shadow:var(--shadow-sm)}.mps-summary-header{margin-bottom:.75rem}.mps-summary-header h4{font-size:1rem;font-weight:600;color:var(--text-primary)}.mps-summary-body{display:flex;flex-direction:column;gap:.75rem;font-size:.9rem;color:var(--text-secondary)}.mps-summary-row{display:flex;flex-direction:column;gap:.3rem}.mps-summary-row .label{font-size:.75rem;letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted)}.mps-summary-row code{font-size:.85rem;padding:.35rem .5rem;background:#0f172a0a;border-radius:5px;color:var(--text-primary);font-family:Fira Code,JetBrains Mono,monospace;white-space:pre-wrap}.mps-constraint-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem}.mps-constraint-list li{padding-left:.5rem;border-left:3px solid var(--accent-primary);color:var(--text-primary);line-height:1.4}.mps-constraint-list .more-indicator{color:var(--text-muted);font-size:.8rem}.full-model-card{margin-top:0}.full-model-card .card-header{display:flex;align-items:center;gap:.5rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-subtle);margin-bottom:.5rem}.sample-bank-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172aa6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:9999;padding:1rem}.sample-bank-modal{width:560px;max-width:calc(100vw - 2rem);max-height:80vh;background:#fffffff5;border-radius:16px;overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow-lg),0 0 60px #6366f126}.sample-bank-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;background:linear-gradient(135deg,#6366f114,#ec48990d);border-bottom:1px solid rgba(99,102,241,.12)}.sample-bank-header h3{margin:0;font-size:1.15rem;font-weight:700;color:var(--text-primary);display:flex;align-items:center;gap:.5rem}.sample-bank-header-actions{display:flex;align-items:center;gap:.5rem}.sample-bank-upload-btn{display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .75rem;background:linear-gradient(135deg,var(--accent-primary) 0%,var(--accent-purple-hover) 100%);color:#fff;border:none;border-radius:6px;font-size:.85rem;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.sample-bank-upload-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #6366f159}.sample-bank-upload-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.sample-bank-close{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:#6366f114;color:var(--text-secondary);cursor:pointer;padding:.5rem;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.sample-bank-close:hover{background:#ef44441f;color:#ef4444}.sample-bank-list{padding:1rem;overflow-y:auto;display:flex;flex-direction:column;gap:.75rem}.sample-bank-item{padding:1rem;background:#f8fafccc;border:1px solid rgba(99,102,241,.1);border-radius:10px;transition:all var(--transition-fast)}.sample-bank-item:hover{background:#f8fafc;border-color:#6366f140;box-shadow:0 2px 8px #6366f11a}.sample-bank-item-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem;color:var(--accent-primary)}.sample-bank-filename{font-weight:600;color:var(--text-primary);font-size:.95rem}.sample-bank-summary{margin:0 0 .75rem;font-size:.85rem;color:var(--text-secondary);line-height:1.5}.sample-bank-use-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:linear-gradient(135deg,var(--accent-primary) 0%,var(--accent-purple-hover) 100%);color:#fff;cursor:pointer;padding:.5rem 1rem;border-radius:6px;font-size:.85rem;font-weight:500;display:inline-flex;align-items:center;gap:.35rem;transition:all var(--transition-fast)}.sample-bank-use-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #6366f159}.sample-bank-delete-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:#ef44441a;color:#ef4444;cursor:pointer;padding:.4rem;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;transition:all var(--transition-fast);margin-left:.5rem}.sample-bank-delete-btn:hover{background:#ef444433;transform:translateY(-1px)}.sample-bank-item .sample-bank-item-footer{display:flex;justify-content:flex-end;margin-top:.5rem}.sample-bank-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;color:var(--text-muted);gap:.5rem}.sample-bank-empty{display:flex;align-items:center;justify-content:center;padding:3rem;color:var(--text-muted)}.sample-bank-category{margin-left:auto;font-size:.75rem;padding:.15rem .5rem;background:#6366f11a;color:var(--accent-primary);border-radius:4px}.sample-bank-difficulty{margin-left:.5rem;font-size:.7rem;padding:.15rem .4rem;border-radius:3px;font-weight:500}.sample-bank-difficulty.easy{background:#10b9811a;color:#10b981}.sample-bank-difficulty.medium{background:#f59e0b1a;color:#f59e0b}.sample-bank-difficulty.hard{background:#ef44441a;color:#ef4444}.sample-bank-filters{padding:.75rem 1rem;border-bottom:1px solid rgba(99,102,241,.1);display:flex;gap:.75rem;align-items:center;flex-wrap:wrap;background:#f8fafc80}.sample-bank-filters svg{color:var(--text-secondary);flex-shrink:0}.sample-bank-filter-select{padding:.4rem .75rem;border-radius:6px;border:1px solid rgba(99,102,241,.15);background:#ffffffe6;color:var(--text-primary);font-size:.875rem;cursor:pointer;transition:all var(--transition-fast);min-width:120px}.sample-bank-filter-select:hover{border-color:#6366f14d;background:#fff}.sample-bank-filter-select:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px #6366f11a}.sample-bank-filter-clear{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid rgba(99,102,241,.15);background:#ffffffe6;color:var(--text-secondary);padding:.4rem .75rem;border-radius:6px;font-size:.875rem;cursor:pointer;transition:all var(--transition-fast)}.sample-bank-filter-clear:hover{background:#6366f10d;border-color:#6366f140;color:var(--accent-primary)}.sample-bank-filter-count{margin-left:auto;color:var(--text-secondary);font-size:.875rem;font-weight:500}.full-model-card .card-header h3{margin:0;font-size:.95rem;color:var(--accent-tertiary)}.language-switcher{position:relative;display:flex;flex-shrink:0}.language-switcher-btn{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .625rem;border:1px solid var(--border-default);border-radius:8px;background:var(--surface-glass);color:var(--text-secondary);font-size:.8rem;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.language-switcher-btn:hover{border-color:var(--accent-primary);color:var(--accent-primary);background:var(--surface-hover)}.language-switcher-label{font-family:inherit}.language-switcher-chevron{transition:transform .2s ease;opacity:.7}.language-switcher-chevron.open{transform:rotate(180deg)}.language-switcher-dropdown{position:absolute;top:calc(100% + 6px);right:0;z-index:1000;min-width:140px;background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:10px;box-shadow:0 8px 24px #0000001f;padding:.375rem;display:flex;flex-direction:column;gap:2px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.language-switcher-option{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border:none;border-radius:6px;background:transparent;color:var(--text-primary);font-size:.85rem;font-family:inherit;cursor:pointer;transition:background .15s ease;text-align:left}.language-switcher-option:hover{background:var(--surface-hover)}.language-switcher-option.active{background:#6366f114;color:var(--accent-primary);font-weight:600}.lang-flag{font-weight:700;font-size:.75rem;letter-spacing:.02em;min-width:24px;text-align:center}.lang-label{flex:1}.lang-check{color:var(--accent-primary);font-size:.8rem;margin-left:auto}:root{--tm-accent: #10b981;--tm-accent-secondary: #06b6d4;--tm-accent-light: rgba(16,185,129,.12);--tm-accent-light-secondary: rgba(6,182,212,.1);--tm-accent-border: rgba(16,185,129,.25);--tm-accent-hover: rgba(16,185,129,.06);--tm-accent-glow: rgba(16,185,129,.2);--tm-header-bg: linear-gradient(135deg, #0f172a 0%, #1e293b 100%);--tm-bg: linear-gradient(180deg, #0f172a 0%, #0c1222 100%);--tm-bg-2: #1e293b;--tm-bg-3: #334155;--tm-surface: rgba(30, 41, 59, .85);--tm-surface-elevated: rgba(51, 65, 85, .9);--tm-border: rgba(148, 163, 184, .12);--tm-border-2: rgba(148, 163, 184, .25);--tm-text: #f1f5f9;--tm-text-2: #94a3b8;--tm-text-3: #64748b;--tm-text-4: #475569;--tm-shadow: 0 4px 24px rgba(0,0,0,.4), 0 1px 4px rgba(0,0,0,.2);--tm-shadow-lg: 0 12px 48px rgba(0,0,0,.5), 0 2px 8px rgba(0,0,0,.25);--tm-shadow-accent: 0 4px 20px rgba(16,185,129,.2), 0 1px 6px rgba(16,185,129,.1);--tm-radius: 14px;--tm-radius-sm: 10px;--tm-radius-xs: 6px;--tm-radius-lg: 20px}.tm-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000d9;backdrop-filter:blur(16px) saturate(1.4);-webkit-backdrop-filter:blur(16px) saturate(1.4);display:flex;align-items:stretch;justify-content:stretch;z-index:9999}.tm-container{width:100vw;height:100vh;display:flex;flex-direction:column;overflow:hidden;background:var(--tm-bg);animation:tm-enter .3s cubic-bezier(.16,1,.3,1);position:relative;border-radius:var(--tm-radius-lg);box-shadow:0 24px 80px #00000080,0 4px 16px #0000004d;margin:12px;width:calc(100vw - 24px);height:calc(100vh - 24px);border:1px solid var(--tm-border)}@keyframes tm-enter{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.tm-container:before{content:"";position:absolute;top:0;left:0;right:0;height:280px;background:linear-gradient(180deg,rgba(16,185,129,.08) 0%,rgba(6,182,212,.04) 30%,transparent 100%);pointer-events:none;z-index:0;border-radius:var(--tm-radius-lg) var(--tm-radius-lg) 0 0}.tm-container:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(circle,rgba(16,185,129,.08) 1px,transparent 1px),radial-gradient(circle,rgba(6,182,212,.05) 1px,transparent 1px);background-size:32px 32px,64px 64px;pointer-events:none;z-index:0;border-radius:var(--tm-radius-lg)}.tm-header{display:flex;align-items:center;gap:20px;padding:16px 26px;background:var(--tm-header-bg);border-bottom:1px solid var(--tm-border);flex-shrink:0;position:relative;z-index:10;box-shadow:0 2px 12px #1c19170d}.tm-header-left{display:flex;align-items:center;gap:14px;flex:1;min-width:0}.tm-header-icon{width:46px;height:46px;background:linear-gradient(135deg,#7c3aed,#6d28d9,#7c3aed);border-radius:14px;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0;box-shadow:0 4px 16px #7c3aed4d,0 2px 6px #7c3aed2e,inset 0 1px #fff3;position:relative;overflow:hidden}.tm-header-icon:after{content:"";position:absolute;top:-2px;left:-2px;right:-2px;height:50%;background:linear-gradient(180deg,rgba(255,255,255,.2),transparent);border-radius:14px 14px 50% 50%;pointer-events:none}.tm-header-title{font-size:1.18rem;font-weight:800;color:#1c1917;margin:0 0 4px;letter-spacing:-.025em;background:linear-gradient(135deg,#1c1917 30%,#7c3aed);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.tm-header-sub{font-size:.7rem;color:var(--tm-text-3);margin:0;line-height:1.5;font-family:PingFang SC,Microsoft YaHei,sans-serif}.tm-header-stats{display:flex;align-items:center;gap:0;background:#fffc;border:1px solid var(--tm-border);border-radius:14px;padding:6px 20px;flex-shrink:0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 1px 4px #1c19170f}.tm-stat-item{display:flex;flex-direction:column;align-items:center;padding:0 20px 0 0}.tm-stat-item:first-child{padding-left:0}.tm-stat-n{font-size:1.15rem;font-weight:800;color:#7c3aed;line-height:1;font-variant-numeric:tabular-nums;letter-spacing:-.02em}.tm-stat-l{font-size:.58rem;color:var(--tm-text-3);margin-top:3px;white-space:nowrap;letter-spacing:.06em;text-transform:uppercase}.tm-stat-sep{width:1px;height:26px;background:var(--tm-border);margin:0 20px 0 0}.tm-body{flex:1;display:flex;min-height:0;position:relative;z-index:1}.tm-body.tm-body-form-fullscreen{flex-direction:column}.tm-body.tm-body-form-fullscreen .tm-right-panel-fullscreen{flex:1;width:100%}.tm-sidebar{width:230px;flex-shrink:0;display:flex;flex-direction:column;background:linear-gradient(180deg,var(--tm-header-bg) 0%,rgba(237,232,223,.6) 100%);border-right:1.5px solid var(--tm-border);overflow:hidden;position:relative}.tm-sidebar:after{content:"";position:absolute;top:0;right:0;bottom:0;width:1px;background:linear-gradient(180deg,transparent,rgba(124,58,237,.08),transparent);pointer-events:none}.tm-sidebar-title{display:flex;align-items:center;gap:5px;padding:12px 16px 10px;font-size:.6rem;font-weight:700;color:var(--tm-text-3);text-transform:uppercase;letter-spacing:.12em;border-bottom:1px solid var(--tm-border);flex-shrink:0}.tm-sidebar-group{display:flex;flex-direction:column}.tm-sidebar-item{display:flex;align-items:center;gap:8px;padding:8px 14px;border:none;background:transparent;color:var(--tm-text-2);font-size:.78rem;cursor:pointer;transition:background .14s,color .14s;font-family:inherit;width:100%;text-align:left;position:relative}.tm-sidebar-item:hover{background:var(--tm-accent-hover);color:var(--tm-text)}.tm-sidebar-item.active{background:linear-gradient(90deg,#7c3aed1a,#7c3aed0a);color:#7c3aed;font-weight:700}.tm-sidebar-item.active:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg,#7c3aed,#6d28d9);border-radius:0 3px 3px 0}.tm-sidebar-item-icon{width:22px;height:22px;border-radius:6px;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--tm-text-3);background:#1c19170a;transition:background .14s,color .14s}.tm-sidebar-item.active .tm-sidebar-item-icon,.tm-sidebar-item:hover .tm-sidebar-item-icon{background:#7c3aed1a;color:#7c3aed}.tm-sidebar-item-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.3}.tm-sidebar-item-right{display:flex;align-items:center;gap:3px;flex-shrink:0}.tm-sidebar-expand{color:var(--tm-text-4);display:flex;align-items:center;transition:transform .15s}.tm-sidebar-item:hover .tm-sidebar-expand{color:var(--tm-text-3)}.tm-sidebar-item-count{background:#1c19170f;border-radius:5px;padding:1px 5px;font-size:.6rem;font-weight:700;color:var(--tm-text-3);min-width:18px;text-align:center;transition:background .14s,color .14s}.tm-sidebar-item.active .tm-sidebar-item-count{background:#7c3aed1f;color:#7c3aed}.tm-sidebar-subs{overflow:hidden;background:#ede8df66}.tm-sidebar-sub{display:flex;align-items:center;gap:6px;padding:6px 14px 6px 40px;border:none;background:transparent;color:var(--tm-text-2);font-size:.72rem;cursor:pointer;transition:background .12s,color .12s;font-family:inherit;width:100%;text-align:left;position:relative}.tm-sidebar-sub:hover{background:var(--tm-accent-hover);color:var(--tm-text)}.tm-sidebar-sub.active{background:#7c3aed14;color:#7c3aed;font-weight:600}.tm-sidebar-sub.active:before{content:"";position:absolute;left:14px;top:50%;transform:translateY(-50%);width:4px;height:4px;border-radius:50%;background:#7c3aed}.tm-sidebar-sub-code{font-size:.62rem;font-weight:700;color:var(--tm-text-4);min-width:24px;flex-shrink:0;font-variant-numeric:tabular-nums}.tm-sidebar-sub.active .tm-sidebar-sub-code{color:#7c3aed}.tm-sidebar-sub-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.3}.tm-center{flex:1;display:flex;flex-direction:column;min-width:0;overflow:hidden;background:var(--tm-bg)}.tm-search-bar{display:flex;align-items:center;gap:8px;padding:11px 16px;background:linear-gradient(180deg,#1e293be6,#0f172ad9);border-bottom:1px solid var(--tm-border);flex-shrink:0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.tm-search-icon{color:var(--tm-text-3);flex-shrink:0}.tm-search-input{flex:1;border:1.5px solid var(--tm-border);border-radius:10px;background:linear-gradient(180deg,#0f172ae6,#080f1ed9);color:var(--tm-text);font-size:.83rem;padding:8px 13px;outline:none;transition:border-color .18s,box-shadow .18s;font-family:inherit;min-width:0;box-sizing:border-box}.tm-search-input:focus{border-color:var(--tm-accent);box-shadow:0 0 0 3px #10b9811f;background:linear-gradient(180deg,#1e293bf2,#0f172ae6)}.tm-search-input::placeholder{color:var(--tm-text-4)}.tm-search-x{background:none;border:none;color:var(--tm-text-4);cursor:pointer;display:flex;align-items:center;padding:3px;border-radius:6px;transition:all .12s}.tm-search-x:hover{color:var(--tm-text-2);background:var(--tm-bg-2)}.tm-clear-btn{background:#10b98114;border:1px solid rgba(16,185,129,.2);border-radius:8px;color:var(--tm-accent);font-size:.7rem;font-weight:600;padding:5px 11px;cursor:pointer;white-space:nowrap;transition:all .15s;font-family:inherit;letter-spacing:.01em}.tm-clear-btn:hover{background:#10b98126;border-color:#10b98159}.tm-breadcrumb{display:flex;align-items:center;gap:4px;padding:6px 16px;background:#10b9810a;border-bottom:1px solid var(--tm-accent-border);flex-shrink:0;overflow:hidden}.tm-breadcrumb-item{background:none;border:none;color:var(--tm-text-3);font-size:.72rem;cursor:pointer;padding:2px 4px;border-radius:4px;font-family:inherit;transition:color .12s,background .12s}.tm-breadcrumb-item:hover{color:var(--tm-accent);background:#10b98114}.tm-breadcrumb-item.active{color:var(--tm-accent);font-weight:600}.tm-breadcrumb-sep{color:var(--tm-text-4);flex-shrink:0}.tm-breadcrumb-count{margin-left:auto;font-size:.7rem;color:var(--tm-text-4);white-space:nowrap;flex-shrink:0}.tm-scroll{flex:1;overflow-y:auto;padding:14px;scrollbar-width:thin;scrollbar-color:rgba(16,185,129,.25) transparent}.tm-scroll::-webkit-scrollbar{width:5px}.tm-scroll::-webkit-scrollbar-track{background:transparent}.tm-scroll::-webkit-scrollbar-thumb{background:#10b98140;border-radius:5px}.tm-scroll::-webkit-scrollbar-thumb:hover{background:#10b98166}.tm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;padding:14px 16px}.tm-card{background:linear-gradient(145deg,#1e293bf2,#0f172ae6);border:1.5px solid var(--tm-border);border-radius:var(--tm-radius);padding:13px;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease,background .2s ease;display:flex;flex-direction:column;gap:7px;min-width:0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);position:relative;overflow:hidden;box-shadow:0 2px 8px #00000026,0 1px 2px #0000001a}.tm-card:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(16,185,129,.4),transparent);pointer-events:none}.tm-card:after{content:"";position:absolute;bottom:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--tm-accent),rgba(16,185,129,.25));opacity:0;transition:opacity .2s;border-radius:0 0 var(--tm-radius) var(--tm-radius)}.tm-card:hover{border-color:#10b98180;box-shadow:0 6px 24px #10b9811f,0 2px 8px #00000014;transform:translateY(-3px);background:linear-gradient(145deg,#1e293bfa,#0f172af2)}.tm-card:hover:after{opacity:1}.tm-card.sel{border-color:var(--tm-accent);background:linear-gradient(145deg,#10b9811a,#10b9810d);box-shadow:0 0 0 2px #10b98133,0 6px 24px #10b9811f;transform:translateY(-1px)}.tm-card.sel:after{opacity:1}.tm-card-top{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.tm-card-gb-badge{display:inline-flex;align-items:center;gap:3px;padding:3px 7px;border-radius:7px;font-size:.6rem;font-weight:800;border:1px solid;font-variant-numeric:tabular-nums;flex-shrink:0;letter-spacing:.02em}.tm-card-badge{display:inline-flex;align-items:center;gap:3px;padding:3px 8px;border-radius:8px;font-size:.6rem;font-weight:700;border:1px solid;letter-spacing:.02em;flex-shrink:0}.tm-dot{width:5px;height:5px;border-radius:50%;flex-shrink:0}.tm-card-name{font-size:.83rem;font-weight:700;color:var(--tm-text);margin:0;line-height:1.38;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;letter-spacing:-.015em}.tm-card:hover .tm-card-name,.tm-card.sel .tm-card-name{color:var(--tm-accent)}.tm-card-desc{font-size:.71rem;color:var(--tm-text-3);margin:0;line-height:1.48;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical}.tm-card-foot{display:flex;align-items:center;margin-top:auto;padding-top:3px}.tm-card-gb-name{display:flex;align-items:center;gap:3px;font-size:.62rem;color:var(--tm-text-4);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tm-skeleton{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.tm-skel-card{background:linear-gradient(145deg,#ffffffb3,#faf7f299);border:1.5px solid var(--tm-border);border-radius:var(--tm-radius);padding:13px;display:flex;flex-direction:column;gap:9px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.tm-skel-line{height:10px;background:linear-gradient(90deg,var(--tm-bg-2) 0%,var(--tm-bg-3) 50%,var(--tm-bg-2) 100%);background-size:200% 100%;border-radius:5px;animation:tm-shimmer 1.8s ease-in-out infinite}.tm-skel-line.short{width:45%;height:8px}.tm-skel-line.medium{width:70%}@keyframes tm-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.tm-no-results{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:80px 20px;color:var(--tm-text-4);text-align:center}.tm-no-results svg{opacity:.4}.tm-no-results p{font-size:.88rem;color:var(--tm-text-2);margin:0;font-weight:600}.tm-no-results span{font-size:.78rem;color:var(--tm-text-4)}.tm-right-panel{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0;position:relative}.tm-right-panel-fullscreen{flex:1;display:flex;flex-direction:column}.tm-right{flex:1;width:100%;display:flex;flex-direction:column;overflow:hidden;background:linear-gradient(180deg,#0f172aeb,#080f1ef2);border-top:1.5px solid var(--tm-border);min-width:0;position:relative}.tm-right.tm-right-fullscreen{flex:1;overflow:hidden}.tm-form.tm-form-fullscreen{height:100%;overflow-y:auto}.tm-right.tm-right-fullscreen .tm-form.tm-form-fullscreen{display:flex;flex-direction:column;height:100%;overflow-y:auto}.tm-right.tm-right-fullscreen .tm-form.tm-form-fullscreen .tm-fields{flex:1;min-height:200px}.tm-form.tm-form-fullscreen .tm-form-desc,.tm-form.tm-form-fullscreen .tm-preview-wrap,.tm-form.tm-form-fullscreen .tm-hint{display:none}.tm-form.tm-form-fullscreen .tm-form-head{position:sticky;top:0;z-index:10;background:#0f172afa;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.tm-form.tm-form-fullscreen .tm-form-foot{position:sticky;bottom:0;z-index:10;background:#0f172afa;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.tm-right.open{flex:1}.tm-right:before{content:"";position:absolute;right:-60px;top:15%;width:200px;height:300px;background:radial-gradient(ellipse,rgba(124,58,237,.07) 0%,transparent 70%);pointer-events:none}.tm-right-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;text-align:center;padding:40px}.tm-empty-icon{width:76px;height:76px;background:linear-gradient(145deg,#10b9811f,#10b9810f);border:1.5px solid rgba(16,185,129,.25);border-radius:22px;display:flex;align-items:center;justify-content:center;color:#10b98199;box-shadow:0 4px 20px #10b98126,inset 0 1px #ffffff0d}.tm-right-empty h3{font-size:.9rem;font-weight:700;color:var(--tm-text-2);margin:0;letter-spacing:.01em}.tm-right-empty p{font-size:.76rem;color:var(--tm-text-3);margin:0;line-height:1.7}.tm-form{flex:1;display:flex;flex-direction:column;overflow:hidden;position:relative;z-index:1}.tm-form-head{display:flex;align-items:flex-start;justify-content:space-between;padding:16px 20px 12px;border-bottom:1px solid var(--tm-border);flex-shrink:0;gap:10px;overflow:hidden;background:linear-gradient(180deg,#1e293bf2,#0f172aeb);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.tm-form-head-l{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0}.tm-form-title{font-size:.98rem;font-weight:800;color:var(--tm-text);margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;letter-spacing:-.01em}.tm-form-head-r{display:flex;align-items:center;gap:4px;font-size:.7rem;color:var(--tm-text-3);white-space:nowrap;flex-shrink:0;overflow:hidden;text-overflow:ellipsis}.tm-form-gb-badge{display:flex;align-items:center;flex-shrink:0}.tm-fullscreen-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:1.5px solid var(--tm-border);border-radius:7px;background:linear-gradient(180deg,#1e293bcc,#0f172abf);color:var(--tm-text-3);cursor:pointer;transition:all .15s;margin-left:4px;flex-shrink:0}.tm-fullscreen-btn:hover{border-color:#10b98180;background:linear-gradient(180deg,#10b98126,#10b9811a);color:var(--tm-accent)}.tm-form-desc{padding:10px 20px;font-size:.78rem;color:var(--tm-text-2);margin:0;line-height:1.6;border-bottom:1px solid rgba(16,185,129,.08);flex-shrink:0;background:#10b98105}.tm-fields{flex:1;overflow-y:auto;padding:16px 20px;display:flex;flex-direction:column;gap:16px;scrollbar-width:thin;scrollbar-color:rgba(16,185,129,.25) transparent}.tm-fields::-webkit-scrollbar{width:4px}.tm-fields::-webkit-scrollbar-thumb{background:#10b98140;border-radius:4px}.tm-fields::-webkit-scrollbar-thumb:hover{background:#10b98166}.tm-field{display:flex;flex-direction:column;gap:5px}.tm-label{font-size:.76rem;font-weight:600;color:var(--tm-text-2);display:flex;align-items:center;gap:5px;letter-spacing:.01em}.tm-label-hint{font-size:.65rem;color:var(--tm-text-4);font-weight:400}.tm-in{width:100%;padding:10px 13px;border:1.5px solid var(--tm-border);border-radius:10px;background:linear-gradient(180deg,#1e293bf2,#0f172ae6);color:var(--tm-text);font-size:.84rem;font-family:inherit;transition:border-color .18s,box-shadow .18s,background .18s;box-sizing:border-box;outline:none}.tm-in:focus{border-color:var(--tm-accent);box-shadow:0 0 0 3px #10b98126;background:linear-gradient(180deg,#334155f2,#1e293be6)}.tm-in::placeholder{color:var(--tm-text-4)}.tm-in::-webkit-inner-spin-button,.tm-in::-webkit-outer-spin-button{filter:invert(.4)}.tm-textarea{width:100%;padding:10px 13px;border:1.5px solid var(--tm-border);border-radius:10px;background:linear-gradient(180deg,#1e293bf2,#0f172ae6);color:var(--tm-text);font-size:.84rem;font-family:inherit;line-height:1.6;resize:vertical;transition:border-color .18s,box-shadow .18s,background .18s;box-sizing:border-box;outline:none}.tm-textarea:focus{border-color:var(--tm-accent);box-shadow:0 0 0 3px #10b98126;background:linear-gradient(180deg,#334155f2,#1e293be6)}.tm-textarea::placeholder{color:var(--tm-text-4)}.tm-select-row{display:flex;flex-wrap:wrap;gap:6px}.tm-sel-btn{padding:7px 13px;border:1.5px solid var(--tm-border);border-radius:8px;background:linear-gradient(180deg,#1e293bcc,#0f172abf);color:var(--tm-text-2);font-size:.79rem;font-weight:500;cursor:pointer;transition:all .15s;font-family:inherit;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.tm-sel-btn:hover{border-color:#10b98180;background:linear-gradient(180deg,#10b98126,#10b9811a);color:var(--tm-accent)}.tm-sel-btn.active{font-weight:700}.tm-select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%238A7D68' stroke-width='2.5'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:34px;color:var(--tm-text)}.tm-select option{background:var(--tm-header-bg);color:var(--tm-text)}.tm-obj-row{display:flex;gap:8px}.tm-obj-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:9px;border:1.5px solid var(--tm-border);border-radius:9px;background:linear-gradient(180deg,#1e293bcc,#0f172abf);color:var(--tm-text-2);font-size:.82rem;font-weight:500;cursor:pointer;transition:all .15s;font-family:inherit;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.tm-obj-btn:hover{border-color:#10b98180;background:linear-gradient(180deg,#10b98126,#10b9811a);color:var(--tm-accent)}.tm-obj-btn.active{font-weight:700}.tm-hint{display:flex;align-items:flex-start;gap:7px;padding:9px 12px;background:linear-gradient(180deg,#10b98114,#10b9810a);border:1px solid rgba(16,185,129,.25);border-radius:9px;font-size:.73rem;color:var(--tm-accent);line-height:1.5}.tm-hint svg{color:var(--tm-accent);flex-shrink:0;margin-top:1px}.tm-custom-constraints{margin-top:8px;border-top:1px dashed rgba(16,185,129,.3);padding-top:16px}.tm-custom-constraints-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.tm-custom-constraints-title{display:flex;align-items:center;gap:6px;font-size:.78rem;font-weight:700;color:var(--tm-accent);letter-spacing:.01em}.tm-add-constraint-btn{display:flex;align-items:center;gap:4px;padding:5px 12px;border:1.5px solid rgba(16,185,129,.4);border-radius:8px;background:linear-gradient(180deg,#10b9811f,#10b98114);color:var(--tm-accent);font-size:.72rem;font-weight:600;cursor:pointer;transition:all .15s;font-family:inherit}.tm-add-constraint-btn:hover{background:linear-gradient(180deg,#10b98133,#10b9811f);border-color:var(--tm-accent);transform:translateY(-1px)}.tm-constraint-card{background:linear-gradient(180deg,#10b9810f,#10b98108);border:1.5px solid rgba(16,185,129,.25);border-radius:12px;margin-bottom:12px;overflow:hidden}.tm-constraint-card-header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:linear-gradient(180deg,#10b9811a,#10b9810d);border-bottom:1px solid rgba(16,185,129,.15)}.tm-constraint-card-title{display:flex;align-items:center;gap:6px;font-size:.75rem;font-weight:700;color:var(--tm-accent)}.tm-constraint-drag{color:var(--tm-text-4);cursor:grab}.tm-constraint-delete-btn{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border:none;border-radius:6px;background:transparent;color:var(--tm-text-4);cursor:pointer;transition:all .15s}.tm-constraint-delete-btn:hover{background:#dc262626;color:#ef4444}.tm-constraint-fields{padding:12px 14px;display:flex;flex-direction:column;gap:10px}.tm-constraint-field{display:flex;flex-direction:column;gap:4px}.tm-constraint-field label{font-size:.68rem;font-weight:600;color:var(--tm-text-3);letter-spacing:.01em}.tm-constraint-input{padding:8px 11px;border:1.5px solid var(--tm-border);border-radius:8px;background:linear-gradient(180deg,#0f172ae6,#080f1ed9);color:var(--tm-text);font-size:.8rem;font-family:inherit;transition:border-color .18s,box-shadow .18s;outline:none}.tm-constraint-input:focus{border-color:var(--tm-accent);box-shadow:0 0 0 3px #10b9811f}.tm-constraint-input::placeholder{color:var(--tm-text-4)}.tm-constraint-textarea{padding:8px 11px;border:1.5px solid var(--tm-border);border-radius:8px;background:linear-gradient(180deg,#0f172ae6,#080f1ed9);color:var(--tm-text);font-size:.8rem;font-family:inherit;line-height:1.5;resize:vertical;transition:border-color .18s,box-shadow .18s;outline:none}.tm-constraint-textarea:focus{border-color:var(--tm-accent);box-shadow:0 0 0 3px #10b9811f}.tm-constraint-textarea::placeholder{color:var(--tm-text-4)}.tm-constraint-expr{font-family:Fira Code,Consolas,PingFang SC,monospace;font-size:.76rem}.tm-constraints-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:24px 20px;text-align:center;color:var(--tm-text-4)}.tm-constraints-empty svg{opacity:.4;color:var(--tm-accent)}.tm-constraints-empty p{font-size:.78rem;color:var(--tm-text-3);margin:0;font-weight:500}.tm-constraints-empty span{font-size:.68rem;color:var(--tm-text-4)}.tm-preview-wrap{padding:0 20px 12px;flex-shrink:0}.tm-preview-label{display:flex;align-items:center;gap:5px;font-size:.65rem;font-weight:700;color:var(--tm-text-4);text-transform:uppercase;letter-spacing:.1em;margin-bottom:5px}.tm-preview{width:100%;padding:9px 13px;border:1.5px dashed rgba(16,185,129,.35);border-radius:9px;background:linear-gradient(180deg,#080f1ee6,#0f172ad9);color:var(--tm-text-2);font-size:.76rem;font-family:Fira Code,Consolas,PingFang SC,monospace;line-height:1.7;resize:none;box-sizing:border-box;outline:none}.tm-go-btn{margin:0 20px 18px;padding:12px;border:none;border-radius:11px;color:#fff;font-size:.88rem;font-weight:700;font-family:inherit;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:opacity .15s,transform .12s,box-shadow .15s;flex-shrink:0;letter-spacing:.01em;position:relative;overflow:hidden;box-shadow:0 3px 14px #7c3aed40,0 1px 3px #7c3aed26}.tm-go-btn:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,rgba(255,255,255,.1) 0%,transparent 100%);pointer-events:none}.tm-go-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 22px #7c3aed4d,0 2px 6px #7c3aed2e}.tm-go-btn:active:not(:disabled){transform:translateY(0)}.tm-go-btn:disabled{opacity:.35;cursor:not-allowed;transform:none}.tm-spin{width:14px;height:14px;border:2px solid rgba(255,255,255,.25);border-top-color:#fff;border-radius:50%;animation:tm-spin .7s linear infinite}.tm-form-foot{display:flex;align-items:center;gap:10px;padding:14px 20px 16px;border-top:1px solid var(--tm-border);flex-shrink:0;background:linear-gradient(180deg,#1e293bf2,#0f172aeb);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.tm-cancel-btn{flex:1;padding:11px;border:1.5px solid var(--tm-border);border-radius:10px;background:linear-gradient(180deg,#1e293bcc,#0f172abf);color:var(--tm-text-2);font-size:.84rem;font-weight:600;font-family:inherit;cursor:pointer;transition:all .15s;letter-spacing:.01em;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.tm-cancel-btn:hover{border-color:#10b98180;background:linear-gradient(180deg,#10b9811f,#10b98114);color:var(--tm-accent)}.tm-confirm-btn{flex:3;padding:12px;border:none;border-radius:11px;color:#fff;font-size:.88rem;font-weight:700;font-family:inherit;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:opacity .15s,transform .12s,box-shadow .15s;flex-shrink:0;letter-spacing:.01em;position:relative;overflow:hidden;background:linear-gradient(135deg,var(--tm-accent) 0%,#059669 100%);box-shadow:0 4px 16px #10b9814d,0 2px 4px #10b9812e}.tm-confirm-btn:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,rgba(255,255,255,.12) 0%,transparent 100%);pointer-events:none}.tm-confirm-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 22px #10b98159,0 2px 6px #10b98133}.tm-confirm-btn:active:not(:disabled){transform:translateY(0)}.tm-confirm-btn:disabled{opacity:.35;cursor:not-allowed;transform:none}.tm-spinner{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.25);border-top-color:#fff;border-radius:50%;animation:tm-spin .7s linear infinite;margin-right:4px}@keyframes tm-spin{to{transform:rotate(360deg)}}.tm-close-btn{position:fixed;top:16px;right:22px;width:36px;height:36px;border:1.5px solid var(--tm-border);border-radius:10px;background:#faf7f2e6;color:var(--tm-text-3);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s;flex-shrink:0;z-index:10001;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.tm-close-btn:hover{background:#b4463c1a;border-color:#b4463c4d;color:#b4463c;box-shadow:0 0 12px #b4463c26;transform:scale(1.05)}.tm-preview-section-start{color:var(--tm-accent);font-weight:700;font-size:.75rem;margin-top:4px;display:block}.tm-preview-section-end{display:block;margin-bottom:4px}@media (max-width: 1100px){.tm-sidebar{width:200px}.tm-grid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}}@media (max-width: 900px){.tm-body{flex-direction:column}.tm-sidebar{width:100%;height:auto;max-height:220px;border-right:none;border-bottom:1.5px solid var(--tm-border);overflow-y:auto;flex-direction:row;flex-wrap:nowrap;align-items:flex-start}.tm-sidebar-group{display:contents}.tm-sidebar-title,.tm-sidebar-subs{display:none}.tm-center{height:50%;border-bottom:1px solid var(--tm-border)}.tm-right-panel{height:50%}.tm-right{max-height:100%}.tm-container{height:100dvh}.tm-header-stats{display:none}.tm-grid{grid-template-columns:repeat(auto-fill,minmax(155px,1fr))}}@media (max-width: 600px){.tm-header{padding:12px 14px}.tm-form-head{padding:12px 14px 8px}.tm-form-desc{padding:8px 14px}.tm-fields{padding:12px 14px}.tm-preview-wrap{padding:0 14px 10px}.tm-go-btn{margin:0 14px 14px}.tm-search-bar{padding:8px 12px}.tm-scroll{padding:10px}.tm-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}}.sample-lib{display:flex;flex-direction:column;height:100%;overflow:hidden;background:linear-gradient(180deg,#0f172a,#0c1222)}.sample-lib-header{display:flex;align-items:center;gap:12px;padding:12px 16px;background:linear-gradient(135deg,#0f172af2,#1e293be6);border-bottom:1px solid var(--tm-border);flex-shrink:0}.back-btn{display:flex;align-items:center;gap:4px;padding:5px 10px;border:1px solid rgba(99,102,241,.2);border-radius:8px;background:transparent;color:#94a3b8;font-size:.78rem;cursor:pointer;transition:all .15s;font-family:inherit}.back-btn:hover{background:#6366f114;color:#a5b4fc}.sample-lib-title{display:flex;align-items:center;gap:6px;font-size:.88rem;font-weight:700;color:#e2e8f0}.sample-lib-search{display:flex;align-items:center;gap:8px;padding:8px 16px;border-bottom:1px solid var(--tm-border);flex-shrink:0}.sample-lib-search-icon{color:var(--tm-text-3);flex-shrink:0}.sample-lib-search-input{flex:1;border:1.5px solid var(--tm-border);border-radius:8px;background:linear-gradient(180deg,#1e293be6,#0f172ad9);color:var(--tm-text);font-size:.82rem;padding:6px 12px;outline:none;font-family:inherit;transition:border-color .15s,box-shadow .15s}.sample-lib-search-input:focus{border-color:var(--tm-accent);box-shadow:0 0 0 3px #10b9811f}.sample-lib-search-input::placeholder{color:var(--tm-text-4)}.sample-lib-cats{display:flex;gap:5px;padding:6px 16px;overflow-x:auto;border-bottom:1px solid var(--tm-border);flex-shrink:0;scrollbar-width:none}.sample-lib-cats::-webkit-scrollbar{display:none}.sample-lib-cat-btn{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border:1px solid var(--tm-border);border-radius:20px;background:linear-gradient(180deg,#1e293bb3,#0f172aa6);color:var(--tm-text-3);font-size:.7rem;cursor:pointer;white-space:nowrap;transition:all .15s;font-family:inherit;flex-shrink:0}.sample-lib-cat-btn:hover{border-color:#10b98180;color:var(--tm-accent);background:linear-gradient(180deg,#10b9811f,#10b98114)}.sample-lib-cat-btn.active{background:linear-gradient(135deg,var(--tm-accent) 0%,#059669 100%);border-color:transparent;color:#fff}.sample-lib-list{flex:1;overflow-y:auto;padding:12px 16px;display:flex;flex-direction:column;gap:6px;scrollbar-width:thin;scrollbar-color:rgba(16,185,129,.25) transparent}.sample-lib-list::-webkit-scrollbar{width:4px}.sample-lib-list::-webkit-scrollbar-track{background:transparent}.sample-lib-list::-webkit-scrollbar-thumb{background:#10b98140;border-radius:4px}.sample-lib-list::-webkit-scrollbar-thumb:hover{background:#10b98166}.sample-lib-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:60px 20px;color:var(--tm-text-4);text-align:center}.sample-lib-empty svg{opacity:.4;color:var(--tm-accent)}.sample-lib-empty p{font-size:.85rem;color:var(--tm-text-3);margin:0}.sample-lib-card{display:flex;align-items:center;gap:12px;padding:10px 14px;background:linear-gradient(180deg,#1e293bcc,#0f172abf);border:1px solid var(--tm-border);border-radius:10px;cursor:pointer;transition:all .15s}.sample-lib-card:hover{border-color:#10b98180;background:linear-gradient(180deg,#10b9811a,#10b9810d);transform:translate(3px)}.sample-lib-card-info{flex:1;min-width:0}.sample-lib-card-name{font-size:.82rem;font-weight:600;color:var(--tm-text-2);margin-bottom:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sample-lib-card-summary{font-size:.72rem;color:var(--tm-text-4);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sample-lib-card-arrow{color:var(--tm-text-4);flex-shrink:0}.sample-lib-card:hover .sample-lib-card-arrow{color:var(--tm-accent)}
