@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.18.4"}.katex .katex-mathml{border:0;-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;overflow:hidden;padding:0;position:absolute;width:1px}.katex .katex-html>.katex-newline{display:block}.katex .katex-base{position:relative;white-space:nowrap;width:-webkit-min-content;width:-moz-min-content;width:min-content}.katex .katex-base,.katex .katex-strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;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 .katex-vbox{align-items:baseline;display:inline-flex;flex-direction:column}.katex .katex-thinbox{display:inline-flex;flex-direction:row;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 .katex-hdashline,.katex .katex-hline,.katex .katex-overline .overline-line,.katex .katex-rule,.katex .katex-underline .underline-line,.katex .mfrac .frac-line{min-height:1px}.katex .mspace{display:inline-block}.katex .katex-smash{display:inline;line-height:0}.katex .clap,.katex .llap,.katex .rlap{position:relative;width:0}.katex .clap>.katex-inner,.katex .llap>.katex-inner,.katex .rlap>.katex-inner{position:absolute}.katex .clap>.katex-fix,.katex .llap>.katex-fix,.katex .rlap>.katex-fix{display:inline-block}.katex .llap>.katex-inner{right:0}.katex .clap>.katex-inner,.katex .rlap>.katex-inner{left:0}.katex .clap>.katex-inner>span{margin-left:-50%;margin-right:50%}.katex .katex-rule{border:0 solid;display:inline-block;position:relative}.katex .katex-hline,.katex .katex-overline .overline-line,.katex .katex-underline .underline-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .katex-hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.katex .sqrt>.katex-root{margin-left:.2777777778em;margin-right:-.5555555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .katex-sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .katex-sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .katex-sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .katex-sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .katex-sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .katex-sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .katex-sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .katex-sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .katex-sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .katex-sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .katex-sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .katex-sizing.reset-size2.size1{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .katex-sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .katex-sizing.reset-size2.size3{font-size:1.1666666667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .katex-sizing.reset-size2.size4{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .katex-sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .katex-sizing.reset-size2.size6{font-size:1.6666666667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .katex-sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .katex-sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .katex-sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .katex-sizing.reset-size2.size10{font-size:3.4566666667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .katex-sizing.reset-size2.size11{font-size:4.1466666667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .katex-sizing.reset-size3.size1{font-size:.7142857143em}.katex .fontsize-ensurer.reset-size3.size2,.katex .katex-sizing.reset-size3.size2{font-size:.8571428571em}.katex .fontsize-ensurer.reset-size3.size3,.katex .katex-sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .katex-sizing.reset-size3.size4{font-size:1.1428571429em}.katex .fontsize-ensurer.reset-size3.size5,.katex .katex-sizing.reset-size3.size5{font-size:1.2857142857em}.katex .fontsize-ensurer.reset-size3.size6,.katex .katex-sizing.reset-size3.size6{font-size:1.4285714286em}.katex .fontsize-ensurer.reset-size3.size7,.katex .katex-sizing.reset-size3.size7{font-size:1.7142857143em}.katex .fontsize-ensurer.reset-size3.size8,.katex .katex-sizing.reset-size3.size8{font-size:2.0571428571em}.katex .fontsize-ensurer.reset-size3.size9,.katex .katex-sizing.reset-size3.size9{font-size:2.4685714286em}.katex .fontsize-ensurer.reset-size3.size10,.katex .katex-sizing.reset-size3.size10{font-size:2.9628571429em}.katex .fontsize-ensurer.reset-size3.size11,.katex .katex-sizing.reset-size3.size11{font-size:3.5542857143em}.katex .fontsize-ensurer.reset-size4.size1,.katex .katex-sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .katex-sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .katex-sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .katex-sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .katex-sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .katex-sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .katex-sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .katex-sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .katex-sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .katex-sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .katex-sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .katex-sizing.reset-size5.size1{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .katex-sizing.reset-size5.size2{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .katex-sizing.reset-size5.size3{font-size:.7777777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .katex-sizing.reset-size5.size4{font-size:.8888888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .katex-sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .katex-sizing.reset-size5.size6{font-size:1.1111111111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .katex-sizing.reset-size5.size7{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .katex-sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .katex-sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .katex-sizing.reset-size5.size10{font-size:2.3044444444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .katex-sizing.reset-size5.size11{font-size:2.7644444444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .katex-sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .katex-sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .katex-sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .katex-sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .katex-sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .katex-sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .katex-sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .katex-sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .katex-sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .katex-sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .katex-sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .katex-sizing.reset-size7.size1{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .katex-sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .katex-sizing.reset-size7.size3{font-size:.5833333333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .katex-sizing.reset-size7.size4{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .katex-sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .katex-sizing.reset-size7.size6{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .katex-sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .katex-sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .katex-sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .katex-sizing.reset-size7.size10{font-size:1.7283333333em}.katex .fontsize-ensurer.reset-size7.size11,.katex .katex-sizing.reset-size7.size11{font-size:2.0733333333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .katex-sizing.reset-size8.size1{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .katex-sizing.reset-size8.size2{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .katex-sizing.reset-size8.size3{font-size:.4861111111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .katex-sizing.reset-size8.size4{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .katex-sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .katex-sizing.reset-size8.size6{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .katex-sizing.reset-size8.size7{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .katex-sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .katex-sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .katex-sizing.reset-size8.size10{font-size:1.4402777778em}.katex .fontsize-ensurer.reset-size8.size11,.katex .katex-sizing.reset-size8.size11{font-size:1.7277777778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .katex-sizing.reset-size9.size1{font-size:.2893518519em}.katex .fontsize-ensurer.reset-size9.size2,.katex .katex-sizing.reset-size9.size2{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .katex-sizing.reset-size9.size3{font-size:.4050925926em}.katex .fontsize-ensurer.reset-size9.size4,.katex .katex-sizing.reset-size9.size4{font-size:.462962963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .katex-sizing.reset-size9.size5{font-size:.5208333333em}.katex .fontsize-ensurer.reset-size9.size6,.katex .katex-sizing.reset-size9.size6{font-size:.5787037037em}.katex .fontsize-ensurer.reset-size9.size7,.katex .katex-sizing.reset-size9.size7{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .katex-sizing.reset-size9.size8{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .katex-sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .katex-sizing.reset-size9.size10{font-size:1.2002314815em}.katex .fontsize-ensurer.reset-size9.size11,.katex .katex-sizing.reset-size9.size11{font-size:1.4398148148em}.katex .fontsize-ensurer.reset-size10.size1,.katex .katex-sizing.reset-size10.size1{font-size:.2410800386em}.katex .fontsize-ensurer.reset-size10.size2,.katex .katex-sizing.reset-size10.size2{font-size:.2892960463em}.katex .fontsize-ensurer.reset-size10.size3,.katex .katex-sizing.reset-size10.size3{font-size:.337512054em}.katex .fontsize-ensurer.reset-size10.size4,.katex .katex-sizing.reset-size10.size4{font-size:.3857280617em}.katex .fontsize-ensurer.reset-size10.size5,.katex .katex-sizing.reset-size10.size5{font-size:.4339440694em}.katex .fontsize-ensurer.reset-size10.size6,.katex .katex-sizing.reset-size10.size6{font-size:.4821600771em}.katex .fontsize-ensurer.reset-size10.size7,.katex .katex-sizing.reset-size10.size7{font-size:.5785920926em}.katex .fontsize-ensurer.reset-size10.size8,.katex .katex-sizing.reset-size10.size8{font-size:.6943105111em}.katex .fontsize-ensurer.reset-size10.size9,.katex .katex-sizing.reset-size10.size9{font-size:.8331726133em}.katex .fontsize-ensurer.reset-size10.size10,.katex .katex-sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .katex-sizing.reset-size10.size11{font-size:1.1996142719em}.katex .fontsize-ensurer.reset-size11.size1,.katex .katex-sizing.reset-size11.size1{font-size:.2009646302em}.katex .fontsize-ensurer.reset-size11.size2,.katex .katex-sizing.reset-size11.size2{font-size:.2411575563em}.katex .fontsize-ensurer.reset-size11.size3,.katex .katex-sizing.reset-size11.size3{font-size:.2813504823em}.katex .fontsize-ensurer.reset-size11.size4,.katex .katex-sizing.reset-size11.size4{font-size:.3215434084em}.katex .fontsize-ensurer.reset-size11.size5,.katex .katex-sizing.reset-size11.size5{font-size:.3617363344em}.katex .fontsize-ensurer.reset-size11.size6,.katex .katex-sizing.reset-size11.size6{font-size:.4019292605em}.katex .fontsize-ensurer.reset-size11.size7,.katex .katex-sizing.reset-size11.size7{font-size:.4823151125em}.katex .fontsize-ensurer.reset-size11.size8,.katex .katex-sizing.reset-size11.size8{font-size:.578778135em}.katex .fontsize-ensurer.reset-size11.size9,.katex .katex-sizing.reset-size11.size9{font-size:.6945337621em}.katex .fontsize-ensurer.reset-size11.size10,.katex .katex-sizing.reset-size11.size10{font-size:.8336012862em}.katex .fontsize-ensurer.reset-size11.size11,.katex .katex-sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{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 .katex-accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .katex-accent .accent-body{position:relative}.katex .katex-accent .accent-body:not(.accent-full){width:0}.katex .katex-overlay{display:block}.katex .mtable .vertical-separator{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 .katex-stretchy{display:block;overflow:hidden;position:relative;width:100%}.katex .katex-stretchy:after,.katex .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 .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>.katex-tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.katex-tag{left:0;right:auto}.katex-display.fleqn>.katex{padding-left:2em;text-align:left}body{counter-reset:katexEqnNo mmlEqnNo}.pshell{display:grid;grid-template-rows:48px 1fr;height:100vh;height:100dvh;overflow:hidden}.pshell-body{display:grid;grid-template-columns:var(--shell-side-w, 232px) 1fr;min-height:0;position:relative}.pshell-main{min-width:0;overflow-y:auto;padding:2rem 2rem 4rem}.pshell-topbar-spacer{flex:1;min-width:0}.pshell-menu-btn{display:none;align-items:center;justify-content:center;width:36px;height:36px;flex:0 0 auto;padding:0;margin:0;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);cursor:pointer}.pshell-menu-btn:hover{background:var(--bg-elevated);color:var(--text-primary)}.pshell-menu-btn:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.pshell-nav-scrim{display:none;position:fixed;top:48px;right:0;bottom:0;left:0;z-index:calc(var(--z-modal) - 1);border:none;padding:0;margin:0;background:color-mix(in srgb,var(--text-primary) 35%,transparent);cursor:pointer}.pshell-main:has(.persona-list){display:flex;flex-direction:column}.pshell-main.no-pad{padding:0;overflow:hidden}.pshell-main.no-pad:has(.builder){display:flex;flex-direction:column}.pshell-main.no-pad:has(.builder)>.builder{flex:1;min-height:0}.pshell-main.lock-scroll{overflow:hidden;display:flex;flex-direction:column;padding-bottom:28px}.pshell-main.lock-scroll>*{flex:1;min-height:0}.pshell-topbar{display:flex;align-items:center;gap:12px;padding:0 16px;border-bottom:1px solid var(--border-subtle);background:var(--bg-surface)}.pshell-brand{display:flex;align-items:center;gap:10px;background:none;border:none;padding:0;font:inherit;color:inherit;cursor:pointer;border-radius:var(--radius-sm)}.pshell-brand:hover .pshell-applabel{color:var(--text-primary)}.pshell-brand:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.pshell-brand .brand-mark{width:26px;height:26px;border-radius:7px;flex:0 0 auto;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-weight:var(--w-bold);font-size:13px;color:hsl(var(--h, 78) 40% 18%);background:hsl(var(--h, 78) 52% 72%)}.pshell-applabel{font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-secondary);display:inline-flex;align-items:center;gap:7px}.pshell-applabel .dotw{width:4px;height:4px;background:var(--accent);border-radius:50%}.pshell-assist-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;flex:0 0 auto;padding:0;margin:0;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);cursor:pointer;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.pshell-assist-btn:hover{background:var(--bg-elevated);color:var(--text-primary)}.pshell-assist-btn:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.acct-trigger{display:flex;align-items:center;gap:6px;height:30px;padding:0 4px;background:transparent;border:1px solid transparent;border-radius:var(--radius-pill);cursor:pointer;transition:border-color var(--dur-fast) var(--ease)}.acct-trigger:hover{border-color:var(--border-default)}.acct-menu-dot{font-size:9px;line-height:1}.pshell-side{display:flex;flex-direction:column;min-height:0;border-right:1px solid var(--border-subtle);background:var(--bg-surface);padding:12px}.pshell-nav{display:flex;flex-direction:column;gap:2px}button.pshell-navitem{display:flex;align-items:center;gap:10px;width:100%;height:38px;padding:0 12px;background:transparent;border:none;border-radius:10px;color:var(--text-secondary);font-family:var(--font-sans);font-size:13px;font-weight:var(--w-medium);text-align:left;cursor:pointer;position:relative;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease);-webkit-appearance:none;-moz-appearance:none;appearance:none}.pshell-navitem:hover{background:var(--bg-elevated);color:var(--text-primary)}.pshell-navitem.active{color:var(--accent);background:var(--accent-muted)}.pshell-navitem.active:before{content:"";position:absolute;left:0;top:7px;bottom:7px;width:2.5px;background:var(--accent);border-radius:0 2px 2px 0}.pshell-navitem.disabled{opacity:.45;cursor:not-allowed}.pshell-navitem .ni-ico{flex:0 0 auto}.pshell-navitem .ni-label{flex:1;min-width:0}.pshell-navitem .ni-count{margin-left:auto;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#b45309;color:#fff;font-family:var(--font-sans);font-size:10px;font-weight:var(--w-semi);display:inline-flex;align-items:center;justify-content:center}.ni-soon{font-family:var(--font-mono);font-size:8px;letter-spacing:.08em;text-transform:uppercase;color:var(--phase2);background:var(--phase2-muted);border-radius:var(--radius-pill);padding:1px 5px}.pshell-side-foot{margin-top:auto;padding-top:12px;display:flex;flex-direction:column;gap:10px}.switch-app-btn{display:flex;align-items:center;gap:10px;width:100%;height:36px;padding:0 12px;border-radius:var(--radius-sm);border:1px solid var(--border-default);background:var(--bg-elevated);color:var(--text-secondary);cursor:pointer;font-family:var(--font-sans);font-size:13px;font-weight:var(--w-medium);transition:all var(--dur-fast) var(--ease)}.pshell-role-wrap{position:relative}button.pshell-role{display:flex;align-items:center;gap:9px;width:100%;padding:12px 8px 8px;border-radius:var(--radius-md);border:none;border-top:1px solid var(--border-subtle);background:transparent;cursor:pointer;text-align:left;transition:background var(--dur-fast) var(--ease)}button.pshell-role:hover,button.pshell-role.open{background:var(--bg-elevated)}button.pshell-role .rchev{flex:0 0 auto;margin-left:auto;color:var(--text-muted)}button.pshell-role.open .rchev{transform:rotate(180deg)}.menu.side-acct-menu{position:absolute;top:auto;bottom:calc(100% + 6px);left:0;right:0;min-width:180px;z-index:var(--z-raised)}.side-acct-menu .menu-item{display:flex;align-items:center;gap:9px;width:100%;height:32px;padding:0 10px;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text-secondary);font-family:var(--font-sans);font-size:13px;text-align:left;cursor:pointer}.side-acct-menu .menu-item:hover{background:var(--bg-row-hover);color:var(--text-primary)}.side-acct-menu .menu-divider{height:1px;background:var(--border-subtle);margin:4px 0}.pshell-role{display:flex;align-items:center;gap:9px;padding:12px 8px 8px;border-radius:var(--radius-md);border-top:1px solid var(--border-subtle)}.pshell-role .ra{width:30px;height:30px;font-size:11px}.pshell-role .rb{min-width:0}.pshell-role .rname{font-size:12px;font-weight:var(--w-medium);color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pshell-role .rrole{font-family:var(--font-mono);font-size:9px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin-top:1px}.acct-menu .menu-header{padding:8px 10px 6px}.acct-menu .menu-divider{height:1px;background:var(--border-subtle);margin:4px 0}.acct-menu .menu-item{display:flex;align-items:center;gap:9px;width:100%;height:32px;padding:0 10px;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text-secondary);font-family:var(--font-sans);font-size:13px;text-align:left;cursor:pointer}.acct-menu .menu-item:hover{background:var(--bg-row-hover);color:var(--text-primary)}@media(max-width:768px){.pshell-menu-btn{display:inline-flex}.pshell-applabel{display:none}.pshell-body{grid-template-columns:1fr}.pshell.nav-open .pshell-nav-scrim{display:block}.pshell-side{position:fixed;top:48px;left:0;bottom:0;width:min(280px,86vw);z-index:var(--z-modal);transform:translate(-105%);transition:transform var(--dur-normal) var(--ease);box-shadow:var(--shadow-3);border-right:1px solid var(--border-subtle)}.pshell-side.is-open{transform:translate(0)}.pshell-main{padding:1rem 1rem 2.5rem}.pshell-main.no-pad{padding:0}.credit-chip .cc-lbl{display:none}.credit-chip{padding-right:8px}}@media(max-width:640px){.pshell-topbar{padding:0 10px;gap:8px}.pshell-main:not(.no-pad){padding:.85rem .85rem 2rem}}@media(prefers-reduced-motion:reduce){.pshell-side{transition:none}}.faceless-avatar{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background:var(--bg-canvas);overflow:hidden;position:relative}.faceless-avatar__glow{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:.4}.faceless-avatar__glow-orb{position:absolute;top:50%;left:50%;width:min(800px,90vw);height:min(800px,90vw);transform:translate(-50%,-50%);border-radius:50%;filter:blur(120px);background:radial-gradient(circle,oklch(78% .155 78 / .35) 0%,oklch(62% .18 285 / .24) 52%,transparent 100%)}.faceless-avatar__ring-wrap{position:relative;width:256px;height:256px;display:flex;align-items:center;justify-content:center}.faceless-avatar__ring{position:absolute;border-radius:50%}.faceless-avatar__ring--outer{top:0;right:0;bottom:0;left:0;border:2px solid var(--accent)}.faceless-avatar__ring--mid{top:8px;right:8px;bottom:8px;left:8px;border:1px solid oklch(62% .18 285 / .85)}.faceless-avatar__ring--inner{top:16px;right:16px;bottom:16px;left:16px;border:1px solid oklch(82% .12 78 / .9)}.faceless-avatar__core{width:192px;height:192px;border-radius:50%;background:var(--bg-elevated);border:1px solid oklch(78% .155 78 / .3);display:flex;align-items:center;justify-content:center;box-shadow:0 20px 60px #00000059}.faceless-avatar__status{font-family:var(--font-mono);font-size:11px;text-transform:uppercase;letter-spacing:.2em;color:var(--text-muted)}.faceless-avatar__status--listening{color:var(--accent)}.avatar-stage{flex:1;width:100%;min-height:0;position:relative;background:var(--bg-canvas)}.avatar-stage__canvas{position:absolute;top:0;right:0;bottom:0;left:0}.avatar-stage__canvas canvas{display:block;width:100%!important;height:100%!important}.avatar-stage__loader{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;display:flex;align-items:center;justify-content:center;background:var(--bg-canvas);overflow:hidden}.avatar-stage__loader-glow{position:absolute;top:50%;left:50%;width:min(640px,80vw);height:min(640px,80vw);transform:translate(-50%,-50%);border-radius:50%;filter:blur(100px);background:radial-gradient(circle,oklch(78% .155 78 / .28) 0%,oklch(62% .18 285 / .18) 55%,transparent 100%);pointer-events:none}.avatar-stage__spinner-wrap{position:relative;width:220px;height:220px;display:flex;align-items:center;justify-content:center}.avatar-stage__spinner-orbit{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;border:2px dashed oklch(78% .155 78 / .22)}.avatar-stage__spinner-orbit-dot{position:absolute;top:-5px;left:50%;width:10px;height:10px;margin-left:-5px;border-radius:50%;background:var(--accent);box-shadow:0 0 12px #eda922a6}.avatar-stage__progress-ring{position:absolute;width:196px;height:196px;transform:rotate(-90deg)}.avatar-stage__progress-track{fill:none;stroke:var(--border-default);stroke-width:5}.avatar-stage__progress-fill{fill:none;stroke:var(--accent);stroke-width:5;stroke-linecap:round;filter:drop-shadow(0 0 6px oklch(78% .155 78 / .45))}.avatar-stage__loader-core{width:132px;height:132px;border-radius:50%;background:var(--bg-elevated);border:1px solid oklch(78% .155 78 / .25);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;box-shadow:0 16px 48px #0000004d;z-index:1}.avatar-stage__loader-label{font-family:var(--font-mono);font-size:9px;text-transform:uppercase;letter-spacing:.16em;color:var(--text-muted)}.avatar-stage__loader-progress{font-family:var(--font-mono);font-size:26px;font-weight:var(--w-semi);color:var(--accent);line-height:1;font-variant-numeric:tabular-nums}.stage-bg-picker{position:absolute;top:12px;right:12px;z-index:5}.stage-bg-trigger{width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);cursor:pointer;background:#11171d99;border:1px solid var(--border-default);color:var(--text-secondary);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:all var(--dur-fast) var(--ease)}.stage-bg-trigger:hover{color:var(--text-primary);border-color:var(--border-strong)}.stage-bg-menu{position:absolute;top:36px;right:0;width:190px;padding:10px;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-md);box-shadow:var(--shadow-3);display:flex;flex-direction:column;gap:8px}.stage-bg-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.stage-bg-swatch{aspect-ratio:1;border-radius:var(--radius-sm);cursor:pointer;border:1px solid var(--border-default);color:#f8f8f8;display:flex;align-items:center;justify-content:center}.stage-bg-swatch:hover{border-color:var(--border-strong)}.stage-bg-swatch.active{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-muted)}.stage-bg-upload{display:flex;align-items:center;justify-content:center;gap:6px;height:30px;border-radius:var(--radius-sm);cursor:pointer;background:var(--bg-input);border:1px solid var(--border-default);color:var(--text-secondary);font-family:var(--font-sans);font-size:var(--text-body-sm)}.stage-bg-upload:hover{color:var(--text-primary);border-color:var(--border-strong)}html,body,#root{height:100%}.fp{display:flex;flex-direction:column;height:100vh;background:var(--bg-canvas);padding:10px;box-sizing:border-box;position:relative}.fp-body-grid{display:grid;grid-template-columns:280px 1fr;min-height:0;flex:1;gap:10px;transition:grid-template-columns var(--dur-normal) var(--ease)}.fp-body-grid:has(.fp-sidebar.collapsed){grid-template-columns:56px 1fr}@media(prefers-reduced-motion:reduce){.fp-body-grid{transition:none}}.fp-chat-messages:has(.fp-empty-pick){display:flex;align-items:center;justify-content:center}.fp-chat-messages:has(.fp-empty-pick) .msg-list{flex:1;width:100%;display:flex;align-items:center;justify-content:center;max-width:none;margin:0;padding:0}.fp-empty-pick{width:100%;max-width:800px;margin:0 auto;padding:24px;min-height:0;box-sizing:border-box;justify-content:center}.fp-pick-box{width:min(560px,100%);max-height:min(380px,50vh);margin:0 auto;display:flex;flex-direction:column;text-align:left;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:16px;box-shadow:var(--shadow-2);overflow:hidden}.fp-pick-box-head{flex:0 0 auto;padding:16px 16px 12px;border-bottom:1px solid var(--border-subtle);background:var(--bg-surface)}.fp-pick-box-title{margin:0;font-size:1.05rem;font-weight:var(--w-semi);color:var(--text-primary);text-align:center}.fp-pick-box-sub{margin:6px 0 0;font-size:var(--text-body-sm);color:var(--text-muted);line-height:1.4;text-align:center}.fp-pick-box-scroll{flex:1 1 auto;min-height:0;overflow-y:auto;padding:12px;background:var(--bg-surface)}.fp-pick-box-scroll .fp-agent-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fp-pick-box-scroll .fp-agent-card{background:var(--bg-elevated);border-color:var(--border-subtle)}.fp-pick-box-scroll .fp-agent-card:hover{background:var(--accent-muted);border-color:var(--accent);color:var(--text-primary)}.fp-pick-box-scroll .fp-agent-card:hover .fp-agent-card-name{color:var(--text-primary)}.fp-pick-box-scroll .fp-agent-card:focus-visible{outline:none;box-shadow:var(--shadow-focus);border-color:var(--accent)}@media(max-width:640px){.fp-pick-box-scroll .fp-agent-grid{grid-template-columns:1fr}}.fp-pick-box-empty{margin:12px 0;text-align:center;font-size:var(--text-body-sm);color:var(--text-muted)}.fp-sidebar{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:16px;display:flex;flex-direction:column;min-height:0;overflow:hidden}.fp-sidebar.collapsed{align-items:center;padding:10px 0 12px;border-radius:16px}.rail-top{display:flex;flex-direction:column;align-items:center;gap:6px}.rail-foot{margin-top:auto;padding-top:10px;display:flex;flex-direction:column;align-items:center;gap:6px}.rail-btn{width:36px;height:36px;flex:0 0 auto;border-radius:var(--radius-sm);background:transparent;border:1px solid transparent;color:var(--text-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.rail-btn:hover{background:var(--bg-elevated);color:var(--text-primary)}.rail-btn:disabled{opacity:.5;cursor:not-allowed}.rail-btn.accent{background:var(--accent);color:var(--accent-fg)}.rail-btn.accent:hover{background:var(--accent-hover)}.rail-btn:focus-visible,.sb-collapse:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.sb-topbar{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:14px 14px 8px}.sb-topbar-title{font-size:1.05rem;font-weight:var(--w-semi);color:var(--text-primary)}.sb-topbar-actions{display:flex;align-items:center;gap:6px;flex:0 0 auto}.sb-mobile-close{display:none;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--bg-elevated);color:var(--text-secondary);cursor:pointer}.sb-mobile-close:hover{color:var(--text-primary)}.fp-mobile-nav{display:none;align-items:center;justify-content:center;width:36px;height:36px;flex:0 0 auto;padding:0;margin:0 4px 0 0;border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--bg-elevated);color:var(--text-secondary);cursor:pointer}.fp-mobile-nav:hover{color:var(--text-primary);background:var(--bg-surface)}.fp-mobile-nav:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.sb-brand{display:flex;align-items:center;gap:8px;min-width:0;padding:0;margin:0;border:none;background:none;cursor:pointer;border-radius:var(--radius-sm);font:inherit;color:inherit;text-align:left}.sb-brand:hover .sb-brand-label{color:var(--text-primary)}.sb-brand:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.sb-brand .brand-mark{width:26px;height:26px;border-radius:7px;flex:0 0 auto;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-weight:var(--w-bold);font-size:13px;color:hsl(var(--h, 232) 40% 18%);background:hsl(var(--h, 232) 52% 72%)}.sb-brand-label{font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rail-btn.sb-brand-mark{padding:0}.rail-btn.sb-brand-mark .brand-mark{width:28px;height:28px;border-radius:7px;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-weight:var(--w-bold);font-size:12px;color:hsl(var(--h, 232) 40% 18%);background:hsl(var(--h, 232) 52% 72%)}.sb-topbar-label{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted)}.sb-foot{margin-top:auto;flex:0 0 auto;padding:8px 10px 10px;border-top:1px solid var(--border-subtle);display:flex;flex-direction:column;gap:4px}.sb-foot .pshell-role{border-top:none;padding-top:8px}.sb-foot .pshell-role-wrap{position:relative}.sb-back{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;background:transparent;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-secondary);font-family:var(--font-sans);font-size:var(--text-body-sm);font-weight:var(--w-medium);cursor:pointer;transition:all var(--dur-fast) var(--ease)}.sb-back:hover{border-color:var(--border-strong);color:var(--text-primary);background:var(--bg-elevated)}.sb-head{display:flex;align-items:center;gap:8px;padding:8px 12px}.sb-new{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;gap:4px;height:32px;padding:0 12px;background:transparent;color:var(--text-primary);border:1px solid var(--border-default);border-radius:10px;font-family:var(--font-sans);font-size:var(--text-body-sm);font-weight:var(--w-medium);cursor:pointer}.sb-new:hover{background:var(--bg-elevated);border-color:var(--border-strong)}.sb-new:disabled{opacity:.5;cursor:not-allowed}.sb-collapse{width:34px;height:34px;flex:0 0 auto;background:transparent;border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center}.sb-collapse:hover{color:var(--text-primary);border-color:var(--border-strong)}.sb-search{display:flex;align-items:center;gap:8px;margin:0 12px 10px;padding:0 10px;height:36px;background:var(--bg-input);border:1px solid var(--border-default);border-radius:12px;color:var(--text-muted)}.sb-search input{flex:1;min-width:0;background:transparent;border:none;outline:none;color:var(--text-primary);font-family:var(--font-sans);font-size:var(--text-body-sm)}.sb-search input::placeholder{color:var(--text-muted)}.sb-search-clear{background:none;border:none;color:var(--text-muted);cursor:pointer;display:flex;padding:2px}.sb-search-clear:hover{color:var(--text-primary)}.sb-nav{display:flex;flex-direction:column;gap:2px;padding:0 10px 10px}.sb-nav-item{display:flex;align-items:center;gap:10px;width:100%;padding:9px 10px;background:transparent;border:none;border-radius:10px;color:var(--text-secondary);font-family:var(--font-sans);font-size:var(--text-body-sm);font-weight:var(--w-medium);cursor:pointer;text-align:left}.sb-nav-item:hover:not(:disabled){background:var(--bg-elevated);color:var(--text-primary)}.sb-nav-item.is-active{background:var(--bg-elevated);color:var(--text-primary)}.sb-nav-item:disabled{opacity:.7;cursor:not-allowed}.sb-soon{margin-left:auto;font-size:9px;font-weight:var(--w-semi);letter-spacing:.04em;padding:3px 7px;border-radius:999px;background:var(--bg-elevated);color:var(--text-muted);border:1px solid var(--border-subtle)}.sb-agent-block{padding:0 10px 8px}.sb-agent-card{display:flex;align-items:center;gap:10px;width:100%;padding:10px;background:var(--bg-canvas);border:1px solid var(--border-default);border-radius:12px;cursor:pointer;text-align:left;font-family:var(--font-sans);color:var(--text-primary)}.sb-agent-card:hover{border-color:var(--border-strong);background:var(--bg-elevated)}.sb-agent-av{width:32px;height:32px;border-radius:50%;flex:0 0 auto;display:flex;align-items:center;justify-content:center;background:var(--accent-muted);color:var(--accent);font-size:11px;font-weight:var(--w-semi)}.sb-agent-meta{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.sb-agent-name{font-size:var(--text-body-sm);font-weight:var(--w-semi);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sb-agent-model{font-size:11px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sb-agent-chev{color:var(--text-muted);flex:0 0 auto}.sb-list{flex:1;min-height:0;overflow-y:auto;padding:4px 8px 16px}.sb-empty{padding:24px 14px;text-align:center;color:var(--text-muted);font-size:12px}.sb-group{margin-top:10px}.sb-group-label{font-family:var(--font-mono);font-size:9.5px;text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted);padding:4px 8px}.sb-item{display:flex;flex-direction:column;align-items:stretch;gap:2px;width:100%;padding:10px;margin:0;border-radius:12px;cursor:pointer;border:1px solid transparent;background:transparent;font-family:var(--font-sans);text-align:left;position:relative}.sb-item:hover{background:var(--bg-elevated)}.sb-item.active{background:var(--accent-muted);border-color:color-mix(in srgb,var(--accent) 28%,transparent)}.sb-item+.sb-item:before{content:none}.sb-item-top{display:flex;align-items:center;gap:8px}.sb-title{flex:1;min-width:0;font-size:var(--text-body-sm);font-weight:var(--w-semi);color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sb-mode{color:var(--text-muted);display:inline-flex}.sb-item.active .sb-mode{color:var(--accent)}.sb-time{font-family:var(--font-mono);font-size:10px;color:var(--text-muted);letter-spacing:.02em}.sb-turns{font-family:var(--font-mono);font-size:10px;color:var(--text-muted);margin-left:auto}.sb-preview{font-size:11px;color:var(--text-muted);line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sb-actions{display:none;gap:6px;margin-top:8px}.sb-item:hover .sb-actions{display:flex}.sb-actions button{flex:1;height:26px;background:var(--bg-canvas);border:1px solid var(--border-default);border-radius:var(--radius-xs);color:var(--text-secondary);font-family:var(--font-sans);font-size:11px;font-weight:var(--w-medium);cursor:pointer}.sb-actions button:hover{color:var(--text-primary);border-color:var(--border-strong)}.sb-actions button.accent{background:var(--accent-muted);border-color:var(--accent-border);color:var(--accent)}.sb-notif{display:flex;align-items:center;gap:10px;width:100%;padding:9px 10px;background:transparent;border:none;border-radius:10px;color:var(--text-secondary);font-family:var(--font-sans);font-size:var(--text-body-sm);font-weight:var(--w-medium);cursor:not-allowed;text-align:left;opacity:.85}.sb-notif-badge{margin-left:auto;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#b45309;color:#fff;font-size:10px;font-weight:var(--w-semi);display:inline-flex;align-items:center;justify-content:center}.fp-main{display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:16px}.fp-main:has(.fp-stage){background:transparent;border:none}.fp-main:has(.fp-stage) .fp-body.media-split{gap:10px}.fp-main:has(.fp-stage) .fp-stage,.fp-main:has(.fp-stage) .fp-chat-side{border:1px solid var(--border-subtle);border-radius:16px}.fp-body{flex:1;min-height:0;overflow:hidden}.fp-body.media-split{display:flex;flex-direction:row;gap:0}.fp-top{display:flex;align-items:center;gap:12px;height:56px;flex:0 0 auto;padding:0 18px;border-bottom:1px solid var(--border-subtle);background:var(--bg-surface)}.ft-id{display:flex;align-items:center;gap:10px}.ft-avatar{width:34px;height:34px;border-radius:50%;background:var(--accent-muted);color:var(--accent);display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:11px;font-weight:var(--w-semi);position:relative}.ft-dot{position:absolute;bottom:-1px;right:-1px;width:10px;height:10px;border-radius:50%;border:2.5px solid var(--bg-surface)}.ft-name{font-size:var(--text-h3);font-weight:var(--w-semi)}.ft-org{font-size:11px;color:var(--text-muted);margin-top:1px}.ft-spacer{flex:1}.ft-modeseg{display:inline-flex;flex:0 0 auto;background:var(--bg-canvas);border:1px solid var(--border-default);border-radius:10px;padding:3px;gap:2px}.ft-modeseg button{min-width:58px;height:28px;padding:0 12px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--text-muted);cursor:pointer;border-radius:8px;font-family:var(--font-sans);font-size:12px;font-weight:var(--w-medium);transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.ft-modeseg button:hover:not(:disabled){color:var(--text-primary);background:var(--bg-elevated)}.ft-modeseg button.active{background:var(--bg-elevated);color:var(--text-primary);font-weight:var(--w-semi);box-shadow:0 1px 2px color-mix(in srgb,var(--text-primary) 8%,transparent)}.ft-modeseg button:disabled{cursor:not-allowed;opacity:.55}.ft-modeseg button.active:disabled{opacity:.85}.ft-modeseg button:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.ft-modeseg button:disabled,.ft-modeseg button:disabled:hover{cursor:default;color:var(--text-disabled, var(--text-muted));background:transparent;opacity:.55;box-shadow:none}.ft-modeseg button.active:disabled,.ft-modeseg button.active:disabled:hover{background:var(--bg-elevated);color:var(--text-muted)}.fp-main-blank .ft-modeseg button:disabled,.fp-main-blank .fp-attach:disabled,.fp-main-blank .fp-mic-inline:disabled,.fp-main-blank .fp-send:disabled,.fp-main-blank .fp-textarea:disabled{cursor:default}.fp-messages{flex:1;overflow-y:auto;min-height:0}.fp-messages:has(.fp-stage):not(.media-split){overflow:hidden;display:flex;flex-direction:column}.fp-messages.media-split{overflow:hidden;display:flex;flex-direction:row;min-height:0}.msg-list{display:flex;flex-direction:column;gap:var(--space-lg);padding:var(--space-xl);max-width:800px;margin:0 auto;width:100%}.msg-list.compact{gap:var(--space-md);padding:var(--space-md);max-width:none;margin:0;flex:1}.msg{display:flex;gap:var(--space-md);align-items:flex-start}.msg.user{flex-direction:row-reverse}.msg-avatar,.initials-avatar.msg-avatar{width:32px;height:32px;font-size:10px;flex:0 0 auto}.msg-bubble{max-width:72%}.msg.user .msg-bubble{align-items:flex-end;display:flex;flex-direction:column}.msg-text{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:10px 14px;font-size:var(--text-body);color:var(--text-primary);line-height:1.6;white-space:pre-wrap}.msg.user .msg-text{background:var(--accent-muted);border-color:var(--accent-border)}.msg-time{font-family:var(--font-mono);font-size:10px;color:var(--text-muted);padding:0 4px}.msg-text.md{white-space:normal}.msg-text.md>:first-child{margin-top:0}.msg-text.md>:last-child{margin-bottom:0}.msg-text.md p{margin:0 0 .7em}.msg-text.md ul,.msg-text.md ol{margin:0 0 .7em;padding-left:1.35em}.msg-text.md li{margin:.2em 0}.msg-text.md li>p{margin:0}.msg-text.md h1,.msg-text.md h2,.msg-text.md h3,.msg-text.md h4,.msg-text.md h5,.msg-text.md h6{margin:1em 0 .45em;font-weight:var(--w-semi);line-height:1.3}.msg-text.md h1{font-size:1.25em}.msg-text.md h2{font-size:1.15em}.msg-text.md h3{font-size:1.05em}.msg-text.md h4,.msg-text.md h5,.msg-text.md h6{font-size:1em}.msg-text.md strong{font-weight:var(--w-semi)}.msg-text.md a{color:var(--accent);text-decoration:underline;text-underline-offset:2px}.msg-text.md code{font-family:var(--font-mono);font-size:.88em;padding:1px 5px;background:var(--bg-canvas);border:1px solid var(--border-subtle);border-radius:var(--radius-xs);word-break:break-word}.msg-text.md pre{margin:0 0 .7em;padding:10px 12px;overflow-x:auto;background:var(--bg-canvas);border:1px solid var(--border-subtle);border-radius:var(--radius-sm)}.msg-text.md pre code{padding:0;background:none;border:none;word-break:normal}.msg-text.md blockquote{margin:0 0 .7em;padding-left:.85em;border-left:2px solid var(--border-default);color:var(--text-secondary)}.msg-text.md hr{border:none;border-top:1px solid var(--border-subtle);margin:.9em 0}.msg-text.md table{border-collapse:collapse;margin:0 0 .7em;font-size:.95em}.msg-text.md th,.msg-text.md td{border:1px solid var(--border-subtle);padding:5px 9px;text-align:left}.msg-text.md th{background:var(--bg-canvas);font-weight:var(--w-semi)}.msg-text.md .katex-display{margin:.6em 0;overflow-x:auto;overflow-y:hidden;padding-bottom:2px}.msg-text.md :is(table,.katex-display){max-width:100%}.msg-text.md>:has(>table){overflow-x:auto}.msg-text.streaming>:last-child:after{content:"▍";margin-left:1px;color:var(--text-muted)}.msg-text.following{color:var(--text-muted)}.msg-text.following [data-w]{transition:color var(--dur-fast) var(--ease)}.msg-text.following [data-w].was-spoken{color:var(--text-primary)}.msg-text.following [data-w].is-speaking{color:var(--accent);font-weight:var(--w-semi);border-radius:var(--radius-xs);background:var(--accent-muted);box-shadow:0 0 0 2px var(--accent-muted)}@media(prefers-reduced-motion:reduce){.msg-text.following [data-w]{transition:none}}.msg-foot{display:flex;align-items:center;gap:6px;margin-top:4px;min-height:22px}.msg.user .msg-foot{flex-direction:row-reverse}.msg-actions{display:flex;gap:2px;opacity:0;transition:opacity var(--dur-fast) var(--ease)}.msg:hover .msg-actions,.msg-actions:focus-within{opacity:1}.msg-action{width:22px;height:22px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:var(--radius-xs);color:var(--text-muted);cursor:pointer}.msg-action:hover{background:var(--bg-elevated);color:var(--text-primary)}.msg-action.active{color:var(--accent);background:var(--accent-muted)}@media(hover:none){.msg-actions{opacity:1}}.fp-stage{flex:1;display:flex;flex-direction:column;align-items:stretch;justify-content:center;background:#14181c;min-height:0;min-width:0;position:relative;border-radius:16px;overflow:hidden}[data-theme=light] .fp-stage{background:linear-gradient(180deg,#1a1f24,#12161a)}.fp-stage>:not(.fp-voice-controls){flex:1;min-height:0;min-width:0}.fp-chat-side{width:min(560px,48vw);flex:0 0 auto;display:flex;flex-direction:column;min-height:0;border-left:1px solid var(--border-subtle);background:var(--bg-surface);overflow:hidden;border-radius:16px}.fp-chat-side.full{width:auto;flex:1 1 auto;border-left:none;border-radius:16px}.fp-chat-side.full .msg-list{max-width:800px;margin:0 auto;width:100%;gap:var(--space-lg);padding:var(--space-xl)}.fp-chat-side.full .msg-bubble{max-width:72%}.fp-chat-side.full .msg-text{font-size:var(--text-body);padding:10px 14px}.fp-chat-side.full .msg-avatar{width:32px;height:32px;font-size:10px}.fp-chat-side.full .fp-chat-head{padding:0 var(--space-xl)}.fp-chat-side.full .fp-chat-alerts{padding-left:var(--space-xl);padding-right:var(--space-xl)}.fp-chat-side.full .fp-input-bar{padding:var(--space-md) var(--space-xl)}.fp-chat-side.full .fp-input-wrap{max-width:800px;margin:0 auto}.fp-transcript-head{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:var(--space-sm) 14px 0}.fp-transcript-label{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted)}.fp-transcript-live{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--success)}.fp-transcript-live .fp-streaming-dot{background:var(--success)}.fp-chat-head{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:56px;flex:0 0 auto;padding:8px 14px;border-bottom:1px solid var(--border-subtle)}.fp-chat-head .ft-id{min-width:0}.fp-chat-head .ft-id>div{min-width:0}.fp-chat-head .ft-name,.fp-chat-head .ft-org{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fp-chat-alerts{flex:0 0 auto;padding:var(--space-sm) 14px 0}.fp-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:48px 24px;min-height:280px;gap:8px}.fp-empty-icon{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--accent-muted);color:var(--accent);margin-bottom:8px}.fp-empty-title{margin:0;font-size:1.25rem;font-weight:var(--w-semi);color:var(--text-primary)}.fp-empty-sub{margin:0 0 12px;max-width:360px;font-size:var(--text-body-sm);color:var(--text-muted);line-height:1.45}.fp-empty-hint{margin:8px 0 0;font-size:12px;color:var(--text-muted)}.fp-suggest{display:flex;flex-direction:column;align-items:stretch;gap:8px;width:min(360px,100%);margin-top:4px}.fp-suggest-chip{display:flex;align-items:center;gap:10px;padding:10px 14px;background:transparent;border:1px solid var(--border-default);border-radius:999px;color:var(--text-secondary);font-family:var(--font-sans);font-size:var(--text-body-sm);cursor:pointer;text-align:left;transition:border-color var(--dur-fast) var(--ease),background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.fp-suggest-chip:hover:not(:disabled){border-color:var(--accent);color:var(--text-primary);background:var(--accent-muted)}.fp-suggest-chip:disabled{opacity:.5;cursor:not-allowed}.fp-spinner{display:inline-block;width:10px;height:10px;margin-right:6px;vertical-align:-1px;border:1.5px solid var(--border-strong);border-top-color:var(--accent);border-radius:50%;animation:fp-spin .7s linear infinite}@keyframes fp-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.fp-spinner{animation-duration:2.4s}}.msg-skel{display:flex;flex-direction:column;gap:var(--space-md)}.msg-skel .msg-avatar{background:var(--bg-elevated)}.msg-skel-bubble{width:100%;height:40px;border-radius:var(--radius-lg)}.fp-chat-side.full .msg-skel-bubble{height:46px}.fp-chat-messages{flex:1;min-height:0;overflow-y:auto}.fp-chat-side .msg-bubble{max-width:88%}.fp-chat-side .msg-text{font-size:var(--text-body-sm);padding:8px 12px}.fp-chat-side .msg-avatar{width:26px;height:26px;font-size:9px}.fp-chat-side .fp-input-bar{flex:0 0 auto;border-top:1px solid var(--border-subtle);padding:14px 16px 16px;background:var(--bg-surface)}.fp-chat-side .fp-input-wrap{max-width:none;margin:0}.fp-chat-side .fp-input-meta{margin-top:var(--space-xs)}.fp-input-bar{flex:0 0 auto;border-top:1px solid var(--border-subtle);padding:14px 18px 16px;background:var(--bg-surface)}.fp-input-wrap{display:flex;flex-direction:row;align-items:center;gap:4px;max-width:800px;margin:0 auto;background:var(--bg-elevated);border:none;border-radius:999px;padding:6px 6px 6px 12px;min-height:48px;box-sizing:border-box;transition:box-shadow var(--dur-fast) var(--ease),background var(--dur-fast) var(--ease)}.fp-input-wrap:focus-within{box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 22%,transparent)}.fp-textarea{flex:1;width:auto;min-width:0;min-height:28px;max-height:calc(9em + 8px);box-sizing:border-box;background:transparent;border:none;outline:none;color:var(--text-primary);font-family:var(--font-sans);font-size:14px;resize:none;line-height:1.4;overflow-y:auto;padding:6px 8px;margin:0;display:block}.fp-textarea::placeholder{color:var(--text-muted)}.fp-mode-label{flex:1;color:var(--text-muted);font-family:var(--font-sans);font-size:var(--text-body);font-style:italic}.fp-input-right{display:flex;align-items:center;justify-content:flex-end;gap:2px;flex:0 0 auto;padding:0}.fp-mic-inline{width:36px;height:36px;border-radius:999px;background:transparent;border:none;color:var(--text-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer}.fp-mic-inline:hover:not(:disabled){color:var(--text-primary);background:color-mix(in srgb,var(--text-primary) 6%,transparent)}.fp-mic-inline:disabled{opacity:.4;cursor:not-allowed}.fp-send{height:36px;min-width:36px;padding:0 14px;gap:7px;border-radius:999px;background:var(--bg-surface);border:none;color:var(--text-disabled);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-sans);font-size:13px;font-weight:var(--w-medium);transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease);flex:0 0 auto;box-shadow:0 0 0 1px color-mix(in srgb,var(--text-primary) 4%,transparent)}.fp-send.active{background:var(--accent-muted);color:var(--accent);box-shadow:none}.fp-send:disabled{cursor:not-allowed;opacity:1;color:var(--text-disabled)}.fp-input-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:11px;color:var(--text-muted);margin-top:var(--space-xs);font-family:var(--font-mono);min-height:0}.fp-attach{width:32px;height:32px;border-radius:999px;background:transparent;border:none;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;flex:0 0 auto;transition:color var(--dur-fast) var(--ease),background var(--dur-fast) var(--ease);margin:0;padding:0}.fp-attach:hover:not(:disabled){color:var(--text-primary);background:color-mix(in srgb,var(--text-primary) 6%,transparent)}.fp-attach:disabled{opacity:.4;cursor:not-allowed}.fp-attach-list{display:flex;flex-wrap:wrap;gap:6px}.fp-attach-chip{display:inline-flex;align-items:center;gap:5px;padding:2px 6px;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-pill);color:var(--text-secondary);font-family:var(--font-sans);font-size:11px;max-width:190px}.fp-attach-chip button{background:none;border:none;padding:0;display:flex;color:var(--text-muted);cursor:pointer}.fp-attach-chip button:hover{color:var(--error)}.fp-counter{margin-left:auto}.fp-counter.over{color:var(--error)}.fp-streaming{display:inline-flex;align-items:center;gap:6px;color:var(--text-secondary)}.fp-streaming-dot{width:6px;height:6px;border-radius:50%;background:var(--accent);animation:fp-pulse 1.2s ease-in-out infinite}@keyframes fp-pulse{0%,to{opacity:1}50%{opacity:.25}}.fp-send.stop{background:var(--bg-surface);color:var(--text-secondary);box-shadow:0 0 0 1px var(--border-default)}@media(prefers-reduced-motion:reduce){.fp-streaming-dot{animation:none}}.fp-stage .fp-voice-controls{flex:0 0 auto;padding:var(--space-lg) var(--space-xl);display:flex;align-items:center;justify-content:center;gap:var(--space-lg);border-top:1px solid color-mix(in srgb,#fff 8%,transparent);background:transparent}.vc-btn{display:flex;align-items:center;gap:8px;height:44px;padding:0 20px;background:color-mix(in srgb,#fff 8%,transparent);border:1px solid color-mix(in srgb,#fff 12%,transparent);border-radius:var(--radius-pill);color:#e8ecef;font-family:var(--font-sans);font-size:var(--text-body);cursor:pointer;transition:all var(--dur-fast) var(--ease)}.vc-btn:hover{border-color:color-mix(in srgb,#fff 24%,transparent);color:#fff}.vc-btn.accent{background:var(--accent);border-color:var(--accent);color:var(--accent-fg)}.vc-btn.accent:hover{background:var(--accent-hover)}.vc-btn.connecting{background:var(--success-muted);border-color:var(--success);color:var(--success);cursor:wait}.vc-btn.active-mic{background:var(--error-muted);border-color:var(--error);color:var(--error)}.vc-btn.active-mic:hover{background:var(--error-muted)}.vc-volume{display:flex;align-items:center;gap:8px}.vc-mute{width:34px;height:34px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-pill);cursor:pointer;background:color-mix(in srgb,#fff 8%,transparent);border:1px solid color-mix(in srgb,#fff 12%,transparent);color:#c9d1d9}.vc-mute:hover{color:#fff;border-color:color-mix(in srgb,#fff 24%,transparent)}.vc-volume input[type=range]{width:90px;accent-color:var(--accent);cursor:pointer}.fp-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:color-mix(in srgb,#000 45%,transparent);display:flex;align-items:center;justify-content:center;padding:24px}.fp-modal{width:min(720px,100%);max-height:min(80vh,720px);overflow:hidden;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:16px;box-shadow:var(--shadow-3);padding:20px 22px 18px;display:flex;flex-direction:column;gap:16px}.fp-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex:0 0 auto}.fp-modal-title{margin:0;font-size:1.2rem;font-weight:var(--w-semi);color:var(--text-primary)}.fp-modal-sub{margin:6px 0 0;font-size:var(--text-body-sm);color:var(--text-muted);max-width:46ch;line-height:1.45}.fp-modal-close{width:32px;height:32px;flex:0 0 auto;display:flex;align-items:center;justify-content:center;border-radius:8px;background:transparent;border:1px solid var(--border-default);color:var(--text-secondary);cursor:pointer}.fp-modal-close:hover{color:var(--text-primary);border-color:var(--border-strong)}.fp-modal-body{flex:1 1 auto;min-height:0;overflow-y:auto;padding-right:2px}.fp-agent-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}@media(max-width:640px){.fp-agent-grid{grid-template-columns:1fr}}@media(max-width:1280px){.fp-messages.media-split{flex-direction:column}.fp-main:has(.fp-stage) .fp-body.media-split{flex-direction:column;gap:10px;width:100%}.fp-main:has(.fp-stage) .fp-stage{flex:0 0 auto;width:100%;align-self:stretch;min-height:min(42vh,360px);max-height:46vh}.fp-main:has(.fp-stage) .fp-chat-side{width:100%!important;max-width:none;flex:1 1 auto;min-width:0;min-height:0;border-left:none;align-self:stretch}.fp-chat-head{flex-wrap:wrap;gap:10px}.fp-chat-head .ft-modeseg{margin-left:0}}@media(max-width:768px){.fp{padding:0;height:100vh;height:100dvh}.fp-body-grid{grid-template-columns:1fr;gap:0}.fp-body-grid:has(.fp-sidebar.collapsed){grid-template-columns:1fr}.fp-mobile-nav,.sb-mobile-close{display:inline-flex}.fp-sidebar{border-radius:0;border:none;border-right:1px solid var(--border-subtle)}.fp-body-grid.fp-mobile-chat .fp-sidebar{display:none}.fp-body-grid.fp-mobile-list .fp-sidebar{display:flex;position:relative;width:100%;min-height:0}.fp-body-grid.fp-mobile-list .fp-sidebar.collapsed{display:flex;align-items:stretch;padding:0}.fp-body-grid.fp-mobile-list .fp-main,.fp-body-grid.fp-mobile-list .fp-main-blank{display:none}.fp-chat-head{padding:10px 12px!important}.fp-chat-head .ft-modeseg{width:100%}.msg-bubble{max-width:88%}.msg-list{padding:var(--space-md)}.fp-input-bar{padding:10px 12px calc(10px + env(safe-area-inset-bottom,0px))}.fp-main:has(.fp-stage) .fp-body.media-split{gap:0}.fp-main{border-radius:0;border:none;width:100%;min-width:0;flex:1}.fp-body{width:100%}.fp-main:has(.fp-stage) .fp-stage,.fp-main:has(.fp-stage) .fp-chat-side{border-radius:0;border-left:none;border-right:none}.fp-main:has(.fp-stage) .fp-stage{border-bottom:1px solid var(--border-subtle);min-height:38vh;max-height:42vh}.fp-stage>:not(.fp-voice-controls){min-height:0}.fp-empty{padding-inline:16px}.fp-empty-title{font-size:1.15rem}}.fp-agent-card{display:flex;flex-direction:column;gap:8px;padding:14px;text-align:left;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:12px;cursor:pointer;font-family:var(--font-sans);color:var(--text-primary);transition:border-color var(--dur-fast) var(--ease),background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.fp-agent-card:hover{background:var(--accent-muted);border-color:var(--accent);color:var(--text-primary)}.fp-agent-card:focus-visible{outline:none;box-shadow:var(--shadow-focus);border-color:var(--accent)}.fp-agent-card.is-selected{background:var(--accent-muted);border-color:var(--accent)}.fp-agent-card-top{display:flex;align-items:center;gap:10px}.fp-agent-card-av{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--accent-muted);color:var(--accent);font-size:11px;font-weight:var(--w-semi);flex:0 0 auto}.fp-agent-card-id{min-width:0;display:flex;flex-direction:column;gap:2px}.fp-agent-card-name{font-size:var(--text-body-sm);font-weight:var(--w-semi)}.fp-agent-card-model{font-size:11px;color:var(--accent)}.fp-agent-card-desc{margin:0;font-size:12px;color:var(--text-muted);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.fp-modal-foot{display:flex;justify-content:flex-end;padding-top:4px;flex:0 0 auto}.fp-modal-primary{height:38px;padding:0 18px;border-radius:10px;border:none;background:var(--accent);color:var(--accent-fg);font-family:var(--font-sans);font-size:var(--text-body-sm);font-weight:var(--w-semi);cursor:pointer}.fp-modal-primary:hover{background:var(--accent-hover)}.user-cell{display:flex;align-items:center;gap:10px;min-width:0}.initials-avatar.suspended{color:var(--text-muted);background:var(--badge-inactive-bg);border-color:var(--badge-inactive-border)}.user-name-wrap{min-width:0}.user-name{font-size:var(--text-body);font-weight:var(--w-medium);color:var(--text-primary);display:flex;align-items:center;gap:7px}.you-tag{font-family:var(--font-mono);font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:var(--accent);border:1px solid var(--accent-border);border-radius:var(--radius-pill);padding:1px 6px}.user-email{font-family:var(--font-mono);font-size:11px;color:var(--text-muted);letter-spacing:.01em}.role-pill{display:inline-flex;align-items:center;gap:6px;height:22px;padding:0 9px;border-radius:var(--radius-xs);font-size:11px;font-weight:var(--w-medium);border:1px solid var(--border-default);background:var(--bg-elevated);color:var(--text-secondary);white-space:nowrap}.role-pill.admin{background:var(--accent-muted);color:var(--accent);border-color:var(--accent-border)}.role-pill .rp-dot{width:6px;height:6px;border-radius:50%;background:currentColor;flex:0 0 auto}.menu-note{font-size:10px;color:var(--text-muted);padding:6px 10px 2px;font-family:var(--font-mono)}.dtable tbody td{height:56px}.email-input-wrap{display:flex;flex-wrap:wrap;gap:6px;align-items:center;min-height:40px;padding:6px 8px;background:var(--bg-input);border:1px solid var(--border-default);border-radius:var(--radius-sm);transition:border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease)}.email-input-wrap:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-muted)}.email-input-wrap.error{border-color:var(--error)}.email-chip{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 6px 0 9px;background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--radius-pill);font-size:12px;color:var(--text-primary)}.email-chip button{background:transparent;border:none;color:var(--text-muted);cursor:pointer;display:flex;padding:1px}.email-chip button:hover{color:var(--text-primary)}.email-input-wrap input{flex:1;min-width:120px;background:transparent;border:none;outline:none;color:var(--text-primary);font-family:var(--font-sans);font-size:var(--text-body);height:26px}.email-input-wrap input::placeholder{color:var(--text-muted)}.f-block{margin-bottom:var(--space-lg)}.f-block:last-child{margin-bottom:0}.f-label{font-size:var(--text-body-sm);font-weight:var(--w-medium);color:var(--text-secondary);display:flex;justify-content:space-between;margin-bottom:6px}.f-label .req{color:var(--error)}.f-hint{font-family:var(--font-mono);font-size:10px;color:var(--text-muted);letter-spacing:.02em;margin-top:5px}.f-select{width:100%;background:var(--bg-input);border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-primary);font-family:var(--font-sans);font-size:var(--text-body);height:38px;padding:0 28px 0 12px;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='%23888' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;transition:border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease)}.f-select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-muted)}.role-desc{font-size:11px;color:var(--text-muted);margin-top:6px;line-height:1.5}.role-change-row{display:flex;align-items:center;gap:12px;margin-bottom:var(--space-lg)}.role-change-row .arrow{color:var(--text-muted);font-size:18px}.rc-from{display:flex;flex-direction:column;gap:4px}.rc-cap{font-family:var(--font-mono);font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted)}@media(max-width:768px){.role-change-row{flex-wrap:wrap}.user-cell{gap:8px}}@media(max-width:640px){.email-input-wrap input{min-width:100%}}.auth-split{--auth-radius-card: 20px;--auth-radius-control: 12px;--auth-radius-pill: 999px;min-height:100vh;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);background:var(--auth-panel-bg);color:var(--auth-text);font-family:var(--font-sans, "IBM Plex Sans", system-ui, sans-serif)}.auth-hero{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:100vh;padding:28px 32px 36px;background:var(--auth-hero-bg);color:var(--auth-hero-fg);overflow:hidden}.auth-hero-status{position:absolute;top:24px;left:24px;z-index:2;display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:var(--auth-radius-pill);background:#00000073;border:1px solid rgba(255,255,255,.12);font-size:12px;font-weight:500;letter-spacing:.01em}.auth-hero-status-dot{width:7px;height:7px;border-radius:50%;background:var(--auth-status-dot);box-shadow:0 0 0 3px color-mix(in srgb,var(--auth-status-dot) 28%,transparent)}.auth-hero-avatar-wrap{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:stretch;justify-content:center;pointer-events:none}.auth-hero-avatar{width:100%;height:100%;object-fit:cover;object-position:center 12%;filter:saturate(1.02) contrast(1.03);mask-image:linear-gradient(to bottom,#000 42%,transparent 88%),linear-gradient(to right,transparent 0%,#000 12%,#000 88%,transparent 100%);mask-composite:intersect;-webkit-mask-image:linear-gradient(to bottom,#000 42%,transparent 88%),linear-gradient(to right,transparent 0%,#000 12%,#000 88%,transparent 100%);-webkit-mask-composite:source-in}.auth-hero-copy{position:relative;z-index:1;max-width:34rem}.auth-hero-title{margin:0 0 10px;font-size:clamp(28px,3.2vw,40px);line-height:1.12;font-weight:700;letter-spacing:-.02em;text-wrap:balance}.auth-hero-sub{margin:0 0 18px;font-size:14px;line-height:1.5;color:var(--auth-hero-muted);max-width:38ch}.auth-hero-features{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}.auth-hero-features li{padding:6px 12px;border-radius:var(--auth-radius-pill);border:1px solid var(--auth-hero-chip-border);font-size:12px;color:var(--auth-hero-fg);background:#00000038}.auth-panel{position:relative;display:flex;align-items:center;justify-content:center;min-height:100vh;padding:32px 24px;overflow:hidden;background:linear-gradient(var(--auth-panel-grid) 1px,transparent 1px),linear-gradient(90deg,var(--auth-panel-grid) 1px,transparent 1px),var(--auth-panel-bg);background-size:48px 48px,48px 48px,auto}.auth-split--light .auth-panel{background:radial-gradient(95% 75% at 0% -5%,rgba(90,200,195,.38),transparent 58%),radial-gradient(80% 65% at 100% 0%,rgba(120,210,205,.22),transparent 55%),radial-gradient(95% 80% at 100% 105%,rgba(170,155,235,.36),transparent 58%),linear-gradient(var(--auth-panel-grid) 1px,transparent 1px),linear-gradient(90deg,var(--auth-panel-grid) 1px,transparent 1px),var(--auth-panel-bg);background-size:auto,auto,auto,48px 48px,48px 48px,auto}.auth-split--light .auth-panel:before,.auth-split--light .auth-panel:after{content:none}.auth-split--dark .auth-panel{background:radial-gradient(85% 65% at 85% 90%,color-mix(in srgb,var(--auth-accent) 22%,transparent),transparent 58%),linear-gradient(var(--auth-panel-grid) 1px,transparent 1px),linear-gradient(90deg,var(--auth-panel-grid) 1px,transparent 1px),var(--auth-panel-bg);background-size:auto,56px 56px,56px 56px,auto}.auth-split--dark .auth-panel:before,.auth-split--dark .auth-panel:after{content:none}.auth-card{position:relative;z-index:1;width:100%;max-width:420px;padding:28px 28px 24px;border-radius:var(--auth-radius-card);background:var(--auth-card-bg);border:1px solid var(--auth-card-border);box-shadow:var(--auth-card-shadow)}.auth-card--wide{max-width:460px}.auth-brand-row{display:flex;align-items:center;gap:10px;margin-bottom:22px}.auth-brand-mark{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;background:var(--auth-accent);color:#fff;font-size:14px;font-weight:700;line-height:1}.auth-brand-name{font-size:15px;font-weight:700;color:var(--auth-text);letter-spacing:-.01em}.auth-split .auth-title{margin:0 0 6px;font-size:28px;line-height:1.15;font-weight:700;letter-spacing:-.02em;color:var(--auth-text)}.auth-split .auth-sub{margin:0 0 22px;font-size:13px;line-height:1.45;color:var(--auth-text-secondary)}.auth-split .auth-back{display:inline-flex;align-items:center;gap:6px;margin:0 0 14px;padding:0;border:none;background:none;color:var(--auth-text-secondary);font:inherit;font-size:13px;cursor:pointer;text-decoration:none}.auth-split .auth-back:hover{color:var(--auth-text)}.auth-split .login-form,.auth-split .auth-form{display:flex;flex-direction:column;gap:14px;margin-bottom:16px}.auth-split .field-label,.auth-split .field-label-main{color:var(--auth-text);font-weight:600;font-size:13px}.auth-split .field-desc{color:var(--auth-text-muted);font-size:12px}.auth-split .input,.auth-split .pw-wrap{border-radius:var(--auth-radius-control);border-color:var(--auth-input-border);background:var(--auth-input-bg);color:var(--auth-text)}.auth-split .input::placeholder{color:var(--auth-text-muted)}.auth-split .input:focus,.auth-split .pw-wrap:focus-within{border-color:var(--auth-input-focus);box-shadow:0 0 0 3px color-mix(in srgb,var(--auth-input-focus) 18%,transparent);outline:none}.auth-split .pw-toggle{color:var(--auth-text-secondary);font-size:12px;font-weight:600}.auth-split .pw-toggle:hover{color:var(--auth-accent)}.auth-split .auth-btn,.auth-split .btn.auth-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:44px;padding:10px 18px;border-radius:var(--auth-radius-pill);font-size:14px;font-weight:600;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease}.auth-split .auth-btn-primary,.auth-split .btn.auth-btn-primary{background:var(--auth-accent-soft);border:1px solid var(--auth-accent);color:var(--auth-accent-fg);box-shadow:var(--auth-btn-glow)}.auth-split .auth-btn-primary:hover:not(:disabled),.auth-split .btn.auth-btn-primary:hover:not(:disabled){background:var(--auth-accent-muted)}.auth-split--dark .auth-btn-primary,.auth-split--dark .btn.auth-btn-primary{background:linear-gradient(180deg,color-mix(in srgb,var(--auth-accent) 88%,#ffffff),var(--auth-accent));border-color:color-mix(in srgb,var(--auth-accent) 70%,#0a1214);color:#0a1214}.auth-split--dark .auth-btn-primary:hover:not(:disabled),.auth-split--dark .btn.auth-btn-primary:hover:not(:disabled){background:linear-gradient(180deg,color-mix(in srgb,var(--auth-accent) 96%,#ffffff),color-mix(in srgb,var(--auth-accent) 88%,#0a1214))}.auth-split .auth-btn-primary:disabled,.auth-split .btn.auth-btn-primary:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.auth-split .auth-btn-secondary,.auth-split .btn.auth-btn-secondary{background:var(--auth-secondary-btn-bg);border:1px solid var(--auth-secondary-btn-border);color:var(--auth-secondary-btn-fg)}.auth-split .auth-btn-secondary:hover:not(:disabled),.auth-split .btn.auth-btn-secondary:hover:not(:disabled){background:color-mix(in srgb,var(--auth-secondary-btn-fg) 6%,var(--auth-secondary-btn-bg))}.auth-split .auth-btn-ghost,.auth-split .btn.auth-btn-ghost{background:transparent;border:1px solid var(--auth-line);color:var(--auth-text)}.auth-split .auth-btn-ghost:hover:not(:disabled),.auth-split .btn.auth-btn-ghost:hover:not(:disabled){background:color-mix(in srgb,var(--auth-text) 5%,transparent)}.auth-split .login-divider{display:flex;align-items:center;gap:12px;margin:16px 0;color:var(--auth-text-muted);font-size:12px}.auth-split .login-divider:before,.auth-split .login-divider:after{content:"";flex:1;height:1px;background:var(--auth-line)}.auth-split .login-link,.auth-split .auth-link{color:var(--auth-accent);text-decoration:underline;text-underline-offset:2px}.auth-split .login-links,.auth-split .auth-footer-line{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:18px;font-size:13px;color:var(--auth-text-secondary)}.auth-split .login-error{font-size:13px;color:#b42318;background:#fef3f2;border:1px solid #fecdca;border-radius:10px;padding:10px 12px}.auth-split--dark .login-error{color:#fecaca;background:#b423182e;border-color:#fecdca47}.auth-split .auth-note,.auth-split .login-sso-note{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:12px;background:var(--auth-info-bg);color:var(--auth-text);font-size:13px;line-height:1.45}.auth-split .auth-note strong,.auth-split .login-sso-note strong{display:block;margin-bottom:2px}.auth-split .auth-note-warn{background:var(--auth-warn-bg);color:var(--auth-warn-fg)}.auth-split .auth-forgot{display:inline-block;margin-top:-4px;margin-bottom:4px;font-size:13px}.auth-split .login-breakglass{background:none;border:none;color:var(--auth-text-muted);font-size:13px;cursor:pointer;padding:2px;align-self:center}.auth-split .login-breakglass:hover{color:var(--auth-text);text-decoration:underline}.auth-split .login-breakglass.inline{display:inline;padding:0;color:var(--auth-accent)}.auth-split .login-footer{font-size:11px;color:var(--auth-text-muted);text-align:center;margin-top:18px;line-height:1.5}.auth-split .auth-choice-stack{display:flex;flex-direction:column;gap:10px;margin:4px 0 18px}.auth-split .auth-choice{display:block;width:100%;text-align:left;padding:14px 16px;border-radius:14px;border:1px solid var(--auth-line);background:var(--auth-input-bg);cursor:pointer;color:var(--auth-text);transition:border-color .15s ease,background .15s ease}.auth-split .auth-choice:hover{border-color:color-mix(in srgb,var(--auth-accent) 45%,var(--auth-line))}.auth-split .auth-choice.is-selected{border-color:var(--auth-accent);background:var(--auth-accent-soft);color:var(--auth-text)}.auth-split--light .auth-choice.is-selected{color:var(--auth-accent-fg)}.auth-split .auth-choice-title{display:block;font-size:14px;font-weight:700;margin-bottom:4px}.auth-split .auth-choice-desc{display:block;font-size:12px;line-height:1.4;color:var(--auth-text-secondary)}.auth-split--light .auth-choice.is-selected .auth-choice-desc{color:color-mix(in srgb,var(--auth-accent-fg) 78%,transparent)}.auth-split .auth-choice-meta{display:block;margin-top:8px;font-size:11px;color:var(--auth-text-muted)}.auth-split .auth-actions-row{display:flex;justify-content:flex-end;gap:10px}.auth-split .reg-oauth-stack{display:flex;flex-direction:column;gap:10px}.auth-split .reg-oauth-stack .btn{border-radius:var(--auth-radius-pill);min-height:44px}@media(max-width:900px){.auth-split{grid-template-columns:1fr}.auth-hero{display:none}.auth-panel{min-height:100vh}}.login-scene{position:relative;overflow:hidden;min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-canvas);padding:var(--space-xl)}.login-scene:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background:radial-gradient(120% 90% at 85% -15%,var(--accent-50),var(--bg-canvas) 58%),radial-gradient(100% 85% at -15% 115%,var(--info-50),var(--bg-canvas) 58%)}.login-scene:after{content:"";position:absolute;z-index:0;pointer-events:none;width:520px;height:520px;border-radius:50%;top:-160px;right:-140px;filter:blur(70px);opacity:.4;background:radial-gradient(circle at 40% 40%,var(--accent-50),var(--bg-canvas) 68%);animation:auth-drift 24s ease-in-out infinite}@keyframes auth-drift{0%,to{transform:translate(0) scale(1)}50%{transform:translate(-40px,50px) scale(1.08)}}@media(prefers-reduced-motion:reduce){.login-scene:after{animation:none}}[data-theme=light] .login-scene:after{opacity:.18}.login-card{position:relative;z-index:1;width:100%;max-width:400px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-2xl);box-shadow:var(--shadow-3)}.login-tagline{font-size:var(--text-body-sm);color:var(--text-secondary);margin:-18px 0 var(--space-xl);line-height:1.5}.login-brand{display:flex;align-items:center;gap:10px;margin-bottom:var(--space-2xl)}.login-brand-name{font-size:var(--text-h3);font-weight:var(--w-semi);color:var(--text-primary)}.login-title{font-size:var(--text-h2);font-weight:var(--w-semi);color:var(--text-primary);margin:0 0 4px;letter-spacing:-.01em}.login-sub{font-size:var(--text-body-sm);color:var(--text-muted);font-family:var(--font-mono);margin:0 0 var(--space-xl)}.login-form{display:flex;flex-direction:column;gap:var(--space-md);margin-bottom:var(--space-lg)}.login-name-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-md)}.login-error{font-size:var(--text-body-sm);color:var(--error);background:var(--error-muted);border:1px solid var(--error-border);border-radius:var(--radius-sm);padding:var(--space-sm) var(--space-md)}.login-divider{display:flex;align-items:center;gap:var(--space-md);color:var(--text-muted);font-size:11px;margin:var(--space-lg) 0}.login-divider:before,.login-divider:after{content:"";flex:1;height:1px;background:var(--border-subtle)}.login-links{display:flex;align-items:center;justify-content:center;gap:var(--space-sm);margin-top:var(--space-lg);font-size:var(--text-body-sm);color:var(--text-muted)}.login-link{color:var(--accent);text-decoration:none}.login-link:hover{text-decoration:underline}.login-footer{font-size:11px;color:var(--text-muted);text-align:center;margin-top:var(--space-xl);line-height:1.5}.login-sso-note{font-size:var(--text-body-sm);color:var(--text-secondary);background:var(--info-muted);border:1px solid var(--info-border);border-radius:var(--radius-sm);padding:var(--space-sm) var(--space-md);line-height:1.5}.login-breakglass{background:none;border:none;color:var(--text-muted);font-size:var(--text-body-sm);cursor:pointer;padding:2px;align-self:center}.login-breakglass:hover{color:var(--text-primary);text-decoration:underline}.login-breakglass.inline{display:inline;padding:0;color:var(--accent)}.auth-back{display:inline-flex;align-items:center;gap:6px;background:none;border:none;padding:0;margin:0 0 var(--space-md);color:var(--text-muted);font-family:var(--font-sans);font-size:var(--text-body-sm);cursor:pointer}.auth-back:hover{color:var(--text-primary)}@media(max-width:480px){.login-scene{padding:var(--space-md);align-items:flex-start;padding-top:10vh}.login-card{padding:var(--space-xl)}.login-name-row{grid-template-columns:1fr}.login-scene:after{width:280px;height:280px}}.reg-choice-grid{display:flex;flex-direction:column;gap:var(--space-md);margin-bottom:var(--space-lg)}.reg-choice{display:flex;align-items:flex-start;gap:var(--space-md);text-align:left;padding:var(--space-lg);background:var(--bg-input);border:1px solid var(--border-default);border-radius:var(--radius-lg);cursor:pointer;transition:border-color var(--dur-fast) var(--ease),background var(--dur-fast) var(--ease)}.reg-choice:hover{border-color:var(--accent);background:var(--bg-elevated)}.reg-choice-ico{width:38px;height:38px;flex:0 0 auto;border-radius:var(--radius-md);background:var(--accent-muted);color:var(--accent);display:flex;align-items:center;justify-content:center}.reg-choice-title{font-size:var(--text-body);font-weight:var(--w-semi);color:var(--text-primary)}.reg-choice-desc{font-size:var(--text-body-sm);color:var(--text-muted);margin-top:2px;line-height:1.45}.reg-choice-arrow{margin-left:auto;align-self:center;color:var(--text-muted)}.reg-oauth-stack{display:flex;flex-direction:column;gap:var(--space-sm)}.reg-terms{display:flex;align-items:flex-start;gap:9px;cursor:pointer;font-size:var(--text-body-sm);color:var(--text-secondary);line-height:1.5}.reg-terms input[type=checkbox]{width:15px;height:15px;margin:2px 0 0;flex:0 0 auto;accent-color:var(--accent);cursor:pointer}.reg-terms.error,.reg-terms.error .login-link{color:var(--error)}.verify-ico{width:52px;height:52px;margin:0 auto var(--space-lg);border-radius:50%;background:var(--accent-muted);color:var(--accent);display:flex;align-items:center;justify-content:center}.verify-body{text-align:center;font-size:var(--text-body);color:var(--text-secondary);line-height:1.6;margin-bottom:var(--space-lg)}.verify-email-addr{color:var(--text-primary);font-weight:var(--w-semi)}.verify-hint{text-align:center;font-size:var(--text-body-sm);color:var(--text-muted);margin-top:var(--space-lg)}.wiz-scene{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-canvas);padding:var(--space-xl)}.wiz-card{width:100%;max-width:640px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-2xl);box-shadow:var(--shadow-3)}.wiz-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);margin-bottom:var(--space-xl)}.wiz-skip{background:none;border:none;color:var(--text-muted);font-size:var(--text-body-sm);cursor:pointer;padding:4px}.wiz-skip:hover{color:var(--text-primary);text-decoration:underline}.wiz-steps{display:flex;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-xl)}.wiz-step{display:flex;align-items:center;gap:8px;flex:1}.wiz-step-dot{width:26px;height:26px;flex:0 0 auto;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:11px;font-weight:var(--w-semi);background:var(--bg-elevated);border:1px solid var(--border-default);color:var(--text-muted)}.wiz-step.active .wiz-step-dot{background:var(--accent);border-color:var(--accent);color:var(--accent-fg)}.wiz-step.done .wiz-step-dot{background:var(--accent-muted);border-color:var(--accent);color:var(--accent)}.wiz-step-label{font-size:var(--text-body-sm);color:var(--text-muted);white-space:nowrap}.wiz-step.active .wiz-step-label{color:var(--text-primary);font-weight:var(--w-medium)}.wiz-step-line{flex:1;height:1px;background:var(--border-subtle);min-width:12px}.wiz-body{display:flex;flex-direction:column;gap:var(--space-md);min-height:260px}.wiz-foot{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);margin-top:var(--space-xl)}.wiz-note{font-size:var(--text-body-sm);color:var(--text-muted);line-height:1.5}.wiz-logo-row{display:flex;align-items:center;gap:var(--space-lg)}.wiz-logo-preview{width:56px;height:56px;border-radius:var(--radius-md);flex:0 0 auto;background:var(--bg-elevated);border:1px dashed var(--border-default);display:flex;align-items:center;justify-content:center;color:var(--text-muted);overflow:hidden}.wiz-logo-preview img{width:100%;height:100%;object-fit:cover}.wiz-color-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-md)}.wiz-color-field{display:flex;align-items:center;gap:var(--space-sm)}.wiz-color-field input[type=color]{width:34px;height:34px;padding:2px;border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--bg-input);cursor:pointer}.wiz-team-empty{display:flex;flex-direction:column;align-items:center;gap:var(--space-md);padding:var(--space-xl);color:var(--text-muted);background:var(--bg-input);border:1px dashed var(--border-default);border-radius:var(--radius-lg)}.wiz-invite-list{display:flex;flex-direction:column;gap:var(--space-xs)}.wiz-invite-item{display:flex;align-items:center;gap:var(--space-sm);padding:8px 10px;background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-muted)}.wiz-invite-email{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-primary);font-size:var(--text-body-sm)}@media(max-width:640px){.wiz-scene{padding:var(--space-md);align-items:flex-start;padding-top:8vh}.wiz-card{padding:var(--space-xl)}.wiz-step-label{display:none}.wiz-foot{flex-direction:column-reverse;align-items:stretch}}.wiz-invite-role{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.wiz-invite-remove{width:30px;height:30px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer}.wiz-invite-remove:hover{background:var(--bg-elevated);color:var(--error)}.legal-scene{min-height:100vh;background:var(--bg-canvas);padding:var(--space-2xl) var(--space-xl)}.legal-card{max-width:780px;margin:0 auto;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-2xl);box-shadow:var(--shadow-2)}.legal-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);margin-bottom:var(--space-xl)}.legal-back{display:inline-flex;align-items:center;gap:6px;color:var(--text-muted);font-size:var(--text-body-sm);text-decoration:none}.legal-back:hover{color:var(--text-primary)}.legal-tabs{display:flex;gap:2px;border-bottom:1px solid var(--border-subtle);margin-bottom:var(--space-xl);overflow-x:auto}.legal-tab{padding:10px 14px;background:none;border:none;cursor:pointer;font-family:var(--font-sans);font-size:var(--text-body);color:var(--text-muted);border-bottom:2px solid transparent;margin-bottom:-1px;white-space:nowrap}.legal-tab:hover{color:var(--text-primary)}.legal-tab.active{color:var(--accent);border-bottom-color:var(--accent);font-weight:var(--w-medium)}.legal-title{font-size:var(--text-h1);font-weight:var(--w-semi);color:var(--text-primary);margin:0 0 4px;letter-spacing:-.01em}.legal-updated{font-family:var(--font-mono);font-size:11px;color:var(--text-muted);margin-bottom:var(--space-lg)}.legal-intro{font-size:var(--text-body);color:var(--text-secondary);line-height:1.65;margin-bottom:var(--space-xl)}.legal-section{margin-bottom:var(--space-lg)}.legal-section h3{font-size:var(--text-h3);font-weight:var(--w-semi);color:var(--text-primary);margin:0 0 6px}.legal-section p{font-size:var(--text-body);color:var(--text-secondary);line-height:1.65;margin:0}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:6px}.page-title{font-size:22px;font-weight:var(--w-semi);letter-spacing:-.01em;color:var(--text-primary);margin:0 0 6px}.page-sub{font-size:13px;color:var(--text-muted);margin:0}.seg-bar{display:inline-flex;align-items:center;gap:2px;padding:3px;background:var(--bg-input);border:1px solid var(--border-default);border-radius:var(--radius-sm)}.seg-bar .seg-btn{height:28px;padding:0 12px;display:inline-flex;align-items:center;gap:6px;background:transparent;border:none;color:var(--text-muted);font-family:var(--font-sans);font-size:12px;cursor:pointer;border-radius:var(--radius-xs);white-space:nowrap;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.seg-bar .seg-btn:hover{color:var(--text-primary)}.seg-bar .seg-btn.active{background:var(--bg-surface);color:var(--text-primary)}.seg-bar .seg-count{font-family:var(--font-mono);font-size:10px;color:var(--text-muted)}.seg-bar .seg-btn.active .seg-count{color:var(--text-secondary)}.search-wrap{display:inline-flex;align-items:center;gap:8px;height:32px;padding:0 11px;background:var(--bg-input);border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-muted);transition:border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease)}.search-wrap:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-muted)}.search-wrap input{flex:1;min-width:0;background:transparent;border:none;outline:none;color:var(--text-primary);font-family:var(--font-sans);font-size:13px}.search-wrap input::placeholder{color:var(--text-muted)}.persona-list{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.persona-list>.page-header,.persona-list>.persona-toolbar{flex-shrink:0}.table-wrap{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--bg-surface);overflow:auto;margin-top:14px;flex:1;min-height:0}.table{width:100%;border-collapse:collapse}.table thead th{text-align:left;padding:11px 14px;background:var(--bg-elevated);border-bottom:1px solid var(--border-subtle);font-family:var(--font-mono);font-size:9.5px;font-weight:var(--w-semi);letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);white-space:nowrap;position:sticky;top:0;z-index:1}.table tbody td{padding:11px 14px;border-bottom:1px solid var(--border-subtle);vertical-align:middle}.table tbody tr:last-child td{border-bottom:none}.table-row{transition:background var(--dur-fast) var(--ease)}.table-row:hover{background:var(--bg-row-hover)}.icon-btn{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease)}.icon-btn:hover{background:var(--bg-elevated);color:var(--text-primary);border-color:var(--border-default)}.menu-header{padding:8px 10px 6px}.menu-divider{height:1px;background:var(--border-subtle);margin:4px 0}.row-menu-wrap{position:relative}.menu.floating-menu .menu-item{line-height:1}.menu.floating-menu .menu-item .mi-ico{display:block;flex:0 0 auto}.btn-danger{background:var(--error);color:var(--text-inverse);border-color:var(--error)}.btn-danger:hover:not(:disabled){background:var(--error);filter:brightness(1.08);border-color:var(--error)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-overlay, 100);display:flex;align-items:center;justify-content:center;padding:24px;background:var(--bg-overlay);animation:backdrop-in .14s var(--ease)}@keyframes backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes modal-in{0%{opacity:0;transform:translateY(8px) scale(.99)}to{opacity:1;transform:none}}.cs-badge{display:inline-flex;align-items:center;gap:4px;font-family:var(--font-mono);font-size:9.5px;font-weight:var(--w-semi);letter-spacing:.06em;text-transform:uppercase;color:var(--phase2);background:var(--phase2-muted);border:1px solid var(--phase2-border);border-radius:var(--radius-pill);padding:2px 7px;white-space:nowrap;vertical-align:middle}.forge-shell{display:grid;grid-template-rows:48px 1fr;height:100vh;overflow:hidden}.forge-body{display:grid;grid-template-columns:208px 1fr;min-height:0}.forge-main{min-width:0;overflow-y:auto;padding:28px 28px 64px}.forge-main.no-pad{padding:0;overflow:hidden}.credit-chip{display:inline-flex;align-items:center;gap:8px;height:30px;padding:0 6px 0 11px;border-radius:var(--radius-pill);border:1px solid var(--border-default);background:var(--bg-input);cursor:pointer;font-family:var(--font-mono);transition:border-color var(--dur-fast) var(--ease)}.credit-chip:hover{border-color:var(--border-strong)}.credit-chip .cc-dot{width:7px;height:7px;border-radius:50%;background:var(--success);flex:0 0 auto}.credit-chip .cc-val{font-size:12px;font-weight:var(--w-semi);color:var(--text-primary);font-variant-numeric:tabular-nums}.credit-chip .cc-lbl{font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted)}.credit-chip .cc-add{width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--accent-muted);color:var(--accent);margin-left:2px}.credit-chip.low{border-color:var(--warning-border);background:var(--warning-muted)}.credit-chip.low .cc-dot{background:var(--warning)}.credit-chip.critical{border-color:var(--error-border);background:var(--error-muted)}.credit-chip.critical .cc-dot{background:var(--error);animation:cc-pulse 1.4s ease-in-out infinite}@keyframes cc-pulse{0%,to{opacity:1}50%{opacity:.35}}.tb-studio-label{font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-secondary);display:inline-flex;align-items:center;gap:7px}.tb-studio-label .dotw{width:4px;height:4px;background:var(--accent);border-radius:50%}button.snav-item{background:transparent;font:inherit;text-align:left;border-top:none;border-right:none;border-bottom:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%}.snav-soon{margin-left:auto;font-family:var(--font-mono);font-size:8px;letter-spacing:.08em;text-transform:uppercase;color:var(--phase2);background:var(--phase2-muted);border-radius:var(--radius-pill);padding:1px 5px}.snav-item.disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.switch-app-btn{display:flex;align-items:center;gap:10px;width:100%;height:36px;padding:0 12px;border-radius:var(--radius-sm);border:1px solid var(--border-default);background:var(--bg-elevated);color:var(--text-secondary);cursor:pointer;font-family:var(--font-sans);font-size:13px;font-weight:var(--w-medium);transition:all var(--dur-fast) var(--ease);margin-bottom:8px}.switch-app-btn:hover{border-color:var(--border-strong);color:var(--text-primary)}.off-tag{font-family:var(--font-mono);font-size:8.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);border:1px solid var(--border-default);border-radius:var(--radius-pill);padding:0 5px}.model-cell{display:flex;flex-direction:column;gap:1px}.model-name{font-family:var(--font-mono);font-size:12px;color:var(--text-primary)}.model-prov{font-size:10px;color:var(--text-muted)}.cs-mode-dots{display:inline-flex;flex-direction:row;align-items:center;gap:4px;flex-wrap:nowrap;white-space:nowrap}.cs-mode-dot{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border-radius:var(--radius-pill);border:1px solid var(--accent-border);background:var(--accent-muted);color:var(--accent);flex:0 0 auto}.table tbody td:has(.cs-mode-dots){white-space:nowrap;width:1%}.pcard-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,290px),1fr));gap:14px;flex:1;min-height:0;overflow:auto}.pcard{display:flex;flex-direction:column;gap:12px;padding:16px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);transition:border-color var(--dur-fast) var(--ease)}.pcard:hover{border-color:var(--border-default)}.pcard-top{display:flex;align-items:center;gap:11px}.pcard-id{min-width:0;flex:1}.pcard-name{font-size:14px;font-weight:var(--w-semi);color:var(--text-primary);letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pcard-cat{font-family:var(--font-mono);font-size:10px;color:var(--text-muted);margin-top:2px}.pcard-menu-wrap{position:relative;flex:0 0 auto}.pcard-desc{font-size:12px;color:var(--text-secondary);line-height:1.5;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.pcard-meta{display:flex;align-items:center;justify-content:space-between;gap:8px}.pcard-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:11px;border-top:1px solid var(--border-subtle)}.pcard-model{font-family:var(--font-mono);font-size:10px;color:var(--text-muted)}.pcard-mod{font-family:var(--font-mono);font-size:10px;color:var(--text-disabled);flex:0 0 auto}.pcard-actions{display:flex;gap:6px}.pcard-actions .btn{flex:1}.pcard-actions .btn-ghost{flex:0 0 auto}.pcard-menu-wrap .menu{top:34px;right:0}.um{width:660px;max-width:100%;max-height:88vh;display:flex;flex-direction:column;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-3);overflow:hidden;animation:modal-in .18s var(--ease)}.um-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border-subtle);background:var(--bg-elevated)}.um-head-l{display:flex;align-items:center;gap:11px}.um-title{font-size:15px;font-weight:var(--w-semi);color:var(--text-primary)}.um-sub{font-family:var(--font-mono);font-size:10px;color:var(--text-muted);margin-top:2px}.um-body{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:20px}.um-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.um-stat{padding:13px 14px;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-md)}.um-stat-label{font-family:var(--font-mono);font-size:9px;font-weight:var(--w-semi);letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);margin-bottom:6px}.um-stat-val{font-family:var(--font-mono);font-size:22px;font-weight:var(--w-semi);color:var(--text-primary);letter-spacing:-.03em}.um-stat-sub{font-size:10px;color:var(--text-muted);margin-top:2px}.um-chart-section{display:flex;flex-direction:column;gap:8px}.um-chart-label{font-family:var(--font-mono);font-size:9px;font-weight:var(--w-semi);letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted)}.um-foot{display:flex;align-items:flex-start;gap:8px;font-size:11px;color:var(--text-muted);line-height:1.5;margin:0}.um-foot svg{flex:0 0 auto;margin-top:1px}.bar-chart{display:flex;align-items:flex-end;gap:7px;padding:0 2px;height:80px}.bc-bar-wrap{flex:1;display:flex;flex-direction:column;align-items:center;gap:5px;height:100%;justify-content:flex-end}.bc-bar{width:100%;border-radius:2px 2px 0 0;min-height:3px}.bc-lbl{font-family:var(--font-mono);font-size:9px;color:var(--text-muted)}.builder{display:flex;flex-direction:column;height:100%;min-height:0}.bld-head{flex:0 0 auto;display:flex;align-items:center;gap:12px;padding:14px 24px;border-bottom:1px solid var(--border-subtle)}.bld-head-id{display:flex;align-items:center;gap:10px;min-width:0}.bld-head-name{font-size:15px;font-weight:var(--w-semi);color:var(--text-primary);letter-spacing:-.01em}.bld-head-sub{font-size:11px;color:var(--text-muted);display:flex;align-items:center;gap:7px;margin-top:2px}.bld-head-spacer{flex:1}.autosave{font-family:var(--font-mono);font-size:10px;color:var(--text-muted);min-width:88px;text-align:right}.autosave.saved{color:var(--success)}.stepper{flex:0 0 auto;display:flex;align-items:center;gap:4px;padding:14px 24px;border-bottom:1px solid var(--border-subtle);overflow-x:auto}.step{display:inline-flex;align-items:center;gap:9px;padding:6px 10px;background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap}.step:disabled{opacity:.45;cursor:not-allowed}.step-n{width:22px;height:22px;border-radius:50%;flex:0 0 auto;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:11px;font-weight:var(--w-semi);background:var(--bg-elevated);color:var(--text-muted);border:1px solid var(--border-default)}.step-l{font-size:12px;color:var(--text-muted);font-weight:var(--w-medium)}.step.done .step-n{background:var(--success-muted);color:var(--success);border-color:var(--success-border)}.step.done .step-l{color:var(--text-secondary)}.step.active .step-n{background:var(--accent);color:var(--accent-fg);border-color:var(--accent)}.step.active .step-l{color:var(--text-primary)}.step-bar{flex:1;min-width:16px;height:1px;background:var(--border-default)}.step-bar.done{background:var(--success-border)}.bld-body{flex:1;min-height:0;overflow-y:auto;overflow-anchor:none;padding:28px 24px 40px}.bld-layout{display:grid;grid-template-columns:minmax(0,720px) 288px;gap:24px;justify-content:center;align-items:start}.bld-col{max-width:720px;display:flex;flex-direction:column;gap:22px;min-width:0}:root{--byo-fg: var(--success)}.est-rail{position:sticky;top:0}.est-card{display:flex;flex-direction:column;gap:12px;padding:18px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg)}.est-head{display:flex;align-items:center;gap:8px}.est-head h2{font-size:13px;font-weight:var(--w-semi);color:var(--text-primary);margin:0}.est-figure{display:flex;flex-direction:column;gap:2px}.est-range{display:flex;align-items:baseline;gap:6px}.est-num{font-family:var(--font-mono);font-size:26px;font-weight:var(--w-semi);color:var(--text-primary);line-height:1.1}.est-unit{font-size:12px;color:var(--text-muted)}.est-per{font-size:12px;color:var(--text-secondary)}.est-secondary{font-size:12px;color:var(--text-secondary);padding:8px 10px;background:var(--bg-elevated);border-radius:var(--radius-md)}.est-secondary strong{font-family:var(--font-mono);color:var(--text-primary)}.est-byo{display:flex;gap:7px;font-size:11.5px;line-height:1.45;color:var(--byo-fg);padding:8px 10px;background:var(--success-muted);border-radius:var(--radius-md)}.est-byo svg{flex:0 0 auto;margin-top:1px}.est-byo s{opacity:.65}.est-note{display:flex;gap:7px;font-size:11.5px;line-height:1.45;color:var(--text-secondary);padding:8px 10px;background:var(--bg-elevated);border-radius:var(--radius-md)}.est-note svg{flex:0 0 auto;margin-top:1px;color:var(--text-muted)}.est-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:6px 0;background:none;border:none;border-top:1px solid var(--border-subtle);cursor:pointer;font:inherit;font-size:12px;font-weight:var(--w-medium);color:var(--text-secondary)}.est-toggle:hover{color:var(--text-primary)}.est-toggle:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.est-chev{color:var(--text-muted);transition:transform var(--dur-fast) var(--ease)}.est-chev.open{transform:rotate(180deg)}.est-lines{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:9px}.est-line-top{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.est-line-label{font-size:12px;color:var(--text-primary)}.est-line-val{font-family:var(--font-mono);font-size:12px;color:var(--text-primary)}.est-line-detail{font-size:10.5px;color:var(--text-muted)}.est-line.byo .est-line-label{color:var(--text-secondary)}.est-chip{display:inline-flex;align-items:center;gap:3px;font-family:var(--font-sans);font-size:10px;color:var(--byo-fg);background:var(--success-muted);border-radius:var(--radius-pill);padding:1px 6px}.est-basis{display:flex;gap:6px;margin:0;padding-top:10px;border-top:1px solid var(--border-subtle);font-size:10.5px;line-height:1.5;color:var(--text-muted)}.est-basis svg{flex:0 0 auto;margin-top:2px}.fsec{display:flex;flex-direction:column;gap:14px;padding:20px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg)}.fsec-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.fsec-title{font-size:14px;font-weight:var(--w-semi);color:var(--text-primary);margin:0;display:flex;align-items:center;gap:9px}.fsec-title .req{color:var(--error);font-size:13px}.fsec-sub{font-size:12px;color:var(--text-muted);margin:4px 0 0;line-height:1.45}.frow{display:flex;flex-direction:column;gap:14px}.frow.two{display:grid;grid-template-columns:1fr 1fr;gap:14px}.fsec-adv{gap:0;padding:0;border-style:dashed}.adv-toggle{display:flex;align-items:center;gap:9px;width:100%;padding:18px 20px;background:none;border:none;border-radius:var(--radius-lg);cursor:pointer;text-align:left;color:inherit;font:inherit;transition:background var(--dur-fast) var(--ease)}.adv-toggle:hover{background:var(--bg-row-hover)}.adv-toggle:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.adv-spacer{flex:1 1 auto}.adv-chev{color:var(--text-muted);flex:0 0 auto;transition:transform var(--dur-fast) var(--ease)}.adv-chev.open{transform:rotate(180deg)}.adv-body{display:flex;flex-direction:column;gap:18px;padding:16px 20px 20px;border-top:1px solid var(--border-subtle)}.adv-role{display:flex;flex-direction:column;gap:10px}.adv-role+.adv-role{border-top:1px solid var(--border-subtle);padding-top:18px}.adv-role-head{font-size:13px;font-weight:var(--w-semi);color:var(--text-primary);display:flex;align-items:center;gap:8px}.adv-bill{display:inline-flex;align-items:center;gap:3px;font-size:10px;font-weight:var(--w-regular);padding:1px 7px;border-radius:var(--radius-pill);color:var(--text-muted);background:var(--bg-input);border:1px solid var(--border-subtle)}.adv-bill.byo{color:var(--byo-fg);background:var(--success-muted);border-color:transparent}.adv-role-desc{font-size:12px;color:var(--text-muted);margin:-4px 0 0;line-height:1.45}.field{display:flex;flex-direction:column;gap:6px}.field-label{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px;font-weight:var(--w-medium);color:var(--text-secondary)}.field-label-text{min-width:0}.field-label .req{color:var(--error);margin-left:2px}.field-hint{font-size:11px;color:var(--text-muted);line-height:1.45}.field-error{font-size:11px;color:var(--error);margin-top:2px}.input.ta{height:auto;padding:9px 12px;resize:vertical;line-height:1.55;font-family:var(--font-sans)}.field-info{position:relative;display:inline-flex;flex-shrink:0}.field-info-btn{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;margin:0;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-muted);cursor:pointer;transition:color var(--dur-fast) var(--ease),background var(--dur-fast) var(--ease)}.field-info-btn:hover,.field-info-btn:focus-visible,.field-info-btn[aria-expanded=true]{color:var(--text-secondary);background:var(--bg-row-hover)}.field-info-btn:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.field-info-pop{position:absolute;bottom:calc(100% + 8px);right:0;width:min(280px,72vw);padding:10px 12px;font-size:11px;font-weight:var(--w-regular);line-height:1.5;white-space:normal;text-align:left;color:var(--text-secondary);background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--radius-sm);box-shadow:var(--shadow-2);z-index:var(--z-tooltip);pointer-events:none}.hue-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.hue-dot{width:26px;height:26px;border-radius:50%;cursor:pointer;background:hsl(var(--h) 55% 48%);border:2px solid transparent;display:flex;align-items:center;justify-content:center;color:hsl(var(--h) 20% 96%)}.hue-dot.on{border-color:var(--text-primary)}.mode-toggle-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.mode-tg{position:relative;display:flex;flex-direction:column;align-items:center;gap:7px;padding:14px 8px;border-radius:var(--radius-md);border:1px solid var(--border-default);background:var(--bg-elevated);color:var(--text-muted);cursor:pointer;font-size:12px;transition:all var(--dur-fast) var(--ease)}.mode-tg:hover{border-color:var(--border-strong);color:var(--text-secondary)}.mode-tg.on{background:var(--accent-muted);border-color:var(--accent-border);color:var(--accent);font-weight:var(--w-medium)}.mt-check{position:absolute;top:7px;right:7px}.mt-note{display:inline-flex;align-items:center;gap:4px;font-family:var(--font-mono);font-size:8.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.mode-tg.on .mt-note{color:inherit;opacity:.8}.mode-tg.locked,.mode-tg:disabled{cursor:default;opacity:1}.avatar-opts{display:flex;flex-direction:column;gap:8px}.avatar-opt{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:var(--radius-md);border:1px solid var(--border-default);background:var(--bg-elevated)}.avatar-opt.on{border-color:var(--phase2-border);background:var(--phase2-muted)}.avatar-opt.soon{opacity:.72;border-style:dashed}.ao-ic{width:32px;height:32px;border-radius:var(--radius-sm);background:var(--bg-surface);border:1px solid var(--border-default);display:flex;align-items:center;justify-content:center;color:var(--phase2);flex:0 0 auto}.ao-txt{min-width:0}.ao-name{font-size:13px;font-weight:var(--w-medium);color:var(--text-primary);display:flex;align-items:center;gap:8px}.ao-sel{font-family:var(--font-mono);font-size:8.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--phase2);background:var(--phase2-muted);border-radius:var(--radius-pill);padding:1px 6px}.ao-desc{font-size:11.5px;color:var(--text-muted);margin-top:1px}.avatar-subcards{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:-2px}.avatar-subcard{text-align:left;padding:11px 12px;border-radius:var(--radius-md);border:1px solid var(--border-default);background:var(--bg-surface);cursor:pointer}.avatar-subcard:hover{border-color:var(--border-strong)}.avatar-subcard.on{border-color:var(--phase2-border);background:var(--phase2-muted)}.asc-img{width:100%;aspect-ratio:1 / 1;object-fit:cover;object-position:center top;border-radius:10px;border:1px solid rgba(255,255,255,.06);margin-bottom:8px;background:#000}.asc-title{font-size:12.5px;font-weight:var(--w-medium);color:var(--text-primary)}.asc-desc{font-size:11px;color:var(--text-muted);margin-top:4px;line-height:1.35}.voice-chips{display:flex;flex-wrap:wrap;gap:6px}.voice-chip{display:inline-flex;align-items:center;gap:5px;height:30px;padding:0 6px 0 11px;border-radius:var(--radius-pill);border:1px solid var(--border-default);background:var(--bg-elevated);color:var(--text-secondary);cursor:pointer;font-size:12px;transition:all var(--dur-fast) var(--ease)}.voice-chip.on{background:var(--accent-muted);border-color:var(--accent-border);color:var(--accent);font-weight:var(--w-medium)}.vc-gender{font-size:10px;text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted)}.voice-chip.on .vc-gender{color:var(--accent);opacity:.85}.vc-play{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:var(--bg-surface);border:1px solid var(--border-default);color:var(--text-muted)}.seg-pills{display:inline-flex;gap:6px;flex-wrap:wrap}.seg-pill{height:32px;padding:0 14px;border-radius:var(--radius-sm);border:1px solid var(--border-default);background:var(--bg-elevated);color:var(--text-secondary);cursor:pointer;font-family:var(--font-sans);font-size:12px;transition:all var(--dur-fast) var(--ease)}.info-card{padding:11px 13px;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-md);font-size:12px;color:var(--text-secondary);line-height:1.5}.info-card strong{display:block;color:var(--text-primary);font-size:12px;font-weight:var(--w-medium);margin-bottom:3px}.tips-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.tip{padding:11px 12px;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-md);font-size:11.5px;color:var(--text-secondary);line-height:1.45}.tip strong{display:block;color:var(--text-primary);font-size:11.5px;font-weight:var(--w-medium);margin-bottom:3px}.phase3-note{display:flex;align-items:flex-start;gap:9px;padding:11px 13px;border:1px dashed var(--phase2-border);border-radius:var(--radius-md);background:var(--phase2-muted);font-size:12px;line-height:1.5;color:var(--text-secondary)}.phase3-note svg{color:var(--phase2);flex:0 0 auto;margin-top:2px}.phase3-note strong{color:var(--text-primary);font-weight:var(--w-medium)}.slider-row{display:flex;align-items:center;gap:12px}input[type=range]{flex:1;-webkit-appearance:none;-moz-appearance:none;appearance:none;height:4px;border-radius:2px;background:var(--border-strong);cursor:pointer}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:15px;height:15px;border-radius:50%;background:var(--accent);border:2px solid var(--bg-surface);box-shadow:var(--shadow-1)}input[type=range]::-moz-range-thumb{width:15px;height:15px;border-radius:50%;background:var(--accent);border:2px solid var(--bg-surface)}input[type=range]:disabled{opacity:.4}.slider-val{font-family:var(--font-mono);font-size:13px;font-weight:var(--w-semi);color:var(--accent);width:28px;text-align:right}.range-ends{display:flex;justify-content:space-between;font-family:var(--font-mono);font-size:10px;color:var(--text-muted)}.char-count{font-family:var(--font-mono);font-size:10px;color:var(--text-muted)}.prompt-area{font-family:var(--font-mono)!important;font-size:12px!important;line-height:1.65!important;height:auto;padding:12px;resize:vertical}.prompt-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.self-start{align-self:flex-start}.inl-code{font-family:var(--font-mono);font-size:.92em;color:var(--accent);background:var(--accent-muted);border-radius:var(--radius-sm);padding:1px 5px}.switch{width:36px;height:20px;border-radius:var(--radius-pill);background:var(--border-strong);border:none;position:relative;cursor:pointer;flex:0 0 auto;transition:background var(--dur-fast) var(--ease);padding:0}.switch:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:var(--text-primary);transition:transform var(--dur-fast) var(--ease)}.switch.on{background:var(--accent)}.switch.on:after{transform:translate(16px);background:var(--accent-fg)}.switch.off,.switch:not(.on){background:var(--border-strong)}.switch:disabled{opacity:.5;cursor:not-allowed}.tools-list{display:flex;flex-direction:column;gap:8px}.tool-block{border-radius:var(--radius-md);border:1px solid var(--border-default);background:var(--bg-elevated);transition:border-color var(--dur-fast) var(--ease),background var(--dur-fast) var(--ease)}.tool-block:hover{border-color:var(--border-strong)}.tool-block.on{border-color:var(--accent-border);background:var(--accent-muted)}.tool-row{display:flex;align-items:center;gap:12px;padding:12px 14px;border:none;background:transparent;width:100%;cursor:pointer;text-align:left;font-family:inherit}.tool-ic{width:32px;height:32px;border-radius:var(--radius-sm);background:var(--bg-surface);border:1px solid var(--border-default);display:flex;align-items:center;justify-content:center;color:var(--text-muted);flex:0 0 auto}.tool-block.on .tool-ic{color:var(--accent);border-color:var(--accent-border)}.tool-txt{flex:1;min-width:0}.tool-name{font-size:13px;font-weight:var(--w-medium);color:var(--text-primary)}.tool-desc{font-size:11.5px;color:var(--text-muted);margin-top:1px}.kb-docs{display:flex;flex-direction:column;gap:10px;padding:14px;border-radius:var(--radius-md);border:1px dashed var(--accent-border);background:var(--bg-elevated)}.kb-docs-label{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:var(--w-medium);color:var(--text-primary)}.kb-docs-label svg{color:var(--accent);flex:0 0 auto}.kb-docs-hint{margin:0;font-size:11.5px;color:var(--text-muted);line-height:1.45}.kb-dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:96px;padding:18px 14px;border:1px dashed var(--border-default);border-radius:var(--radius-md);background:var(--bg-surface);color:var(--text-muted);cursor:pointer;font-family:var(--font-sans);transition:border-color var(--dur-fast) var(--ease),background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.kb-dropzone:hover,.kb-dropzone.dragging{border-color:var(--accent-border);background:var(--accent-muted);color:var(--accent)}.kb-dropzone-title{font-size:12.5px;font-weight:var(--w-medium);color:inherit}.kb-dropzone-sub{font-family:var(--font-mono);font-size:10px;letter-spacing:.04em;opacity:.85}.kb-docs-error{margin:0;font-size:11.5px;color:var(--error);line-height:1.4}.kb-doc-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.kb-doc-row{display:flex;align-items:center;gap:10px;padding:9px 11px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-surface)}.kb-doc-ic{width:28px;height:28px;border-radius:var(--radius-sm);background:var(--bg-elevated);border:1px solid var(--border-default);display:flex;align-items:center;justify-content:center;color:var(--accent);flex:0 0 auto}.kb-doc-meta{flex:1;min-width:0}.kb-doc-name{font-size:12.5px;font-weight:var(--w-medium);color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kb-doc-size{font-family:var(--font-mono);font-size:10px;color:var(--text-muted);margin-top:1px}.kb-doc-status{font-size:10.5px;margin-top:3px;line-height:1.35}.kb-doc-status.uploading{color:var(--info)}.kb-doc-status.failed{color:var(--error)}.kb-doc-row.uploading{opacity:.88}.kb-doc-row.selected{border-color:var(--accent-border);background:var(--accent-muted)}.kb-dropzone:disabled{cursor:not-allowed;opacity:.65}.kb-page{display:flex;flex-direction:column;gap:18px;padding:24px 28px 36px;max-width:1100px}.kb-page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.kb-page-title{margin:0;font-size:18px;font-weight:var(--w-semibold);color:var(--text-primary)}.kb-page-sub{margin:6px 0 0;font-size:12.5px;color:var(--text-muted);line-height:1.45;max-width:62ch}.kb-page-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.kb-page-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media(max-width:900px){.kb-page-grid{grid-template-columns:1fr}}.kb-panel{min-height:220px}.kb-selected-panel{margin-top:2px}.kb-doc-select{display:flex;align-items:center;gap:10px;width:100%;background:transparent;border:0;padding:0;text-align:left;cursor:pointer;font:inherit;color:inherit}.kb-check{width:18px;height:18px;border-radius:4px;flex:0 0 auto;border:1px solid var(--border-default);background:var(--bg-surface);display:flex;align-items:center;justify-content:center;color:var(--accent)}.kb-check.on{border-color:var(--accent);background:var(--accent-muted)}.kb-summary-actions{display:flex;gap:8px;flex-wrap:wrap}.kb-doc-status.processing{color:var(--info)}.kb-doc-status.uploaded{color:var(--success, var(--accent))}.ctool-page{display:flex;flex-direction:column;gap:16px;padding:24px 28px 20px;height:100%;max-height:100%;max-width:1280px;box-sizing:border-box;overflow:hidden}.ctool-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.ctool-tabs .seg-btn:disabled{opacity:.45;cursor:not-allowed}.ctool-nav-actions{display:flex;align-items:center;gap:4px}.ctool-icon-btn{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--text-muted);cursor:pointer}.ctool-icon-btn:hover:not(:disabled){color:var(--text-primary);background:var(--bg-elevated);border-color:var(--border-subtle)}.ctool-icon-btn:disabled{opacity:.5;cursor:not-allowed}.ctool-search{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 6px 0 10px;border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--text-muted)}.ctool-search input{border:0;outline:none;background:transparent;color:var(--text-primary);font:inherit;font-size:12.5px;width:160px}.ctool-page-body{flex:1;min-height:0;overflow-y:auto}.ctool-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;padding-bottom:8px}.ctool-card{display:flex;flex-direction:column;gap:8px;padding:16px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);min-height:148px;transition:border-color var(--dur-fast) var(--ease)}.ctool-card:hover{border-color:var(--border-default)}.ctool-card-clickable{cursor:pointer;text-align:left;width:100%;font:inherit;color:inherit}.ctool-card-clickable:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.ctool-card-clickable:hover{border-color:var(--accent-border);box-shadow:var(--shadow-1, 0 1px 2px rgba(0, 0, 0, .04))}.ctool-scrim.scrim.right{justify-content:flex-end;padding:0;align-items:stretch}.ctool-slideover{width:min(520px,100%);height:100%;background:var(--bg-surface);border-left:1px solid var(--border-default);box-shadow:var(--shadow-3);display:flex;flex-direction:column;animation:ctool-slide-in .22s var(--ease)}@keyframes ctool-slide-in{0%{transform:translate(24px);opacity:.6}to{transform:none;opacity:1}}.ctool-so-head{flex:0 0 auto;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px 22px 14px;border-bottom:1px solid var(--border-subtle)}.ctool-so-head-txt{min-width:0}.ctool-so-title{margin:0;font-size:18px;font-weight:var(--w-semi);color:var(--text-primary);line-height:1.3;word-break:break-word}.ctool-so-sub{margin:4px 0 0;font-family:var(--font-mono);font-size:11px;color:var(--text-muted)}.ctool-so-body{flex:1;min-height:0;overflow-y:auto;padding:18px 22px 24px}.ctool-so-foot{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 22px;border-top:1px solid var(--border-subtle);background:var(--bg-elevated)}.ctool-so-foot-r{display:flex;align-items:center;gap:8px}.ctool-card-ic{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-md);background:var(--accent-muted);color:var(--accent);border:1px solid var(--accent-border)}.ctool-card-title{margin:0;font-size:13px;font-weight:var(--w-semi);color:var(--text-primary);letter-spacing:.02em;text-transform:uppercase;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ctool-card-desc{margin:0;flex:1;font-size:12px;color:var(--text-secondary);line-height:1.45;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.ctool-card-tag{align-self:flex-start;margin-top:auto;font-family:var(--font-mono);font-size:9px;font-weight:var(--w-semi);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-pill);padding:3px 8px}.ctool-empty-center{min-height:320px;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center;padding:40px 20px}.ctool-empty-illustration{width:64px;height:64px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--bg-elevated);border:1px dashed var(--border-default);color:var(--text-muted);margin-bottom:4px}.ctool-empty-center strong{font-size:14px;font-weight:var(--w-medium);color:var(--text-primary)}.ctool-empty-center p{margin:0 0 6px;font-size:12.5px;color:var(--text-muted);max-width:36ch;line-height:1.45}.ctool-add-modal{max-height:90vh;display:flex;flex-direction:column}.ctool-add-modal .modal-body{flex:1;min-height:0;overflow-y:auto}.ctool-add-modal .modal-footer{justify-content:stretch}.ctool-modal-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%}.ctool-modal-foot-r{display:flex;align-items:center;gap:8px}.ctool-num-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.ctool-check{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;color:var(--text-secondary);cursor:pointer;min-height:32px}.ctool-check input{accent-color:var(--accent)}.ctool-param-card{position:relative;padding:10px 32px 10px 10px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-surface)}.ctool-param-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.ctool-param-remove{position:absolute;top:8px;right:8px;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--text-muted);cursor:pointer}.ctool-param-remove:hover{color:var(--error);border-color:var(--border-default)}.ctool-form-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:8px;padding-bottom:8px;position:sticky;bottom:0;background:linear-gradient(to top,var(--bg-elevated) 70%,transparent)}.ctool-list{display:flex;flex-direction:column;gap:14px}.ctool{display:flex;flex-direction:column;gap:14px;padding:16px;border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-elevated)}.ctool-head{display:flex;align-items:center;gap:10px}.ctool-head-l{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.ctool-name{font-weight:var(--w-medium)}.ctool-req{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-surface)}.ctool-req-txt{min-width:0}.ctool-req-title{font-size:12.5px;font-weight:var(--w-medium);color:var(--text-primary)}.ctool-req-txt p{margin:3px 0 0;font-size:11.5px;color:var(--text-muted);line-height:1.45}.ctool-empty{display:flex;align-items:flex-start;gap:12px;padding:18px;border:1px dashed var(--border-default);border-radius:var(--radius-md);background:var(--bg-elevated)}.ctool-empty-txt strong{display:block;font-size:13px;color:var(--text-primary);margin-bottom:3px}.ctool-empty-txt p{margin:0;font-size:12px;color:var(--text-muted);line-height:1.5}.icon-btn.danger:hover{color:var(--error);border-color:var(--error-border);background:var(--error-muted)}.encrypt-note strong{display:flex;align-items:center;gap:6px}.vardecl{display:flex;flex-direction:column;gap:10px;padding:14px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-surface)}.vardecl-head{display:flex;align-items:center;justify-content:space-between}.vardecl-title{font-family:var(--font-mono);font-size:10px;font-weight:var(--w-semi);letter-spacing:.1em;text-transform:uppercase;color:var(--text-secondary)}.vardecl-count{font-family:var(--font-mono);font-size:10px;color:var(--text-muted)}.vardecl-empty{margin:0;font-size:11.5px;color:var(--text-muted);line-height:1.5}.vardecl-list{display:flex;flex-direction:column;gap:10px}.vardecl-row{display:grid;grid-template-columns:168px 1fr auto;gap:10px;align-items:start}.vardecl-name{font-family:var(--font-mono);font-size:11px;color:var(--accent);background:var(--accent-muted);border:1px solid var(--accent-border);border-radius:var(--radius-sm);padding:8px 9px;word-break:break-all;line-height:1.3}.vardecl-fields{display:flex;flex-direction:column;gap:7px;min-width:0}.input-sm{height:32px;font-size:12px}.vardecl-secret{display:inline-flex;align-items:center;gap:5px;height:32px;padding:0 10px;border-radius:var(--radius-sm);border:1px solid var(--border-default);background:var(--bg-elevated);color:var(--text-muted);cursor:pointer;font-family:var(--font-mono);font-size:10px;letter-spacing:.04em;text-transform:uppercase;flex:0 0 auto;transition:all var(--dur-fast) var(--ease)}.vardecl-secret:hover{border-color:var(--border-strong);color:var(--text-secondary)}.vardecl-secret.on{background:var(--info-muted);border-color:var(--info-border);color:var(--info)}.fsec.locked{border-style:dashed;border-color:var(--phase2-border)}.locked-head .lock-ico{color:var(--phase2);flex:0 0 auto;margin-top:2px}.locked-fields{display:flex;flex-direction:column;gap:14px;opacity:.62;pointer-events:none}.upload-stub{display:flex;align-items:center;gap:8px;height:56px;padding:0 14px;border:1px dashed var(--border-default);border-radius:var(--radius-md);background:var(--bg-elevated);color:var(--text-muted);font-size:11px}.locked-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.lr-toggle{display:flex;align-items:center;gap:9px;font-size:12px;color:var(--text-secondary)}.review-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.review-card{padding:14px 16px;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-md)}.review-card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.review-card-head h3{font-size:12px;font-weight:var(--w-semi);color:var(--text-primary);margin:0}.link-btn{display:inline-flex;align-items:center;gap:5px;background:none;border:none;color:var(--accent);font-family:var(--font-sans);font-size:11px;cursor:pointer;padding:0}.review-dl{margin:0;display:flex;flex-direction:column;gap:7px}.review-kv{display:grid;grid-template-columns:92px 1fr;gap:10px;font-size:12px}.review-kv dt{color:var(--text-muted)}.review-kv dd{margin:0;color:var(--text-secondary)}.integ-summary{display:flex;flex-direction:column;gap:8px}.integ-row{display:flex;align-items:center;gap:11px;padding:11px 13px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-elevated)}.integ-txt{flex:1;min-width:0}.integ-name{font-size:13px;font-weight:var(--w-medium);color:var(--text-primary)}.integ-meta{font-family:var(--font-mono);font-size:10.5px;color:var(--text-muted);margin-top:1px}.integ-tag{font-family:var(--font-mono);font-size:9px;font-weight:var(--w-semi);letter-spacing:.06em;text-transform:uppercase;border-radius:var(--radius-pill);padding:3px 9px;flex:0 0 auto}.integ-tag.core{color:var(--accent);background:var(--accent-muted);border:1px solid var(--accent-border)}.integ-tag.opt{color:var(--text-muted);background:var(--bg-surface);border:1px solid var(--border-default)}.checklist{display:flex;flex-direction:column;gap:6px}.check{display:flex;align-items:center;gap:10px;padding:9px 12px;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-md);font-size:12px;color:var(--text-secondary)}.check-ic{width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex:0 0 auto}.check-ic.ok{background:var(--success-muted);color:var(--success)}.check-ic.no{background:var(--border-subtle);color:var(--text-disabled)}.publish-paths{display:flex;flex-direction:column;gap:10px}.ppath{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px;border-radius:var(--radius-md);border:1px solid var(--border-default)}.ppath.primary{border-color:var(--accent-border);background:var(--accent-muted)}.ppath.locked{border-style:dashed;border-color:var(--phase2-border)}.ppath-txt{min-width:0}.ppath-title{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:var(--w-semi);color:var(--text-primary)}.ppath-txt p{margin:4px 0 0;font-size:12px;color:var(--text-muted);line-height:1.45}.ppath .btn{flex:0 0 auto}.warn-hint{color:var(--warning)}.bld-foot{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 24px;border-top:1px solid var(--border-subtle);background:var(--bg-surface)}.bld-foot-r{display:flex;gap:8px}.preview{display:flex;flex-direction:column;height:100%;min-height:0}.pv-banner{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 20px;background:var(--accent-muted);border-bottom:1px solid var(--accent-border)}.pv-banner-l{display:flex;align-items:center;gap:9px;min-width:0}.pv-dot{width:7px;height:7px;border-radius:50%;background:var(--accent);animation:pv-pulse 1.6s ease-in-out infinite;flex:0 0 auto}@keyframes pv-pulse{0%,to{opacity:1}50%{opacity:.35}}.pv-label{font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);font-weight:var(--w-semi)}.pv-sep{color:var(--text-muted)}.pv-name{font-size:13px;font-weight:var(--w-semi);color:var(--text-primary)}.pv-tag{font-family:var(--font-mono);font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);border:1px solid var(--border-default);border-radius:var(--radius-pill);padding:1px 7px}.pv-banner-r{display:flex;align-items:center;gap:12px;flex:0 0 auto}.pv-credit-note{display:flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:10.5px;color:var(--text-secondary)}.pv-modes{flex:0 0 auto;display:flex;gap:6px;padding:10px 20px;border-bottom:1px solid var(--border-subtle)}.pv-mode{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 12px;border-radius:var(--radius-sm);border:1px solid var(--border-default);background:var(--bg-elevated);color:var(--text-muted);cursor:pointer;font-size:12px}.pv-mode.on{background:var(--accent-muted);border-color:var(--accent-border);color:var(--accent);font-weight:var(--w-medium)}.pv-stage{flex:1;overflow-y:auto;display:flex;flex-direction:column;align-items:center;padding:24px;gap:12px}.pv-window{width:100%;max-width:640px;flex:1;min-height:0;display:flex;flex-direction:column;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);overflow:hidden}.pv-chat{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:14px}.pv-msg{display:flex;gap:9px;align-items:flex-end;max-width:82%}.pv-msg.user{align-self:flex-end}.pv-msg.persona{align-self:flex-start}.pv-bubble{padding:10px 13px;border-radius:14px;font-size:13px;line-height:1.5}.pv-msg.persona .pv-bubble{background:var(--bg-elevated);color:var(--text-primary);border-bottom-left-radius:4px}.pv-msg.user .pv-bubble{background:var(--accent);color:var(--accent-fg);border-bottom-right-radius:4px}.pv-input-bar{flex:0 0 auto;display:flex;align-items:center;gap:9px;padding:12px;border-top:1px solid var(--border-subtle);background:var(--bg-elevated)}.pv-input-bar .input{flex:1}.pv-cost{display:inline-flex;align-items:center;gap:4px;font-family:var(--font-mono);font-size:9.5px;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);white-space:nowrap}.pv-foot{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--text-muted);margin:0;max-width:640px}.pv-voice{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:40px}.pv-orb{width:88px;height:88px;border-radius:50%;background:var(--accent-muted);border:1px solid var(--accent-border);color:var(--accent);display:flex;align-items:center;justify-content:center}.pv-voice-name{font-size:16px;font-weight:var(--w-semi);color:var(--text-primary)}.pv-voice-state{font-size:12px;color:var(--text-muted)}.pv-wave{display:flex;align-items:center;gap:3px;height:28px;margin-top:6px}.pv-wave span{width:3px;background:var(--accent);border-radius:2px;transform-origin:center;animation:wave 1s ease-in-out infinite;opacity:.7;height:100%}@keyframes wave{0%,to{transform:scaleY(.25)}50%{transform:scaleY(1)}}.pv-cost.solo{margin-top:10px}.pv-avatar{flex:1;display:flex;flex-direction:column}.pv-avatar-stage{flex:1;position:relative;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 40%,hsl(var(--h, 232) 32% 46% / .35),var(--bg-canvas))}.pv-avatar-face{width:110px;height:110px;border-radius:50%;background:hsl(var(--h, 232) 32% 46% / .5);border:1px solid hsl(var(--h, 232) 28% 52% / .45);color:hsl(var(--h, 232) 40% 28%);display:flex;align-items:center;justify-content:center}.pv-avatar-live{position:absolute;top:14px;left:14px;display:inline-flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:10px;color:var(--text-secondary);background:var(--bg-overlay);border:1px solid var(--border-default);border-radius:var(--radius-pill);padding:3px 9px}.pv-input-bar.tight{border-radius:0}.mkt-ph{max-width:520px;margin:8vh auto 0;display:flex;flex-direction:column;align-items:center;text-align:center;gap:16px}.mkt-ph-badge{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:10px;color:var(--phase2)}.mkt-ph-title{font-size:26px;font-weight:var(--w-semi);color:var(--text-primary);letter-spacing:-.02em;margin:0}.mkt-ph-done{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border-radius:var(--radius-sm);background:var(--success-muted);border:1px solid var(--success-border);color:var(--success);font-size:13px}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.set-card{padding:18px 20px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);display:flex;flex-direction:column;gap:14px}.set-head{display:flex;align-items:center;gap:9px}.set-head h2{font-size:14px;font-weight:var(--w-semi);color:var(--text-primary);margin:0}.set-rows{display:flex;flex-direction:column;gap:2px}.set-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--border-subtle);font-size:13px}.set-row:last-child{border-bottom:none}.set-k{color:var(--text-muted)}.set-v{color:var(--text-primary)}.set-note{font-size:11px;color:var(--text-muted);margin:0;line-height:1.45}.set-body-muted{font-size:12px;color:var(--text-secondary);line-height:1.5;margin:0}.set-credit-balance{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-md)}.scb-val{font-family:var(--font-mono);font-size:24px;font-weight:var(--w-semi);color:var(--text-primary);letter-spacing:-.03em}.scb-lbl{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-top:2px}.set-usage{display:flex;flex-direction:column;gap:1px}.set-usage-row{display:flex;justify-content:space-between;font-size:12px;padding:7px 0;border-bottom:1px solid var(--border-subtle);color:var(--text-secondary)}.set-usage-row:last-child{border-bottom:none}.set-usage-row .num-mono{color:var(--error)}.api-stub{display:flex;align-items:center;gap:10px}.api-stub code{flex:1;font-family:var(--font-mono);font-size:12px;color:var(--text-muted);background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:8px 12px}.set-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 0}.set-toggle-row.dim{opacity:.6}.str-k{font-size:13px;color:var(--text-primary);display:flex;align-items:center;gap:8px}.str-d{font-size:11.5px;color:var(--text-muted);margin-top:2px}.thresh-row{display:flex;align-items:center;gap:10px;width:180px}.alert-thresh.dim{opacity:.5}.modal.topup{width:520px;max-width:calc(100vw - 24px)}.topup-packs{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.pack{position:relative;display:flex;flex-direction:column;align-items:center;gap:3px;padding:18px 10px 16px;border-radius:var(--radius-md);border:1px solid var(--border-default);background:var(--bg-surface);cursor:pointer;transition:all var(--dur-fast) var(--ease)}.pack-tag{position:absolute;top:-8px;font-family:var(--font-mono);font-size:8px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-fg);background:var(--accent);border-radius:var(--radius-pill);padding:2px 7px}.pack-credits{font-family:var(--font-mono);font-size:18px;font-weight:var(--w-semi);color:var(--text-primary)}.pack-unit{font-size:10px;color:var(--text-muted)}.topup-note{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--text-muted);margin:14px 0 0}.head-mkt{color:var(--text-muted);display:inline-flex;align-items:center;gap:6px;margin-left:4px}.view-wrap{max-width:1180px}@media(max-width:1120px){.bld-layout{grid-template-columns:minmax(0,720px)}.est-rail{position:static;order:-1}}@media(max-width:1020px){.tips-grid,.review-grid,.settings-grid,.frow.two{grid-template-columns:1fr}.pcard-grid,.topup-packs{grid-template-columns:1fr 1fr}}@media(max-width:720px){.pcard-grid,.topup-packs,.forge-body{grid-template-columns:1fr}.bld-stepper{padding-inline:12px}.bld-body{padding:16px 14px 28px}.vardecl-row{grid-template-columns:1fr}.table-wrap,.persona-list{overflow-x:auto}.table{min-width:560px}}.chan-picker{display:grid;grid-template-columns:1fr 1fr;gap:10px}.chan-card{display:flex;align-items:flex-start;gap:11px;text-align:left;padding:14px;border-radius:var(--radius-md);cursor:pointer;border:1px solid var(--border-subtle);background:var(--bg-elevated);transition:border-color var(--dur-fast) var(--ease),background var(--dur-fast) var(--ease)}.chan-card:hover{border-color:var(--border-strong)}.chan-card.on{border-color:var(--accent);background:var(--accent-muted)}.chan-card-ic{color:var(--text-muted);flex:0 0 auto;margin-top:1px}.chan-card.on .chan-card-ic{color:var(--accent)}.chan-card-name{font-size:13px;font-weight:var(--w-semi);color:var(--text-primary)}.chan-card-txt p{margin:3px 0 0;font-size:11.5px;color:var(--text-muted);line-height:1.45}.chan-warn{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:var(--radius-md);border:1px solid var(--warning);background:var(--warning-muted)}.chan-warn svg{color:var(--warning);flex:0 0 auto;margin-top:1px}.chan-warn strong{font-size:12.5px;color:var(--text-primary)}.chan-warn p{margin:2px 0 0;font-size:11.5px;color:var(--text-secondary);line-height:1.45}.chan-code{position:relative}.chan-code pre{margin:0;padding:12px 40px 12px 13px;overflow-x:auto;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-input);font-family:var(--font-mono);font-size:11px;line-height:1.6;color:var(--text-secondary);white-space:pre}.chan-copy{position:absolute;top:8px;right:8px;width:26px;height:26px;border-radius:var(--radius-sm);border:1px solid var(--border-default);background:var(--bg-surface);color:var(--text-muted);cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.chan-copy:hover{color:var(--text-primary);border-color:var(--border-strong)}.chan-origin-add{display:flex;gap:6px;align-items:center}.chan-origin-add>:first-child{flex:1 1 auto}.chan-err{margin:0;font-size:11px;color:var(--error)}.chan-empty{margin:0;font-size:11.5px;color:var(--text-muted)}.chan-chips{display:flex;flex-wrap:wrap;gap:6px}.chan-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 6px 4px 10px;border-radius:var(--radius-pill);border:1px solid var(--border-subtle);background:var(--bg-elevated);font-family:var(--font-mono);font-size:11px;color:var(--text-secondary)}.chan-chip button{border:none;background:none;cursor:pointer;padding:0;display:inline-flex;color:var(--text-muted);border-radius:50%}.chan-chip button:hover{color:var(--error)}.chan-toggle{display:flex;align-items:center;justify-content:space-between;gap:14px}.chan-tk{font-size:13px;color:var(--text-primary)}.chan-td{font-size:11.5px;color:var(--text-muted);margin-top:2px;line-height:1.45;max-width:52ch}.chan-note{display:flex;gap:8px;align-items:flex-start;font-size:11.5px;color:var(--text-muted);line-height:1.5}.chan-note svg{flex:0 0 auto;margin-top:2px}.chan-radios{display:grid;grid-template-columns:1fr 1fr;gap:8px}.chan-radio{display:flex;gap:9px;align-items:flex-start;text-align:left;cursor:pointer;padding:11px 12px;border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:var(--bg-elevated)}.chan-radio:hover{border-color:var(--border-strong)}.chan-radio.on{border-color:var(--accent);background:var(--accent-muted)}.chan-radio-dot{width:13px;height:13px;border-radius:50%;flex:0 0 auto;margin-top:2px;border:1px solid var(--border-strong);background:var(--bg-surface)}.chan-radio.on .chan-radio-dot{border-color:var(--accent);border-width:4px}.chan-radio-l{display:block;font-size:12.5px;color:var(--text-primary)}.chan-radio-d{display:block;font-size:11px;color:var(--text-muted);margin-top:2px;line-height:1.45}.ctool-list{display:flex;flex-direction:column;gap:8px}.ctool-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:11px 13px;border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:var(--bg-elevated)}.ctool-row.bad{border-color:var(--warning)}.ctool-main{min-width:0;display:flex;flex-direction:column;gap:4px}.ctool-name{display:flex;align-items:center;gap:7px;flex-wrap:wrap;font-family:var(--font-mono);font-size:12.5px;color:var(--text-primary)}.ctool-tag{display:inline-flex;align-items:center;gap:3px;font-family:var(--font-sans);font-size:10px;letter-spacing:.02em;padding:1px 6px;border-radius:var(--radius-pill);border:1px solid var(--border-subtle);color:var(--text-muted)}.ctool-tag.se-write_reversible{color:var(--info);border-color:transparent;background:var(--info-muted)}.ctool-tag.se-write_outward{color:var(--warning);border-color:transparent;background:var(--warning-muted)}.ctool-tag.ident{color:var(--accent);border-color:transparent;background:var(--accent-muted)}.ctool-meta{display:flex;align-items:center;gap:8px;min-width:0}.ctool-verb{font-family:var(--font-mono);font-size:10px;font-weight:var(--w-semi);color:var(--text-muted);flex:0 0 auto}.ctool-verb.m-post,.ctool-verb.m-put,.ctool-verb.m-patch{color:var(--info)}.ctool-verb.m-delete{color:var(--error)}.ctool-url{font-family:var(--font-mono);font-size:11px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ctool-errs{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--warning)}.ctool-actions{display:flex;gap:2px;flex:0 0 auto}.ctool-actions button{width:28px;height:28px;border-radius:var(--radius-sm);cursor:pointer;border:1px solid transparent;background:none;color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center}.ctool-actions button:hover{color:var(--text-primary);border-color:var(--border-default)}.ctool-hint{display:flex;gap:8px;align-items:flex-start;margin:0;font-size:11.5px;color:var(--text-muted);line-height:1.5}.ctool-hint svg{flex:0 0 auto;margin-top:2px}.ctool-form{display:flex;flex-direction:column;gap:14px}.ctool-req{display:flex;gap:6px;align-items:center}.ctool-req>:first-child{flex:0 0 108px}.ctool-req>:last-child{flex:1 1 auto}.ctool-block{display:flex;flex-direction:column;gap:10px;padding:13px;border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:var(--bg-elevated)}.ctool-block-h{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:11.5px;font-weight:var(--w-semi);color:var(--text-secondary);letter-spacing:.02em}.ctool-block-h svg{color:var(--text-muted);margin-right:5px}.ctool-block-err{display:flex;gap:8px;align-items:flex-start;padding:10px 11px;border-radius:var(--radius-sm);border:1px solid var(--warning);background:var(--warning-muted);font-size:11.5px;color:var(--text-secondary);line-height:1.5}.ctool-block-err svg{color:var(--warning);flex:0 0 auto;margin-top:2px}.ctool-sub{margin:0;font-size:11.5px;color:var(--text-muted);line-height:1.5}.ctool-sub.ok{display:flex;align-items:center;gap:6px;color:var(--success)}.ctool-se{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.ctool-se-opt{display:flex;flex-direction:column;gap:3px;text-align:left;cursor:pointer;padding:11px;border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:var(--bg-elevated)}.ctool-se-opt:hover{border-color:var(--border-strong)}.ctool-se-opt.on{border-color:var(--accent);background:var(--accent-muted)}.ctool-se-l{font-size:12.5px;color:var(--text-primary);font-weight:var(--w-medium)}.ctool-se-c{font-size:10.5px;color:var(--accent)}.ctool-se-h{font-size:10.5px;color:var(--text-muted);line-height:1.4}.ctool-params,.ctool-headers{display:flex;flex-direction:column;gap:6px}.ctool-param{display:grid;grid-template-columns:1.1fr .8fr .8fr 1.4fr 28px;gap:6px;align-items:center}.ctool-header{display:grid;grid-template-columns:1fr 1.3fr 28px;gap:6px;align-items:center}.ctool-param>button,.ctool-header>button{width:28px;height:28px;border-radius:var(--radius-sm);cursor:pointer;border:1px solid transparent;background:none;color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center}.ctool-param>button:hover,.ctool-header>button:hover{color:var(--error);border-color:var(--border-default)}.ctool-timeout{display:flex;align-items:center;gap:8px}.ctool-timeout>:first-child{max-width:140px}.ctool-timeout span{font-size:11.5px;color:var(--text-muted)}@media(max-width:900px){.chan-picker,.chan-radios,.ctool-se{grid-template-columns:1fr}.ctool-param{grid-template-columns:1fr 1fr 28px}.ctool-param>:nth-child(4){grid-column:1 / 3}}.pset-tabs{display:flex;gap:2px;border-bottom:1px solid var(--border-subtle);margin-bottom:var(--space-xl)}.pset-tab{padding:9px 14px;background:none;border:none;cursor:pointer;font-family:var(--font-sans);font-size:var(--text-body);color:var(--text-muted);border-bottom:2px solid transparent;margin-bottom:-1px;white-space:nowrap}.pset-tab:hover{color:var(--text-primary)}.pset-tab.active{color:var(--accent);border-bottom-color:var(--accent);font-weight:var(--w-medium)}.pset-stack{display:flex;flex-direction:column;gap:14px;max-width:640px}.pset-personal-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,1fr);gap:14px;align-items:start}.pset-card{padding:18px 20px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);display:flex;flex-direction:column;gap:14px}.pset-head{display:flex;align-items:center;gap:9px}.pset-head h2{font-size:14px;font-weight:var(--w-semi);color:var(--text-primary);margin:0}.pset-desc{font-size:var(--text-body-sm);color:var(--text-muted);line-height:1.55;margin:0}.pset-rows{display:flex;flex-direction:column;gap:2px}.pset-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--border-subtle);font-size:13px}.pset-row:last-child{border-bottom:none}.pset-k{color:var(--text-muted)}.pset-v{color:var(--text-primary);text-align:right;min-width:0;overflow:hidden;text-overflow:ellipsis}.pset-identity{display:flex;align-items:center;gap:12px}.pset-avatar{width:44px;height:44px;border-radius:50%;flex:0 0 auto;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:14px;font-weight:var(--w-semi);color:var(--info);background:var(--info-muted);border:1px solid var(--info-border)}.pset-identity-name{font-size:var(--text-body);font-weight:var(--w-semi);color:var(--text-primary)}.pset-identity-mail{font-size:var(--text-body-sm);color:var(--text-muted);margin-top:1px}.pset-actions{display:flex;justify-content:flex-end;gap:8px}.pset-session-actions{display:flex;flex-wrap:wrap;gap:8px}.pset-session-head{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:var(--text-muted)}.pset-refresh{width:28px;height:28px;border-radius:var(--radius-pill);border:1px solid var(--border-default);background:var(--bg-input);color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.pset-refresh:hover{border-color:var(--border-strong);color:var(--text-primary)}.pset-refresh:disabled{opacity:.6;cursor:default}.pset-session-list{display:flex;flex-direction:column;gap:8px}.pset-session-item{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-elevated);padding:10px 12px;display:flex;align-items:center;justify-content:space-between;gap:12px}.pset-session-main{min-width:0;display:flex;flex-direction:column;gap:4px}.pset-session-title{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-primary);font-weight:var(--w-medium)}.pset-session-badge{font-family:var(--font-mono);font-size:9px;letter-spacing:.05em;text-transform:uppercase;color:var(--accent);background:var(--accent-muted);border-radius:var(--radius-pill);padding:1px 7px}.pset-session-meta{display:grid;grid-template-columns:1fr;gap:2px;font-size:11px;color:var(--text-muted)}.pset-session-error{margin:0;color:var(--error);font-size:12px}.pset-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:4px 0}.pset-toggle-row.dim{opacity:.6}.pset-tk{font-size:13px;color:var(--text-primary);display:flex;align-items:center;gap:8px}.pset-td{font-size:11.5px;color:var(--text-muted);margin-top:2px}.pset-thresh{display:flex;align-items:center;gap:10px}.pset-theme-row{display:flex;gap:8px}.pset-theme-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:7px;height:36px;border-radius:var(--radius-sm);cursor:pointer;background:var(--bg-input);border:1px solid var(--border-default);color:var(--text-secondary);font-family:var(--font-sans);font-size:var(--text-body-sm);transition:all var(--dur-fast) var(--ease)}.pset-theme-btn:hover{border-color:var(--border-strong);color:var(--text-primary)}.pset-theme-btn.active{border-color:var(--accent);background:var(--accent-muted);color:var(--accent)}.pset-banner{margin-bottom:16px}.pset-banner .pb-title{color:var(--text-primary);font-weight:var(--w-semi)}.pset-banner button.pb-action{background:none;border:none;color:var(--accent);font-size:var(--text-body-sm);cursor:pointer;padding:0;text-decoration:underline}.pkey-soon{font-family:var(--font-mono);font-size:9.5px;font-weight:var(--w-semi);letter-spacing:.06em;text-transform:uppercase;color:var(--phase2);background:var(--phase2-muted);border:1px solid var(--phase2-border);border-radius:var(--radius-pill);padding:2px 7px;white-space:nowrap}.pkey-list{display:flex;flex-direction:column;gap:8px}.pkey-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-md)}.pkey-main{min-width:0;display:flex;flex-direction:column;gap:3px}.pkey-name{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:var(--w-medium);color:var(--text-primary)}.pkey-meta{font-size:11px;color:var(--text-muted)}.pkey-badge{display:inline-flex;align-items:center;gap:3px;font-size:10px;padding:1px 7px;border-radius:var(--radius-pill);color:var(--text-muted);background:var(--bg-input);border:1px solid var(--border-subtle)}.pkey-badge.on{color:var(--success);background:var(--success-muted);border-color:transparent}.pkey-actions{display:flex;align-items:center;gap:4px;flex:0 0 auto}.pkey-remove{width:26px;height:26px;border-radius:var(--radius-sm);border:1px solid transparent;background:none;color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.pkey-remove:hover{color:var(--error);border-color:var(--border-default)}.pkey-note{display:flex;gap:6px;margin:0;font-size:11px;line-height:1.5;color:var(--text-muted)}.pkey-note svg{flex:0 0 auto;margin-top:2px}@media(max-width:900px){.pset-personal-layout{grid-template-columns:1fr}.pset-stack{max-width:none}.pkey-row{flex-direction:column;align-items:stretch}.pkey-actions{justify-content:flex-end}}.pch-block{display:flex;flex-direction:column;gap:10px}.pch-block-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.pch-block-title{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:var(--w-semi);color:var(--text-secondary);letter-spacing:.02em}.pch-block-title svg{color:var(--text-muted)}.pch-empty{padding:14px;border:1px dashed var(--border-default);border-radius:var(--radius-md);font-size:12px;color:var(--text-muted);line-height:1.55}.pkey-row.pch-revoked{opacity:.55}.pch-copyrow{display:flex;align-items:stretch;gap:6px}.pch-url{flex:1 1 auto;min-width:0;padding:9px 11px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-input);font-family:var(--font-mono);font-size:11.5px;color:var(--text-secondary);overflow-x:auto;white-space:nowrap}.pch-url.pch-secret{color:var(--text-primary)}.pch-copy{flex:0 0 auto;width:34px;border-radius:var(--radius-md);border:1px solid var(--border-default);background:var(--bg-input);color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.pch-copy:hover{color:var(--text-primary);border-color:var(--border-strong)}.pch-secret-name{font-family:var(--font-mono);font-size:12px;color:var(--accent);background:var(--accent-muted);border-radius:var(--radius-xs);padding:1px 6px}.pset-org-layout{display:grid;grid-template-columns:208px minmax(0,1fr);gap:20px;align-items:start}.pset-secnav{display:flex;flex-direction:column;gap:2px;position:sticky;top:12px}.pset-secnav-item{display:flex;align-items:center;gap:9px;text-align:left;width:100%;padding:8px 10px;border-radius:var(--radius-md);cursor:pointer;border:1px solid transparent;background:none;font-family:var(--font-sans);font-size:12.5px;color:var(--text-muted)}.pset-secnav-item svg{flex:0 0 auto}.pset-secnav-item:hover{color:var(--text-primary);background:var(--bg-row-hover)}.pset-secnav-item.active{color:var(--accent);background:var(--accent-muted);font-weight:var(--w-medium)}.pset-secbody{min-width:0;display:flex;flex-direction:column;gap:14px;max-width:720px}.pch-page{display:flex;flex-direction:column;gap:22px}.pch-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.pch-fact{padding:12px;border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:var(--bg-elevated)}.pch-fact-k{font-size:12px;font-weight:var(--w-semi);color:var(--text-primary)}.pch-fact p{margin:4px 0 0;font-size:11px;color:var(--text-muted);line-height:1.5}.pch-links{display:grid;grid-template-columns:1fr 1fr;gap:10px}.pch-link{display:flex;align-items:center;gap:10px;text-decoration:none;padding:12px;border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:var(--bg-elevated);color:var(--text-muted)}.pch-link:hover{border-color:var(--accent);color:var(--accent)}.pch-link>span{flex:1 1 auto;min-width:0}.pch-link strong{display:block;font-size:12.5px;color:var(--text-primary);font-weight:var(--w-semi)}.pch-link em{display:block;font-style:normal;font-size:11px;color:var(--text-muted);margin-top:2px}.pch-steps{display:flex;flex-direction:column;gap:12px}.pch-steps-head h2{margin:0;font-size:14px;font-weight:var(--w-semi);color:var(--text-primary)}.pch-steps-head p{margin:3px 0 0;font-size:12px;color:var(--text-muted)}.pch-step{display:flex;gap:12px;align-items:flex-start}.pch-step-n{flex:0 0 auto;width:24px;height:24px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:11px;font-weight:var(--w-semi);color:var(--text-muted);background:var(--bg-elevated);border:1px solid var(--border-default);margin-top:14px}.pch-step.done .pch-step-n{color:var(--success);border-color:transparent;background:var(--success-muted)}.pch-step-body{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:11px;padding:16px 18px;border-radius:var(--radius-lg);border:1px solid var(--border-subtle);background:var(--bg-surface)}.pch-step-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap}.pch-step-head h3{margin:0;font-size:13.5px;font-weight:var(--w-semi);color:var(--text-primary)}.pch-owner{font-size:10.5px;color:var(--text-muted);white-space:nowrap;padding:2px 7px;border-radius:var(--radius-pill);border:1px solid var(--border-subtle);background:var(--bg-elevated)}.pch-step-p{margin:0;font-size:12px;color:var(--text-secondary);line-height:1.6}.pch-embedded{display:flex;flex-direction:column;gap:10px}.pch-snippet{position:relative}.pch-snippet pre{margin:0;padding:13px 42px 13px 14px;overflow-x:auto;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-input);font-family:var(--font-mono);font-size:11px;line-height:1.65;color:var(--text-secondary);white-space:pre}.pch-snippet-copy{position:absolute;top:9px;right:9px;width:26px;height:26px;border-radius:var(--radius-sm);border:1px solid var(--border-default);background:var(--bg-surface);color:var(--text-muted);cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.pch-snippet-copy:hover{color:var(--text-primary);border-color:var(--border-strong)}.pch-jwks{display:flex;align-items:center;gap:8px;padding:9px 11px;border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:var(--bg-elevated);overflow-x:auto}.pch-jwks svg{color:var(--accent);flex:0 0 auto}.pch-jwks code{font-family:var(--font-mono);font-size:11px;color:var(--text-secondary);white-space:nowrap}.pch-warn-inline{display:flex;gap:8px;align-items:flex-start;margin:0;font-size:11.5px;color:var(--text-muted);line-height:1.55}.pch-warn-inline svg{flex:0 0 auto;margin-top:2px}@media(max-width:1000px){.pset-org-layout{grid-template-columns:1fr}.pset-secnav{position:static;flex-direction:row;overflow-x:auto;gap:4px}.pset-secnav-item{white-space:nowrap}.pch-facts,.pch-links{grid-template-columns:1fr}}.pch-attrs{display:flex;flex-direction:column;gap:8px;padding:13px 15px;border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:var(--bg-elevated)}.pch-attrs-h{font-size:11px;font-weight:var(--w-semi);color:var(--text-secondary);letter-spacing:.06em;text-transform:uppercase}.pch-attrs dl{margin:0;display:flex;flex-direction:column;gap:7px}.pch-attrs dl>div{display:grid;grid-template-columns:132px minmax(0,1fr);gap:12px;align-items:baseline}.pch-attrs dt{font-family:var(--font-mono);font-size:11.5px;color:var(--accent);overflow-wrap:anywhere}.pch-attrs dd{margin:0;font-size:11.5px;color:var(--text-muted);line-height:1.5}.pch-attrs dd code,.pch-attrs p code{font-family:var(--font-mono);font-size:.92em;color:var(--text-secondary)}.pch-attrs .pch-step-p{font-size:11.5px;color:var(--text-muted)}@media(max-width:640px){.pch-attrs dl>div{grid-template-columns:1fr;gap:2px}}.dash{max-width:1280px;margin:0 auto;display:flex;flex-direction:column;gap:20px}.dash-loading,.dash-error{padding:48px 24px;text-align:center;color:var(--text-muted);font-size:var(--text-body-sm)}.dash-error{display:flex;flex-direction:column;align-items:center;gap:12px;color:var(--error)}.dash-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.dash-title{margin:0;font-size:clamp(1.5rem,2.2vw,1.85rem);font-weight:var(--w-semi);color:var(--text-primary);letter-spacing:-.02em;line-height:1.2}.dash-sub{margin:6px 0 0;font-size:var(--text-body-sm);color:var(--text-muted)}.dash-head-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.dash-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:36px;padding:0 14px;border-radius:10px;font-family:var(--font-sans);font-size:var(--text-body-sm);font-weight:var(--w-medium);cursor:pointer;border:1px solid transparent;transition:background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.dash-btn.ghost{background:var(--bg-surface);border-color:var(--border-default);color:var(--text-primary)}.dash-btn.ghost:hover{background:var(--bg-elevated);border-color:var(--border-strong)}.dash-btn.primary{background:var(--accent);color:var(--accent-fg);border-color:var(--accent)}.dash-btn.primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.dash-btn.outline{background:transparent;border-color:var(--accent);color:var(--accent);flex:0 0 auto}.dash-btn.outline:hover{background:var(--accent-muted)}.dash-link{background:none;border:none;padding:0;color:var(--accent);font-family:var(--font-sans);font-size:var(--text-body-sm);font-weight:var(--w-medium);cursor:pointer;display:inline-flex;align-items:center;gap:4px}.dash-link:hover{text-decoration:underline}.dash-banner{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:12px;background:var(--warning-muted);border:1px solid color-mix(in srgb,var(--warning) 28%,transparent);color:var(--text-primary)}.dash-banner-ico{color:var(--warning);flex:0 0 auto}.dash-banner-text{flex:1;min-width:0;margin:0;font-size:var(--text-body-sm);line-height:1.4;color:var(--text-secondary)}.dash-banner-text strong{color:var(--text-primary);font-weight:var(--w-semi)}.dash-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}@media(max-width:1100px){.dash-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.dash-metrics{grid-template-columns:1fr}}.dash-metric{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:14px;padding:16px 18px;min-height:96px}.dash-metric-label{font-size:12px;color:var(--text-muted);margin-bottom:8px}.dash-metric-value{font-size:1.55rem;font-weight:var(--w-semi);color:var(--text-primary);letter-spacing:-.02em;display:flex;align-items:baseline;gap:8px;line-height:1.15}.dash-metric-delta{font-size:12px;font-weight:var(--w-semi);color:var(--success)}.dash-metric-sub{margin-top:6px;font-size:12px;color:var(--text-muted)}.dash-metric-sub.accent{color:var(--success)}.dash-body{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px;align-items:start}@media(max-width:1024px){.dash-body{grid-template-columns:1fr}}.dash-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.dash-section-title{margin:0;font-size:1.05rem;font-weight:var(--w-semi);color:var(--text-primary)}.dash-empty{padding:32px;text-align:center;border:1px dashed var(--border-default);border-radius:14px;color:var(--text-muted);display:flex;flex-direction:column;align-items:center;gap:12px}.dash-agent-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}@media(max-width:720px){.dash-agent-grid{grid-template-columns:1fr}}.dash-acard{display:flex;flex-direction:column;align-items:stretch;gap:8px;text-align:left;padding:16px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:14px;cursor:pointer;font-family:var(--font-sans);color:var(--text-primary);transition:border-color var(--dur-fast) var(--ease),background var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease)}.dash-acard:hover{border-color:var(--border-strong);background:var(--bg-elevated);box-shadow:var(--shadow-1)}.dash-acard-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.dash-acard-av{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--accent-muted);color:var(--accent);font-size:11px;font-weight:var(--w-semi)}.dash-acard-badge{display:inline-flex;align-items:center;gap:6px;padding:3px 9px;border-radius:999px;font-size:11px;font-weight:var(--w-medium);color:var(--text-muted);background:var(--bg-elevated);border:1px solid var(--border-subtle)}.dash-acard-badge.on{color:var(--success);background:var(--success-muted);border-color:color-mix(in srgb,var(--success) 25%,transparent)}.dash-acard-dot{width:6px;height:6px;border-radius:50%;background:currentColor}.dash-acard-name{font-size:var(--text-body);font-weight:var(--w-semi)}.dash-acard-desc{margin:0;font-size:12px;color:var(--text-muted);line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.9em}.dash-acard-foot{margin-top:2px;font-size:11px;color:var(--text-disabled)}.dash-rail{display:flex;flex-direction:column;gap:12px}.dash-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:14px;padding:16px}.dash-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}.dash-card-title{margin:0 0 12px;font-size:var(--text-body-sm);font-weight:var(--w-semi);color:var(--text-primary)}.dash-card-head .dash-card-title{margin:0}.dash-card-meta{font-size:12px;font-weight:var(--w-semi);color:var(--text-muted);font-variant-numeric:tabular-nums}.dash-checklist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.dash-checklist li{display:flex;align-items:center;gap:10px;font-size:var(--text-body-sm);color:var(--text-secondary)}.dash-checklist li.done .dash-check-label{color:var(--text-muted);text-decoration:line-through}.dash-check{width:18px;height:18px;border-radius:50%;flex:0 0 auto;display:flex;align-items:center;justify-content:center;border:1.5px solid var(--border-strong);color:var(--accent-fg);background:transparent}.dash-checklist li.done .dash-check{background:var(--accent);border-color:var(--accent)}.dash-check-label{flex:1;min-width:0}.dash-spend-block+.dash-spend-block{margin-top:16px}.dash-spend-row{display:flex;justify-content:space-between;gap:8px;font-size:12px;color:var(--text-muted);margin-bottom:8px}.dash-spend-val{color:var(--text-secondary);font-variant-numeric:tabular-nums}.dash-bar{height:6px;border-radius:999px;background:var(--bg-elevated);overflow:hidden}.dash-bar-fill{height:100%;border-radius:inherit}.dash-bar-fill.teal{background:var(--accent)}.dash-bar-fill.amber{background:var(--warning)}.dash-spend-hint{margin:8px 0 0;font-size:11px;color:var(--text-muted);line-height:1.4}.dash-activity{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.dash-activity li{display:flex;gap:10px;align-items:flex-start}.dash-act-av{flex:0 0 auto}.dash-act-body{min-width:0}.dash-act-text{margin:0;font-size:12px;color:var(--text-secondary);line-height:1.4}.dash-act-text strong{color:var(--text-primary);font-weight:var(--w-semi)}.dash-act-when{display:block;margin-top:2px;font-size:11px;color:var(--text-muted)}.dash-cmd-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;background:color-mix(in srgb,#000 40%,transparent);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:flex-start;justify-content:center;padding:12vh 16px 24px}.dash-cmd{width:min(560px,100%);background:var(--bg-surface);border:1px solid var(--border-default);border-radius:16px;box-shadow:var(--shadow-3);overflow:hidden;display:flex;flex-direction:column;max-height:min(70vh,520px)}.dash-cmd-search{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--border-subtle);color:var(--text-muted)}.dash-cmd-search input{flex:1;min-width:0;background:transparent;border:none;outline:none;color:var(--text-primary);font-family:var(--font-sans);font-size:var(--text-body)}.dash-cmd-esc{font-size:10px;font-weight:var(--w-semi);letter-spacing:.04em;padding:3px 7px;border-radius:6px;border:1px solid var(--border-default);color:var(--text-muted)}.dash-cmd-body{overflow-y:auto;padding:8px}.dash-cmd-group{margin-bottom:8px}.dash-cmd-label{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);padding:6px 10px 4px}.dash-cmd-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:none;border-radius:10px;background:transparent;color:var(--text-primary);font-family:var(--font-sans);font-size:var(--text-body-sm);cursor:pointer;text-align:left}.dash-cmd-item:hover,.dash-cmd-item.is-active{background:var(--bg-elevated)}.dash-cmd-item .hint{margin-left:auto;font-size:11px;color:var(--text-muted)}.dash-cmd-ico{width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;background:var(--accent-muted);color:var(--accent);flex:0 0 auto}.dash-cmd-empty{padding:24px;text-align:center;color:var(--text-muted);font-size:var(--text-body-sm)}.bill{width:100%;max-width:1280px;margin:0 auto;display:flex;flex-direction:column;gap:18px;align-items:stretch;height:100%;min-height:0;overflow:hidden}.bill-panel{width:100%;min-width:0;display:flex;flex-direction:column;gap:18px;flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding-bottom:8px}.bill-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;flex-shrink:0}.bill-title{margin:0;font-size:clamp(1.5rem,2.2vw,1.85rem);font-weight:var(--w-semi);color:var(--text-primary);letter-spacing:-.02em;line-height:1.2}.bill-sub{margin:6px 0 0;font-size:var(--text-body-sm);color:var(--text-muted)}.bill-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:36px;padding:0 14px;border-radius:999px;font-family:var(--font-sans);font-size:var(--text-body-sm);font-weight:var(--w-medium);cursor:pointer;border:1px solid transparent;transition:background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.bill-btn:disabled{opacity:.5;cursor:not-allowed}.bill-btn.primary{background:var(--accent-muted);color:var(--accent);border-color:color-mix(in srgb,var(--accent) 35%,transparent)}.bill-btn.primary:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 22%,transparent)}.bill-btn.solid{background:var(--accent);color:var(--accent-fg);border-color:var(--accent)}.bill-btn.solid:hover:not(:disabled){background:var(--accent-hover)}.bill-btn.ghost{background:var(--bg-surface);border-color:var(--border-default);color:var(--text-primary)}.bill-btn.ghost:hover:not(:disabled){background:var(--bg-elevated)}.bill-btn.outline{background:transparent;border-color:var(--accent);color:var(--accent)}.bill-btn.outline:hover:not(:disabled){background:var(--accent-muted)}.bill-btn.sm{height:30px;padding:0 12px;font-size:12px}.bill-btn.linkish{height:auto;padding:0;border:none;background:none;color:var(--accent);border-radius:0}.bill-btn.linkish:hover:not(:disabled){text-decoration:underline;background:none}.bill-tabs{width:100%;display:flex;flex-wrap:wrap;gap:4px;padding:4px;border-radius:12px;background:var(--bg-elevated);border:1px solid var(--border-subtle);flex-shrink:0}.bill-tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;color:var(--text-muted);font-family:var(--font-sans);font-size:var(--text-body-sm);font-weight:var(--w-medium);padding:8px 14px;border-radius:9px;cursor:pointer;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease)}.bill-tab:hover{color:var(--text-primary)}.bill-tab.on{background:var(--bg-surface);color:var(--text-primary);box-shadow:0 1px 3px color-mix(in srgb,var(--text-primary) 8%,transparent)}.bill-card{width:100%;min-width:0;box-sizing:border-box;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:14px;padding:20px}.bill-card-title{margin:0;font-size:var(--text-body);font-weight:var(--w-semi);color:var(--text-primary)}.bill-card-meta{margin:0;font-size:var(--text-body-sm);color:var(--text-muted)}.bill-grid-2{width:100%;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.8fr);gap:16px}@media(max-width:900px){.bill-grid-2{grid-template-columns:1fr}}.bill-balance-val{margin:10px 0 0;font-size:clamp(2.25rem,4vw,3rem);font-weight:var(--w-semi);letter-spacing:-.03em;color:var(--text-primary);font-variant-numeric:tabular-nums;line-height:1.1}.bill-progress-row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-top:18px;font-size:var(--text-body-sm);color:var(--text-muted)}.bill-progress-row strong{color:var(--text-primary);font-weight:var(--w-medium);font-variant-numeric:tabular-nums}.bill-bar{height:6px;border-radius:999px;background:var(--bg-elevated);overflow:hidden;margin-top:8px}.bill-bar>i{display:block;height:100%;border-radius:inherit;background:var(--accent)}.bill-bar.olive>i{background:#78350f}.bill-hint{margin:8px 0 0;font-size:12px;color:var(--text-muted)}.bill-packs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:18px}@media(max-width:900px){.bill-packs{grid-template-columns:1fr 1fr}}@media(max-width:640px){.bill-packs{grid-template-columns:1fr}.bill-head{flex-direction:column;align-items:stretch}.bill-tabs{overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch}.bill-tab{flex:0 0 auto}}.bill-pack{-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:left;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:12px;padding:14px;cursor:pointer;font-family:var(--font-sans);transition:border-color var(--dur-fast) var(--ease),background var(--dur-fast) var(--ease)}.bill-pack:hover{border-color:var(--border-strong)}.bill-pack.on{border-color:var(--accent);background:var(--accent-muted)}.bill-pack-credits{display:block;font-size:var(--text-body);font-weight:var(--w-semi);color:var(--text-primary)}.bill-pack-price{display:block;margin-top:4px;font-size:var(--text-body-sm);color:var(--text-muted)}.bill-pack-tag{display:inline-flex;margin-top:10px;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:var(--w-medium);background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent)}.bill-auto-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.bill-auto-body{margin:10px 0 0;font-size:var(--text-body-sm);color:var(--text-muted);line-height:1.45}.bill-info-box{margin-top:16px;padding:12px 14px;border-radius:10px;background:color-mix(in srgb,var(--accent) 10%,var(--bg-elevated));border:1px solid color-mix(in srgb,var(--accent) 20%,transparent)}.bill-info-box strong{display:block;font-size:var(--text-body-sm);color:var(--text-primary);margin-bottom:4px}.bill-info-box p{margin:0;font-size:12px;color:var(--text-muted);line-height:1.45;display:flex;gap:8px;align-items:flex-start}.bill-toggle{position:relative;width:42px;height:24px;border-radius:999px;border:none;background:var(--bg-elevated);cursor:pointer;flex-shrink:0;transition:background var(--dur-fast) var(--ease)}.bill-toggle.on{background:var(--accent)}.bill-toggle:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform var(--dur-fast) var(--ease)}.bill-toggle.on:after{transform:translate(18px)}.bill-alert{width:100%;box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:12px 14px;border-radius:12px;background:color-mix(in srgb,#dc2626 10%,var(--bg-surface));border:1px solid color-mix(in srgb,#dc2626 28%,transparent);color:var(--text-primary);font-size:var(--text-body-sm)}.bill-alert-msg{display:flex;align-items:flex-start;gap:10px;min-width:0}.bill-alert-msg svg{color:#dc2626;flex-shrink:0;margin-top:1px}.bill-toolbar{width:100%;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.bill-search{display:flex;align-items:center;gap:8px;height:36px;padding:0 12px;border-radius:10px;border:1px solid var(--border-default);background:var(--bg-surface);min-width:min(240px,100%);color:var(--text-muted)}.bill-search input{border:none;outline:none;background:transparent;font-family:var(--font-sans);font-size:var(--text-body-sm);color:var(--text-primary);width:100%}.bill-select{height:36px;padding:0 12px;border-radius:10px;border:1px solid var(--border-default);background:var(--bg-surface);font-family:var(--font-sans);font-size:var(--text-body-sm);color:var(--text-primary);cursor:pointer}.bill-chip{height:36px;padding:0 12px;border-radius:999px;border:1px solid var(--border-default);background:var(--bg-surface);font-family:var(--font-sans);font-size:var(--text-body-sm);color:var(--text-muted);cursor:pointer}.bill-chip.on{border-color:var(--accent);background:var(--accent-muted);color:var(--accent)}.bill-count{margin-left:auto;font-size:12px;color:var(--text-muted);font-variant-numeric:tabular-nums}.bill-table-wrap{width:100%;min-width:0;box-sizing:border-box;overflow:auto;border-radius:12px;border:1px solid var(--border-default);background:var(--bg-surface)}.bill-table-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid var(--border-subtle)}.bill-table{width:100%;min-width:100%;border-collapse:collapse;table-layout:auto;font-size:var(--text-body-sm)}.bill-table th{text-align:left;padding:10px 16px;font-size:11px;font-weight:var(--w-medium);letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);background:var(--bg-elevated);border-bottom:1px solid var(--border-subtle);white-space:nowrap}.bill-table td{padding:12px 16px;border-bottom:1px solid var(--border-subtle);color:var(--text-primary);vertical-align:middle}.bill-table tr:last-child td{border-bottom:none}.bill-table .num{text-align:right;font-variant-numeric:tabular-nums}.bill-table .muted{color:var(--text-muted)}.bill-member{display:flex;align-items:center;gap:10px;min-width:0}.bill-member-name{font-weight:var(--w-medium);color:var(--text-primary)}.bill-member-email{font-size:12px;color:var(--text-muted)}.bill-budget{display:flex;align-items:center;gap:8px;min-width:120px}.bill-budget-track{flex:1;height:6px;border-radius:999px;background:var(--bg-elevated);overflow:hidden;min-width:64px}.bill-budget-track>i{display:block;height:100%;border-radius:inherit}.bill-budget-track.ok>i{background:var(--accent)}.bill-budget-track.low>i{background:#c2410c}.bill-budget-track.out>i{background:#dc2626}.bill-badge{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:var(--w-medium);white-space:nowrap}.bill-badge.out{color:#dc2626}.bill-badge.low{color:#c2410c}.bill-badge.paid{padding:2px 8px;border-radius:999px;background:color-mix(in srgb,#16a34a 14%,transparent);color:#15803d}.bill-badge.paid:before,.bill-badge.pending:before,.bill-badge.failed:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor}.bill-badge.pending{padding:2px 8px;border-radius:999px;background:color-mix(in srgb,#c2410c 14%,transparent);color:#c2410c}.bill-badge.failed{padding:2px 8px;border-radius:999px;background:color-mix(in srgb,#dc2626 14%,transparent);color:#dc2626}.bill-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:12px 16px;border-top:1px solid var(--border-subtle);font-size:12px;color:var(--text-muted)}.bill-pager{display:flex;align-items:center;gap:8px}.bill-empty{padding:40px 20px;text-align:center;color:var(--text-muted);font-size:var(--text-body-sm)}.bill-empty h3{margin:8px 0 4px;color:var(--text-primary);font-size:var(--text-body);font-weight:var(--w-semi)}.bill-empty p{margin:0}.bill-stack{display:flex;flex-direction:column;gap:0}.bill-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:18px 0;border-bottom:1px solid var(--border-subtle)}.bill-row:last-child{border-bottom:none;padding-bottom:0}.bill-row:first-child{padding-top:0}.bill-row-title{margin:0;font-size:var(--text-body-sm);font-weight:var(--w-semi);color:var(--text-primary)}.bill-row-desc{margin:4px 0 0;font-size:var(--text-body-sm);color:var(--text-muted);line-height:1.45;max-width:520px}.bill-pay-row{display:flex;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid var(--border-subtle)}.bill-pay-icon{width:40px;height:28px;border-radius:6px;border:1px solid var(--border-default);display:grid;place-items:center;color:var(--text-muted);background:var(--bg-elevated)}.bill-pay-meta{flex:1;min-width:0}.bill-pay-name{font-weight:var(--w-medium);color:var(--text-primary)}.bill-pay-sub{font-size:12px;color:var(--text-muted);margin-top:2px}.bill-pay-actions{display:flex;align-items:center;gap:12px}.bill-add-wide{width:100%;margin-top:14px;height:40px;border-radius:999px}.bill-form{display:flex;flex-direction:column;gap:14px;max-width:480px}.bill-field label{display:block;margin-bottom:6px;font-size:var(--text-body-sm);font-weight:var(--w-medium);color:var(--text-primary)}.bill-field input{width:100%;height:40px;padding:0 12px;border-radius:10px;border:1px solid var(--border-default);background:var(--bg-surface);font-family:var(--font-sans);font-size:var(--text-body-sm);color:var(--text-primary)}.bill-field input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-muted)}.bill-field-hint{margin:6px 0 0;font-size:12px;color:var(--text-muted)}.bill-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:color-mix(in srgb,#0a0a0a 45%,transparent);display:grid;place-items:center;padding:24px}.bill-modal{width:min(440px,100%);background:var(--bg-surface);border:1px solid var(--border-default);border-radius:16px;box-shadow:0 24px 64px color-mix(in srgb,#000 28%,transparent);padding:20px}.bill-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.bill-modal-title{margin:0;font-size:1.05rem;font-weight:var(--w-semi);color:var(--text-primary)}.bill-modal-sub{margin:4px 0 0;font-size:var(--text-body-sm);color:var(--text-muted)}.bill-modal-close{width:32px;height:32px;border-radius:999px;border:none;background:var(--accent-muted);color:var(--accent);display:grid;place-items:center;cursor:pointer;flex-shrink:0}.bill-modal-body{margin-top:18px}.bill-modal-foot{margin-top:20px;display:flex;justify-content:flex-end;gap:10px}.bill-presets{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}.bill-preset{-webkit-appearance:none;-moz-appearance:none;appearance:none;height:40px;border-radius:10px;border:1px solid var(--border-default);background:var(--bg-surface);font-family:var(--font-sans);font-size:12px;font-weight:var(--w-medium);color:var(--text-primary);cursor:pointer}.bill-preset.on{border-color:var(--accent);background:var(--accent-muted);color:var(--accent)}[data-theme=dark] .bill-tab.on{box-shadow:0 1px 3px color-mix(in srgb,#000 40%,transparent)}[data-theme=dark] .bill-alert{background:color-mix(in srgb,#dc2626 18%,var(--bg-surface))}[data-theme=dark] .bill-badge.paid{background:color-mix(in srgb,#16a34a 22%,transparent);color:#4ade80}[data-theme=dark] .bill-badge.pending{background:color-mix(in srgb,#c2410c 22%,transparent);color:#fb923c}[data-theme=dark] .bill-badge.failed{background:color-mix(in srgb,#dc2626 22%,transparent);color:#f87171}[data-theme=dark] .bill-bar.olive>i{background:#d97706}.badge-info{background:var(--info-muted);color:var(--info);border-color:var(--info-border)}.badge-phase2{background:var(--phase2-muted);color:var(--phase2);border-color:var(--phase2-border)}.link-btn{display:inline-flex;align-items:center;gap:5px;background:none;border:none;color:var(--accent);font-family:var(--font-sans);font-size:12px;cursor:pointer;padding:0}.link-btn:hover{text-decoration:underline}.view-wrap{max-width:1180px;width:100%;min-height:0;display:flex;flex-direction:column;flex:1}.view-wrap-scroll{overflow-y:auto;padding-bottom:24px}.view-wrap>.page-head,.view-wrap>.toolbar,.view-wrap>.sum-grid,.view-wrap>.balance-card{flex-shrink:0}.view-toggle .seg-btn{padding:0 8px}.p-name-btn{background:none;border:none;padding:0;margin:0;font:inherit;font-size:13px;font-weight:var(--w-semi);color:var(--text-primary);letter-spacing:-.01em;cursor:pointer;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.p-name-btn:hover{color:var(--accent);text-decoration:underline}.agents-card-grid{flex:1;min-height:0;overflow:auto;display:grid;gap:14px;align-content:start;padding-bottom:8px}.agents-card-grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.agents-card-grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.ag-card{display:flex;flex-direction:column;gap:12px;padding:16px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);transition:border-color var(--dur-fast) var(--ease)}.ag-card:hover,.ag-card.menu-open{border-color:var(--border-default)}.ag-card-top{display:flex;align-items:flex-start;gap:12px}.ag-card-id{min-width:0;flex:1;display:flex;flex-direction:column;gap:6px}.ag-card-name{display:inline-flex;align-items:center;gap:7px;max-width:100%;background:none;border:none;padding:0;margin:0;font:inherit;font-size:14px;font-weight:var(--w-semi);color:var(--text-primary);letter-spacing:-.01em;cursor:pointer;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ag-card-name:hover{color:var(--accent);text-decoration:underline}.ag-card-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.ag-card-menu{position:relative;flex:0 0 auto}.ag-card-desc{margin:0;font-size:12.5px;color:var(--text-secondary);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:38px}.ag-card-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:12px;border-top:1px solid var(--border-subtle);margin-top:auto}.ag-card-chat{display:inline-flex;align-items:center;gap:5px;background:none;border:none;padding:0;font-family:var(--font-sans);font-size:12px;font-weight:var(--w-medium);color:var(--accent);cursor:pointer}.ag-card-chat:hover{text-decoration:underline}.agents-card-grid.cols-4 .ag-card{padding:14px;gap:10px}.agents-card-grid.cols-4 .ag-card-name{font-size:13px}.agents-card-grid.cols-4 .ag-card-desc{min-height:0;-webkit-line-clamp:2}.table-panel{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.table-scroll{flex:1;min-height:0;overflow:auto}.table-scroll .dtable thead th,.table-scroll .dtable.inset thead th{position:sticky;top:0;z-index:1;background:var(--bg-surface)}.table-panel>.table-foot,.view-wrap>.purchase-note{flex-shrink:0}.select-mini{height:30px;padding:0 28px 0 10px;background:var(--bg-input);color:var(--text-primary);border:1px solid var(--border-default);border-radius:var(--radius-sm);font-family:var(--font-sans);font-size:12px;cursor:pointer}.actions-cell{text-align:right;position:relative}.menu-note{padding:6px 10px;font-size:11px;color:var(--text-muted);line-height:1.4}.tool-label{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted)}.row-disabled .initials-avatar,.row-disabled .p-name{opacity:.62}.p-cell{display:flex;align-items:center;gap:11px}.p-info{min-width:0}.p-name{font-size:13px;font-weight:var(--w-semi);color:var(--text-primary);letter-spacing:-.01em;white-space:nowrap;display:flex;align-items:center;gap:8px}.p-cat{font-family:var(--font-mono);font-size:10px;color:var(--text-muted);margin-top:1px}.metric-val{font-family:var(--font-mono);font-size:13px;color:var(--text-primary);font-variant-numeric:tabular-nums}.upd-dot{width:7px;height:7px;border-radius:50%;background:var(--accent);flex:0 0 auto}.role-tag{display:inline-flex;align-items:center;height:20px;padding:0 9px;border-radius:var(--radius-pill);border:1px solid var(--border-default);background:var(--bg-elevated);font-size:11px;color:var(--text-secondary);white-space:nowrap}.role-tag.admin{color:var(--accent);border-color:var(--accent-border);background:var(--accent-muted)}.you-tag{font-family:var(--font-mono);font-size:8.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);background:var(--accent-muted);border-radius:var(--radius-pill);padding:1px 6px}.mode-dots{display:flex;gap:5px;flex-wrap:wrap}.mode-dot{display:inline-flex;align-items:center;gap:4px;height:20px;padding:0 7px;border-radius:var(--radius-pill);border:1px solid var(--accent-border);background:var(--accent-muted);font-size:10px;color:var(--accent);white-space:nowrap}.access-cell{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--text-secondary)}.access-cell svg{color:var(--text-muted)}.chat-wrap{max-width:1080px;margin:0 auto}.chat-hero{text-align:center;padding:8px 0 20px}.chat-title{font-size:30px;font-weight:var(--w-semi);letter-spacing:-.02em;margin:0 0 8px}.chat-subtitle{font-size:14px;color:var(--text-muted);margin:0}.chat-search{display:flex;align-items:center;gap:12px;height:52px;max-width:620px;margin:0 auto;padding:0 18px;background:var(--bg-input);border:1px solid var(--border-default);border-radius:var(--radius-pill);transition:border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease)}.chat-search:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-muted)}.chat-search input{flex:1;background:transparent;border:none;outline:none;color:var(--text-primary);font-family:var(--font-sans);font-size:15px;min-width:0}.chat-search input::placeholder{color:var(--text-muted)}.chat-search .clear{background:transparent;border:none;color:var(--text-muted);cursor:pointer;display:flex;padding:2px}.chat-search .clear:hover{color:var(--text-primary)}.chat-section{margin-top:28px}.chat-section-head{display:flex;align-items:baseline;gap:10px;margin-bottom:12px}.chat-section-title{font-size:13px;font-weight:var(--w-semi);margin:0}.chat-section-count{font-family:var(--font-mono);font-size:11px;color:var(--text-muted)}.recent-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,380px),1fr));gap:12px}.rrow{display:flex;align-items:center;gap:11px;min-width:0;padding:12px 13px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);cursor:pointer;text-align:left;font:inherit;color:inherit;transition:border-color var(--dur-fast) var(--ease),background var(--dur-fast) var(--ease)}.rrow:hover{border-color:var(--border-strong);background:var(--bg-elevated)}.rrow:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.rrow-body{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.rrow-top{display:flex;align-items:baseline;gap:8px;min-width:0}.rrow-name{font-size:13px;font-weight:var(--w-semi);color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rrow-time{font-family:var(--font-mono);font-size:10px;color:var(--text-muted);margin-left:auto;flex:0 0 auto}.rrow-msg{font-size:12.5px;color:var(--text-secondary);line-height:1.45;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rrow-go{color:var(--text-muted);flex:0 0 auto;opacity:0;transition:opacity var(--dur-fast) var(--ease)}.rrow:hover .rrow-go,.rrow:focus-visible .rrow-go{opacity:1}@media(hover:none){.rrow-go{opacity:1}}.recent-more{margin-top:10px;padding:7px 12px;background:transparent;border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-secondary);font-family:var(--font-sans);font-size:12px;font-weight:var(--w-medium);cursor:pointer;transition:border-color var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.recent-more:hover{border-color:var(--border-strong);color:var(--text-primary)}.chat-section-none{font-size:13px;color:var(--text-muted);margin:0}.agent-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:14px}.acard{display:flex;flex-direction:column;gap:12px;padding:18px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);cursor:pointer;text-align:left;font:inherit;transition:border-color var(--dur-fast) var(--ease),transform var(--dur-fast) var(--ease)}.acard:hover{border-color:var(--border-strong);transform:translateY(-1px)}.acard-top{display:flex;align-items:center;gap:12px}.acard-id{min-width:0;flex:1}.acard-name{font-size:14px;font-weight:var(--w-semi);color:var(--text-primary);letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;gap:7px}.acard-pin{color:var(--accent);flex:0 0 auto}.acard-status{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--text-muted);margin-top:3px}.acard-status .dot{width:6px;height:6px;border-radius:50%;background:var(--text-disabled)}.acard-status .dot.on{background:var(--success)}.acard-desc{font-size:12.5px;color:var(--text-secondary);line-height:1.5;margin:0;min-height:38px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.acard-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:12px;border-top:1px solid var(--border-subtle)}.acard-open{display:inline-flex;align-items:center;gap:3px;font-size:12px;font-weight:var(--w-medium);color:var(--accent)}.sum-grid{display:grid;gap:12px;margin-bottom:24px}.sum-grid.four{grid-template-columns:repeat(4,1fr)}.sum-card{padding:16px 18px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg)}.sum-label{font-family:var(--font-mono);font-size:9.5px;font-weight:var(--w-semi);letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);margin-bottom:10px}.sum-val{font-family:var(--font-mono);font-size:26px;font-weight:var(--w-semi);color:var(--text-primary);letter-spacing:-.03em;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sum-sub{font-size:11px;color:var(--text-muted);margin-top:5px}.chart-card{padding:18px 20px 12px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);margin-bottom:14px}.chart-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:14px}.chart-head h3{font-size:13px;font-weight:var(--w-semi);margin:0}.chart-meta{font-family:var(--font-mono);font-size:10px;color:var(--text-muted)}.chart-row{display:grid;gap:14px;margin-bottom:14px}.chart-row.two{grid-template-columns:1fr 1fr}.chart-row.three{grid-template-columns:1fr 1fr 1fr}.chart-row>.chart-card{margin-bottom:0}.line-chart{width:100%}.dtable.inset{margin-top:-4px}.dtable.inset thead th{background:transparent}.ad-head{display:flex;align-items:center;gap:14px}.link-btn.back{margin-bottom:4px}tr.clickable{cursor:pointer}th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}th.sortable .sort{margin-left:4px;color:var(--accent)}th.num,td.num{text-align:right}.analytics-table-panel{flex:0 0 auto;display:flex;flex-direction:column;margin-bottom:28px;overflow:hidden}.analytics-table-scroll{flex:none;max-height:min(420px,55vh);overflow:auto}.axis-chart{width:100%}.axis-chart-plot{position:relative;width:100%}.axis-chart-ylabel{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:4px}.axis-chart-svg{display:block;width:100%;cursor:crosshair;overflow:visible}.axis-grid{stroke:var(--border-subtle);stroke-width:1}.axis-line{stroke:var(--border-default);stroke-width:1}.axis-tick{fill:var(--text-muted);font-family:var(--font-mono);font-size:10px}.axis-crosshair{stroke:var(--text-muted);stroke-width:1;stroke-dasharray:3 3;opacity:.7}.chart-tooltip{position:absolute;transform:translate(-50%,calc(-100% - 12px));pointer-events:none;z-index:2;min-width:96px;padding:7px 10px;border-radius:var(--radius-sm);border:1px solid var(--border-default);background:var(--bg-elevated);box-shadow:var(--shadow-2, 0 8px 24px rgba(0,0,0,.28));text-align:center}.chart-tooltip-date{font-family:var(--font-mono);font-size:10px;color:var(--text-muted);margin-bottom:2px}.chart-tooltip-val{font-family:var(--font-mono);font-size:13px;font-weight:var(--w-semi);color:var(--text-primary)}.donut-wrap{display:flex;align-items:center;gap:18px;min-height:148px}.donut-wrap.is-stack{flex-direction:column;align-items:stretch;gap:14px;min-height:0}.donut-wrap.is-stack .donut-visual{align-self:center}.donut-visual{position:relative;flex:0 0 auto}.donut-slice{cursor:pointer;transition:opacity .16s ease,transform .16s ease;transform-origin:center}.donut-slice.is-dim{opacity:.38}.donut-slice.is-hover{filter:brightness(1.08)}.donut-center{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none;text-align:center;padding:0 18px}.donut-center-val{font-family:var(--font-mono);font-size:15px;font-weight:var(--w-semi);color:var(--text-primary);letter-spacing:-.02em;line-height:1.1}.donut-center-sub{font-family:var(--font-mono);font-size:9.5px;color:var(--text-muted);margin-top:3px;max-width:88px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.donut-legend{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1;max-height:220px;overflow-y:auto}.donut-legend-item{display:grid;grid-template-columns:8px minmax(0,1fr);align-items:start;gap:8px;width:100%;padding:6px 8px;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:background .14s ease,border-color .14s ease}.donut-legend-item:hover,.donut-legend-item.is-active{background:var(--bg-elevated);border-color:var(--border-subtle)}.donut-legend-item .mix-dot{margin-top:4px}.donut-legend-text{display:flex;flex-direction:column;gap:2px;min-width:0}.donut-legend-label{font-size:12px;color:var(--text-secondary);line-height:1.35;overflow-wrap:anywhere;word-break:break-word}.donut-legend-meta{font-family:var(--font-mono);font-size:10px;color:var(--text-muted);white-space:nowrap}.mix-dot{width:8px;height:8px;border-radius:50%;flex:0 0 auto}@media(max-width:960px){.chart-row.three{grid-template-columns:1fr}.sum-grid.four{grid-template-columns:1fr 1fr}}@media(max-width:720px){.chart-row.two{grid-template-columns:1fr}.donut-wrap:not(.is-stack){flex-direction:column;align-items:stretch}}.scrim.right{justify-content:flex-end;padding:0}.slideover{width:560px;max-width:100%;height:100vh;background:var(--bg-surface);border-left:1px solid var(--border-default);box-shadow:var(--shadow-3);display:flex;flex-direction:column;animation:slide-in .22s var(--ease)}@keyframes slide-in{0%{transform:translate(24px);opacity:.6}to{transform:none;opacity:1}}.so-head{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 22px;border-bottom:1px solid var(--border-subtle)}.so-head-id{display:flex;align-items:center;gap:12px}.so-title{font-size:15px;font-weight:var(--w-semi);margin:0}.so-sub{font-family:var(--font-mono);font-size:10px;color:var(--text-muted);margin:2px 0 0}.so-body{flex:1;overflow-y:auto;padding:20px 22px;display:flex;flex-direction:column;gap:16px}.so-foot{flex:0 0 auto;display:flex;gap:8px;justify-content:flex-end;padding:14px 22px;border-top:1px solid var(--border-subtle);background:var(--bg-elevated)}.cfg-field{display:flex;flex-direction:column;gap:7px}.cfg-label{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px;font-weight:var(--w-medium);color:var(--text-secondary)}.cfg-lock{display:inline-flex;align-items:center;gap:4px;font-family:var(--font-mono);font-size:9px;letter-spacing:.06em;text-transform:uppercase;color:var(--phase2)}.cfg-hint{font-size:11px;color:var(--text-muted);line-height:1.45}.cfg-row.two{display:grid;grid-template-columns:1fr 1fr;gap:14px}.cfg-divider{display:flex;align-items:center;gap:10px;margin:4px 0}.cfg-divider:after{content:"";flex:1;height:1px;background:var(--border-subtle)}.cfg-divider span{font-family:var(--font-mono);font-size:9.5px;font-weight:var(--w-semi);letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted)}.input.ta{height:auto;padding:9px 12px;resize:vertical;line-height:1.5;font-family:var(--font-sans)}.input.ta.prompt{font-family:var(--font-mono);font-size:12px;line-height:1.6}.locked-fld{background:var(--bg-elevated)!important;opacity:.72;cursor:not-allowed}.pad{padding:6px 0}.locked-fld.pad{padding:8px 12px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--bg-elevated)}.kb-stub{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px dashed var(--border-default);border-radius:var(--radius-sm);background:var(--bg-elevated);font-size:12px;color:var(--text-secondary)}.kb-stub span{flex:1;font-family:var(--font-mono);font-size:11px;color:var(--text-muted)}.cfg-update{display:flex;align-items:center;gap:12px;padding:13px 14px;background:var(--accent-muted);border:1px solid var(--accent-border);border-radius:var(--radius-md)}.cfg-update .cu-ico{color:var(--accent);flex:0 0 auto}.cfg-update .cu-txt{flex:1;min-width:0}.cfg-update .cu-txt strong{font-size:12.5px;color:var(--text-primary)}.cfg-update .cu-txt p{margin:2px 0 0;font-size:11px;color:var(--text-secondary)}.modal.wide{width:560px;max-width:calc(100vw - 24px)}.access-toggle{display:grid;grid-template-columns:1fr 1fr;gap:10px}.acc-tg{display:flex;align-items:center;gap:11px;padding:13px 14px;border-radius:var(--radius-md);border:1px solid var(--border-default);background:var(--bg-elevated);color:var(--text-secondary);cursor:pointer;text-align:left;transition:all var(--dur-fast) var(--ease)}.acc-tg svg{flex:0 0 auto}.acc-tg.on{border-color:var(--accent);background:var(--accent-muted);color:var(--accent)}.acc-tg .at-t{font-size:13px;font-weight:var(--w-semi);color:var(--text-primary)}.acc-tg.on .at-t{color:var(--accent)}.acc-tg .at-d{font-size:11px;color:var(--text-muted);margin-top:1px}.acc-label{font-family:var(--font-mono);font-size:9.5px;font-weight:var(--w-semi);letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);margin:18px 0 9px;display:flex;align-items:center;gap:8px}.acc-count{font-family:var(--font-mono);color:var(--text-secondary);background:var(--bg-elevated);border-radius:var(--radius-pill);padding:1px 7px;letter-spacing:0}.acc-roles{display:flex;flex-wrap:wrap;gap:8px}.acc-chk{display:inline-flex;align-items:center;gap:8px;height:32px;padding:0 13px 0 9px;border-radius:var(--radius-sm);border:1px solid var(--border-default);background:var(--bg-elevated);color:var(--text-secondary);cursor:pointer;font-size:12px}.acc-chk.on{border-color:var(--accent-border);background:var(--accent-muted);color:var(--accent)}.acc-box{width:15px;height:15px;border-radius:var(--radius-xs);border:1px solid var(--border-strong);display:flex;align-items:center;justify-content:center}.acc-chk.on .acc-box{background:var(--accent);border-color:var(--accent);color:var(--accent-fg)}.search-box.full{width:100%}.acc-results{margin-top:8px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);overflow:hidden}.acc-result{display:flex;align-items:center;gap:10px;width:100%;padding:8px 11px;background:var(--bg-elevated);border:none;border-bottom:1px solid var(--border-subtle);cursor:pointer;text-align:left}.acc-result:last-child{border-bottom:none}.acc-result:hover{background:var(--bg-row-hover)}.acc-r-id{flex:1;min-width:0}.acc-r-name{font-size:12.5px;font-weight:var(--w-medium);color:var(--text-primary)}.acc-r-mail{font-family:var(--font-mono);font-size:10px;color:var(--text-muted)}.acc-list{display:flex;flex-direction:column;gap:6px}.acc-row{display:flex;align-items:center;gap:10px;padding:8px 11px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm)}.acc-remove{background:transparent;border:none;color:var(--text-muted);cursor:pointer;display:flex;padding:4px}.acc-remove:hover{color:var(--error)}.acc-public-note{display:flex;align-items:flex-start;gap:10px;margin-top:16px;padding:12px 14px;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-md)}.acc-public-note svg{color:var(--info);flex:0 0 auto;margin-top:1px}.acc-public-note p{margin:0;font-size:12px;color:var(--text-secondary);line-height:1.5}.wcfg-field{display:flex;flex-direction:column;gap:8px;margin-bottom:18px}.wcfg-row.two{display:grid;grid-template-columns:1fr 1fr;gap:16px}.so-tabs{flex:0 0 auto;display:flex;gap:2px;padding:0 22px;border-bottom:1px solid var(--border-subtle)}.so-tab{position:relative;height:40px;padding:0 4px;margin-right:18px;background:none;border:none;cursor:pointer;font-family:var(--font-sans);font-size:13px;font-weight:var(--w-medium);color:var(--text-muted)}.so-tab:hover{color:var(--text-secondary)}.so-tab.on{color:var(--text-primary)}.so-tab.on:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--accent);border-radius:2px 2px 0 0}.integ-tab{display:flex;flex-direction:column;gap:14px}.integ-intro{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-elevated)}.integ-intro .ii-ico{color:var(--accent);flex:0 0 auto;margin-top:1px}.integ-intro p{margin:0;font-size:12px;color:var(--text-secondary);line-height:1.55}.integ-tools{display:flex;flex-direction:column;gap:10px}.integ-tool{border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-elevated);overflow:hidden}.integ-tool.open{border-color:var(--border-strong)}.integ-tool-head{display:flex;align-items:center;gap:11px;width:100%;padding:13px 14px;background:none;border:none;cursor:pointer;text-align:left}.ith-caret{color:var(--text-muted);flex:0 0 auto;transition:transform var(--dur-fast) var(--ease)}.ith-caret.open{transform:rotate(90deg)}.ith-id{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.ith-name{font-size:13px;font-weight:var(--w-semi);color:var(--text-primary)}.ith-type{font-family:var(--font-mono);font-size:9px;font-weight:var(--w-semi);letter-spacing:.06em;text-transform:uppercase}.ith-type.core{color:var(--accent)}.ith-type.opt{color:var(--text-muted)}.integ-tool-body{padding:4px 14px 14px;display:flex;flex-direction:column;gap:14px;border-top:1px solid var(--border-subtle)}.integ-tool-desc{margin:12px 0 0;font-size:12px;color:var(--text-secondary);line-height:1.5}.ivar{display:flex;flex-direction:column;gap:6px}.ivar-label{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px;font-weight:var(--w-medium);color:var(--text-secondary)}.ivar-status{font-family:var(--font-mono);font-size:9px;font-weight:var(--w-semi);letter-spacing:.06em;text-transform:uppercase;border-radius:var(--radius-pill);padding:2px 7px}.ivar-status.set{color:var(--success);background:var(--success-muted)}.ivar-status.unset{color:var(--text-muted);background:var(--badge-inactive-bg)}.ivar-input-row{display:flex;align-items:center;gap:7px}.ivar-input-row .input{flex:1}.ivar-clear{width:32px;height:36px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;flex:0 0 auto}.ivar-clear:hover{color:var(--error);border-color:var(--error-border);background:var(--error-muted)}.ivar-desc{font-size:11px;color:var(--text-muted);line-height:1.45}.integ-tool-foot{display:flex;justify-content:flex-end}.integ-secure{display:flex;align-items:flex-start;gap:8px;font-size:11px;color:var(--text-muted);line-height:1.45;padding:2px 2px 0}.integ-secure svg{color:var(--text-muted);flex:0 0 auto;margin-top:1px}.seg-pills{display:inline-flex;gap:6px}.seg-pill{height:32px;padding:0 16px;border-radius:var(--radius-sm);border:1px solid var(--border-default);background:var(--bg-elevated);color:var(--text-secondary);cursor:pointer;font-family:var(--font-sans);font-size:12px}.seg-pill.on{background:var(--accent-muted);border-color:var(--accent-border);color:var(--accent);font-weight:var(--w-medium)}.domain-input{display:flex;flex-wrap:wrap;gap:6px;align-items:center;min-height:40px;padding:6px 10px;background:var(--bg-input);border:1px solid var(--border-default);border-radius:var(--radius-sm);cursor:text}.domain-chip,.email-chip{display:inline-flex;align-items:center;gap:5px;height:22px;padding:0 4px 0 9px;border-radius:var(--radius-xs);background:var(--bg-elevated);border:1px solid var(--border-default);font-family:var(--font-mono);font-size:11px;color:var(--text-secondary)}.email-chip.bad{border-color:var(--error-border);color:var(--error);background:var(--error-muted)}.domain-chip button,.email-chip button{background:transparent;border:none;color:var(--text-muted);cursor:pointer;display:flex;padding:1px}.domain-chip button:hover,.email-chip button:hover{color:var(--text-primary)}.domain-input input,.email-chips-input input{flex:1;min-width:80px;background:transparent;border:none;outline:none;color:var(--text-primary);font-family:var(--font-sans);font-size:13px}.email-chips-input{display:flex;flex-wrap:wrap;gap:6px;align-items:center;min-height:40px;padding:6px 10px;background:var(--bg-input);border:1px solid var(--border-default);border-radius:var(--radius-sm);cursor:text}.email-chips-input.error{border-color:var(--error)}.color-stub{display:flex;align-items:center;gap:9px;height:36px;padding:0 12px;background:var(--bg-input);border:1px solid var(--border-default);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:11px;color:var(--text-muted)}.cs-swatch{width:16px;height:16px;border-radius:var(--radius-xs);border:1px solid var(--border-default);flex:0 0 auto}.secret-row{display:flex;align-items:center;gap:10px}.secret-row code{flex:1;font-family:var(--font-mono);font-size:12px;color:var(--text-secondary);background:var(--bg-input);border:1px solid var(--border-default);border-radius:var(--radius-sm);padding:8px 12px;letter-spacing:.04em}.embed-block{font-family:var(--font-mono);font-size:11px;line-height:1.6;color:var(--text-secondary);background:var(--bg-canvas);border:1px solid var(--border-default);border-radius:var(--radius-sm);padding:12px 14px;margin:0;white-space:pre-wrap;overflow-x:auto}.callout-actions{display:flex;gap:8px;margin-top:10px}.invite-link-list{display:flex;flex-direction:column;gap:14px}.invite-link-item{display:flex;flex-direction:column;gap:6px}.invite-link-email{font-size:12px;font-weight:var(--w-medium);color:var(--text-primary)}.invite-link-item .secret-row code{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.balance-card{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:26px 28px;border-radius:var(--radius-lg);border:1px solid var(--border-subtle);background:var(--bg-surface)}.balance-card.low{border-color:var(--warning-border)}.balance-card.critical{border-color:var(--error-border)}.bal-label{font-family:var(--font-mono);font-size:10px;font-weight:var(--w-semi);letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted)}.bal-label-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.bal-refresh{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:transparent;color:var(--text-muted);font-size:11px;font-weight:var(--w-med);cursor:pointer;transition:border-color .15s,color .15s}.bal-refresh:hover:not(:disabled){border-color:var(--border-strong);color:var(--text-primary)}.bal-refresh:disabled{opacity:.65;cursor:default}.bal-refresh-spin{animation:bal-spin .8s linear infinite}@keyframes bal-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.bal-refresh-spin{animation-duration:2.4s}}.bal-val{font-size:46px;font-weight:var(--w-semi);letter-spacing:-.03em;line-height:1.05;margin:6px 0;color:var(--text-primary)}.bal-state{display:inline-flex;align-items:center;gap:8px;font-size:12px;color:var(--text-secondary)}.bal-state .bal-dot{width:8px;height:8px;border-radius:50%;background:var(--success)}.bal-state.low{color:var(--warning)}.bal-state.low .bal-dot{background:var(--warning)}.bal-state.critical{color:var(--error)}.bal-state.critical .bal-dot{background:var(--error)}.balance-card.low .bal-val{color:var(--warning)}.balance-card.critical .bal-val{color:var(--error)}.packs{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.pack{position:relative;display:flex;flex-direction:column;align-items:center;gap:3px;padding:18px 8px 16px;border-radius:var(--radius-md);border:1px solid var(--border-default);background:var(--bg-surface);cursor:pointer;transition:all var(--dur-fast) var(--ease)}.pack:hover{border-color:var(--border-strong)}.pack.on{border-color:var(--accent);background:var(--accent-muted)}.pack-tag{position:absolute;top:-8px;font-family:var(--font-mono);font-size:8px;letter-spacing:.06em;text-transform:uppercase;color:var(--accent-fg);background:var(--accent);border-radius:var(--radius-pill);padding:2px 7px;white-space:nowrap}.pack-credits{font-family:var(--font-mono);font-size:17px;font-weight:var(--w-semi);color:var(--text-primary)}.pack-unit{font-size:9.5px;color:var(--text-muted)}.pack-price{font-size:14px;font-weight:var(--w-semi);color:var(--text-primary);margin-top:6px}.pay-method{display:flex;align-items:center;gap:11px;padding:11px 13px;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-md)}.pm-card{width:34px;height:34px;border-radius:var(--radius-sm);background:var(--bg-surface);border:1px solid var(--border-default);display:flex;align-items:center;justify-content:center;color:var(--text-secondary);flex:0 0 auto}.pm-id{flex:1}.pm-name{font-size:12.5px;font-weight:var(--w-medium);color:var(--text-primary)}.pm-sub{font-family:var(--font-mono);font-size:10px;color:var(--text-muted)}.topup-note{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--text-muted);margin:14px 0 0;line-height:1.5}.topup-note svg{flex:0 0 auto}.ev-tag{display:inline-flex;align-items:center;height:20px;padding:0 8px;border-radius:var(--radius-xs);font-size:10.5px;font-weight:var(--w-medium);border:1px solid var(--border-default);background:var(--bg-elevated);color:var(--text-secondary);white-space:nowrap}.ev-demo{color:var(--phase2);border-color:var(--phase2-border);background:var(--phase2-muted)}.ev-preview{color:var(--accent);border-color:var(--accent-border);background:var(--accent-muted)}.ev-apicall{color:var(--info);border-color:var(--info-border);background:var(--info-muted)}.ev-topup{color:var(--success);border-color:var(--success-border);background:var(--success-muted)}.dtable.purchases-table{table-layout:fixed;width:100%}.dtable.purchases-table th.col-date,.dtable.purchases-table td.col-date{width:12.5rem}.dtable.purchases-table th.col-status,.dtable.purchases-table td.col-status{width:5.5rem}.dtable.purchases-table th.col-desc,.dtable.purchases-table td.col-desc{width:auto;white-space:nowrap}.dtable.purchases-table th.col-amount,.dtable.purchases-table td.col-amount{width:5.5rem;text-align:right;font-variant-numeric:tabular-nums}.dtable.purchases-table th.col-payment,.dtable.purchases-table td.col-payment{width:12.5rem}.dtable.purchases-table td{overflow:hidden}.cell-ellipsis{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-top:1px solid var(--border-subtle)}.tf-meta{font-family:var(--font-mono);font-size:10px;color:var(--text-muted)}.tf-pager{display:flex;align-items:center;gap:10px}.tf-page{font-family:var(--font-mono);font-size:11px;color:var(--text-secondary)}.purchase-note{display:flex;align-items:flex-start;gap:10px;margin-top:14px;padding:13px 15px;background:var(--bg-surface);border:1px dashed var(--border-default);border-radius:var(--radius-md)}.purchase-note svg{margin-top:1px;flex:0 0 auto}.purchase-note p{margin:0;font-size:12px;color:var(--text-secondary);line-height:1.5}.member-topup{display:flex;align-items:center;gap:8px}.member-topup-input{width:140px;height:32px;padding:0 10px;font-family:var(--font-mono);font-size:12px}.role-change-row{display:flex;align-items:center;gap:16px;padding:16px;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-md)}.rc-col{display:flex;flex-direction:column;gap:6px}.rc-cap{font-family:var(--font-mono);font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted)}.mkt-ph{max-width:520px;margin:7vh auto 0;display:flex;flex-direction:column;align-items:center;text-align:center;gap:16px}.mkt-ph-icon{width:64px;height:64px;border-radius:var(--radius-lg);background:var(--phase2-muted);border:1px solid var(--phase2-border);color:var(--phase2);display:flex;align-items:center;justify-content:center}.mkt-ph-title{font-size:26px;font-weight:var(--w-semi);letter-spacing:-.02em;margin:0}.mkt-ph-desc{font-size:14px;color:var(--text-secondary);line-height:1.6;margin:0;max-width:44ch}.mkt-ph-preview{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:12px}.mkt-chip{display:inline-flex;align-items:center;gap:6px;font-size:11px;color:var(--text-muted);border:1px solid var(--border-subtle);border-radius:var(--radius-pill);padding:5px 11px}.mkt-chip svg{color:var(--success)}@media(max-width:1040px){.sum-grid.four{grid-template-columns:repeat(2,1fr)}.chart-row.two,.cfg-row.two,.wcfg-row.two,.access-toggle{grid-template-columns:1fr}.packs{grid-template-columns:1fr 1fr}.agents-card-grid.cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.slideover{width:100%}.balance-card{flex-direction:column;align-items:stretch;gap:16px}.agents-card-grid.cols-2,.agents-card-grid.cols-4,.packs,.sum-grid.four,.cfg-row.two{grid-template-columns:1fr}}.landing-page{--ink: oklch(13% .018 25);--ink-2: oklch(16% .022 22);--ink-3: oklch(20% .026 20);--surface: oklch(18% .024 20 / .6);--line: oklch(40% .03 25 / .28);--line-2: oklch(50% .04 25 / .42);--cream: oklch(96% .012 70);--warm-300: oklch(84% .03 50);--warm-500: oklch(70% .03 40);--ember: oklch(72% .19 45);--flame: oklch(70% .205 28);--magenta: oklch(66% .25 350);--coral: oklch(72% .18 18);--gold: oklch(82% .14 75);--grad: linear-gradient(105deg, var(--ember) 0%, var(--flame) 38%, var(--magenta) 100%);--grad-soft: linear-gradient(105deg, oklch(72% .19 45 / .18), oklch(66% .25 350 / .18));--maxw: 1200px;--r-sm: 10px;--r-md: 16px;--r-lg: 26px;--r-xl: 36px;--lp-font: "Instrument Sans", ui-sans-serif, system-ui, sans-serif;--lp-display: "Space Grotesk", var(--lp-font);font-family:var(--lp-font);background:var(--ink);color:var(--cream);-webkit-font-smoothing:antialiased;line-height:1.6;overflow-x:hidden;font-size:17px;min-height:100vh;position:relative;scroll-behavior:smooth}.landing-page *,.landing-page *:before,.landing-page *:after{box-sizing:border-box;margin:0;padding:0}.lp-vignette{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background:radial-gradient(120% 90% at 80% -10%,oklch(30% .06 30 / .5),transparent 55%),radial-gradient(100% 80% at -10% 110%,oklch(28% .08 350 / .45),transparent 55%)}.lp-grain{position:fixed;top:0;right:0;bottom:0;left:0;z-index:999;pointer-events:none;opacity:.04;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.landing-page .wrap{max-width:var(--maxw);margin:0 auto;padding:0 32px;position:relative;z-index:1}.landing-page .orb-bg{position:absolute;border-radius:50%;filter:blur(60px);opacity:.5;z-index:0;pointer-events:none;animation:lp-drift 22s ease-in-out infinite}.landing-page .orb-a{width:520px;height:520px;background:radial-gradient(circle at 40% 40%,var(--ember),transparent 68%)}.landing-page .orb-b{width:460px;height:460px;background:radial-gradient(circle at 50% 50%,var(--magenta),transparent 66%);animation-delay:-7s}.landing-page .orb-c{width:380px;height:380px;background:radial-gradient(circle at 50% 50%,var(--coral),transparent 66%);animation-delay:-13s}@keyframes lp-drift{0%,to{transform:translate(0) scale(1)}33%{transform:translate(40px,-30px) scale(1.08)}66%{transform:translate(-30px,25px) scale(.96)}}@media(prefers-reduced-motion:reduce){.landing-page .orb-bg,.landing-page .ember-orb .eo-core,.landing-page .eo-ring{animation:none!important}}.landing-page .nav{position:sticky;top:0;z-index:50;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#0e0505b8;border-bottom:1px solid var(--line)}.landing-page .nav-inner{display:flex;align-items:center;gap:28px;height:68px}.landing-page .brand{display:flex;align-items:center;gap:10px;font-family:var(--lp-display);font-weight:600;font-size:19px;letter-spacing:-.01em;color:var(--cream);text-decoration:none}.landing-page .brand-glyph{width:26px;height:26px;border-radius:8px;background:var(--grad);position:relative;box-shadow:0 0 18px -2px var(--flame);flex:0 0 auto}.landing-page .brand-glyph:after{content:"";position:absolute;inset:6px 6px auto 6px;height:2px;background:var(--ink);border-radius:2px;box-shadow:0 5px 0 var(--ink)}.landing-page .nav-links{display:flex;gap:26px;margin-left:8px}.landing-page .nav-links a{color:var(--warm-300);text-decoration:none;font-size:15px;font-weight:500;transition:color .2s}.landing-page .nav-links a:hover{color:var(--cream)}.landing-page .nav-cta{margin-left:auto;display:flex;align-items:center;gap:14px}.landing-page .nav-signin{color:var(--warm-300);text-decoration:none;font-size:15px;font-weight:500}.landing-page .nav-signin:hover{color:var(--cream)}.landing-page .lp-btn{font-family:var(--lp-font);font-weight:600;font-size:15px;border:none;border-radius:var(--r-sm);cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;gap:8px;transition:transform .15s,box-shadow .25s,background .2s,border-color .2s;white-space:nowrap}.landing-page .lp-btn-ghost{background:transparent;color:var(--cream);padding:10px 16px;border:1px solid var(--line-2)}.landing-page .lp-btn-ghost:hover{border-color:var(--cream);transform:translateY(-1px)}.landing-page .lp-btn-primary{background:var(--grad);color:#1a0e0c;padding:12px 22px;box-shadow:0 8px 26px -8px var(--flame),inset 0 1px #ffffff40;font-weight:700}.landing-page .lp-btn-primary:hover{transform:translateY(-2px);box-shadow:0 14px 36px -8px var(--flame),inset 0 1px #ffffff40}.landing-page .lp-btn-lg{font-size:17px;padding:16px 30px}.landing-page .lp-btn-text{background:transparent;color:var(--cream);padding:16px 26px;border:1px solid var(--line-2)}.landing-page .lp-btn-text:hover{border-color:var(--ember);color:var(--cream);transform:translateY(-2px);box-shadow:0 10px 30px -12px var(--ember)}.landing-page .lp-btn-block{width:100%;justify-content:center}.landing-page .hero{position:relative;padding:88px 0 72px;overflow:hidden}.landing-page .hero .orb-a{top:-120px;left:-140px}.landing-page .hero .orb-b{top:120px;right:-160px}.landing-page .hero .orb-c{bottom:-180px;left:30%}.landing-page .hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}.landing-page .eyebrow{display:inline-flex;align-items:center;gap:9px;font-family:var(--lp-display);font-size:13px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--warm-300);padding:7px 14px;border:1px solid var(--line-2);border-radius:999px;background:var(--surface);margin-bottom:26px}.landing-page .eyebrow .pip{width:7px;height:7px;border-radius:50%;background:var(--grad);box-shadow:0 0 10px var(--flame)}.landing-page h1.hero-h{font-family:var(--lp-display);font-size:clamp(40px,5.4vw,68px);line-height:1.02;letter-spacing:-.025em;font-weight:600;margin-bottom:22px;text-wrap:balance}.landing-page .hero-h .glow{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}.landing-page .hero-sub{font-size:20px;color:var(--warm-300);max-width:30ch;margin-bottom:34px;text-wrap:pretty}.landing-page .hero-ctas{display:flex;gap:14px;flex-wrap:wrap}.landing-page .hero-meta{display:flex;gap:26px;margin-top:34px;flex-wrap:wrap}.landing-page .hero-meta div{display:flex;flex-direction:column}.landing-page .hero-meta b{font-family:var(--lp-display);font-size:24px;font-weight:600;color:var(--cream)}.landing-page .hero-meta span{font-size:13px;color:var(--warm-500)}.landing-page .hero-demo{position:relative}.landing-page .demo-card{position:relative;z-index:2;background:linear-gradient(180deg,#211111db,#130808eb);border:1px solid var(--line-2);border-radius:var(--r-lg);box-shadow:0 40px 90px -30px #080000e6,0 0 0 1px #ffffff08 inset;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);overflow:hidden;display:flex;flex-direction:column;min-height:470px}.landing-page .demo-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:var(--r-lg);padding:1px;background:var(--grad);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:.4;pointer-events:none}.landing-page .demo-head{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid var(--line)}.landing-page .demo-id{display:flex;align-items:center;gap:11px}.landing-page .demo-orb-sm{width:34px;height:34px;border-radius:50%;background:var(--grad);box-shadow:0 0 16px -2px var(--flame);flex:0 0 auto}.landing-page .demo-name{font-family:var(--lp-display);font-weight:600;font-size:15px;display:flex;align-items:center;gap:8px;color:var(--cream)}.landing-page .demo-live{display:inline-flex;align-items:center;gap:4px;font-family:var(--lp-font);font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--ember)}.landing-page .demo-live svg{color:var(--ember);animation:lp-pulse 1.6s ease-in-out infinite}@keyframes lp-pulse{0%,to{opacity:1}50%{opacity:.35}}.landing-page .demo-sub{font-size:12px;color:var(--warm-500)}.landing-page .demo-modes{display:flex;gap:5px;background:#0a040499;border:1px solid var(--line);border-radius:11px;padding:3px}.landing-page .demo-mode{width:34px;height:30px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--warm-500);cursor:pointer;border-radius:8px;transition:all .2s}.landing-page .demo-mode:hover{color:var(--cream)}.landing-page .demo-mode.on{background:var(--grad);color:#1a0e0c}.landing-page .demo-thread{flex:1;overflow-y:auto;padding:18px;display:flex;flex-direction:column;gap:14px;min-height:0}.landing-page .demo-thread::-webkit-scrollbar{width:6px}.landing-page .demo-thread::-webkit-scrollbar-thumb{background:var(--line-2);border-radius:3px}.landing-page .dm-msg{display:flex;gap:9px;max-width:88%}.landing-page .dm-msg.user{align-self:flex-end;flex-direction:row-reverse}.landing-page .dm-av{width:26px;height:26px;border-radius:50%;background:var(--grad-soft);border:1px solid var(--line-2);color:var(--ember);display:flex;align-items:center;justify-content:center;flex:0 0 auto;margin-top:2px}.landing-page .dm-bubble{padding:10px 14px;border-radius:15px;font-size:14.5px;line-height:1.5}.landing-page .dm-msg.agent .dm-bubble{background:#2b1a19b3;border:1px solid var(--line);border-top-left-radius:5px}.landing-page .dm-msg.user .dm-bubble{background:var(--grad);color:#1a0e0c;border-top-right-radius:5px;font-weight:500}.landing-page .dm-bubble strong{font-weight:700}.landing-page .dm-msg.agent .dm-bubble strong{color:var(--gold)}.landing-page .dm-typing{display:flex;gap:4px;align-items:center}.landing-page .dm-typing i{width:6px;height:6px;border-radius:50%;background:var(--warm-500);animation:lp-bounce 1.2s infinite}.landing-page .dm-typing i:nth-child(2){animation-delay:.2s}.landing-page .dm-typing i:nth-child(3){animation-delay:.4s}@keyframes lp-bounce{0%,60%,to{transform:translateY(0);opacity:.5}30%{transform:translateY(-5px);opacity:1}}.landing-page .demo-suggest{display:flex;gap:7px;padding:0 18px 12px;flex-wrap:wrap}.landing-page .demo-suggest button{background:var(--surface);border:1px solid var(--line-2);color:var(--warm-300);font-family:var(--lp-font);font-size:12.5px;padding:6px 12px;border-radius:999px;cursor:pointer;transition:all .2s}.landing-page .demo-suggest button:hover{border-color:var(--ember);color:var(--cream)}.landing-page .demo-input{display:flex;gap:9px;padding:14px 18px;border-top:1px solid var(--line)}.landing-page .demo-input input{flex:1;background:#0a0404b3;border:1px solid var(--line-2);border-radius:12px;color:var(--cream);font-family:var(--lp-font);font-size:14.5px;padding:11px 15px;outline:none;transition:border-color .2s,box-shadow .2s}.landing-page .demo-input input::placeholder{color:var(--warm-500)}.landing-page .demo-input input:focus{border-color:var(--ember);box-shadow:0 0 0 3px #ff772e2e;box-shadow:0 0 0 3px oklch(72% .19 45 / .18)}.landing-page .demo-send{width:44px;flex:0 0 auto;background:var(--grad);border:none;border-radius:12px;color:#1a0e0c;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .15s,opacity .2s}.landing-page .demo-send:hover:not(:disabled){transform:translateY(-1px)}.landing-page .demo-send:disabled{opacity:.4;cursor:not-allowed}.landing-page .demo-stage{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;padding:30px 24px;text-align:center}.landing-page .demo-vstate{font-family:var(--lp-display);font-size:12px;text-transform:uppercase;letter-spacing:.2em;color:var(--warm-500)}.landing-page .demo-vstate.on{color:var(--ember)}.landing-page .demo-caption{font-size:16px;color:var(--cream);max-width:34ch;line-height:1.5;min-height:48px;text-wrap:pretty}.landing-page .demo-mic{width:60px;height:60px;border-radius:50%;background:var(--grad);border:none;color:#1a0e0c;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px -8px var(--flame);transition:transform .15s}.landing-page .demo-mic:hover{transform:scale(1.05)}.landing-page .demo-mic.rec{box-shadow:0 0 0 8px #ff772e33;box-shadow:0 0 0 8px oklch(72% .19 45 / .2);animation:lp-micpulse 1.4s ease-in-out infinite}@keyframes lp-micpulse{0%,to{box-shadow:0 0 0 6px #ff772e38;box-shadow:0 0 0 6px oklch(72% .19 45 / .22)}50%{box-shadow:0 0 0 14px #ff772e0d;box-shadow:0 0 0 14px oklch(72% .19 45 / .05)}}.landing-page .demo-avatar-note{font-size:12px;color:var(--warm-500)}.landing-page .ember-orb{position:relative;display:flex;align-items:center;justify-content:center}.landing-page .eo-core{width:60%;height:60%;border-radius:50%;background:radial-gradient(circle at 38% 32%,var(--gold),var(--ember) 42%,var(--magenta) 100%);box-shadow:0 0 60px -6px var(--flame),inset 0 0 40px -10px var(--gold);transition:box-shadow .3s}.landing-page .ember-orb.st-listening .eo-core{box-shadow:0 0 70px -4px var(--ember),inset 0 0 40px -8px var(--gold)}.landing-page .ember-orb.st-speaking .eo-core{box-shadow:0 0 90px -2px var(--magenta),inset 0 0 44px -8px var(--gold)}.landing-page .eo-hi{position:absolute;top:16%;right:16%;bottom:16%;left:16%;border-radius:50%;background:radial-gradient(circle at 40% 36%,oklch(100% 0 0 / .5),transparent 60%)}.landing-page .eo-ring{position:absolute;width:60%;height:60%;border-radius:50%;border:1.5px solid var(--ember);opacity:0}.landing-page .ember-orb.st-listening .eo-ring,.landing-page .ember-orb.st-speaking .eo-ring{animation:lp-eoring 2.2s ease-out infinite}.landing-page .ember-orb.st-speaking .eo-ring.r2{animation-delay:.9s;border-color:var(--magenta)}@keyframes lp-eoring{0%{transform:scale(1);opacity:.5}to{transform:scale(2);opacity:0}}.landing-page section{position:relative;z-index:1}.landing-page .sec{padding:96px 0}.landing-page .sec-head{text-align:center;max-width:700px;margin:0 auto 56px}.landing-page .kicker{font-family:var(--lp-display);font-size:13px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ember);margin-bottom:14px}.landing-page h2.sec-h{font-family:var(--lp-display);font-size:clamp(30px,3.6vw,44px);line-height:1.08;letter-spacing:-.02em;font-weight:600;text-wrap:balance}.landing-page .sec-lead{font-size:19px;color:var(--warm-300);margin-top:16px;text-wrap:pretty}.landing-page .trust{padding:30px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.landing-page .trust-inner{display:flex;align-items:center;justify-content:center;gap:14px 44px;flex-wrap:wrap}.landing-page .trust-label{font-size:13px;color:var(--warm-500);font-family:var(--lp-display);letter-spacing:.08em;text-transform:uppercase}.landing-page .trust-logo{font-family:var(--lp-display);font-weight:600;font-size:19px;color:var(--warm-300);opacity:.7;letter-spacing:-.01em}.landing-page .features{overflow:hidden}.landing-page .feat-row{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;margin-bottom:88px}.landing-page .feat-row:last-child{margin-bottom:0}.landing-page .feat-row.flip .feat-copy{order:2}.landing-page .feat-tag{display:inline-flex;align-items:center;gap:8px;font-family:var(--lp-display);font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ember);margin-bottom:16px}.landing-page .feat-tag .n{width:22px;height:22px;border-radius:7px;background:var(--grad-soft);border:1px solid var(--line-2);display:flex;align-items:center;justify-content:center;color:var(--gold);font-size:11px}.landing-page .feat-row h3{font-family:var(--lp-display);font-size:30px;line-height:1.12;letter-spacing:-.02em;font-weight:600;margin-bottom:14px;text-wrap:balance}.landing-page .feat-row p{font-size:17px;color:var(--warm-300);margin-bottom:20px;text-wrap:pretty}.landing-page .feat-list{display:flex;flex-direction:column;gap:11px;list-style:none}.landing-page .feat-list li{display:flex;gap:11px;align-items:flex-start;font-size:15.5px;color:var(--warm-300)}.landing-page .feat-list .ck{width:20px;height:20px;border-radius:6px;background:var(--grad-soft);color:var(--gold);display:flex;align-items:center;justify-content:center;flex:0 0 auto;margin-top:2px;font-size:12px}.landing-page .feat-visual{position:relative;border:1px solid var(--line-2);border-radius:var(--r-lg);padding:28px;background:linear-gradient(170deg,#211111b3,#130808d9);min-height:280px;overflow:hidden}.landing-page .feat-visual .orb-bg{opacity:.4}.landing-page .mode-chips{display:flex;flex-direction:column;gap:12px;position:relative;z-index:1}.landing-page .mode-chip{display:flex;align-items:center;gap:14px;padding:16px;border:1px solid var(--line);border-radius:var(--r-md);background:#2b1a1966}.landing-page .mode-chip .ico{width:44px;height:44px;border-radius:12px;background:var(--grad);color:#1a0e0c;display:flex;align-items:center;justify-content:center;flex:0 0 auto}.landing-page .mode-chip .mt{font-family:var(--lp-display);font-weight:600;font-size:16px}.landing-page .mode-chip .md{font-size:13px;color:var(--warm-500)}.landing-page .build-steps{position:relative;z-index:1;display:flex;flex-direction:column;gap:10px}.landing-page .build-step{display:flex;align-items:center;gap:13px;padding:13px 15px;border:1px solid var(--line);border-radius:var(--r-sm);background:#2b1a1966;font-size:14.5px;color:var(--cream)}.landing-page .build-step .bn{width:26px;height:26px;border-radius:50%;border:1px solid var(--line-2);display:flex;align-items:center;justify-content:center;font-family:var(--lp-display);font-size:12px;color:var(--ember);flex:0 0 auto}.landing-page .build-step.done{border-color:#ff772e66;border-color:oklch(72% .19 45 / .4)}.landing-page .build-step.done .bn{background:var(--grad);color:#1a0e0c;border:none}.landing-page .build-step .bx{margin-left:auto;font-family:var(--lp-display);font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--warm-500)}.landing-page .wl-grid{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:12px}.landing-page .wl-card{border:1px solid var(--line);border-radius:var(--r-md);padding:16px;background:#2b1a1966}.landing-page .wl-dots{display:flex;gap:7px;margin-bottom:12px}.landing-page .wl-dots i{width:18px;height:18px;border-radius:50%}.landing-page .wl-name{font-family:var(--lp-display);font-weight:600;font-size:14px;color:var(--cream)}.landing-page .wl-bar{height:7px;border-radius:4px;margin-top:9px}.landing-page .how{background:linear-gradient(180deg,transparent,oklch(16% .022 22 / .5),transparent)}.landing-page .how-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.landing-page .how-step{position:relative;padding:30px 26px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface)}.landing-page .how-step .num{font-family:var(--lp-display);font-size:15px;font-weight:700;width:40px;height:40px;border-radius:12px;background:var(--grad);color:#1a0e0c;display:flex;align-items:center;justify-content:center;margin-bottom:20px}.landing-page .how-step h4{font-family:var(--lp-display);font-size:20px;font-weight:600;margin-bottom:10px;letter-spacing:-.01em}.landing-page .how-step p{font-size:15px;color:var(--warm-300)}.landing-page .uc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.landing-page .uc-card{padding:28px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);transition:transform .2s,border-color .2s}.landing-page .uc-card:hover{transform:translateY(-4px);border-color:var(--line-2)}.landing-page .uc-ico{width:48px;height:48px;border-radius:14px;background:var(--grad-soft);border:1px solid var(--line-2);color:var(--gold);display:flex;align-items:center;justify-content:center;margin-bottom:18px;font-size:22px}.landing-page .uc-card h4{font-family:var(--lp-display);font-size:19px;font-weight:600;margin-bottom:9px}.landing-page .uc-card p{font-size:14.5px;color:var(--warm-300)}.landing-page .uc-card .uc-stat{margin-top:16px;font-family:var(--lp-display);font-size:13px;color:var(--ember);font-weight:600}.landing-page .price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:stretch}.landing-page .price-card{padding:32px 28px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);display:flex;flex-direction:column;position:relative}.landing-page .price-card.feat{border-color:transparent;background:linear-gradient(180deg,#2b130fb3,#17080fb3);box-shadow:0 30px 70px -30px var(--magenta)}.landing-page .price-card.feat:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:var(--r-lg);padding:1px;background:var(--grad);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}.landing-page .price-badge{position:absolute;top:-12px;left:50%;transform:translate(-50%);background:var(--grad);color:#1a0e0c;font-family:var(--lp-display);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;padding:5px 14px;border-radius:999px;white-space:nowrap}.landing-page .price-name{font-family:var(--lp-display);font-size:18px;font-weight:600;color:var(--cream)}.landing-page .price-amt{font-family:var(--lp-display);font-size:42px;font-weight:700;letter-spacing:-.02em;margin:14px 0 4px;color:var(--cream)}.landing-page .price-amt span{font-size:16px;color:var(--warm-500);font-weight:500}.landing-page .price-desc{font-size:14px;color:var(--warm-300);margin-bottom:22px;min-height:42px}.landing-page .price-feats{list-style:none;display:flex;flex-direction:column;gap:11px;margin-bottom:26px;flex:1}.landing-page .price-feats li{display:flex;gap:10px;font-size:14.5px;color:var(--warm-300);align-items:flex-start}.landing-page .price-feats .ck{color:var(--ember);flex:0 0 auto;margin-top:1px;font-weight:700}.landing-page .price-note{text-align:center;color:var(--warm-500);font-size:14px;margin-top:28px}.landing-page .faq-wrap{max-width:800px;margin:0 auto}.landing-page .faq-item{border-bottom:1px solid var(--line)}.landing-page .faq-q{width:100%;background:transparent;border:none;color:var(--cream);font-family:var(--lp-display);font-size:19px;font-weight:500;text-align:left;padding:24px 40px 24px 0;cursor:pointer;position:relative;letter-spacing:-.01em}.landing-page .faq-q:after{content:"+";position:absolute;right:4px;top:50%;transform:translateY(-50%);font-size:26px;color:var(--ember);font-weight:400;transition:transform .25s}.landing-page .faq-item.open .faq-q:after{transform:translateY(-50%) rotate(45deg)}.landing-page .faq-a{max-height:0;overflow:hidden;transition:max-height .3s ease,padding .3s ease}.landing-page .faq-item.open .faq-a{max-height:240px;padding-bottom:24px}.landing-page .faq-a p{color:var(--warm-300);font-size:16px;text-wrap:pretty}.landing-page .final{position:relative;text-align:center;padding:110px 0;overflow:hidden}.landing-page .final .orb-a{top:-100px;left:10%}.landing-page .final .orb-b{bottom:-160px;right:5%}.landing-page .final-card{position:relative;z-index:1;max-width:760px;margin:0 auto}.landing-page .final h2{font-family:var(--lp-display);font-size:clamp(34px,4.5vw,56px);line-height:1.04;letter-spacing:-.025em;font-weight:600;margin-bottom:20px;text-wrap:balance}.landing-page .final p{font-size:20px;color:var(--warm-300);margin-bottom:34px;max-width:36ch;margin-inline:auto}.landing-page .final-ctas{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}.landing-page .footer{border-top:1px solid var(--line);padding:56px 0 40px}.landing-page .footer-top{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:32px;margin-bottom:44px}.landing-page .footer-brand p{color:var(--warm-500);font-size:14px;margin-top:14px;max-width:28ch}.landing-page .footer-col h5{font-family:var(--lp-display);font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--warm-500);margin-bottom:16px}.landing-page .footer-col a{display:block;color:var(--warm-300);text-decoration:none;font-size:14.5px;margin-bottom:11px;transition:color .2s}.landing-page .footer-col a:hover{color:var(--cream)}.landing-page .footer-bot{display:flex;justify-content:space-between;align-items:center;padding-top:26px;border-top:1px solid var(--line);color:var(--warm-500);font-size:13.5px;flex-wrap:wrap;gap:12px}.landing-page .nav-burger{display:none;flex-direction:column;justify-content:center;gap:5px;width:40px;height:40px;margin-left:auto;padding:0;border:none;background:transparent;cursor:pointer}.landing-page .nav-burger span{display:block;width:20px;height:2px;border-radius:1px;background:var(--cream);margin:0 auto;transition:transform .2s,opacity .2s}.landing-page.nav-open .nav-burger span:nth-child(1){transform:translateY(7px) rotate(45deg)}.landing-page.nav-open .nav-burger span:nth-child(2){opacity:0}.landing-page.nav-open .nav-burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}@media(max-width:940px){.landing-page .hero-grid{grid-template-columns:1fr;gap:44px}.landing-page .feat-row,.landing-page .feat-row.flip{grid-template-columns:1fr;gap:30px}.landing-page .feat-row.flip .feat-copy{order:0}.landing-page .how-grid,.landing-page .uc-grid,.landing-page .price-grid{grid-template-columns:1fr}.landing-page .footer-top{grid-template-columns:1fr 1fr}.landing-page .nav-burger{display:flex}.landing-page .nav-inner{flex-wrap:wrap}.landing-page .nav-links{display:none;flex-direction:column;gap:0;width:100%;order:3;padding:12px 0 8px;border-top:1px solid var(--line)}.landing-page.nav-open .nav-links{display:flex}.landing-page .nav-links a{padding:12px 4px;font-size:16px}.landing-page .nav-cta{gap:10px}}@media(max-width:560px){.landing-page .wrap{padding:0 20px}.landing-page .sec{padding:68px 0}.landing-page .hero{padding:56px 0}.landing-page .footer-top{grid-template-columns:1fr}.landing-page .hero-meta{gap:18px}.landing-page .hero-h{font-size:clamp(1.75rem,8vw,2.4rem)}.landing-page .hero-sub{font-size:17px}.landing-page .hero-ctas{flex-direction:column;align-items:stretch}.landing-page .nav-cta .lp-btn{padding-inline:14px}}.learn{display:flex;flex-direction:column;height:100%;min-height:0;background:var(--bg-canvas);color:var(--text-primary)}.learn__head{display:flex;align-items:baseline;gap:var(--space-md);flex:0 0 auto;padding:var(--space-md) var(--space-xl);border-bottom:1px solid var(--border-subtle)}.learn__title{margin:0;font-size:var(--text-h2);font-weight:var(--w-semi);letter-spacing:-.01em}.learn__crumb{font-size:var(--text-body-sm);color:var(--text-muted)}.learn__error{font-size:var(--text-body-sm);color:var(--error);font-weight:var(--w-medium)}.learn__layouts{display:flex;gap:2px;margin-left:auto;padding:2px;border-radius:var(--radius-pill);background:var(--bg-elevated)}.learn__layout{padding:4px var(--space-md);border:none;border-radius:var(--radius-pill);background:none;color:var(--text-muted);font-size:var(--text-label);font-weight:var(--w-medium);cursor:pointer;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.learn__layout:hover{color:var(--text-secondary)}.learn__layout.is-active{background:var(--bg-surface);color:var(--text-primary)}.learn__body{display:grid;flex:1;min-height:0;gap:var(--space-lg);padding:var(--space-lg) var(--space-xl)}.learn__board-area{grid-area:board;position:relative;min-width:0;min-height:0;container-type:size;display:grid;place-items:center}.learn__avatar-card{grid-area:avatar;position:relative;min-width:0;min-height:0;container-type:size;display:grid;place-items:center}.learn__rail{grid-area:transcript}.learn__board{position:relative;aspect-ratio:1280 / 720;width:min(100cqw,100cqh * 1280 / 720);overflow:hidden;border:1px solid var(--border-default);border-radius:var(--radius-lg);background:var(--bg-canvas)}.learn__controls{position:absolute;left:50%;bottom:var(--space-lg);transform:translate(-50%);z-index:var(--z-raised);display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm);border:1px solid var(--border-strong);border-radius:var(--radius-pill);background:var(--bg-overlay);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:var(--elevation-2)}.learn__avatar-frame{position:relative;aspect-ratio:4 / 5;width:min(100cqw,100cqh * 4 / 5);overflow:hidden;border:1px solid var(--border-default);border-radius:var(--radius-lg);background:var(--bg-surface);transition:box-shadow var(--dur-normal) var(--ease)}.learn__avatar-frame.is-tutor{border-color:var(--learn-tutor);box-shadow:0 0 0 1px var(--learn-tutor),0 0 40px -6px var(--learn-tutor-glow)}.learn__avatar-frame.is-you{border-color:var(--learn-you);box-shadow:0 0 0 1px var(--learn-you),0 0 40px -6px var(--learn-you-soft)}.learn__avatar{position:absolute;top:0;right:0;bottom:0;left:0;display:flex}.learn__progress{flex:1;height:4px;overflow:hidden;border-radius:var(--radius-pill);background:var(--bg-input)}.learn__progress-fill{height:100%;border-radius:var(--radius-pill);background:var(--accent)}.learn__time{width:84px;text-align:right;font-size:var(--text-label);color:var(--text-muted)}.learn__scenes{display:flex;gap:var(--space-2xs);overflow-x:auto;padding-bottom:2px}.learn__scene{flex:0 0 auto;width:22px;height:4px;padding:0;border:none;border-radius:var(--radius-pill);background:var(--border-strong);cursor:pointer;transition:background var(--dur-fast) var(--ease)}.learn__scene:hover{background:var(--text-muted)}.learn__scene.is-current{background:var(--accent)}.learn__rail{display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden;border:1px solid var(--border-default);border-radius:var(--radius-lg);background:var(--bg-surface)}.learn__rail-head{flex:0 0 auto;padding:var(--space-md) var(--space-lg);border-bottom:1px solid var(--border-subtle)}.learn__rail-label{display:block;font-size:var(--text-label);font-weight:var(--w-semi);letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.learn__rail-subtitle{display:block;margin-top:2px;font-size:var(--text-body-sm);color:var(--text-secondary)}.learn__rail-body{flex:1;min-height:0;overflow-y:auto;padding:var(--space-lg)}.learn__say{margin:0;font-size:var(--text-h3);line-height:1.7;color:var(--text-disabled)}.learn__empty{margin:0;font-size:var(--text-body);color:var(--text-muted)}.learn__turn--agent.following{color:var(--text-muted)}.learn__turn--agent.following [data-w]{transition:color var(--dur-fast) var(--ease)}.learn__turn--agent.following [data-w].was-spoken{color:var(--text-primary)}.learn__turn--agent.following [data-w].is-speaking{border-radius:var(--radius-xs);background:var(--learn-progress-soft);color:var(--learn-progress);font-weight:var(--w-semi)}.learn__mode{padding:2px var(--space-sm);border-radius:var(--radius-pill);font-size:var(--text-label);font-weight:var(--w-medium);letter-spacing:.03em;text-transform:uppercase;background:var(--bg-elevated);color:var(--text-muted)}.learn__mode--teaching{background:var(--learn-tutor-soft);color:var(--learn-tutor)}.learn__mode--listening{background:var(--learn-you-soft);color:var(--learn-you)}.learn__mode--answering{background:var(--learn-progress-soft);color:var(--learn-progress)}.learn__mode--done{background:var(--success-muted);color:var(--success)}.learn__exchange{display:flex;flex-direction:column;gap:var(--space-sm);margin-bottom:var(--space-lg);padding-bottom:var(--space-lg);border-bottom:1px solid var(--border-subtle)}.learn__turn{margin:0;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);font-size:var(--text-body);line-height:1.6}.learn__turn--user{border-left:3px solid var(--learn-you);border-radius:0 var(--radius-md) var(--radius-md) 0;background:var(--learn-you-soft);color:var(--text-secondary)}.learn__turn--agent{border-left:3px solid var(--learn-tutor);border-radius:0 var(--radius-md) var(--radius-md) 0;background:var(--learn-tutor-soft);color:var(--text-primary)}.learn__turn--agent>:first-child{margin-top:0}.learn__turn--agent>:last-child{margin-bottom:0}.learn__turn--agent p{margin:0 0 .7em}.learn__turn--agent ul,.learn__turn--agent ol{margin:0 0 .7em;padding-left:1.35em}.learn__turn--agent li{margin:.2em 0}.learn__turn--agent li>p{margin:0}.learn__turn--agent strong{font-weight:var(--w-semi)}.learn__turn--agent code{padding:1px 4px;border-radius:var(--radius-xs);background:var(--bg-canvas);font-family:var(--font-mono);font-size:.92em}.learn__turn--agent .katex-display{margin:.6em 0;overflow-x:auto;overflow-y:hidden}.learn__turn--agent .katex-display{max-width:100%}.learn--board .learn__body{grid-template-columns:minmax(0,1fr) clamp(280px,24%,360px);grid-template-rows:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"board avatar" "board transcript"}.learn--tutor .learn__body{grid-template-columns:clamp(300px,28%,440px) minmax(0,1fr);grid-template-rows:minmax(0,3fr) minmax(0,2fr);grid-template-areas:"avatar board" "avatar transcript"}.learn--read-along .learn__body{grid-template-columns:clamp(280px,30%,420px) minmax(0,1fr);grid-template-rows:minmax(0,1fr) minmax(0,2fr);grid-template-areas:"board  transcript" "avatar transcript"}.learn--read-along .learn__exchange{max-width:68ch}.learn--read-along .learn__turn{font-size:var(--text-h2);line-height:1.75;padding:var(--space-md) var(--space-lg)}.learn--focus .learn__body{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr);grid-template-areas:"board"}.learn--focus .learn__rail{display:none}.learn--focus .learn__avatar-card{position:absolute;right:var(--space-lg);bottom:var(--space-lg);z-index:var(--z-raised);width:clamp(132px,15%,200px);aspect-ratio:4 / 5}.learn--focus .learn__avatar-frame{box-shadow:var(--elevation-3)}@media(max-width:1180px){.learn:not(.learn--focus) .learn__body{grid-template-columns:clamp(150px,30%,240px) minmax(0,1fr);grid-template-rows:minmax(0,2fr) minmax(0,3fr);grid-template-areas:"board  board" "avatar transcript"}}@media(prefers-reduced-motion:reduce){.learn__layout,.learn__turn--agent.following [data-w]{transition:none}}/*! tailwindcss v4.3.2 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial}}}:root,:host{--shadow-1:var(--elevation-1);--shadow-2:var(--elevation-2);--shadow-3:var(--elevation-3);--shadow-focus:var(--elevation-focus)}:root,[data-theme=dark]{color-scheme:dark;--accent-50:#10302f;--accent-100:#14403f;--accent-500:#3fa4a0;--accent-600:#4cb2ae;--accent-700:#6ac6c2;--success-50:#12291d;--success-600:#5cb684;--warning-50:#2c2214;--warning-600:#d2a257;--critical-50:#2e1918;--critical-600:#e08078;--info-50:#201c33;--info-600:#a093dc;--surface-ground:#0d1214;--surface:#141b1e;--surface-2:#1b2427;--surface-3:#232f33;--ink-900:#e8eef0;--ink-700:#b6c3c8;--ink-500:#8898a0;--ink-400:#6c7c84;--line:#253135;--line-strong:#324247;--bg-canvas:var(--surface-ground);--bg-surface:var(--surface);--bg-elevated:var(--surface-2);--bg-input:var(--surface-3);--bg-overlay:#0d1214b8;--bg-row-hover:var(--surface-3);--bg-row-selected:var(--accent-50);--border-subtle:var(--line);--border-default:var(--line);--border-strong:var(--line-strong);--text-primary:var(--ink-900);--text-secondary:var(--ink-700);--text-muted:var(--ink-500);--text-disabled:var(--ink-400);--text-inverse:var(--surface-ground);--accent:var(--accent-600);--accent-hover:var(--accent-700);--accent-pressed:var(--accent-500);--accent-muted:var(--accent-50);--accent-border:var(--accent-100);--accent-fg:var(--surface-ground);--success:var(--success-600);--success-muted:var(--success-50);--success-border:var(--success-600);--warning:var(--warning-600);--warning-muted:var(--warning-50);--warning-border:var(--warning-600);--error:var(--critical-600);--error-muted:var(--critical-50);--error-border:var(--critical-600);--info:var(--info-600);--info-muted:var(--info-50);--info-border:var(--info-600);--phase2:var(--info-600);--phase2-muted:var(--info-50);--phase2-border:var(--info-600);--learn-tutor:var(--info-600);--learn-tutor-soft:var(--info-50);--learn-tutor-glow:#a093dc73;--learn-you:var(--accent-600);--learn-you-soft:var(--accent-50);--learn-live:var(--critical-600);--learn-progress:var(--warning-600);--learn-progress-soft:var(--warning-50);--badge-inactive-bg:var(--surface-3);--badge-inactive-border:var(--line);--elevation-1:0 1px 0 0 #0d121466;--elevation-2:0 2px 6px -2px #0d121480, 0 1px 0 0 #0d121466;--elevation-3:0 12px 32px -8px #0d12148c, 0 4px 12px -2px #0d121459;--scrollbar-track:transparent;--scrollbar-thumb:var(--line-strong);--scrollbar-thumb-hover:var(--accent-600);--toast-bg:var(--surface-2);--toast-border:var(--line);--toast-fg:var(--ink-900);--toast-muted:var(--ink-700)}[data-theme=light]{color-scheme:light;--accent-50:#e0efef;--accent-100:#c3e0e0;--accent-500:#14848c;--accent-600:#0f6e75;--accent-700:#0b565c;--success-50:#e1f1e8;--success-600:#1e7a4f;--warning-50:#f7ebd9;--warning-600:#8e5c12;--critical-50:#f8e4e3;--critical-600:#a62f2f;--info-50:#eae6f7;--info-600:#5b4aa8;--surface-ground:#f4f6f7;--surface:#fff;--surface-2:#eef2f3;--surface-3:#e3eaec;--ink-900:#12181b;--ink-700:#34434a;--ink-500:#66777e;--ink-400:#8b9aa0;--line:#dbe3e6;--line-strong:#c3d0d4;--bg-canvas:var(--surface-ground);--bg-surface:var(--surface);--bg-elevated:var(--surface-2);--bg-input:var(--surface-3);--bg-overlay:#12181b6b;--bg-row-hover:var(--surface-3);--bg-row-selected:var(--accent-50);--border-subtle:var(--line);--border-default:var(--line);--border-strong:var(--line-strong);--text-primary:var(--ink-900);--text-secondary:var(--ink-700);--text-muted:var(--ink-500);--text-disabled:var(--ink-400);--text-inverse:var(--surface);--accent:var(--accent-600);--accent-hover:var(--accent-700);--accent-pressed:var(--accent-700);--accent-muted:var(--accent-50);--accent-border:var(--accent-100);--accent-fg:var(--surface);--success:var(--success-600);--success-muted:var(--success-50);--success-border:var(--success-600);--warning:var(--warning-600);--warning-muted:var(--warning-50);--warning-border:var(--warning-600);--error:var(--critical-600);--error-muted:var(--critical-50);--error-border:var(--critical-600);--info:var(--info-600);--info-muted:var(--info-50);--info-border:var(--info-600);--phase2:var(--info-600);--phase2-muted:var(--info-50);--phase2-border:var(--info-600);--learn-tutor:var(--info-600);--learn-tutor-soft:var(--info-50);--learn-tutor-glow:#5b4aa84d;--learn-you:var(--accent-600);--learn-you-soft:var(--accent-50);--learn-live:var(--critical-600);--learn-progress:var(--warning-600);--learn-progress-soft:var(--warning-50);--badge-inactive-bg:var(--surface-3);--badge-inactive-border:var(--line);--elevation-1:0 1px 0 0 #12181b0f;--elevation-2:0 2px 10px -2px #12181b1f, 0 1px 0 0 #12181b0d;--elevation-3:0 14px 36px -8px #12181b2e, 0 4px 14px -2px #12181b14;--scrollbar-track:transparent;--scrollbar-thumb:var(--line-strong);--scrollbar-thumb-hover:var(--accent-600);--toast-bg:var(--surface);--toast-border:var(--line);--toast-fg:var(--ink-900);--toast-muted:var(--ink-700)}:root,[data-theme=dark],[data-theme=light]{--elevation-focus:0 0 0 2px var(--bg-canvas), 0 0 0 4px var(--accent);--shadow-1:var(--elevation-1);--shadow-2:var(--elevation-2);--shadow-3:var(--elevation-3);--shadow-focus:var(--elevation-focus)}html{color-scheme:dark}html[data-theme=light]{color-scheme:light}html[data-theme=dark]{color-scheme:dark}:root{--font-sans:"IBM Plex Sans", ui-sans-serif, system-ui, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--text-display:32px;--text-h1:22px;--text-h2:17px;--text-h3:14px;--text-body:13px;--text-body-sm:12px;--text-label:11px;--text-mono:12px;--w-regular:400;--w-medium:500;--w-semi:600;--w-bold:700;--space-2xs:2px;--space-xs:4px;--space-sm:8px;--space-md:12px;--space-lg:16px;--space-xl:24px;--space-2xl:32px;--space-3xl:48px;--space-4xl:64px;--radius-none:0;--radius-xs:2px;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-pill:999px;--z-base:0;--z-raised:10;--z-sticky:100;--z-overlay:1000;--z-modal:1100;--z-toast:1200;--z-tooltip:1300;--ease:cubic-bezier(.2, 0, 0, 1);--dur-fast:.12s;--dur-normal:.2s;--shell-side-w:232px;--touch-min:44px}*,:before,:after{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font-sans);font-size:var(--text-body);font-weight:var(--w-regular);background:var(--bg-canvas);color:var(--text-primary);-webkit-font-smoothing:antialiased;font-feature-settings:"ss01" 1,"cv11" 1;min-height:100vh;line-height:1.5}::selection{background:var(--accent-muted);color:var(--text-primary)}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--scrollbar-track);border-radius:var(--radius-pill)}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:var(--radius-pill);transition:background var(--dur-fast) var(--ease)}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}::-webkit-scrollbar-corner{background:0 0}.num-mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:-.01em}.brand-mark{background:var(--accent);flex:none;width:22px;height:22px;position:relative}.brand-mark:before,.brand-mark:after{content:"";background:var(--bg-canvas);position:absolute}.brand-mark:before{height:2px;top:5px;left:0;right:0}.brand-mark:after{height:2px;top:11px;left:4px;right:4px}.brand-mark.sm{width:16px;height:16px}.brand-mark.sm:before{height:1.5px;top:4px}.brand-mark.sm:after{height:1.5px;top:8px}.btn{height:32px;font-family:var(--font-sans);font-size:var(--text-body);font-weight:var(--w-medium);letter-spacing:-.005em;border-radius:var(--radius-sm);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;transition:background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease);border:1px solid #0000;justify-content:center;align-items:center;gap:6px;padding:0 14px;display:inline-flex}.btn:focus-visible{box-shadow:var(--shadow-focus);outline:none}.btn:disabled{cursor:not-allowed;opacity:.42}.btn-primary{background:var(--accent);color:var(--accent-fg);border-color:var(--accent)}.btn-primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.btn-primary:active:not(:disabled){background:var(--accent-pressed);border-color:var(--accent-pressed)}.btn-secondary{background:var(--bg-surface);color:var(--text-primary);border-color:var(--border-strong)}.btn-secondary:hover:not(:disabled){background:var(--bg-elevated);border-color:var(--border-strong)}.btn-ghost{color:var(--text-secondary);background:0 0;border-color:#0000}.btn-ghost:hover:not(:disabled){background:var(--bg-elevated);color:var(--text-primary)}.btn-destructive{background:var(--error);color:var(--text-inverse);border-color:var(--error)}.btn-destructive:hover:not(:disabled){background:var(--error);filter:brightness(1.08);border-color:var(--error)}.btn-block{width:100%}.btn-sm{height:26px;font-size:var(--text-body-sm);padding:0 10px}.btn-lg{height:40px;padding:0 18px;font-size:14px}.input{font-family:var(--font-sans);font-size:var(--text-body);background:var(--bg-input);height:36px;color:var(--text-primary);border:1px solid var(--border-default);border-radius:var(--radius-sm);width:100%;transition:border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease);padding:0 12px}.input::placeholder{color:var(--text-muted)}.input:hover:not(:disabled){border-color:var(--border-strong)}.input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-muted);outline:none}.input:disabled{opacity:.5;cursor:not-allowed}.input.error{border-color:var(--error)}.input.error:focus{box-shadow:0 0 0 3px var(--error-muted)}.input::selection{background:var(--accent);color:var(--accent-fg);-webkit-text-fill-color:var(--accent-fg)}.input:-webkit-autofill{-webkit-text-fill-color:var(--text-primary);caret-color:var(--text-primary);box-shadow:0 0 0 1000px var(--bg-input) inset;transition:background-color 99999s ease-out}.input:-webkit-autofill:hover{-webkit-text-fill-color:var(--text-primary);caret-color:var(--text-primary);box-shadow:0 0 0 1000px var(--bg-input) inset;transition:background-color 99999s ease-out}.input:-webkit-autofill:focus{-webkit-text-fill-color:var(--text-primary);caret-color:var(--text-primary);box-shadow:0 0 0 1000px var(--bg-input) inset;transition:background-color 99999s ease-out}.input:-webkit-autofill:active{-webkit-text-fill-color:var(--text-primary);caret-color:var(--text-primary);box-shadow:0 0 0 1000px var(--bg-input) inset;transition:background-color 99999s ease-out}.input:-webkit-autofill:focus{border-color:var(--accent);box-shadow:0 0 0 1000px var(--bg-input) inset,0 0 0 3px var(--accent-muted)}.input.error:-webkit-autofill{border-color:var(--error)}.input.error:-webkit-autofill:focus{border-color:var(--error)}.input.error:-webkit-autofill:focus{box-shadow:0 0 0 1000px var(--bg-input) inset,0 0 0 3px var(--error-muted)}.pw-wrap{display:block;position:relative}.pw-input{padding-right:38px}.pw-toggle{cursor:pointer;width:36px;height:36px;color:var(--text-muted);border-radius:var(--radius-sm);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex;position:absolute;top:0;right:0}.pw-toggle:hover{color:var(--text-primary)}.pw-toggle .pw-slash{background:currentColor;border-radius:1px;width:17px;height:1.5px;position:absolute;transform:rotate(-45deg)}.pw-caps{color:var(--warning);align-items:center;gap:5px;margin-top:6px;font-size:11.5px;display:flex}.otp-row{gap:8px;display:flex}.otp-box{text-align:center;min-width:0;height:46px;font-family:var(--font-mono);font-size:18px;font-weight:var(--w-semi);color:var(--text-primary);background:var(--bg-input);border:1px solid var(--border-default);border-radius:var(--radius-sm);transition:border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease);flex:1}.otp-box:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-muted);outline:none}.otp-box.error{border-color:var(--error)}.otp-box:disabled{opacity:.5;cursor:not-allowed}.field{flex-direction:column;gap:6px;display:flex}.field-label{font-size:var(--text-body-sm);font-weight:var(--w-medium);color:var(--text-secondary);justify-content:space-between;align-items:center;display:flex}.field-label-main{align-items:center;gap:4px;min-width:0;display:inline-flex}.field-label .req{color:var(--error)}.field-hint{color:var(--text-muted);font-size:11px;font-weight:var(--w-regular);font-family:var(--font-mono);letter-spacing:.04em}.field-desc{color:var(--text-muted);font-size:11px;line-height:1.45}.field-label .field-info-btn{border-radius:var(--radius-sm);width:20px;height:20px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;margin:0;padding:0;display:inline-flex}.field-label .field-info-btn:hover,.field-label .field-info-btn:focus-visible{color:var(--text-secondary);background:var(--bg-row-hover)}.field-label .field-info-btn:focus-visible{box-shadow:var(--shadow-focus);outline:none}.field-error{color:var(--error);font-size:11px;font-family:var(--font-mono);letter-spacing:.02em;align-items:center;gap:6px;display:flex}.field-error:before{content:"";background:var(--error);width:4px;height:4px;display:inline-block}.badge{height:20px;font-size:11px;font-weight:var(--w-medium);letter-spacing:.01em;border-radius:var(--radius-xs);white-space:nowrap;border:1px solid #0000;align-items:center;gap:6px;padding:0 8px;display:inline-flex}.badge .badge-dot{background:currentColor;border-radius:50%;flex:none;width:6px;height:6px}.badge-active{background:var(--success-muted);color:var(--success);border-color:var(--success-border)}.badge-inactive{background:var(--error-muted);color:var(--error);border-color:var(--error-border)}.badge-pending{background:var(--info-muted);color:var(--info);border-color:var(--info-border)}.badge-error{background:var(--error-muted);color:var(--error);border-color:var(--error-border)}.badge-warning{background:var(--warning-muted);color:var(--warning);border-color:var(--warning-border)}.initials-avatar{font-family:var(--font-mono);font-weight:var(--w-semi);letter-spacing:-.02em;color:var(--accent);background:var(--accent-muted);border:1px solid var(--accent-border);-webkit-user-select:none;user-select:none;border-radius:50%;flex:none;justify-content:center;align-items:center;display:flex}.banner{border-radius:var(--radius-lg);min-height:40px;font-size:var(--text-body-sm);color:var(--text-secondary);border:1px solid #0000;align-items:flex-start;gap:10px;padding:12px 14px;line-height:1.5;display:flex}.banner-icon{flex:none;justify-content:center;align-items:center;margin-top:1px;display:flex}.banner-body{flex:1;min-width:0}.banner-dismiss{cursor:pointer;color:var(--text-muted);border-radius:var(--radius-sm);background:0 0;border:none;flex:none;justify-content:center;align-items:center;padding:2px;display:flex}.banner-dismiss:hover{color:var(--text-primary)}.banner-info{background:var(--info-muted);border-color:var(--info-border);color:var(--text-secondary)}.banner-info .banner-icon{color:var(--info)}.banner-success{background:var(--success-muted);border-color:var(--success-border);color:var(--text-secondary)}.banner-success .banner-icon{color:var(--success)}.banner-warning{background:var(--warning-muted);border-color:var(--warning-border);color:var(--text-secondary)}.banner-warning .banner-icon{color:var(--warning)}.banner-error{background:var(--error-muted);border-color:var(--error-border);color:var(--text-secondary)}.banner-error .banner-icon{color:var(--error)}.select-wrap{width:100%;position:relative}.select-btn{background:var(--bg-input);width:100%;height:36px;color:var(--text-primary);border:1px solid var(--border-default);border-radius:var(--radius-sm);font-family:var(--font-sans);font-size:var(--text-body);text-align:left;cursor:pointer;transition:border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease);align-items:center;gap:8px;padding:0 10px 0 12px;display:flex}.select-btn:hover:not(:disabled){border-color:var(--border-strong)}.select-btn.open,.select-btn:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-muted);outline:none}.select-btn:disabled{opacity:.5;cursor:not-allowed}.select-btn.placeholder .select-val{color:var(--text-muted)}.select-val{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:6px;min-width:0;display:inline-flex;overflow:hidden}.select-chev{flex:none}.select-menu{z-index:var(--z-raised);background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--radius-md);box-shadow:var(--shadow-3);max-height:240px;padding:4px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.select-opt{border-radius:var(--radius-sm);width:100%;min-height:34px;color:var(--text-secondary);font-family:var(--font-sans);font-size:var(--text-body);text-align:left;cursor:pointer;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease);background:0 0;border:none;align-items:center;gap:8px;padding:0 10px;display:flex}.select-opt:hover{background:var(--bg-row-hover);color:var(--text-primary)}.select-opt.selected{color:var(--text-primary)}.opt-main{align-items:center;gap:6px;min-width:0;display:inline-flex}.opt-tag{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);border:1px solid var(--border-default);border-radius:var(--radius-xs);flex:none;padding:1px 5px;font-size:9px}.opt-meta{font-family:var(--font-mono);color:var(--text-muted);margin-left:auto;font-size:10px}.textarea{font-family:var(--font-sans);font-size:var(--text-body);background:var(--bg-input);min-height:80px;color:var(--text-primary);border:1px solid var(--border-default);border-radius:var(--radius-sm);resize:vertical;width:100%;transition:border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease);padding:9px 12px;line-height:1.5}.textarea::placeholder{color:var(--text-muted)}.textarea:hover:not(:disabled){border-color:var(--border-strong)}.textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-muted);outline:none}.textarea:disabled{opacity:.5;cursor:not-allowed}.textarea.error{border-color:var(--error)}.textarea.error:focus{box-shadow:0 0 0 3px var(--error-muted)}.textarea.mono{font-family:var(--font-mono);font-size:var(--text-mono)}.theme-transitioning *,.theme-transitioning :before,.theme-transitioning :after{transition:background-color .22s,border-color .22s,color .22s,box-shadow .22s!important}.pw-meter{flex-direction:column;gap:6px;margin-top:6px;display:flex}.pw-strength{align-items:center;gap:8px;display:flex}.pw-bars{flex:1;gap:3px;display:flex}.pw-bar{background:var(--border-default);height:3px;transition:background var(--dur-fast) var(--ease);border-radius:2px;flex:1}.pw-bar.s1{background:var(--error)}.pw-bar.s2{background:var(--warning)}.pw-bar.s3{background:var(--accent)}.pw-bar.s4{background:var(--success)}.pw-strength-label{color:var(--text-muted);text-align:right;min-width:56px;font-size:11px}.pw-strength-label.s1{color:var(--error)}.pw-strength-label.s2{color:var(--warning)}.pw-strength-label.s4{color:var(--success)}.pw-reqs{flex-wrap:wrap;gap:4px 12px;margin:0;padding:0;list-style:none;display:flex}.pw-req{color:var(--text-muted);padding-left:12px;font-size:11px;line-height:1.45;position:relative}.pw-req:before{content:"";background:var(--border-default);border-radius:50%;width:5px;height:5px;position:absolute;top:6px;left:0}.pw-req.met{color:var(--success)}.pw-req.met:before{background:var(--success)}.pw-req.unmet{color:var(--error)}.pw-req.unmet:before{background:var(--error)}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.\!container{width:100%!important}.container{width:100%}.\!hidden{display:none!important}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.table{display:table}.shrink{flex-shrink:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.flex-wrap{flex-wrap:wrap}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.border{border-style:var(--tw-border-style);border-width:1px}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.app{flex-direction:column;height:100vh;display:flex;overflow:hidden}.body{flex:1;display:flex;overflow:hidden}.main{padding:var(--space-2xl);flex:1;overflow-y:auto}.topbar{align-items:center;gap:var(--space-md);height:48px;padding:0 var(--space-lg);background:var(--bg-surface);border-bottom:1px solid var(--border-subtle);z-index:var(--z-sticky);flex:none;display:flex;position:relative}.tb-brand{align-items:center;gap:8px;text-decoration:none;display:flex}.tb-name{font-size:var(--text-body);font-weight:var(--w-semi);color:var(--text-primary);letter-spacing:-.01em}.tb-workspace{font-size:var(--text-body);color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);align-items:center;gap:4px;padding:4px 8px;display:flex}.tb-workspace:hover{background:var(--bg-elevated)}.tb-workspace .chev{color:var(--text-muted)}.tb-crumbs{font-size:var(--text-body);color:var(--text-muted);align-items:center;gap:6px;display:flex}.tb-crumbs .sep{color:var(--border-default)}.tb-crumbs b{color:var(--text-primary);font-weight:var(--w-medium)}.tb-spacer{flex:1}.tb-search{background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--radius-sm);height:30px;color:var(--text-muted);font-size:var(--text-body);cursor:pointer;white-space:nowrap;transition:border-color var(--dur-fast) var(--ease);align-items:center;gap:7px;padding:0 10px;display:flex}.tb-search:hover{border-color:var(--border-strong)}.tb-search .kbd{font-family:var(--font-mono);border:1px solid var(--border-default);border-radius:var(--radius-xs);background:var(--bg-canvas);padding:1px 5px;font-size:10px}.tb-icon-btn{border-radius:var(--radius-sm);width:32px;height:32px;color:var(--text-muted);cursor:pointer;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease);background:0 0;border:none;justify-content:center;align-items:center;display:flex;position:relative}.tb-icon-btn:hover{background:var(--bg-elevated);color:var(--text-primary)}.tb-icon-btn .ind{background:var(--error);border:1.5px solid var(--bg-surface);border-radius:50%;width:7px;height:7px;position:absolute;top:6px;right:6px}.tb-user,.ra,.initials-avatar{background:var(--accent-muted);color:var(--accent);border:1px solid var(--accent-border);font-family:var(--font-mono);font-weight:var(--w-semi);border-radius:50%;flex:none;justify-content:center;align-items:center;display:flex}.tb-user{cursor:pointer;width:28px;height:28px;font-size:10px}.side{background:var(--bg-canvas);border-right:1px solid var(--border-subtle);width:216px;padding:var(--space-md) 0 var(--space-2xl);flex-direction:column;flex:0 0 216px;display:flex;overflow-y:auto}.snav-section{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted);padding:var(--space-md) var(--space-lg) var(--space-xs);margin-top:var(--space-sm);font-size:9px}.snav-section:first-child{margin-top:0}.snav-item{height:34px;padding:0 var(--space-lg);color:var(--text-secondary);font-size:var(--text-body);cursor:pointer;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease);border-radius:0;align-items:center;gap:9px;text-decoration:none;display:flex;position:relative}.snav-item:hover{background:var(--bg-elevated);color:var(--text-primary)}.snav-item.active{color:var(--accent);background:var(--accent-muted)}.snav-item.active:before{content:"";background:var(--accent);border-radius:0 2px 2px 0;width:2.5px;position:absolute;top:6px;bottom:6px;left:0}.snav-ico{flex:none}.snav-count{font-family:var(--font-mono);color:var(--text-muted);margin-left:auto;font-size:10px}.side-foot{padding:var(--space-md) var(--space-md) 0;border-top:1px solid var(--border-subtle);margin-top:auto}.role-chip{padding:var(--space-sm);border-radius:var(--radius-md);cursor:pointer;transition:background var(--dur-fast) var(--ease);align-items:center;gap:9px;display:flex}.role-chip:hover{background:var(--bg-elevated)}.ra{width:30px;height:30px;font-size:10px}.rb{min-width:0}.rname{font-size:var(--text-body-sm);font-weight:var(--w-medium);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.rrole{color:var(--text-muted);font-size:10px;font-family:var(--font-mono)}.page-head{justify-content:space-between;align-items:flex-start;gap:var(--space-xl);margin-bottom:var(--space-xl);display:flex}.page-eyebrow{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted);margin-bottom:6px;font-size:10px}.page-title{font-size:var(--text-h1);font-weight:var(--w-semi);letter-spacing:-.01em;color:var(--text-primary);margin:0 0 6px}.page-sub{font-size:var(--text-body);color:var(--text-muted);margin:0}.page-actions{align-items:center;gap:var(--space-sm);flex:none;display:flex}.toolbar{align-items:center;gap:var(--space-sm);margin-bottom:var(--space-lg);flex-wrap:wrap;display:flex}.tool-spacer{flex:1}.segmented{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-sm);padding:2px;display:inline-flex}.seg-btn{height:28px;color:var(--text-muted);font-family:var(--font-sans);font-size:var(--text-body-sm);cursor:pointer;border-radius:var(--radius-xs);white-space:nowrap;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease);background:0 0;border:none;align-items:center;gap:6px;padding:0 12px;display:inline-flex}.seg-btn:hover{color:var(--text-primary)}.seg-btn.active{background:var(--bg-elevated);color:var(--text-primary)}.seg-count{font-family:var(--font-mono);color:var(--text-muted);font-size:10px}.seg-btn.active .seg-count{color:var(--text-secondary)}.search-box{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-sm);align-items:center;gap:7px;min-width:200px;height:34px;padding:0 10px;display:flex}.search-box input{color:var(--text-primary);font-family:var(--font-sans);font-size:var(--text-body);background:0 0;border:none;outline:none;flex:1}.search-box input::placeholder{color:var(--text-muted)}.search-box .clear{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:2px;display:flex}.search-box .clear:hover{color:var(--text-primary)}.icon-muted{color:var(--text-muted);flex:none}.panel{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);overflow:hidden}.dtable{border-collapse:collapse;width:100%}.dtable th{padding:0 var(--space-lg);text-align:left;height:40px;font-size:var(--text-body-sm);font-weight:var(--w-medium);color:var(--text-muted);border-bottom:1px solid var(--border-subtle);white-space:nowrap}.dtable th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.dtable th.sortable:hover{color:var(--text-primary)}.dtable th .sort{font-family:var(--font-mono);margin-left:4px;font-size:10px}.dtable td{padding:0 var(--space-lg);border-bottom:1px solid var(--border-subtle);color:var(--text-secondary);font-size:var(--text-body);vertical-align:middle}.dtable tbody tr:last-child td{border-bottom:none}.dtable tbody tr{transition:background var(--dur-fast) var(--ease)}.dtable tbody tr:hover{background:var(--bg-row-hover)}.dtable tbody tr.menu-open{background:var(--bg-row-selected)}.col-meta{font-family:var(--font-mono);color:var(--text-muted);font-size:11px}.state-wrap{text-align:center;padding:var(--space-4xl) var(--space-2xl);flex-direction:column;align-items:center;max-width:420px;margin:0 auto;display:flex}.state-icon{border-radius:var(--radius-lg);background:var(--bg-elevated);border:1px solid var(--border-subtle);width:44px;height:44px;color:var(--text-muted);margin-bottom:var(--space-lg);justify-content:center;align-items:center;display:flex}.state-icon.err{background:var(--error-muted);border-color:var(--error-border);color:var(--error)}.state-title{font-size:var(--text-h3);font-weight:var(--w-semi);color:var(--text-primary);margin:0 0 var(--space-sm)}.state-msg{font-size:var(--text-body);color:var(--text-secondary);margin:0 0 var(--space-xl);line-height:1.6}.state-actions{gap:var(--space-sm);margin-bottom:var(--space-lg);display:flex}.state-meta{font-family:var(--font-mono);color:var(--text-muted);letter-spacing:.04em;font-size:10px}.kebab{border-radius:var(--radius-sm);width:30px;height:30px;color:var(--text-muted);cursor:pointer;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;display:flex}.kebab:hover,.kebab.open{background:var(--bg-elevated);color:var(--text-primary);border-color:var(--border-default)}.menu{z-index:var(--z-raised);background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--radius-md);min-width:180px;box-shadow:var(--shadow-3);padding:4px;position:absolute;top:calc(100% + 4px);right:0}.menu-item{border-radius:var(--radius-sm);width:100%;height:34px;color:var(--text-secondary);font-family:var(--font-sans);font-size:var(--text-body);text-align:left;cursor:pointer;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease);background:0 0;border:none;align-items:center;gap:9px;padding:0 10px;display:flex}.menu-item:hover{background:var(--bg-row-hover);color:var(--text-primary)}.menu-item:disabled{cursor:not-allowed;opacity:1}.menu-item:disabled:hover{color:var(--text-secondary);background:0 0}.menu-item .ni-soon{flex:none;margin-left:auto}.menu-item.danger{color:var(--error)}.menu-item.danger:hover{background:var(--error-muted)}.menu-item .mi-ico{color:var(--text-muted);flex:none}.menu-item.danger .mi-ico{color:var(--error)}.menu-item .mi-meta{font-family:var(--font-mono);color:var(--text-muted);margin-left:auto;font-size:10px}.menu-sep{background:var(--border-subtle);height:1px;margin:4px 0}.menu.floating-menu{z-index:var(--z-overlay);overscroll-behavior:contain;top:auto;right:auto}.scrim{background:var(--bg-overlay);z-index:var(--z-overlay);padding:var(--space-lg);animation:scrim-in var(--dur-normal) var(--ease);justify-content:center;align-items:center;display:flex;position:fixed;top:0;right:0;bottom:0;left:0}@keyframes scrim-in{0%{opacity:0}}.modal{background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-3);width:100%;max-width:480px;animation:modal-in var(--dur-normal) var(--ease)}@keyframes modal-in{0%{opacity:0;transform:translateY(8px)}}.modal-header{justify-content:space-between;align-items:flex-start;gap:var(--space-md);padding:var(--space-xl);border-bottom:1px solid var(--border-subtle);display:flex}.modal-title{font-size:var(--text-h3);font-weight:var(--w-semi);color:var(--text-primary);margin:0 0 2px}.modal-sub{font-family:var(--font-mono);color:var(--text-muted);margin:0;font-size:10px}.modal-close{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;flex:none;justify-content:center;align-items:center;display:flex}.modal-close:hover{background:var(--bg-row-hover);color:var(--text-primary)}.modal-body{padding:var(--space-xl)}.modal-body p{font-size:var(--text-body);color:var(--text-secondary);margin:0 0 var(--space-lg);line-height:1.6}.modal-body p:last-child{margin-bottom:0}.modal-callout{gap:var(--space-sm);padding:var(--space-md) var(--space-lg);background:var(--warning-muted);border:1px solid var(--warning-border);border-radius:var(--radius-md);display:flex}.modal-callout .mc-ico{color:var(--warning);flex:none;margin-top:1px}.modal-callout p{color:var(--text-secondary);font-size:var(--text-body-sm);margin:0}.modal-footer{justify-content:flex-end;align-items:center;gap:var(--space-sm);padding:var(--space-lg) var(--space-xl);border-top:1px solid var(--border-subtle);display:flex}.toast-stack{bottom:var(--space-xl);right:var(--space-xl);gap:var(--space-sm);z-index:var(--z-toast);flex-direction:column;display:flex;position:fixed}.toast{background:var(--toast-bg);border:1px solid var(--toast-border);border-radius:var(--radius-md);box-shadow:var(--shadow-3);min-width:280px;max-width:380px;animation:toast-in .22s var(--ease);align-items:stretch;gap:0;display:flex;overflow:hidden}@keyframes toast-in{0%{opacity:0;transform:translate(16px)}}.toast .bar{flex:0 0 3px;width:3px}.toast.success .bar{background:var(--success)}.toast.error .bar{background:var(--error)}.toast.warning .bar{background:var(--warning)}.toast.info .bar{background:var(--info)}.toast .tbody{padding:var(--space-md) var(--space-lg);flex:1}.toast .ttitle{font-size:var(--text-body-sm);font-weight:var(--w-medium);color:var(--toast-fg);margin:0}.toast .tmsg{color:var(--toast-muted);margin:2px 0 0;font-size:11px}.toast .tdismiss{border:none;border-left:1px solid var(--border-subtle);width:32px;color:var(--text-muted);cursor:pointer;background:0 0;justify-content:center;align-items:center;display:flex}.toast .tdismiss:hover{background:var(--bg-row-hover);color:var(--text-primary)}.skel{background:linear-gradient(90deg,var(--bg-elevated) 25%,var(--bg-row-hover) 50%,var(--bg-elevated) 75%);border-radius:var(--radius-sm);background-size:200% 100%;animation:1.4s infinite skel-wave}.skel-line{border-radius:var(--radius-xs);height:12px}@keyframes skel-wave{0%{background-position:200% 0}to{background-position:-200% 0}}.tip-wrap{display:inline-flex;position:relative}.tip-pop{white-space:nowrap;background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-secondary);box-shadow:var(--shadow-2);z-index:var(--z-tooltip);pointer-events:none;padding:4px 10px;font-size:11px;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}.tip-pop.wide{white-space:normal;text-align:left;width:max-content;max-width:240px;line-height:1.45;left:0;transform:none}.proto-bar{bottom:var(--space-lg);align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--radius-pill);box-shadow:var(--shadow-3);z-index:var(--z-toast);flex-wrap:wrap;display:flex;position:fixed;left:50%;transform:translate(-50%)}.proto-bar .pl{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);padding:0 var(--space-xs);font-size:9px}.proto-bar .pl.mid{margin-left:var(--space-sm)}.proto-bar button{height:24px;padding:0 var(--space-sm);border-radius:var(--radius-sm);color:var(--text-secondary);font-family:var(--font-sans);cursor:pointer;background:0 0;border:none;font-size:11px}.proto-bar button:hover{background:var(--bg-row-hover);color:var(--text-primary)}.proto-bar button.active{background:var(--accent);color:var(--accent-fg)}.theme-btn .moon{justify-content:center;align-items:center;display:flex}.theme-btn .sun{justify-content:center;align-items:center;display:none}[data-theme=light] .theme-btn .sun{display:flex}[data-theme=light] .theme-btn .moon{display:none}.table-scroll{-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}.modal,.modal.wide,.modal.topup{max-width:calc(100vw - 24px)}.tb-menu-btn{border-radius:var(--radius-sm);width:36px;height:36px;color:var(--text-secondary);cursor:pointer;background:0 0;border:1px solid #0000;flex:none;justify-content:center;align-items:center;margin:0;padding:0;display:none}.tb-menu-btn:hover{background:var(--bg-elevated);color:var(--text-primary)}.app-nav-scrim{z-index:calc(var(--z-modal) - 1);background:var(--text-primary);border:none;margin:0;padding:0;display:none;position:fixed;top:48px;right:0;bottom:0;left:0}@supports (color:color-mix(in lab,red,red)){.app-nav-scrim{background:color-mix(in srgb,var(--text-primary) 35%,transparent)}}.app-nav-scrim{cursor:pointer}@media(max-width:768px){.tb-menu-btn{display:inline-flex}.tb-search,.tb-workspace,.tb-crumbs{display:none}.app.nav-open .app-nav-scrim{display:block}.body{position:relative}.side{z-index:var(--z-modal);width:min(280px,86vw);transition:transform var(--dur-normal) var(--ease);box-shadow:var(--shadow-3);background:var(--bg-surface);flex:none;position:fixed;top:48px;bottom:0;left:0;transform:translate(-105%)}.app.nav-open .side{transform:translate(0)}.main{width:100%;padding:1rem}.page-head{align-items:stretch;gap:var(--space-md);flex-direction:column}.page-actions{flex-wrap:wrap}.search-box{flex:160px;min-width:0}.panel{overflow-x:auto}.dtable{min-width:640px}}@media(max-width:640px){.page-title{font-size:1.25rem}.toolbar{gap:6px}}@media(prefers-reduced-motion:reduce){.side{transition:none}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}
