@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{text-indent:0;text-rendering:auto;font:1.21em/1.2 KaTeX_Main,Times New Roman,serif;position:relative}.katex *{border-color:currentColor;-ms-high-contrast-adjust:none!important}.katex .katex-version:after{content:"0.16.45"}.katex .katex-mathml{clip:rect(1px,1px,1px,1px);border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.katex .katex-html>.newline{display:block}.katex .base{white-space:nowrap;width:min-content;position:relative}.katex .base,.katex .strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;table-layout:fixed;display:inline-table}.katex .vlist-r{display:table-row}.katex .vlist{vertical-align:bottom;display:table-cell;position:relative}.katex .vlist>span{height:0;display:block;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{width:0;overflow:hidden}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{vertical-align:bottom;width:2px;min-width:2px;font-size:1px;display:table-cell}.katex .vbox{flex-direction:column;align-items:baseline;display:inline-flex}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{flex-direction:row;display:inline-flex}.katex .thinbox{width:0;max-width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;width:100%;display:inline-block}.katex .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .smash{line-height:0;display:inline}.katex .clap,.katex .llap,.katex .rlap{width:0;position:relative}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;width:100%;display:inline-block}.katex .hdashline{border-bottom-style:dashed;width:100%;display:inline-block}.katex .sqrt>.root{margin-left:.277778em;margin-right:-.555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.833333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.16667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.33333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.66667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.45667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.14667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.714286em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.857143em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.14286em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.28571em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.42857em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.71429em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.05714em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.46857em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.96286em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.55429em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.11111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.33333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.30444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.76444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.416667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.583333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.833333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.72833em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.07333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.347222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.416667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.486111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.694444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.833333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.44028em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.72778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.289352em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.347222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.405093em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.462963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.520833em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.578704em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.694444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.833333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.20023em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.43981em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.24108em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.289296em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.337512em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.385728em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.433944em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.48216em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.578592em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.694311em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.833173em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.19961em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.200965em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.241158em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.281351em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.321543em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.361736em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.401929em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.482315em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.578778em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.694534em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.833601em}.katex .fontsize-ensurer.reset-size11.size11,.katex .sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{width:.12em;display:inline-block}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{min-width:1px;display:inline-block}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;height:inherit;width:100%;display:block;position:absolute}.katex svg path{stroke:none}.katex svg{fill-rule:nonzero;fill-opacity:1;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1}.katex img{border-style:none;min-width:0;max-width:none;min-height:0;max-height:none}.katex .stretchy{width:100%;display:block;position:relative;overflow:hidden}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{width:100%;position:relative;overflow:hidden}.katex .halfarrow-left{width:50.2%;position:absolute;left:0;overflow:hidden}.katex .halfarrow-right{width:50.2%;position:absolute;right:0;overflow:hidden}.katex .brace-left{width:25.1%;position:absolute;left:0;overflow:hidden}.katex .brace-center{width:50%;position:absolute;left:25%;overflow:hidden}.katex .brace-right{width:25.1%;position:absolute;right:0;overflow:hidden}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{box-sizing:border-box;border:.04em solid}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{box-sizing:border-box;border-top:.049em solid;border-right:.049em solid;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{text-align:left;display:inline-block;position:absolute;right:calc(50% + .3em)}.katex .cd-label-right{text-align:right;display:inline-block;position:absolute;left:calc(50% + .3em)}.katex-display{text-align:center;margin:1em 0;display:block}.katex-display>.katex{text-align:center;white-space:nowrap;display:block}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{text-align:left;padding-left:2em}body{counter-reset:katexEqnNo mmlEqnNo}.public-site{min-height:100vh;font-family:Inter,system-ui,sans-serif}.public-site h1,.public-site h2,.public-site h3{font-family:Cormorant Garamond,Georgia,serif}.public-header{z-index:100;isolation:isolate;-webkit-backdrop-filter:blur(20px)saturate(180%);backdrop-filter:blur(20px)saturate(180%);background:#fff;grid-template-columns:auto auto 1fr;align-items:center;gap:28px;width:100%;max-width:none;height:68px;min-height:68px;margin:0;padding:0 clamp(24px,4vw,72px);display:grid;position:sticky;top:0;box-shadow:inset 0 -1px #0d422524,0 14px 34px #0d42251c,0 2px 8px #0a0a0809}.public-header>*{z-index:1;position:relative}.public-header:before{content:none}.public-header:after{content:"";z-index:2;pointer-events:none;background:linear-gradient(90deg,#0000,#0d4225c7,#0000);border-radius:999px;width:min(640px,66vw);height:2px;position:absolute;bottom:0;left:50%;right:auto;transform:translate(-50%)}.public-brand,.login-brand{color:#0a0a08;align-items:center;gap:10px;font-family:Cormorant Garamond,Georgia,serif;line-height:1;text-decoration:none;display:inline-flex}.public-brand{min-height:48px}.public-brand-icon{background:#0a0a08;border-radius:8px;flex:none;justify-content:center;align-items:center;width:34px;height:34px;transition:background .2s,transform .2s;display:inline-flex}.public-brand:hover .public-brand-icon{background:#0d4225;transform:rotate(-6deg)}.public-brand-icon-mark{--calibrx-ring:#fff;--calibrx-x:#6ba88a;--calibrx-dot:#fff;color:#fff}.public-brand-word{color:#0a0a08;letter-spacing:-.03em;font-family:Cormorant Garamond,Georgia,serif;font-size:26px;font-style:italic;font-weight:600}.public-brand sup{color:#0d4225;letter-spacing:.12em;text-transform:uppercase;background:#ebf2ed;border:1px solid #d4e5da;border-radius:3px;margin-left:-2px;padding:2px 6px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:9px;font-weight:800;line-height:1;display:inline-block;transform:translateY(-8px)}.calibrx-wordmark{justify-content:center;align-items:center;gap:1px;min-width:0;line-height:1;display:inline-flex}.calibrx-wordmark-text{letter-spacing:-.02em;font-family:Cormorant Garamond,Georgia,serif;font-style:italic;font-weight:400;line-height:1}.calibrx-mark{--calibrx-ring:currentColor;--calibrx-x:#0d4225;--calibrx-dot:#fff;flex:none;display:block;overflow:visible}.calibrx-mark-ring{fill:none;stroke:var(--calibrx-ring);stroke-width:2.2px}.calibrx-mark-x{stroke:var(--calibrx-x);stroke-width:5.5px;stroke-linecap:square}.calibrx-mark-dot{fill:var(--calibrx-dot);stroke:var(--calibrx-ring);stroke-width:1.5px}.public-brand-wordmark .calibrx-wordmark-text{color:#0a0a08;font-size:38px}.public-brand-wordmark .calibrx-mark{--calibrx-ring:#0a0a08;--calibrx-x:#0d4225;--calibrx-dot:#fff}.public-brand-mark{--calibrx-ring:#0a0a08;--calibrx-x:#0d4225;--calibrx-dot:#fff;color:#0a0a08;flex:none}.public-nav{justify-content:flex-start;align-items:center;gap:4px;display:flex}.public-nav-link,.public-link-btn,.public-secondary-btn,.public-primary-btn{border-radius:7px;justify-content:center;align-items:center;min-height:42px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.public-nav-link{color:#4a4a44;letter-spacing:-.01em;border-radius:6px;gap:7px;min-height:auto;padding:7px 14px;font-size:13.5px;font-weight:500}.public-nav-link:hover,.public-nav-link.active{color:#0a0a08;background:#0000000a}.public-nav-link.active{font-weight:600}.public-nav-marker{flex:none;width:13px;height:13px;display:inline-block;position:relative}.public-nav-marker.arrow:before{content:"↗";color:currentColor;font-size:19px;font-weight:700;line-height:1;position:absolute;inset:-5px 0 0}.public-nav-marker.chevron:before,.public-nav-marker.chevron:after{content:"";background:currentColor;border-radius:999px;width:8px;height:2px;position:absolute;top:5px}.public-nav-marker.chevron:before{left:0;transform:rotate(45deg)}.public-nav-marker.chevron:after{right:0;transform:rotate(-45deg)}.public-actions,.public-hero-actions{align-items:center;gap:8px;display:flex}.public-actions{justify-self:end}.public-link-btn,.public-secondary-btn{color:#4a4a44;background:0 0;border:1px solid #0000;padding:0 16px}.public-primary-btn{color:#fff;background:#0a0a08;border:1px solid #0a0a08;padding:0 18px;position:relative;overflow:hidden;box-shadow:0 1px 3px #00000026,0 4px 12px -3px #0003}.public-primary-btn:before{content:"";pointer-events:none;background:linear-gradient(135deg,#ffffff1a,#0000 60%);position:absolute;inset:0}.public-primary-btn:hover{background:#0d4225;border-color:#0d4225;transform:translateY(-1px);box-shadow:0 2px 8px #0d42254d,0 6px 20px -4px #0d422540}.public-nav-divider{background:#0000001a;width:1px;height:20px;margin:0 4px}.public-primary-btn:disabled,.public-secondary-btn:disabled{cursor:wait;opacity:.66}.public-secondary-btn:hover,.public-link-btn:hover{color:#0a0a08;background:#0000000d;border-color:#0000}.public-primary-btn.large,.public-secondary-btn.large{min-height:48px;padding-inline:22px}.public-primary-btn.full,.public-secondary-btn.full{width:100%}.landing-hero,.landing-section,.landing-compare,.landing-final-cta{width:min(1180px,100% - 56px);margin-inline:auto}.landing-hero{isolation:isolate;background:radial-gradient(900px 360px at 50% 0,#6ba88a16,#0000 70%),#0a0a08;width:100%;max-width:none;padding:78px 0 64px;position:relative;overflow:hidden}.landing-hero:before{content:none}.landing-hero:after{content:none;display:none}.landing-hero-grid{z-index:1;grid-template-columns:1fr;align-items:center;gap:0;width:min(1180px,100% - 56px);max-width:1180px;margin-inline:auto;display:grid;position:relative}.landing-hero-copy{text-align:center;flex-direction:column;align-items:center;gap:0;display:flex}.landing-hero-eyebrow{color:#f4f1e8c7;letter-spacing:.28em;text-transform:uppercase;background:#f4f1e808;border:1px solid #f4f1e824;border-radius:999px;align-items:center;gap:10px;margin:0 0 28px;padding:6px 14px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;font-weight:600;display:inline-flex}.landing-hero-eyebrow>span{background:#6ba88a;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 3px #6ba88a2e}.landing-eyebrow,.landing-section-eyebrow{color:var(--accent);letter-spacing:.28em;text-transform:uppercase;align-items:center;gap:10px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:11px;font-weight:800;display:inline-flex}.landing-eyebrow{letter-spacing:.34em;background:#0e63380e;border:1px solid #0e63383d;border-radius:999px;margin-bottom:28px;padding:6px 14px;font-size:9px}.landing-eyebrow span{background:var(--accent);border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 5px #0e63381a}.landing-hero h1,.landing-section h2,.landing-compare h2,.landing-final-cta h2{letter-spacing:-.035em;color:#0a0a08;font-family:Cormorant Garamond,Georgia,serif;font-weight:600}.landing-hero h1{color:#f4f1e8;letter-spacing:-.035em;max-width:880px;margin:0 0 18px;font-size:clamp(34px,4.2vw,54px);font-style:normal;font-weight:600;line-height:1.06}.landing-hero-title-line{color:#f4f1e8eb;font-weight:600;display:block}.landing-hero-title-accent{color:#f4f1e88c;margin-top:8px;font-size:.78em;font-style:italic;font-weight:400;display:block}.landing-hero h1 .landing-hero-title-accent em{color:#6ba88a;font-style:italic;font-weight:500;text-decoration:none}.landing-hero h1 em,.landing-section h2 em,.landing-compare h2 em,.landing-final-cta h2 em{color:#0d4225;font-style:italic;font-weight:700}.landing-hero h1 em{color:#6ba88a;font-weight:500;display:inline;position:relative}.landing-hero h1 em:after{display:none}.landing-hero-sub{color:#f4f1e899;letter-spacing:0;max-width:540px;margin:0 0 44px;font-family:Inter,system-ui,sans-serif;font-size:14.5px;font-style:normal;font-weight:400;line-height:1.55}.landing-hero-sub strong{color:#f4f1e8;font-weight:600}.landing-workflow-diagram{isolation:isolate;width:min(1120px,100%);min-height:342px;margin:0 auto 22px;padding-top:6px;position:relative}.landing-workflow-loop{z-index:0;box-shadow:0 18px 42px #0a0a0821, inset 0 0 0 2px rgba(var(--landing-green-rgb), .28);pointer-events:none;background:0 0;border:12px solid #0a0a08;border-radius:88px;position:absolute;inset:58px -34px 48px}.landing-workflow-loop:before{content:"";border:12px solid #0000;border-left-color:var(--landing-green);border-bottom-color:var(--landing-green);border-radius:inherit;opacity:.92;position:absolute;inset:-12px}.landing-workflow-loop:after{content:"";border:12px solid #0000;border-top-color:var(--landing-green-dark);border-right-color:var(--landing-green-dark);border-radius:inherit;opacity:.9;position:absolute;inset:-12px}.landing-workflow-badge{z-index:3;background:#fff;border:2px solid #0a0a08;border-radius:24px;place-items:center;gap:5px;width:max-content;min-width:330px;margin:0 auto;padding:17px 30px 16px;display:grid;position:relative;box-shadow:0 18px 38px #0a0a082e,6px 6px #0a0a081f}.landing-workflow-wordmark .calibrx-wordmark-text{color:#0a0a08;font-size:42px}.landing-workflow-wordmark .calibrx-mark{--calibrx-ring:#0a0a08;--calibrx-x:var(--landing-green);--calibrx-dot:#fff}.landing-workflow-badge>span:not(.calibrx-wordmark){color:var(--landing-green-dark);letter-spacing:.2em;text-transform:uppercase;font-family:JetBrains Mono,ui-monospace,monospace;font-size:9px;font-weight:900}.landing-workflow-panels{z-index:2;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-top:86px;display:grid;position:relative}.landing-workflow-panel{background:#fff;border:2px solid #0a0a08;border-radius:18px;flex-direction:column;gap:10px;min-height:164px;padding:12px;display:flex;box-shadow:5px 5px #0a0a081f,0 14px 28px #0a0a081a}.landing-workflow-panel-head{background:linear-gradient(135deg, var(--landing-green), var(--landing-green-dark));color:#fff;min-height:50px;box-shadow:0 10px 24px rgba(var(--landing-green-rgb), .28);border-radius:14px;grid-template-columns:34px 1fr;align-items:center;gap:8px;padding:7px 10px 7px 7px;display:grid}.landing-workflow-panel-head span{width:34px;height:34px;color:var(--landing-green-dark);background:#fff;border:1.5px solid #fff;border-radius:50%;place-items:center;font-family:JetBrains Mono,ui-monospace,monospace;font-size:9px;font-style:normal;font-weight:700;display:inline-grid}.landing-workflow-panel-head strong{color:#fff;justify-self:start;font-family:Cormorant Garamond,Georgia,serif;font-size:16px;font-style:italic;font-weight:700;line-height:1.02}.landing-workflow-panel>p{color:#4a4a44;text-align:left;margin:0;font-size:11.2px;line-height:1.32}@media (width<=640px){.landing-workflow-panels{grid-template-columns:1fr}}.landing-workflow-track.landing-hero-steps{text-align:center;background:0 0;border:0;grid-template-columns:repeat(6,minmax(0,1fr));gap:0 24px;width:min(1080px,100%);margin:18px auto 36px;padding:0;display:grid;overflow:visible}.landing-workflow-track.landing-hero-steps:before{display:none}.landing-workflow-track.landing-hero-steps article{min-height:0;box-shadow:none;background:0 0;border:0;border-radius:0;padding:6px 4px 4px;transition:transform .22s;position:relative}.landing-workflow-track.landing-hero-steps article:hover{background:0 0;transform:translateY(-1px)}.landing-workflow-track.landing-hero-steps article:not(:last-child):after{content:"";z-index:0;opacity:.95;background-image:linear-gradient(90deg,#6ba88a8c 0 4px,#0000 4px 9px);background-repeat:repeat-x;background-size:9px 1px;width:calc(100% - 44px);height:1px;transition:opacity .22s,background-image .22s;position:absolute;top:24px;left:calc(50% + 22px)}.landing-workflow-track.landing-hero-steps article>span{z-index:2;color:#f4f1e8;letter-spacing:.06em;font-variant-numeric:tabular-nums;background:#0a0a08;border:1.4px solid #6ba88abf;border-radius:50%;place-items:center;width:40px;height:40px;margin:0 auto 14px;padding:0;font-family:JetBrains Mono,ui-monospace,monospace;font-size:12.5px;font-style:normal;font-weight:800;line-height:1;transition:color .22s,border-color .22s,box-shadow .22s,transform .22s;display:inline-grid;position:relative;box-shadow:0 0 0 6px #0a0a08,0 0 0 7px #6ba88a38}.landing-workflow-track.landing-hero-steps article:hover>span{color:#6ba88a;border-color:#6ba88a;transform:scale(1.05);box-shadow:0 0 0 6px #0a0a08,0 0 0 7px #6ba88a8c,0 10px 24px #6ba88a52}.landing-workflow-track.landing-hero-steps h3{color:#f4f1e8;letter-spacing:-.01em;margin:0 0 5px;font-family:Cormorant Garamond,Georgia,serif;font-size:15.5px;font-style:italic;font-weight:500;line-height:1.16}.landing-workflow-track.landing-hero-steps h3 em{color:#f4f1e8;font-style:italic;font-weight:600}.landing-workflow-track.landing-hero-steps p{color:#f4f1e880;letter-spacing:0;text-transform:none;max-width:18ch;margin:0 auto;font-family:Inter,system-ui,sans-serif;font-size:10.5px;font-style:normal;font-weight:400;line-height:1.5}.landing-hero-actions{flex-direction:column;justify-content:center;align-items:center;gap:14px;margin-top:12px;margin-bottom:0;display:flex}.landing-hero-actions>span{color:#f4f1e88c;letter-spacing:.18em;text-transform:uppercase;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;font-weight:500}.landing-hero-actions>span strong{color:#f4f1e8}.landing-btn{letter-spacing:.01em;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;min-height:42px;padding:0 22px;font-family:Google Sans,Inter,system-ui,sans-serif;font-size:13px;font-weight:700;text-decoration:none;transition:transform .16s,box-shadow .16s,background .16s,border-color .16s;display:inline-flex}.landing-btn:hover{transform:translateY(-1px)}.landing-btn-primary{color:#fff;background:#2f9b63;border-color:#0e633857;box-shadow:0 12px 24px #2f9b633d}.landing-hero-actions .landing-btn-primary{color:#0a0a08;letter-spacing:.005em;background:#6ba88a;border-color:#0000;min-width:240px;min-height:50px;padding-inline:32px;font-size:13.5px;font-weight:700;box-shadow:0 0 0 1px #f4f1e80d,0 18px 38px #6ba88a47}.landing-hero-actions .landing-btn-primary:hover{background:#80c19f;border-color:#0000;box-shadow:0 0 0 1px #f4f1e814,0 22px 44px #6ba88a5c}.landing-btn-primary:hover{background:#278957;border-color:#0e63386b;box-shadow:0 16px 32px #2f9b634d}.landing-trust-line{border-top:1px solid #141e191f;justify-content:center;align-items:center;gap:14px;max-width:560px;padding-top:18px;display:flex}.landing-trust-line>span{color:#d4a56a;white-space:nowrap;font-size:13px}.landing-trust-line p{color:#4a4a44;letter-spacing:.04em;font-family:JetBrains Mono,ui-monospace,monospace;font-size:11px;font-weight:600}.landing-trust-line strong{color:#0a0a08}.landing-demo{aspect-ratio:1.08;justify-self:end;width:100%;max-width:520px;position:relative}.landing-demo-stage{background:#0a0a08;border:1.5px solid #0a0a08;position:absolute;inset:0;overflow:hidden;box-shadow:0 30px 60px -20px #0d422547,0 18px 36px -18px #0000003d}.landing-demo-strip{background:#061f12;border-bottom:1px solid #f4f1e81a;justify-content:space-between;align-items:center;gap:12px;min-height:36px;padding:9px 14px;display:flex}.landing-demo-strip span,.landing-demo-strip em{color:#6ba88a;letter-spacing:.24em;text-transform:uppercase;font-family:JetBrains Mono,ui-monospace,monospace;font-size:9px;font-style:normal;font-weight:800}.landing-demo-strip em{color:#f4f1e87a;letter-spacing:.04em;text-transform:none}.landing-demo-image{background:radial-gradient(circle at 50% 48%,#6ba88a38,#0000 46%),#0a0a08;height:calc(100% - 36px);position:relative;overflow:hidden}.landing-demo-grid{opacity:.72;background-image:linear-gradient(#6ba88a5c 1px,#0000 1px),linear-gradient(90deg,#6ba88a5c 1px,#0000 1px);background-size:38px 38px;border-radius:45%;position:absolute;inset:8%;transform:perspective(520px)rotateX(8deg)scale(1.08)}.landing-demo-reticle{border:1px solid #f4f1e86b;border-radius:50%;width:72px;height:72px;position:absolute;top:48%;left:50%;transform:translate(-50%,-50%)}.landing-demo-reticle:before,.landing-demo-reticle:after{content:"";background:#6ba88a;position:absolute}.landing-demo-reticle:before{height:2px;top:50%;left:12px;right:12px}.landing-demo-reticle:after{width:2px;top:12px;bottom:12px;left:50%}.landing-demo-corners{pointer-events:none;grid-template-rows:repeat(6,1fr);grid-template-columns:repeat(6,1fr);place-items:center;display:grid;position:absolute;inset:14% 13% 18%}.landing-demo-corners span{width:8px;height:8px;animation:.38s ease-out both landing-dot-pop;animation-delay:var(--delay);background:#6ba88a;border:1.2px solid #f4f1e8;border-radius:50%}@keyframes landing-dot-pop{0%{opacity:0;transform:scale(.2)}to{opacity:1;transform:scale(1)}}.landing-demo-status,.landing-demo-readout,.landing-demo-matrix{z-index:3;position:absolute}.landing-demo-status{color:#0d4225;letter-spacing:.2em;text-transform:uppercase;background:#f4f1e8f0;border:1px solid #0d4225;padding:5px 9px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:9px;font-weight:900;top:12px;right:12px}.landing-demo-status:before{content:"✓ "}.landing-demo-readout{background:#0d4225eb;border:1px solid #6ba88a;padding:8px 11px;bottom:12px;left:12px}.landing-demo-readout span,.landing-demo-matrix>span{color:#6ba88a;letter-spacing:.24em;text-transform:uppercase;margin-bottom:5px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:8px;font-weight:900;display:block}.landing-demo-readout strong{color:#f4f1e8;font-family:JetBrains Mono,ui-monospace,monospace;font-size:16px}.landing-demo-readout strong em{color:#6ba88a;margin-left:3px;font-size:11px;font-style:normal}.landing-demo-matrix{background:#fff;border:1.5px solid #0a0a08;min-width:160px;padding:10px 12px;bottom:18px;right:18px;box-shadow:4px 4px #0a0a08}.landing-demo-matrix p{border-bottom:1px solid #141e191a;justify-content:space-between;gap:14px;padding:3px 0;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;display:flex}.landing-demo-matrix p:last-child{border-bottom:0}.landing-demo-matrix em{color:#6b6b66;font-style:normal}.landing-demo-matrix strong{color:#0a0a08}.landing-demo-corner{z-index:4;background:#fff;border:1.5px solid #0d4225;width:18px;height:18px;position:absolute}.landing-demo-corner:before,.landing-demo-corner:after{content:"";background:#0d4225;position:absolute}.landing-demo-corner:before{width:8px;height:1.5px;top:50%;left:50%;transform:translate(-50%,-50%)}.landing-demo-corner:after{width:1.5px;height:8px;top:50%;left:50%;transform:translate(-50%,-50%)}.landing-demo-corner.tl{top:-10px;left:-10px}.landing-demo-corner.tr{top:-10px;right:-10px}.landing-demo-corner.bl{bottom:-10px;left:-10px}.landing-demo-corner.br{bottom:-10px;right:-10px}.landing-ticker{background:#f7faf7;border-block:1px solid #0d42252e;margin-bottom:56px;padding:14px 0;overflow:hidden}.landing-ticker>div{gap:52px;width:max-content;animation:32s linear infinite landing-ticker;display:flex}@keyframes landing-ticker{0%{transform:translate(0)}to{transform:translate(-50%)}}.landing-ticker span{color:#202820;white-space:nowrap;align-items:center;gap:12px;font-family:Cormorant Garamond,Georgia,serif;font-size:19px;font-style:italic;font-weight:600;display:inline-flex}.landing-ticker span:after{content:"*";color:#0d4225;font-family:JetBrains Mono,ui-monospace,monospace;font-size:14px;font-style:normal}.landing-section,.landing-compare{margin-bottom:56px}.landing-section-eyebrow{color:#0d4225;margin-bottom:14px}.landing-section-eyebrow:before{content:"";background:currentColor;width:28px;height:1px}.landing-section h2,.landing-compare h2{max-width:760px;margin:0 0 12px;font-size:clamp(31px,4vw,46px);line-height:1.02}.landing-section-sub{color:#333a34;max-width:610px;margin:0 0 26px;font-size:14.5px;line-height:1.5}.landing-feature-band{background:#fff;border-block:1px solid #0d42252e;width:100%;max-width:none;padding:48px clamp(24px,4vw,72px)}.landing-feature-band>*{width:min(1180px,100%);margin-inline:auto}.landing-section-intro{text-align:left}.landing-feature-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:14px;display:grid}.landing-feature-tile{background:#fff;border:1.75px solid #0a0a08;flex-direction:column;min-height:262px;padding:20px 18px 18px;transition:transform .22s,box-shadow .22s;display:flex;overflow:hidden;box-shadow:3px 3px #0a0a0814}.landing-feature-tile:hover{transform:translate(-3px,-3px);box-shadow:6px 6px #0a0a08}.landing-feature-tile.featured{grid-area:auto;min-height:262px;padding:20px 18px 18px}.landing-feature-tile:nth-child(odd){color:#f4f1e8;background:radial-gradient(520px 300px at 80% 18%,#6ba88a26,#0000 62%),#0a0a08}.landing-feature-tile>span{color:#0d4225;margin-bottom:12px;font-family:Cormorant Garamond,Georgia,serif;font-size:36px;font-style:italic;font-weight:600;line-height:1}.landing-feature-tile:nth-child(odd)>span{color:#6ba88a;font-size:36px}.landing-feature-tile h3{color:#0a0a08;margin:0 0 8px;font-family:Cormorant Garamond,Georgia,serif;font-size:21px;font-weight:600;line-height:1.08}.landing-feature-tile:nth-child(odd) h3{color:#f4f1e8;font-size:21px}.landing-feature-tile h3 em{color:#0d4225;font-style:italic}.landing-feature-tile:nth-child(odd) h3 em{color:#6ba88a}.landing-feature-tile p{color:#303730;font-size:12.5px;line-height:1.42}.landing-feature-tile:nth-child(odd) p{color:#f4f1e8b8;font-size:13px}.landing-feature-tile p strong{color:inherit;font-weight:800}.landing-feature-visual{color:#0d4225;border-top:1px solid #0d422529;min-height:82px;margin-top:auto;padding:14px 4px 0;position:relative;overflow:hidden}.landing-feature-tile:nth-child(odd) .landing-feature-visual{border-color:#f4f1e829}.landing-feature-visual-pattern{grid-template-columns:repeat(8,minmax(0,1fr));grid-auto-rows:1fr;gap:4px;min-height:82px;display:grid}.landing-feature-visual-pattern span{aspect-ratio:1;background:#f4f1e838;position:relative}.landing-feature-tile:nth-child(odd) .landing-feature-visual-pattern span{background:#f4f1e838}.landing-feature-visual-pattern span.detected{background:#a8d8bd}.landing-feature-visual-pattern span.detected:after{content:"";background:#315844;border-radius:50%;position:absolute;inset:30%}.landing-feature-visual-project{grid-template-columns:repeat(6,1fr);align-items:center;gap:8px;min-height:74px;display:grid}.landing-feature-visual-project:before{content:"";opacity:.42;background:linear-gradient(90deg,#0000,currentColor,#0000);height:2px;position:absolute;top:48px;left:8%;right:8%}.landing-feature-visual-project span{z-index:1;background:#fff;border:1px solid;border-radius:50%;justify-self:center;width:22px;height:22px;position:relative;box-shadow:0 0 0 5px #0d422514}.landing-feature-visual-project span:nth-child(2n){background:#6ba88a}.landing-feature-visual-project span:nth-child(3){transform:translateY(-9px)}.landing-feature-visual-project span:nth-child(5){transform:translateY(8px)}.landing-feature-visual-project span:nth-child(6){border-radius:8px;width:34px}.landing-feature-visual-project span:nth-child(6):after{content:"";opacity:.7;border-top:2px solid;border-bottom:2px solid;position:absolute;inset:6px 8px}.landing-feature-visual-upload{justify-content:center;align-items:flex-end;gap:10px;min-height:74px;display:flex}.landing-feature-visual-upload span{background:linear-gradient(#ffffffb8,#0000),#0d422514;border:1px solid;border-radius:4px 4px 0 0;width:30px;position:relative;box-shadow:4px 4px #0d42251f}.landing-feature-visual-upload span:before{content:"";opacity:.42;background:currentColor;height:2px;position:absolute;top:7px;left:6px;right:6px;box-shadow:0 7px}.landing-feature-visual-upload span:after{content:"";clip-path:polygon(0 0,100% 100%,0 100%);background:#ffffffb8;border-bottom:1px solid;border-left:1px solid;width:10px;height:10px;position:absolute;top:-1px;right:-1px}.landing-feature-visual-upload span:first-child{height:30px}.landing-feature-visual-upload span:nth-child(2){background:#6ba88a;height:42px}.landing-feature-visual-upload span:nth-child(3){height:24px}.landing-feature-visual-upload span:nth-child(4){background:#6ba88a;height:48px}.landing-feature-visual-upload span:nth-child(5){height:34px}.landing-feature-visual-parameters{align-content:center;gap:10px;min-height:74px;padding-inline:6px;display:grid}.landing-feature-visual-parameters span{background:#0d42251f;border-radius:999px;height:6px;position:relative;overflow:visible}.landing-feature-visual-parameters span:before{content:"";border-radius:inherit;background:#6ba88a;width:54%;position:absolute;inset:0 auto 0 0}.landing-feature-visual-parameters span:after{content:"";background:#fff;border:1px solid;border-radius:50%;width:14px;height:14px;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 2px 8px #0d422538}.landing-feature-visual-parameters span:first-child:after{left:18%}.landing-feature-visual-parameters span:nth-child(2):after{left:58%}.landing-feature-visual-parameters span:nth-child(3):after{left:36%}.landing-feature-visual-parameters span:nth-child(4):after{left:74%}.landing-feature-visual-parameters span:nth-child(2):before{width:68%}.landing-feature-visual-parameters span:nth-child(3):before{width:42%}.landing-feature-visual-parameters span:nth-child(4):before{width:82%}.landing-feature-visual-validate{grid-template-columns:repeat(5,1fr);align-items:center;gap:7px;min-height:74px;display:grid}.landing-feature-visual-validate span{background:linear-gradient(#ffffffb3,#0000),#0d42250f;border:1px solid;border-radius:5px;height:42px;position:relative}.landing-feature-visual-validate span:after{content:"";background:currentColor;border-radius:50%;width:9px;height:9px;position:absolute;bottom:8px;left:50%;transform:translate(-50%)}.landing-feature-visual-validate span:before{content:"";opacity:.42;background:currentColor;height:2px;position:absolute;top:8px;left:7px;right:7px;box-shadow:0 7px}.landing-feature-visual-validate span:first-child,.landing-feature-visual-validate span:nth-child(2),.landing-feature-visual-validate span:nth-child(4){background:#6ba88a}.landing-feature-visual-validate span:nth-child(3){background:0 0}.landing-feature-visual-validate span:nth-child(3):after{background:#c4433a}.landing-feature-visual-calibrate{justify-content:space-between;align-items:flex-end;min-height:82px;padding:20px 7px 7px 18px;display:flex}.landing-feature-visual-calibrate:before{content:"";opacity:.42;background:linear-gradient(90deg,currentColor 1px,#0000 1px) 0 0/24% 100%,linear-gradient(#6ba88a42 1px,#0000 1px) 0 0/100% 22%,linear-gradient(#6ba88a14,#0000);border-bottom:1px solid;border-left:1px solid;position:absolute;inset:20px 5px 7px 16px}.landing-feature-visual-calibrate:after{content:"error down · epochs";color:currentColor;letter-spacing:.12em;text-transform:uppercase;font-family:JetBrains Mono,ui-monospace,monospace;font-size:7px;font-weight:900;position:absolute;top:8px;right:4px}.landing-feature-visual-calibrate span{z-index:1;background:#6ba88a;border:1px solid;border-radius:50%;width:10px;height:10px;position:relative;box-shadow:0 0 0 4px #6ba88a24}.landing-feature-visual-calibrate span:before{content:"";transform-origin:0;background:#6ba88a;width:31px;height:2px;position:absolute;top:3px;left:8px}.landing-feature-visual-calibrate span:last-child:before{content:none}.landing-feature-visual-calibrate span:first-child{transform:translateY(-47px)}.landing-feature-visual-calibrate span:first-child:before{transform:rotate(18deg)}.landing-feature-visual-calibrate span:nth-child(2){transform:translateY(-37px)}.landing-feature-visual-calibrate span:nth-child(2):before{transform:rotate(22deg)}.landing-feature-visual-calibrate span:nth-child(3){transform:translateY(-25px)}.landing-feature-visual-calibrate span:nth-child(3):before{transform:rotate(14deg)}.landing-feature-visual-calibrate span:nth-child(4){transform:translateY(-18px)}.landing-feature-visual-calibrate span:nth-child(4):before{transform:rotate(8deg)}.landing-feature-visual-calibrate span:nth-child(5){transform:translateY(-14px)}.landing-feature-visual-calibrate span:nth-child(5):before{transform:rotate(4deg)}.landing-feature-visual-calibrate span:nth-child(6){transform:translateY(-12px)}.landing-feature-visual-undistort{background:linear-gradient(90deg,#0000 calc(50% - .5px),currentColor calc(50% - .5px) calc(50% + .5px),#0000 calc(50% + .5px)),radial-gradient(circle at 23% 58%,#6ba88a24,#0000 34%),radial-gradient(circle at 76% 58%,#6ba88a33,#0000 34%);border-radius:8px;grid-template-rows:repeat(2,1fr);grid-template-columns:repeat(8,1fr);gap:4px;min-height:88px;padding:24px 6px 8px;display:grid}.landing-feature-visual-undistort span{background:#0d42250d;border:1px solid;border-radius:5px;position:relative;overflow:hidden;box-shadow:0 4px 10px #0d422514}.landing-feature-visual-undistort span:after{content:"";opacity:.16;background:linear-gradient(90deg,#0000 47%,currentColor 47% 53%,#0000 53%),linear-gradient(#0000 47%,currentColor 47% 53%,#0000 53%);border-radius:2px;position:absolute;inset:4px}.landing-feature-visual-undistort span:nth-child(-n+4),.landing-feature-visual-undistort span:nth-child(n+9):nth-child(-n+12){background:radial-gradient(circle at 72% 28%,#6ba88a38,#0000 34%),#0d42250a;border-style:dashed}.landing-feature-visual-undistort span:first-child,.landing-feature-visual-undistort span:nth-child(3),.landing-feature-visual-undistort span:nth-child(10),.landing-feature-visual-undistort span:nth-child(12){transform:skew(-16deg)rotate(-4deg)}.landing-feature-visual-undistort span:nth-child(2),.landing-feature-visual-undistort span:nth-child(4),.landing-feature-visual-undistort span:nth-child(9),.landing-feature-visual-undistort span:nth-child(11){transform:skew(13deg)rotate(3deg)}.landing-feature-visual-undistort span:nth-child(n+5):nth-child(-n+8),.landing-feature-visual-undistort span:nth-child(n+13){background:#6ba88a;border-style:solid;transform:none}.landing-feature-visual-undistort span:nth-child(n+5):nth-child(-n+8):after,.landing-feature-visual-undistort span:nth-child(n+13):after{opacity:.26}.landing-feature-visual-undistort:before{content:"distorted";color:currentColor;letter-spacing:.16em;text-transform:uppercase;font-family:JetBrains Mono,ui-monospace,monospace;font-size:7px;font-weight:900;position:absolute;top:9px;left:8px}.landing-feature-visual-undistort:after{content:"corrected";color:currentColor;letter-spacing:.16em;text-transform:uppercase;font-family:JetBrains Mono,ui-monospace,monospace;font-size:7px;font-weight:900;position:absolute;top:9px;right:8px}.landing-feature-visual-rectify{grid-template-columns:repeat(2,1fr);gap:14px;min-height:74px;display:grid}.landing-feature-visual-rectify span{background:#0d42250d;border:1px solid;border-radius:4px;position:relative;overflow:hidden}.landing-feature-visual-rectify span:after{content:"";border:1.5px solid #6ba88a;position:absolute;inset:8px;box-shadow:0 0 0 999px #6ba88a14}.landing-feature-visual-rectify span:before{content:"";opacity:.18;background:linear-gradient(90deg,#0000 49%,currentColor 49% 51%,#0000 51%),linear-gradient(#0000 49%,currentColor 49% 51%,#0000 51%);position:absolute;inset:0}.landing-feature-tile:nth-child(odd) .landing-feature-visual-project span,.landing-feature-tile:nth-child(odd) .landing-feature-visual-parameters span:after,.landing-feature-tile:nth-child(odd) .landing-feature-visual-calibrate span{background:#0a0a08}.landing-feature-tile:nth-child(odd) .landing-feature-visual-upload span,.landing-feature-tile:nth-child(odd) .landing-feature-visual-validate span,.landing-feature-tile:nth-child(odd) .landing-feature-visual-undistort span,.landing-feature-tile:nth-child(odd) .landing-feature-visual-rectify span{background:#f4f1e814}.landing-feature-tile:nth-child(odd) .landing-feature-visual-project span:nth-child(2n),.landing-feature-tile:nth-child(odd) .landing-feature-visual-calibrate span:nth-child(n+4),.landing-feature-tile:nth-child(odd) .landing-feature-visual-validate span:first-child,.landing-feature-tile:nth-child(odd) .landing-feature-visual-validate span:nth-child(2),.landing-feature-tile:nth-child(odd) .landing-feature-visual-validate span:nth-child(4),.landing-feature-tile:nth-child(odd) .landing-feature-visual-undistort span:nth-child(n+5):nth-child(-n+8),.landing-feature-tile:nth-child(odd) .landing-feature-visual-undistort span:nth-child(n+13){background:#6ba88a}.landing-feature-tile:nth-child(odd) .landing-feature-visual-undistort span:nth-child(-n+4),.landing-feature-tile:nth-child(odd) .landing-feature-visual-undistort span:nth-child(n+9):nth-child(-n+12){background:radial-gradient(circle at 72% 28%,#6ba88a38,#0000 34%),#f4f1e814}.landing-feature-tile:nth-child(odd) .landing-feature-visual-validate span:nth-child(3){background:0 0}.landing-feature-tile:nth-child(odd) .landing-feature-visual-validate span:nth-child(3):after{background:#f26a5f}.landing-feature-tile:nth-child(odd) .landing-feature-visual-upload span:nth-child(2),.landing-feature-tile:nth-child(odd) .landing-feature-visual-upload span:nth-child(4){background:#6ba88a}.landing-feature-tile:nth-child(odd) .landing-feature-visual-upload span:after{background:#0a0a08}.landing-feature-tags{flex-wrap:wrap;gap:5px;margin-top:10px;padding-top:0;display:flex}.landing-feature-tags em{color:#0d4225;letter-spacing:.16em;text-transform:uppercase;background:#0d42250f;border:1px solid #0d4225;padding:4px 7px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:8.5px;font-style:normal;font-weight:900}.landing-feature-tile:nth-child(odd) .landing-feature-tags em{color:#6ba88a;background:#6ba88a1a;border-color:#6ba88a}.landing-divider{background:linear-gradient(90deg,#0000,#141e193d,#0000);width:min(1180px,100% - 56px);height:1px;margin:0 auto 56px}.landing-compare-grid{background:#fff;border:1.5px solid #0a0a08;grid-template-columns:1fr 1fr;display:grid;overflow:hidden}.landing-compare-grid article{flex-direction:column;padding:24px 22px;display:flex}.landing-compare-grid .before{background:#f5f5f5;border-right:1.5px solid #0a0a08}.landing-compare-grid .after{color:#f4f1e8;background:#0d4225}.landing-compare-grid article>span{color:#6b6b66;letter-spacing:.28em;text-transform:uppercase;margin-bottom:10px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:9px;font-weight:900;display:inline-block}.landing-compare-grid .after>span{color:#6ba88a}.landing-compare-grid h3{margin:0 0 12px;font-family:Cormorant Garamond,Georgia,serif;font-size:24px;font-weight:600;line-height:1.12}.landing-compare-grid .after h3{color:#f4f1e8}.landing-compare-grid h3 em{color:#c4433a;font-style:italic}.landing-compare-grid .after h3 em{color:#6ba88a}.landing-compare-grid ul{flex:1;grid-template-rows:repeat(6,minmax(54px,1fr));gap:0;margin:0;padding:0;list-style:none;display:grid}.landing-compare-grid li{color:#4a4a44;border-bottom:1px solid #141e191f;align-items:center;gap:12px;padding:6px 0;font-size:12.2px;line-height:1.36;display:flex}.landing-compare-grid li:last-child{border-bottom:0}.landing-compare-grid .after li{color:#f4f1e8;border-color:#f4f1e829}.landing-compare-grid li:before{color:#fff;content:"x";background:#c4433a;border-radius:50%;flex:none;justify-content:center;align-items:center;width:16px;height:16px;font-size:10px;font-weight:900;display:inline-flex}.landing-compare-grid .after li:before{content:"✓";color:#061f12;background:#6ba88a}.landing-workflow-track{display:grid;position:relative}.landing-final-cta{width:100%;max-width:none;margin-bottom:44px}.landing-final-cta>div{color:#f4f1e8;text-align:center;background:radial-gradient(circle at 50% 100%,#6ba88a21,#0000 62%),#0a0a08;flex-direction:column;align-items:center;width:100%;padding:44px 38px 48px;display:flex;position:relative;overflow:hidden}.landing-final-cta>div>*{width:100%;max-width:760px;margin-inline:auto}.landing-final-cta>div:before{content:"";pointer-events:none;border:1px dashed #6ba88a47;position:absolute;inset:14px}.landing-final-mark{--calibrx-ring:#f4f1e8;--calibrx-x:#6ba88a;--calibrx-dot:#f4f1e8;color:#f4f1e8;width:44px;height:44px;margin-bottom:14px}.landing-final-cta h2{z-index:1;color:#f4f1e8;margin:0 0 12px;font-size:clamp(30px,4vw,46px);line-height:1.04;position:relative}.landing-final-cta h2 em{color:#6ba88a}.landing-final-cta p{z-index:1;color:#f4f1e8ad;margin:0 0 20px;font-family:Cormorant Garamond,Georgia,serif;font-size:16px;font-style:italic;position:relative}.landing-final-cta>div>div{z-index:1;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;width:auto;display:flex;position:relative}.landing-btn-light{color:#0a0a08;background:#f4f1e8;border-color:#f4f1e8}.landing-btn-light:hover{color:#061f12;background:#6ba88a;border-color:#6ba88a}.landing-btn-outline{color:#f4f1e8;background:0 0;border-color:#f4f1e84d}.landing-btn-outline:hover{background:#f4f1e814;border-color:#f4f1e8}.public-site{--landing-green:#6ba88a;--landing-green-rgb:107, 168, 138;--landing-green-dark:#315844}.public-header{box-shadow:inset 0 -1px 0 rgba(var(--landing-green-rgb), .24), 0 14px 34px rgba(var(--landing-green-rgb), .12), 0 2px 8px #0a0a0809}.public-header:after{background:linear-gradient(90deg, transparent, rgba(var(--landing-green-rgb), .86), transparent)}.public-brand:hover .public-brand-icon{background:var(--landing-green-dark)}.public-brand-icon-mark,.landing-final-mark{--calibrx-x:var(--landing-green)}.public-brand sup{border-color:rgba(var(--landing-green-rgb), .34);background:rgba(var(--landing-green-rgb), .14);color:var(--landing-green-dark)}.landing-hero,.landing-section,.landing-compare,.landing-final-cta,.landing-ticker{--accent:var(--landing-green)}.landing-hero-title-minutes,.landing-section h2 em,.landing-compare h2 em,.landing-final-cta h2 em,.landing-section-eyebrow,.landing-ticker span:after,.landing-workflow-track h3 em,.landing-feature-tile>span,.landing-feature-tile h3 em,.landing-feature-tile:nth-child(odd)>span,.landing-feature-tile:nth-child(odd) h3 em,.landing-feature-tile:nth-child(odd) .landing-feature-visual,.landing-compare-grid .after>span,.landing-compare-grid .after h3 em,.landing-compare-grid .after>span{color:var(--landing-green)}.landing-hero-title-main,.landing-hero .landing-hero-title-main{color:#f4f1e8}.landing-hero-title-main em,.landing-hero-steps h3 em,.landing-hero h1 .landing-hero-title-main em{color:var(--landing-green)}.landing-hero .landing-hero-steps h3{color:#f4f1e8}.landing-workflow-track:before{background:var(--landing-green)}.landing-workflow-track article>span,.landing-feature-tags em{border-color:var(--landing-green);color:var(--landing-green-dark)}.landing-btn-primary,.landing-btn-primary:hover,.landing-btn-light:hover,.landing-compare-grid .after li:before,.landing-feature-visual-pattern span.detected,.landing-feature-visual-project span:nth-child(2n),.landing-feature-visual-upload span:nth-child(2),.landing-feature-visual-upload span:nth-child(4),.landing-feature-visual-parameters span:before,.landing-feature-visual-validate span:first-child,.landing-feature-visual-validate span:nth-child(2),.landing-feature-visual-validate span:nth-child(4),.landing-feature-visual-calibrate span,.landing-feature-visual-calibrate span:before,.landing-feature-visual-undistort span:nth-child(n+5):nth-child(-n+8),.landing-feature-visual-undistort span:nth-child(n+13),.landing-feature-tile:nth-child(odd) .landing-feature-visual-project span:nth-child(2n),.landing-feature-tile:nth-child(odd) .landing-feature-visual-calibrate span:nth-child(n+4),.landing-feature-tile:nth-child(odd) .landing-feature-visual-validate span:first-child,.landing-feature-tile:nth-child(odd) .landing-feature-visual-validate span:nth-child(2),.landing-feature-tile:nth-child(odd) .landing-feature-visual-validate span:nth-child(4),.landing-feature-tile:nth-child(odd) .landing-feature-visual-undistort span:nth-child(n+5):nth-child(-n+8),.landing-feature-tile:nth-child(odd) .landing-feature-visual-undistort span:nth-child(n+13),.landing-feature-tile:nth-child(odd) .landing-feature-visual-upload span:nth-child(2),.landing-feature-tile:nth-child(odd) .landing-feature-visual-upload span:nth-child(4){background:var(--landing-green)}.landing-btn-primary,.landing-btn-primary:hover{border-color:var(--landing-green);color:#061f12;box-shadow:0 14px 28px rgba(var(--landing-green-rgb), .3)}.landing-feature-band,.landing-ticker{border-color:rgba(var(--landing-green-rgb), .24)}.landing-feature-tile:nth-child(odd),.landing-final-cta>div{background:radial-gradient(ellipse 520px 300px at 80% 18%, rgba(var(--landing-green-rgb), .16), transparent 62%), #0a0a08}.landing-feature-visual,.landing-demo-status,.landing-feature-tags em{border-color:rgba(var(--landing-green-rgb), .24)}.landing-feature-visual{color:var(--landing-green-dark)}.landing-feature-tile:nth-child(odd) .landing-feature-visual{color:var(--landing-green)}.landing-feature-visual-pattern span.detected:after{background:var(--landing-green-dark)}.landing-feature-visual-upload span,.landing-feature-visual-validate span,.landing-feature-visual-undistort span,.landing-feature-visual-rectify span,.landing-feature-tags em{background-color:rgba(var(--landing-green-rgb), .06)}.landing-feature-visual-calibrate:before{background:linear-gradient(90deg, currentColor 1px, transparent 1px) 0 0 / 24% 100%, linear-gradient(180deg, rgba(var(--landing-green-rgb), .26) 1px, transparent 1px) 0 0 / 100% 22%, linear-gradient(180deg, rgba(var(--landing-green-rgb), .08), transparent)}.landing-feature-visual-rectify span:after{border-color:var(--landing-green);box-shadow:0 0 0 999px rgba(var(--landing-green-rgb), .08)}.landing-feature-tile:nth-child(odd) .landing-feature-tags em{border-color:var(--landing-green);background:rgba(var(--landing-green-rgb), .1);color:var(--landing-green)}.landing-compare-grid .after{background:var(--landing-green-dark)}.landing-final-cta>div:before{border-color:rgba(var(--landing-green-rgb), .28)}.landing-workflow-track.landing-hero-steps{--hero-step-gap:0}.landing-workflow-track.landing-hero-steps:before{content:none;display:none}.public-product-page,.pricing-page-v2{padding-top:52px}.products-page{width:min(1180px,100% - 56px);margin:0 auto;padding:56px 0 82px}.products-hero{text-align:center;max-width:860px;margin:0 auto 40px}.products-hero .landing-section-eyebrow{justify-content:center;margin-bottom:16px}.products-hero h1{color:#0a0a08;letter-spacing:-.045em;margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(43px,5.6vw,76px);font-style:italic;font-weight:500;line-height:.96}.products-hero h1 em{color:#0d4225;font-style:italic}.products-hero>p{color:#3f463f;max-width:660px;margin:20px auto 0;font-size:15px;line-height:1.58}.products-hero-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:16px;margin-top:24px;display:flex}.products-secondary-link{color:#0d4225;letter-spacing:.12em;text-transform:uppercase;font-family:JetBrains Mono,ui-monospace,monospace;font-size:11px;font-weight:900;text-decoration:none}.products-overview{grid-template-columns:minmax(0,.95fr) minmax(360px,1.05fr);align-items:stretch;gap:18px;display:grid}.products-overview-main,.products-workflow-card,.products-module-card,.products-export-band{background:#fff;border:1.5px solid #0a0a08;border-radius:0;box-shadow:4px 4px #0d422585}.products-overview-main{background:radial-gradient(520px 300px at 100% 0,#6ba88a29,#0000 64%),#fff;flex-direction:column;min-height:430px;padding:30px;display:flex}.products-panel-kicker{color:#0d4225;letter-spacing:.16em;text-transform:uppercase;background:#6ba88a1f;border:1px solid #0d422552;align-items:center;width:max-content;min-height:22px;padding:0 8px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:9px;font-weight:900;display:inline-flex}.products-overview-main h2,.products-export-band h2{color:#0a0a08;letter-spacing:-.04em;max-width:520px;margin:28px 0 0;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(36px,4vw,58px);font-style:italic;font-weight:500;line-height:.98}.products-overview-main p,.products-export-band p{color:#3f463f;max-width:520px;margin:16px 0 0;font-size:14px;line-height:1.6}.products-overview-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:auto;padding-top:30px;display:grid}.products-overview-stats div{border-top:1px solid #0d422533;gap:4px;padding-top:13px;display:grid}.products-overview-stats strong{color:#0d4225;font-family:Cormorant Garamond,Georgia,serif;font-size:38px;font-style:italic;font-weight:600;line-height:.86}.products-overview-stats span{color:#526057;letter-spacing:.12em;text-transform:uppercase;font-family:JetBrains Mono,ui-monospace,monospace;font-size:9px;font-weight:800}.products-workflow-card{background:#0a0a08;padding:12px 22px;display:grid}.products-workflow-card article{border-bottom:1px solid #f4f1e824;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:14px;min-height:66px;display:grid}.products-workflow-card article:last-child{border-bottom:0}.products-workflow-card article>span{color:#a8d8bd;letter-spacing:.16em;font-family:JetBrains Mono,ui-monospace,monospace;font-size:11px;font-weight:900}.products-workflow-card h3{color:#f4f1e8;letter-spacing:-.035em;margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:24px;font-style:italic;font-weight:600;line-height:1}.products-workflow-card p{color:#f4f1e8a8;margin:5px 0 0;font-size:12.5px;line-height:1.35}.products-modules{margin-top:62px}.products-section-head{max-width:720px;margin-bottom:22px}.products-section-head h2{color:#0a0a08;letter-spacing:-.04em;margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(34px,4vw,54px);font-style:italic;font-weight:500;line-height:.98}.products-module-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.products-module-card{flex-direction:column;min-height:260px;padding:20px;display:flex;box-shadow:3px 3px #0a0a0814}.products-module-card:nth-child(2n){color:#f4f1e8;background:radial-gradient(380px 220px at 100% 0,#6ba88a2e,#0000 66%),#0a0a08}.products-module-card>span{color:#0d4225;letter-spacing:.16em;text-transform:uppercase;font-family:JetBrains Mono,ui-monospace,monospace;font-size:9px;font-weight:900}.products-module-card:nth-child(2n)>span{color:#a8d8bd}.products-module-card h3{color:inherit;letter-spacing:-.04em;margin:18px 0 0;font-family:Cormorant Garamond,Georgia,serif;font-size:27px;font-style:italic;font-weight:600;line-height:.98}.products-module-card h3 em{color:#0d4225}.products-module-card:nth-child(2n) h3 em{color:#a8d8bd}.products-module-card p{color:#3f463f;margin:12px 0 0;font-size:12.8px;line-height:1.5}.products-module-card:nth-child(2n) p{color:#f4f1e8b8}.products-module-card div{flex-wrap:wrap;gap:7px;margin-top:auto;padding-top:18px;display:flex}.products-module-card em{color:#0d4225;letter-spacing:.08em;text-transform:uppercase;background:#6ba88a1a;border:1px solid #0d422538;align-items:center;min-height:22px;padding:0 8px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:9px;font-style:normal;font-weight:800;display:inline-flex}.products-module-card:nth-child(2n) em{color:#f4f1e8;background:#a8d8bd1a;border-color:#a8d8bd57}.products-export-band{background:radial-gradient(520px 260px at 100% 0,#6ba88a38,#0000 70%),#fff;grid-template-columns:minmax(0,1fr) minmax(260px,.42fr);align-items:center;gap:24px;margin-top:56px;padding:30px;display:grid}.products-export-band h2{margin-top:22px}.products-export-band pre{color:#a8d8bd;letter-spacing:.04em;background:#0a0a08;border:1px solid #0d422538;place-items:center;min-height:112px;margin:0;font-family:JetBrains Mono,ui-monospace,monospace;font-size:14px;font-weight:800;display:grid;overflow:auto}.product-feature-grid{grid-template-columns:1.3fr 1fr 1fr}.product-feature-grid .landing-feature-tile:nth-child(4){grid-column:2/4;min-height:170px}.pricing-page-v2 .pricing-grid{gap:10px}.pricing-page-v2 .pricing-card{min-height:340px;box-shadow:none;background:#fff;border:1.5px solid #0a0a08;border-radius:0;padding:20px}.pricing-page-v2 .pricing-card.highlighted{color:#f4f1e8;background:radial-gradient(circle at 0 0,#6ba88a2e,#0000 52%),#0a0a08;box-shadow:6px 6px #0d4225}.pricing-plan-label{color:#0d4225;letter-spacing:.18em;text-transform:uppercase;background:#0e633814;border:1px solid #0e633847;width:max-content;margin-bottom:14px;padding:5px 9px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:9px;font-weight:900;display:inline-flex}.pricing-page-v2 .pricing-card.highlighted .pricing-plan-label{color:#6ba88a;background:#6ba88a1f;border-color:#6ba88a}.pricing-page-v2 .pricing-card h2{color:inherit;font-family:Cormorant Garamond,Georgia,serif;font-size:1.55rem;font-weight:700}.pricing-page-v2 .pricing-price{color:inherit;font-family:Cormorant Garamond,Georgia,serif;font-size:2rem;font-style:italic;line-height:1}.pricing-page-v2 .pricing-card p,.pricing-page-v2 .pricing-card li{color:#4a4a44}.pricing-page-v2 .pricing-card.highlighted p,.pricing-page-v2 .pricing-card.highlighted li{color:#f4f1e8c7}.pricing-page-v2 .pricing-card ul{flex:1}.pricing-page-v2 .pricing-card li:before{background:#0d4225}.pricing-page-v2 .pricing-card.highlighted li:before{background:#6ba88a}.pricing-v3{width:min(880px,100% - 56px);margin:0 auto;padding:56px 0 78px}.pricing-v3-hero{text-align:center;max-width:900px;margin:0 auto 34px}.pricing-v3-hero .landing-section-eyebrow{justify-content:center;margin-bottom:16px}.pricing-v3-hero h1{color:#0a0a08;letter-spacing:-.04em;margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(44px,5.6vw,76px);font-style:italic;font-weight:500;line-height:.95}.pricing-v3-hero-line,.pricing-v3-hero-accent{display:block}.pricing-v3-hero-accent em{color:#0d4225;font-style:italic}.pricing-v3-hero-sub{color:#4a4a44;max-width:560px;margin:20px auto 0;font-size:15.5px;line-height:1.55}.pricing-v3-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:14px;display:grid}.pricing-v3-card{background:linear-gradient(135deg,#6ba88a14,#0000 42%),#fff;border:1.5px solid #0a0a08;flex-direction:column;min-height:416px;padding:18px;display:flex;position:relative;overflow:hidden;box-shadow:3px 3px #0d4225b8}.pricing-v3-card:before{content:"";background:#0d4225;height:4px;position:absolute;inset:0 0 auto}.pricing-v3-card.is-highlighted{color:#f4f1e8;background:radial-gradient(315px 224px at 95% 0,#6ba88a38,#0000 64%),#0a0a08;transform:translateY(-7px);box-shadow:5px 5px #0d4225,0 18px 42px #0d422533}.pricing-v3-card.is-highlighted:before{background:#6ba88a}.pricing-v3-card-head{flex-direction:column;min-height:129px;padding-top:9px;display:flex}.pricing-v3-badge{color:#0d4225;letter-spacing:.16em;text-transform:uppercase;background:#6ba88a21;border:1px solid #0d422557;align-items:center;gap:6px;width:max-content;min-height:22px;margin-bottom:12px;padding:0 8px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:9px;font-weight:900;display:inline-flex}.pricing-v3-card.is-highlighted .pricing-v3-badge{color:#a8d8bd;background:#6ba88a21;border-color:#6ba88ab8}.pricing-v3-badge-dot{background:currentColor;border-radius:999px;width:5px;height:5px;box-shadow:0 0 0 2px #6ba88a29}.pricing-v3-card h2{color:inherit;letter-spacing:-.035em;margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:32px;font-style:italic;font-weight:600;line-height:.95}.pricing-v3-card-detail{color:#4a4a44;max-width:217px;margin:10px 0 0;font-size:11.5px;line-height:1.55}.pricing-v3-card.is-highlighted .pricing-v3-card-detail{color:#f4f1e8c2}.pricing-v3-price{border-bottom:1px solid #0d42252e;align-items:flex-end;gap:8px;min-height:55px;margin:9px 0 16px;padding-bottom:15px;display:flex}.pricing-v3-card.is-highlighted .pricing-v3-price{border-color:#f4f1e829}.pricing-v3-price-amount{color:inherit;letter-spacing:-.04em;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(31px,3.2vw,43px);font-style:italic;font-weight:600;line-height:.85}.pricing-v3-price-unit{color:#68736c;letter-spacing:.12em;text-transform:uppercase;max-width:90px;padding-bottom:2px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:9px;font-weight:800;line-height:1.35}.pricing-v3-card.is-highlighted .pricing-v3-price-unit{color:#f4f1e88f}.pricing-v3-features{flex:1;align-content:start;gap:9px;margin:0 0 18px;padding:0;list-style:none;display:grid}.pricing-v3-features li{color:#303730;grid-template-columns:16px minmax(0,1fr);align-items:start;gap:8px;font-size:11px;line-height:1.45;display:grid}.pricing-v3-card.is-highlighted .pricing-v3-features li{color:#f4f1e8d1}.pricing-v3-check{background:#6ba88a21;border:1px solid #0d422552;place-items:center;width:16px;height:16px;display:inline-grid}.pricing-v3-check svg{fill:none;stroke:#0d4225;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;width:10px;height:10px}.pricing-v3-card.is-highlighted .pricing-v3-check{background:#6ba88a29;border-color:#6ba88ab8}.pricing-v3-card.is-highlighted .pricing-v3-check svg{stroke:#a8d8bd}.pricing-v3-cta{color:#0a0a08;letter-spacing:.12em;text-transform:uppercase;background:#fff;border:1.5px solid #0a0a08;justify-content:center;align-items:center;min-height:34px;padding:0 14px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;font-weight:900;transition:transform .18s,background .18s,color .18s;display:inline-flex}.pricing-v3-cta:hover{color:#fff;background:#0d4225;transform:translate(-2px,-2px)}.pricing-v3-card.is-highlighted .pricing-v3-cta{color:#061f12;background:#a8d8bd;border-color:#a8d8bd}.pricing-v3-credits{border-top:1px solid #0d42252e;margin-top:62px;padding-top:38px}.pricing-v3-credits-head{border-bottom:1px solid #0d42252e;grid-template-columns:minmax(210px,.42fr) minmax(0,1fr);align-items:end;gap:18px 28px;padding-bottom:22px;display:grid}.pricing-v3-credits-head .landing-section-eyebrow{grid-column:1/-1;margin:0}.pricing-v3-credits-head h2{color:#0a0a08;letter-spacing:-.035em;margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(34px,4vw,52px);font-style:italic;font-weight:500;line-height:.96}.pricing-v3-credits-head p{color:#4a4a44;margin:0;font-size:13.5px;line-height:1.62}.pricing-v3-credit-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:18px;display:grid}.pricing-v3-credit-item{background:#f4f1e894;border:1px solid #0a0a08e0;flex-direction:column;min-height:148px;padding:15px;display:flex}.pricing-v3-credit-item span{color:#0d4225;letter-spacing:.12em;text-transform:uppercase;background:#6ba88a24;border:1px solid #0d422552;width:max-content;margin-bottom:18px;padding:4px 7px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:9px;font-weight:900}.pricing-v3-credit-item h3{color:#0a0a08;letter-spacing:-.01em;margin:0;font-size:14px;font-weight:900}.pricing-v3-credit-item p{color:#4a4a44;margin:7px 0 0;font-size:11.5px;line-height:1.55}.pricing-v3-credit-example{color:#f4f1e8;background:#0a0a08;border:1px solid #0d422547;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:14px;margin-top:14px;padding:14px 16px;display:grid}.pricing-v3-credit-example span{color:#a8d8bd;letter-spacing:.14em;text-transform:uppercase;border:1px solid #a8d8bd94;padding:5px 8px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:9px;font-weight:900}.pricing-v3-credit-example p{color:#f4f1e8c7;margin:0;font-size:13px;line-height:1.55}.pricing-v3-credit-example strong{color:#a8d8bd;font-weight:900}.pricing-v3-faq{border-top:1px solid #0d42252e;grid-template-columns:minmax(260px,.48fr) minmax(0,1fr);align-items:start;gap:30px;margin-top:70px;padding-top:42px;display:grid}.pricing-v3-faq-head{position:sticky;top:94px}.pricing-v3-faq-head .landing-section-eyebrow{margin-bottom:14px}.pricing-v3-faq-head h2{color:#0a0a08;letter-spacing:-.035em;max-width:360px;margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(34px,4vw,52px);font-style:italic;font-weight:500;line-height:.98}.pricing-v3-faq-list{gap:10px;display:grid}.pricing-v3-faq-item{background:#fff;border:1.5px solid #0a0a08;box-shadow:4px 4px #0d422585}.pricing-v3-faq-item summary{cursor:pointer;color:#0a0a08;justify-content:space-between;align-items:center;gap:20px;min-height:62px;padding:0 18px;font-size:14px;font-weight:800;list-style:none;display:flex}.pricing-v3-faq-item summary::-webkit-details-marker{display:none}.pricing-v3-faq-icon{color:#0d4225;border:1px solid #0d422552;flex:none;place-items:center;width:28px;height:28px;font-family:JetBrains Mono,ui-monospace,monospace;font-weight:900;display:inline-grid}.pricing-v3-faq-item[open] .pricing-v3-faq-icon{color:#fff;background:#0d4225;font-size:0}.pricing-v3-faq-item[open] .pricing-v3-faq-icon:before{content:"-";font-size:16px}.pricing-v3-faq-item p{color:#4a4a44;margin:0;padding:0 18px 20px;font-size:13.5px;line-height:1.65}.pricing-v3-cta-band{color:#f4f1e8;background:radial-gradient(520px 260px at 100% 0,#6ba88a33,#0000 70%),#0a0a08;border:1.5px solid #0a0a08;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px;margin-top:56px;padding:28px;display:grid;box-shadow:6px 6px #0d4225}.pricing-v3-cta-band h3{color:inherit;letter-spacing:-.03em;margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(30px,3vw,44px);font-style:italic;font-weight:500;line-height:1}.pricing-v3-cta-band p{color:#f4f1e8b8;margin-top:8px;font-size:14px}.pricing-v3-cta-band-actions{align-items:center;gap:14px;display:flex}.pricing-v3-cta-link{color:#a8d8bd;letter-spacing:.12em;text-transform:uppercase;font-family:JetBrains Mono,ui-monospace,monospace;font-size:11px;font-weight:900}.external-redirect{color:#0a0a08;letter-spacing:.14em;text-transform:uppercase;background:#fff;align-content:center;place-items:center;gap:12px;min-height:100vh;font-family:JetBrains Mono,ui-monospace,monospace;font-size:11px;font-weight:900;display:grid}.external-redirect a{color:#0d4225;text-underline-offset:4px;text-decoration:underline}@media (width<=1080px){.products-overview,.products-module-grid,.products-export-band,.pricing-v3-grid{grid-template-columns:1fr}.pricing-v3-card{min-height:0}.pricing-v3-card.is-highlighted{transform:none}.pricing-v3-card-head{min-height:0}}@media (width<=820px){.products-page{width:min(100% - 32px,1180px);padding-top:38px}.products-overview-main,.products-workflow-card,.products-export-band{padding:20px}.products-overview-stats{grid-template-columns:1fr}.pricing-v3{width:min(100% - 32px,880px);padding-top:38px}.pricing-v3-faq,.pricing-v3-credits-head,.pricing-v3-cta-band{grid-template-columns:1fr}.pricing-v3-credit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pricing-v3-faq-head{position:static}.pricing-v3-cta-band-actions{flex-direction:column;align-items:flex-start}}@media (width<=560px){.pricing-v3-card,.pricing-v3-credits,.pricing-v3-cta-band{padding:17px}.pricing-v3-credit-grid,.pricing-v3-credit-example{grid-template-columns:1fr}.pricing-v3-price{flex-direction:column;align-items:flex-start;gap:6px}.pricing-v3-price-unit{max-width:none}}.seo-landing-v2{padding-top:52px}.seo-solution-grid{margin-bottom:24px}.docs-page{width:min(1180px,100% - 56px);margin:0 auto;padding:58px 0 72px}.docs-hero{grid-template-columns:minmax(0,1fr) minmax(320px,.56fr);align-items:stretch;gap:34px;margin-bottom:34px;display:grid}.docs-hero-copy{background:#fff;border:1.5px solid #0a0a08;padding:42px;box-shadow:8px 8px #0d4225}.docs-eyebrow{color:#0d4225;letter-spacing:.24em;text-transform:uppercase;margin:0 0 14px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;font-weight:900}.docs-hero h1,.docs-section h2,.docs-troubleshooting h2{color:#0a0a08;letter-spacing:-.025em;font-family:Cormorant Garamond,Georgia,serif;font-weight:600}.docs-hero h1{max-width:760px;margin:0;font-size:clamp(42px,5vw,68px);line-height:.98}.docs-hero h1 em,.docs-section h2 em,.docs-troubleshooting h2 em{color:#0d4225;font-style:italic}.docs-hero-copy>p:not(.docs-eyebrow){color:#4a4a44;max-width:690px;margin:22px 0 0;font-size:16px;line-height:1.55}.docs-hero-actions{flex-wrap:wrap;gap:10px;margin-top:26px;display:flex}.docs-outline-btn{color:#0a0a08;background:#ffffff8a;border-color:#0a0a08}.docs-outline-btn:hover{background:#fff}.docs-map{color:#f4f1e8;background:#0a0a08;border:1.5px solid #0a0a08;min-height:100%;padding:24px}.docs-map-head{border-bottom:1px solid #f4f1e82e;justify-content:space-between;align-items:center;gap:12px;margin-bottom:22px;padding-bottom:14px;display:flex}.docs-map-head svg{--calibrx-ring:#f4f1e8;--calibrx-x:#6ba88a;--calibrx-dot:#f4f1e8}.docs-map-head span{color:#6ba88a;letter-spacing:.22em;text-transform:uppercase;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;font-weight:900}.docs-map-grid{gap:8px;display:grid}.docs-map-grid a{color:#f4f1e8;background:#f4f1e80f;border:1px solid #f4f1e824;align-items:center;gap:12px;min-height:42px;padding:0 12px;font-size:13px;font-weight:800;text-decoration:none;display:flex}.docs-map-grid a:hover{background:#6ba88a24;border-color:#6ba88a}.docs-map-grid span{color:#6ba88a;letter-spacing:.12em;font-family:JetBrains Mono,ui-monospace,monospace;font-size:9px}.docs-toc{z-index:10;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#f5f5f5eb;border-block:1px solid #141e191f;gap:8px;margin-bottom:30px;padding:12px 0;display:flex;position:sticky;top:68px;overflow-x:auto}.docs-toc a{color:#0d4225;letter-spacing:.12em;text-transform:uppercase;background:#ffffffa8;border:1px solid #0e63382e;flex:none;align-items:center;min-height:32px;padding:0 12px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:9px;font-weight:900;text-decoration:none;display:inline-flex}.docs-toc a:hover{background:#ebf2ed;border-color:#0d4225}.docs-sections{gap:18px;display:grid}.docs-section{grid-template-columns:minmax(0,.82fr) minmax(420px,1fr);align-items:stretch;gap:20px;scroll-margin-top:116px;display:grid}.docs-section-copy,.docs-screenshot,.docs-troubleshooting{background:#ffffffd1;border:1.5px solid #0a0a08}.docs-section-copy{padding:28px}.docs-section h2{margin:0;font-size:clamp(30px,3.8vw,46px);line-height:1.02}.docs-section-copy>p:not(.docs-eyebrow){color:#4a4a44;margin:16px 0 0;font-size:14px;line-height:1.55}.docs-section ul{gap:9px;margin:22px 0 0;padding:0;list-style:none;display:grid}.docs-section li{color:#24241f;grid-template-columns:18px 1fr;gap:9px;font-size:13px;line-height:1.45;display:grid}.docs-section li:before{color:#fff;content:"✓";background:#0d4225;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;font-size:10px;font-weight:900;display:inline-flex}.docs-screenshot{flex-direction:column;min-height:360px;margin:0;display:flex;overflow:hidden;box-shadow:6px 6px #0d42252e}.docs-screenshot img{object-fit:cover;object-position:top left;background:#fff;flex:1;width:100%;min-height:0;display:block}.docs-screenshot figcaption{color:#0d4225;letter-spacing:.14em;text-transform:uppercase;background:#fff;border-top:1px solid #141e191f;align-items:center;min-height:38px;padding:0 14px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:9px;font-weight:900;display:flex}.docs-screenshot-missing{color:#0d4225;text-align:center;background:#fff;align-content:center;place-items:center;gap:10px;min-height:320px;padding:28px;display:grid}.docs-screenshot-missing strong{color:#0a0a08;font-family:Cormorant Garamond,Georgia,serif;font-size:30px;font-style:italic;font-weight:600}.docs-screenshot-missing span{color:#4a4a44;max-width:300px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;font-weight:700;line-height:1.5}.docs-troubleshooting{grid-template-columns:.55fr 1fr;gap:24px;margin-top:32px;padding:30px;scroll-margin-top:116px;display:grid}.docs-troubleshooting h2{margin:0;font-size:clamp(30px,3.5vw,44px);line-height:1.04}.docs-troubleshooting-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.docs-troubleshooting article{background:#f5f5f5;border:1px solid #141e1924;padding:16px}.docs-troubleshooting h3{color:#0a0a08;margin:0 0 8px;font-family:Cormorant Garamond,Georgia,serif;font-size:22px;font-weight:600}.docs-troubleshooting p{color:#4a4a44;margin:0;font-size:13px;line-height:1.48}.public-hero{grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);align-items:center;gap:58px;width:min(1180px,100% - 40px);min-height:calc(100vh - 76px);margin:0 auto;padding:48px 0 72px;display:grid}.public-hero-copy{max-width:650px}.public-kicker{text-transform:uppercase;letter-spacing:.22em;color:var(--accent);margin-bottom:14px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:11px;font-weight:700}.public-hero h1,.public-page-section h1,.seo-article h1{letter-spacing:0;max-width:760px;font-size:clamp(2.55rem,5vw,5.15rem);line-height:.96}.public-hero p:not(.public-kicker),.public-section-head p:not(.public-kicker),.seo-article p{max-width:650px;margin-top:14px;font-size:15px;line-height:1.55}.public-hero-actions{margin-top:22px}.public-hero-panel{box-shadow:var(--shadow-lg);background:#fff;border:1px solid #141e1938;border-radius:8px;padding:14px;position:relative}.hero-panel-top{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:42px;margin-bottom:10px;display:flex}.hero-panel-top span{letter-spacing:.18em;text-transform:uppercase;color:var(--ink-faint);font-family:JetBrains Mono,ui-monospace,monospace;font-size:11px;font-weight:700}.hero-panel-top strong{color:var(--accent)}.workflow-list{gap:6px;display:grid}.workflow-row{background:#ffffffb8;border:1px solid #141e191f;border-radius:6px;grid-template-columns:40px 1fr;align-items:center;min-height:38px;display:grid}.workflow-row span{height:100%;color:var(--accent);border-right:1px solid #141e191a;justify-content:center;align-items:center;font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px;display:inline-flex}.workflow-row strong{color:var(--ink);padding:0 12px;font-size:13px}.public-band,.public-page-section{width:min(1180px,100% - 40px);margin:0 auto;padding:52px 0}.public-section-head{max-width:760px;margin-bottom:22px}.public-section-head.centered{text-align:center;margin-inline:auto}.public-section-head.centered p{margin-inline:auto}.public-section-head h2{letter-spacing:0;font-size:clamp(1.75rem,2.6vw,2.45rem);line-height:1.02}.public-feature-grid,.pricing-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.public-feature-grid.wide{grid-template-columns:repeat(3,minmax(0,1fr))}.public-feature,.pricing-card,.login-card{box-shadow:var(--shadow);background:#ffffffc2;border:1px solid #141e1929;border-radius:8px}.public-feature{min-height:150px;padding:16px}.public-feature h3{letter-spacing:0;margin-top:10px;font-family:Inter,system-ui,sans-serif;font-size:15px;font-weight:800}.public-feature p{margin-top:8px;font-size:12.8px;line-height:1.45}.feature-dot{border:2px solid var(--accent);background:#0e633814;border-radius:50%;width:13px;height:13px;display:block}.pricing-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}.pricing-card{flex-direction:column;gap:12px;padding:20px;display:flex}.pricing-card.highlighted{border-color:#0e633880;box-shadow:0 18px 42px #0e633829}.pricing-card h2{letter-spacing:0;font-size:1.55rem}.pricing-price{color:var(--ink);font-family:Cormorant Garamond,Georgia,serif;font-size:1.9rem}.pricing-card ul{gap:7px;margin:2px 0 6px;list-style:none;display:grid}.pricing-card li{color:var(--ink-dim);font-size:13px}.pricing-card li:before{content:"";background:var(--accent);border-radius:50%;width:7px;height:7px;margin-right:10px;display:inline-block}.public-center-action{justify-content:center;margin-top:26px;display:flex}.public-footer{width:100%;color:var(--ink-dim);background:radial-gradient(720px 220px at 50% 0,#0e63380a,#0000 70%),#fbfaf6;border-top:1px solid #141e1914;margin-top:64px;padding:0}.public-footer-main{grid-template-columns:minmax(280px,1.1fr) minmax(0,2fr);align-items:start;gap:56px;width:min(1180px,100% - 56px);margin:0 auto;padding:56px 0 40px;display:grid}.public-footer-brand{flex-direction:column;gap:16px;max-width:360px;display:flex}.public-footer-wordmark-link{align-items:center;line-height:1;text-decoration:none;display:inline-flex}.public-footer-wordmark .calibrx-wordmark-text{color:var(--ink);font-size:30px}.public-footer-mark{--calibrx-ring:#0a0a08;--calibrx-x:var(--accent);--calibrx-dot:transparent;color:#0a0a08;width:32px;height:32px}.public-footer-tagline{color:var(--ink-dim);letter-spacing:-.005em;margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:17px;font-style:italic;font-weight:500;line-height:1.4}.public-footer-tagline em{color:var(--accent);font-style:italic;font-weight:600}.public-footer-eyebrow-chip{color:var(--accent);letter-spacing:.26em;text-transform:uppercase;background:#0e63380a;border:1px solid #0e63382e;border-radius:999px;align-self:flex-start;align-items:center;gap:8px;margin:4px 0 0;padding:5px 12px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:9.5px;font-weight:700;display:inline-flex}.public-footer-eyebrow-chip>span{background:#6ba88a;border-radius:50%;width:5px;height:5px;box-shadow:0 0 0 3px #6ba88a2e}.public-footer-nav{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;display:grid}.public-footer-nav>div{flex-direction:column;gap:14px;display:flex}.public-footer-col-eyebrow{color:var(--ink-faint);letter-spacing:.22em;text-transform:uppercase;margin:0;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;font-weight:700}.public-footer-nav ul{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.public-footer-nav a{color:var(--ink);font-family:Inter,system-ui,sans-serif;font-size:13.5px;font-weight:500;text-decoration:none;transition:color .18s;display:inline-block}.public-footer-nav a:hover,.public-footer-nav a.active{color:var(--accent)}.public-footer-bar{border-top:1px solid #141e190f;justify-content:space-between;align-items:center;gap:18px;width:min(1180px,100% - 56px);margin:0 auto;padding:20px 0 28px;display:flex}.public-footer-copyright{color:var(--ink-faint);font-family:Inter,system-ui,sans-serif;font-size:12px;font-weight:400}.public-footer-meta{color:var(--ink-faint);letter-spacing:.2em;text-transform:uppercase;align-items:center;gap:8px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;font-weight:600;display:inline-flex}.public-footer-meta-dot{background:#6ba88a;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 3px #6ba88a2e}@media (width<=920px){.public-footer{margin-top:48px}.public-footer-main{grid-template-columns:1fr;gap:32px;width:min(100% - 32px,1180px);padding:40px 0 28px}.public-footer-nav{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.public-footer-bar{flex-direction:column;align-items:flex-start;gap:10px;width:min(100% - 32px,1180px);padding:18px 0 24px}}@media (width<=560px){.public-footer-nav{grid-template-columns:1fr;gap:24px}}.policy-page{padding-top:56px}.policy-shell{grid-template-columns:210px minmax(0,1fr);align-items:start;gap:36px;display:grid}.policy-sidebar{box-shadow:var(--shadow);background:#ffffffb8;border:1px solid #141e1929;border-radius:8px;gap:8px;padding:14px;display:grid;position:sticky;top:24px}.policy-sidebar span{color:var(--accent);letter-spacing:.18em;text-transform:uppercase;margin-bottom:4px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;font-weight:800}.policy-sidebar a{min-height:36px;color:var(--ink-dim);border-radius:5px;align-items:center;padding:0 10px;font-size:13px;font-weight:700;display:flex}.policy-sidebar a:hover,.policy-sidebar a.active{color:var(--accent);background:#0e633814}.policy-document{box-shadow:var(--shadow-lg);background:#ffffffd1;border:1px solid #141e1929;border-radius:8px;padding:34px 42px}.policy-document h1{max-width:820px;font-size:clamp(2.4rem,5vw,4.8rem)}.policy-updated{color:var(--ink-faint);letter-spacing:.1em;text-transform:uppercase;margin-top:16px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:11px;font-weight:700}.policy-intro{max-width:760px;color:var(--ink-dim);margin-top:20px;font-size:17px;line-height:1.7}.policy-note{border:1px solid #0e633838;border-left:4px solid var(--accent);color:var(--ink-dim);background:#0e633812;border-radius:6px;margin-top:24px;padding:14px 16px;font-size:13px;line-height:1.6}.policy-section{border-top:1px solid #141e191a;margin-top:34px;padding-top:24px}.policy-section h2{font-size:1.65rem}.policy-section p{max-width:820px;color:var(--ink-dim);margin-top:12px;font-size:15px;line-height:1.8}.seo-article{max-width:860px}.seo-article h2{letter-spacing:0;margin-top:38px;font-size:2rem}.seo-article .public-primary-btn{margin-top:32px}.solutions-page{background:0 0;width:min(1180px,100% - 56px);margin:0 auto;padding:64px 0 80px;position:relative}.solutions-hero{text-align:center;max-width:740px;margin:0 auto 52px}.solutions-hero .landing-section-eyebrow{color:var(--accent);letter-spacing:.28em;text-transform:uppercase;background:#0e633812;border:1px solid #0e633847;border-radius:999px;align-items:center;gap:10px;margin-bottom:20px;padding:6px 14px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;font-weight:600;display:inline-flex}.solutions-hero .landing-section-eyebrow>span{background:#6ba88a;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 3px #6ba88a2e}.solutions-hero h1{color:var(--ink);letter-spacing:-.03em;margin:0 0 16px;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(32px,4vw,50px);font-style:italic;font-weight:400;line-height:1.06}.solutions-hero-line{display:block}.solutions-hero-accent{color:var(--ink-dim);margin-top:6px;font-size:.78em;font-weight:400;display:block}.solutions-hero-accent em{color:var(--accent);font-style:italic;font-weight:500}.solutions-hero-sub{color:#4b554e;max-width:540px;margin:0 auto;font-family:Inter,system-ui,sans-serif;font-size:15px;font-weight:400;line-height:1.55}.solutions-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-bottom:64px;display:grid}.solutions-card{background:#fff;border:1.5px solid #141e1933;border-radius:14px;flex-direction:column;transition:transform .22s,box-shadow .22s,border-color .22s;display:flex;position:relative;overflow:hidden;box-shadow:0 1px #141e190d,0 16px 34px #141e1913}.solutions-card:hover{border-color:#0e633857;transform:translateY(-2px);box-shadow:0 1px #141e190f,0 22px 44px #141e191a}.solutions-card-visual{background:radial-gradient(360px 200px at 50% 0,#6ba88a24,#0000 70%),linear-gradient(#0d422509,#0000 76%),#fbfaf6;border-bottom:1px solid #141e1924;padding:28px 28px 22px;position:relative}.solutions-card-index{color:#0d4225;letter-spacing:-.02em;font-family:Cormorant Garamond,Georgia,serif;font-size:24px;font-style:italic;font-weight:700;line-height:1;position:absolute;top:14px;right:18px}.solution-svg{width:100%;height:auto;max-height:160px;display:block}.solutions-card-copy{padding:24px 28px 28px}.solutions-card-eyebrow{color:#0d4225;letter-spacing:.2em;text-transform:uppercase;margin:0 0 10px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;font-weight:700}.solutions-card h2{color:var(--ink);letter-spacing:-.015em;margin:0 0 12px;font-family:Cormorant Garamond,Georgia,serif;font-size:24px;font-style:italic;font-weight:600;line-height:1.15}.solutions-card h2 em{color:var(--accent);font-style:italic;font-weight:600}.solutions-card-copy>p{color:#343d36;margin:0;font-family:Inter,system-ui,sans-serif;font-size:13.5px;font-weight:400;line-height:1.6}.solutions-cta{text-align:center;background:radial-gradient(520px 240px at 50% 0,#0e633817,#0000 70%),#fff;border:1.5px solid #141e192e;border-radius:18px;flex-direction:column;align-items:center;gap:14px;padding:48px 32px;display:flex;box-shadow:0 18px 42px #141e1912}.solutions-cta h3{color:var(--ink);letter-spacing:-.02em;margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(24px,2.8vw,34px);font-style:italic;font-weight:500;line-height:1.15}.solutions-cta h3 em{color:var(--accent);font-style:italic;font-weight:600}.solutions-cta .landing-btn-primary{background:var(--accent);color:#fff;border-color:#0000;min-width:240px;min-height:50px;margin-top:6px;padding-inline:32px;font-size:13.5px;font-weight:700;box-shadow:0 1px #0e63384d,0 16px 32px #0e633833}.solutions-cta .landing-btn-primary:hover{background:var(--accent-hover);box-shadow:0 1px #0e63385c,0 20px 40px #0e633842}.solutions-cta>span{color:var(--ink-faint);letter-spacing:.18em;text-transform:uppercase;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;font-weight:600}@media (width<=920px){.solutions-page{width:min(100% - 24px,1180px);padding:40px 0 56px}.solutions-hero{margin-bottom:36px}.solutions-grid{grid-template-columns:1fr;gap:18px;margin-bottom:44px}.solutions-card-visual{padding:22px 20px 18px}.solutions-card-copy{padding:20px 22px 24px}.solutions-card h2{font-size:21px}.solutions-cta{padding:36px 22px}}.docs-v3{background:#fbfaf6;width:100%;min-height:calc(100vh - 80px)}.docs-v3-header{z-index:10;-webkit-backdrop-filter:blur(12px);background:#fbfaf6eb;border-bottom:1px solid #141e1914;position:sticky;top:0}.docs-v3-header-inner{flex-direction:column;gap:18px;width:min(1280px,100% - 56px);margin:0 auto;padding:22px 0 0;display:flex}.docs-v3-title{flex-direction:column;gap:8px;display:flex}.docs-v3-eyebrow{color:var(--accent);letter-spacing:.28em;text-transform:uppercase;align-items:center;gap:10px;margin:0;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;font-weight:700;display:inline-flex}.docs-v3-eyebrow>span{background:#6ba88a;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 3px #6ba88a2e}.docs-v3-title h1{color:var(--ink);letter-spacing:-.02em;margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:32px;font-style:italic;font-weight:500;line-height:1}.docs-v3-tabs{border-bottom:1px solid #0000;gap:4px;display:flex}.docs-v3-tab{color:var(--ink-faint);text-align:left;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;flex-direction:column;align-items:flex-start;gap:2px;padding:12px 18px;transition:color .18s,border-color .18s;display:flex}.docs-v3-tab-eyebrow{letter-spacing:.2em;text-transform:uppercase;color:#141e196b;font-family:JetBrains Mono,ui-monospace,monospace;font-size:9px;font-weight:700;transition:color .18s}.docs-v3-tab-label{letter-spacing:-.01em;font-family:Cormorant Garamond,Georgia,serif;font-size:18px;font-style:italic;font-weight:500}.docs-v3-tab:hover{color:var(--ink)}.docs-v3-tab:hover .docs-v3-tab-eyebrow{color:#141e199e}.docs-v3-tab.is-active{color:var(--ink);border-bottom-color:var(--accent)}.docs-v3-tab.is-active .docs-v3-tab-eyebrow{color:var(--accent)}.docs-v3-body{grid-template-columns:264px minmax(0,1fr);align-items:start;gap:48px;width:min(1280px,100% - 56px);margin:0 auto;padding:36px 0 60px;display:grid}.docs-sidebar{flex-direction:column;gap:24px;max-height:calc(100vh - 140px);padding-right:8px;display:flex;position:sticky;top:124px;overflow-y:auto}.docs-sidebar-group{flex-direction:column;gap:8px;display:flex}.docs-sidebar-eyebrow{color:#141e1973;letter-spacing:.22em;text-transform:uppercase;margin:0 0 4px;padding-left:10px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:9.5px;font-weight:700}.docs-sidebar-group ul{flex-direction:column;gap:1px;margin:0;padding:0;list-style:none;display:flex}.docs-sidebar-link{width:100%;color:var(--ink-dim);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:8px 12px;font-family:Inter,system-ui,sans-serif;font-size:13.5px;font-weight:500;transition:background .18s,color .18s}.docs-sidebar-link:hover{color:var(--ink);background:#141e190a}.docs-sidebar-link.is-active{color:var(--accent);background:#0e633814;font-weight:600}.docs-v3-main{min-width:0}.docs-v3-article{max-width:760px}.docs-v3-article-eyebrow{color:var(--accent);letter-spacing:.24em;text-transform:uppercase;margin:0 0 12px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;font-weight:700}.docs-v3-article h2{color:var(--ink);letter-spacing:-.02em;margin:0 0 14px;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(30px,3.4vw,42px);font-style:italic;font-weight:500;line-height:1.08}.docs-v3-article-summary{color:var(--ink-dim);letter-spacing:-.01em;margin:0 0 28px;font-family:Cormorant Garamond,Georgia,serif;font-size:19px;font-style:italic;font-weight:500;line-height:1.4}.docs-v3-content{color:var(--ink-dim);flex-direction:column;gap:18px;font-family:Inter,system-ui,sans-serif;font-size:14.5px;line-height:1.65;display:flex}.docs-v3-content h3{color:var(--ink);letter-spacing:-.015em;margin:16px 0 -4px;font-family:Cormorant Garamond,Georgia,serif;font-size:22px;font-style:italic;font-weight:600;line-height:1.2}.docs-v3-content p{margin:0}.docs-v3-content ul,.docs-v3-content ol{flex-direction:column;gap:6px;margin:0;padding-left:22px;display:flex}.docs-v3-content li{color:var(--ink-dim)}.docs-code{background:#0a0a08;border:1px solid #141e1966;border-radius:12px;margin:4px 0;overflow:hidden}.docs-code-head{background:#f4f1e80d;border-bottom:1px solid #f4f1e814;padding:8px 16px}.docs-code-head span{color:#f4f1e899;letter-spacing:.22em;text-transform:uppercase;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;font-weight:700}.docs-code pre{margin:0;padding:16px 20px;overflow-x:auto}.docs-code code{color:#f4f1e8;white-space:pre;font-family:JetBrains Mono,ui-monospace,monospace;font-size:13px;line-height:1.55}.docs-callout{background:#0e63380a;border:1px solid #0e63382e;border-radius:12px;gap:12px;padding:14px 16px;display:flex}.docs-callout-warn{background:#c47c260f;border-color:#c47c2652}.docs-callout>span{background:var(--accent);border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-top:4px}.docs-callout-warn>span{background:#c47c26}.docs-callout p{color:var(--ink-dim);margin:0;font-size:13.5px;line-height:1.55}.docs-v3 .docs-screenshot{background:#fff;border:1px solid #141e1914;border-radius:14px;min-height:0;margin:4px 0;overflow:hidden;box-shadow:0 1px #141e1908,0 10px 24px #141e190d}.docs-v3 .docs-screenshot img{object-fit:contain;background:#fff;width:100%;height:auto;min-height:0;display:block}.docs-v3 .docs-screenshot figcaption{min-height:0;color:var(--ink-faint);letter-spacing:.18em;text-transform:uppercase;background:#fbfaf6;border-top:1px solid #141e190f;padding:10px 16px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;font-weight:700}.docs-v3 .docs-screenshot-missing{min-height:180px;padding:24px}.docs-v3 .docs-screenshot-missing strong{font-size:22px}.docs-v3-pagination{border-top:1px solid #141e1914;grid-template-columns:1fr 1fr;gap:14px;margin-top:48px;padding-top:28px;display:grid}.docs-v3-pager{cursor:pointer;text-align:left;background:#fff;border:1px solid #141e1914;border-radius:12px;flex-direction:column;gap:4px;padding:16px 18px;transition:border-color .18s,transform .18s,box-shadow .18s;display:flex}.docs-v3-pager.next{text-align:right;align-items:flex-end}.docs-v3-pager:hover{border-color:#0e633838;transform:translateY(-1px);box-shadow:0 10px 24px #141e190f}.docs-v3-pager span{color:var(--ink-faint);letter-spacing:.2em;text-transform:uppercase;font-family:JetBrains Mono,ui-monospace,monospace;font-size:9.5px;font-weight:700}.docs-v3-pager strong{color:var(--ink);letter-spacing:-.01em;font-family:Cormorant Garamond,Georgia,serif;font-size:16px;font-style:italic;font-weight:600}.docs-v3-cta{background:radial-gradient(520px 240px at 30% 0,#0e63380f,#0000 70%),#fff;border:1px solid #141e1914;border-radius:22px;justify-content:space-between;align-items:center;gap:24px;width:min(1280px,100% - 56px);margin:0 auto 60px;padding:32px 36px;display:flex}.docs-v3-cta h3{color:var(--ink);letter-spacing:-.02em;margin:0 0 6px;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(22px,2.4vw,28px);font-style:italic;font-weight:500}.docs-v3-cta h3 em{color:var(--accent);font-style:italic;font-weight:600}.docs-v3-cta p{color:var(--ink-faint);margin:0;font-family:Inter,system-ui,sans-serif;font-size:13.5px}.docs-v3-cta .landing-btn-primary{background:var(--accent);color:#fff;border-color:#0000;flex-shrink:0;min-width:200px;min-height:46px;padding-inline:26px;font-size:13px;font-weight:700;box-shadow:0 1px #0e63384d,0 12px 24px #0e633833}.docs-v3-cta .landing-btn-primary:hover{background:var(--accent-hover)}@media (width<=1080px){.docs-v3-body{grid-template-columns:220px minmax(0,1fr);gap:28px}}@media (width<=920px){.docs-v3-header-inner,.docs-v3-body,.docs-v3-cta{width:min(100% - 32px,1280px)}.docs-v3-body{grid-template-columns:1fr;gap:24px;padding:24px 0 48px}.docs-sidebar{background:#fff;border:1px solid #141e1914;border-radius:14px;max-height:none;padding:16px;position:relative;top:0}.docs-v3-tabs{width:100%}.docs-v3-tab{flex:1;padding:10px 12px}.docs-v3-tab-label{font-size:16px}.docs-v3-pagination{grid-template-columns:1fr}.docs-v3-cta{flex-direction:column;align-items:flex-start;padding:26px 22px}.docs-v3-cta .landing-btn-primary{width:100%}}.resources-page{width:min(1180px,100% - 56px);margin:0 auto;padding:64px 0 80px}.resources-hero{text-align:center;max-width:740px;margin:0 auto 56px}.resources-hero .landing-section-eyebrow{color:var(--accent);letter-spacing:.28em;text-transform:uppercase;background:#0e63380a;border:1px solid #0e63382e;border-radius:999px;align-items:center;gap:10px;margin-bottom:20px;padding:6px 14px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;font-weight:600;display:inline-flex}.resources-hero .landing-section-eyebrow>span{background:#6ba88a;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 3px #6ba88a2e}.resources-hero h1{color:var(--ink);letter-spacing:-.03em;margin:0 0 16px;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(32px,4vw,50px);font-style:italic;font-weight:400;line-height:1.06}.resources-hero-line{display:block}.resources-hero-accent{color:var(--ink-dim);margin-top:6px;font-size:.78em;font-weight:400;display:block}.resources-hero-accent em{color:var(--accent);font-style:italic;font-weight:500}.resources-hero-sub{max-width:560px;color:var(--ink-faint);margin:0 auto;font-family:Inter,system-ui,sans-serif;font-size:15px;font-weight:400;line-height:1.55}.resources-section{margin-bottom:64px}.resources-section-head{text-align:center;max-width:720px;margin:0 auto 32px}.resources-section-eyebrow{color:var(--accent);letter-spacing:.24em;text-transform:uppercase;margin:0 0 12px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;font-weight:700}.resources-section-head h2{color:var(--ink);letter-spacing:-.02em;margin:0 0 12px;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(24px,3vw,36px);font-style:italic;font-weight:500;line-height:1.15}.resources-section-head h2 em{color:var(--accent);font-style:italic;font-weight:600}.resources-section-head>p{max-width:520px;color:var(--ink-faint);margin:0 auto;font-family:Inter,system-ui,sans-serif;font-size:14px;line-height:1.55}.tutorials-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;display:grid}.tutorial-card{color:inherit;background:#fff;border:1px solid #141e1914;border-radius:16px;flex-direction:column;text-decoration:none;transition:transform .22s,box-shadow .22s,border-color .22s;display:flex;overflow:hidden;box-shadow:0 1px #141e1908,0 10px 24px #141e190d}a.tutorial-card:hover{border-color:#0e633838;transform:translateY(-2px);box-shadow:0 1px #141e190a,0 18px 36px #141e1914}.tutorial-card.is-placeholder{cursor:default;background:#fbfaf6}.tutorial-thumb{aspect-ratio:16/9;background:#0a0a08;place-items:center;display:grid;position:relative;overflow:hidden}.tutorial-thumb img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.tutorial-thumb-placeholder{background:radial-gradient(240px 160px at 50% 40%,#6ba88a2e,#0000 70%),#f4f1e8}.tutorial-thumb-mark{opacity:.32;--calibrx-ring:#141e199e;--calibrx-x:var(--accent);--calibrx-dot:transparent;width:56px;height:56px}.tutorial-thumb-play{z-index:1;color:#0a0a08;background:#fffffff0;border-radius:50%;place-items:center;width:52px;height:52px;transition:transform .22s,background .22s;display:grid;position:relative;box-shadow:0 8px 22px #0a0a0852}.tutorial-thumb-play svg{fill:currentColor;width:22px;height:22px;margin-left:3px}a.tutorial-card:hover .tutorial-thumb-play{background:#fff;transform:scale(1.06)}.tutorial-thumb-placeholder .tutorial-thumb-play{color:#141e198c;background:#ffffffb8;box-shadow:0 4px 14px #141e191f}.tutorial-thumb-duration{z-index:2;color:#f4f1e8;letter-spacing:.1em;background:#0a0a08c7;border-radius:999px;padding:4px 9px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:9.5px;font-weight:700;position:absolute;bottom:10px;right:10px}.tutorial-thumb-placeholder .tutorial-thumb-duration{color:#141e199e;background:#141e192e}.tutorial-thumb-status{z-index:2;color:var(--accent);letter-spacing:.16em;text-transform:uppercase;background:#0e63381a;border-radius:999px;padding:4px 9px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:9.5px;font-weight:700;position:absolute;top:10px;left:10px}.tutorial-card-copy{padding:18px 20px 22px}.tutorial-card-eyebrow{color:var(--ink-faint);letter-spacing:.2em;text-transform:uppercase;margin:0 0 8px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:9.5px;font-weight:700}.tutorial-card h3{color:var(--ink);letter-spacing:-.01em;margin:0 0 8px;font-family:Cormorant Garamond,Georgia,serif;font-size:19px;font-style:italic;font-weight:500;line-height:1.18}.tutorial-card-copy>p{color:var(--ink-dim);margin:0;font-family:Inter,system-ui,sans-serif;font-size:13px;font-weight:400;line-height:1.55}.resources-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.resource-card{color:inherit;background:#fff;border:1px solid #141e1914;border-radius:18px;flex-direction:column;text-decoration:none;transition:transform .22s,box-shadow .22s,border-color .22s;display:flex;overflow:hidden;box-shadow:0 1px #141e1908,0 10px 24px #141e190d}a.resource-card:hover{border-color:#0e633838;transform:translateY(-2px);box-shadow:0 1px #141e190a,0 20px 40px #141e1914}.resource-card.is-placeholder{background:#fbfaf6}.resource-card-visual{background:radial-gradient(360px 200px at 50% 0,#6ba88a14,#0000 70%),#fbfaf6;border-bottom:1px solid #141e190f;padding:24px 28px 18px}.resource-svg{width:100%;height:auto;max-height:140px;display:block}.resource-card-copy{padding:22px 26px 24px}.resource-card-eyebrow{color:var(--ink-faint);letter-spacing:.2em;text-transform:uppercase;margin:0 0 8px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;font-weight:700}.resource-card h3{color:var(--ink);letter-spacing:-.015em;margin:0 0 10px;font-family:Cormorant Garamond,Georgia,serif;font-size:22px;font-style:italic;font-weight:500;line-height:1.15}.resource-card h3 em{color:var(--accent);font-style:italic;font-weight:600}.resource-card-copy>p{color:var(--ink-dim);margin:0 0 14px;font-family:Inter,system-ui,sans-serif;font-size:13.5px;font-weight:400;line-height:1.55}.resource-card-cta{color:var(--accent);letter-spacing:.14em;text-transform:uppercase;align-items:center;gap:8px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:11px;font-weight:700;display:inline-flex}.resource-card-cta svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:14px;height:14px}.resource-card.is-placeholder .resource-card-cta{color:var(--ink-faint)}.resources-list{gap:12px;max-width:820px;margin:0 auto;padding:0;list-style:none;display:grid}.resources-list-item{background:#fff;border:1px solid #141e1914;border-radius:14px;justify-content:space-between;align-items:center;gap:18px;padding:18px 22px;transition:border-color .22s,background .22s;display:flex}.resources-list-item:hover{background:#fbfaf6;border-color:#0e633838}.resources-list-eyebrow{color:var(--accent);letter-spacing:.22em;text-transform:uppercase;margin:0 0 4px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:9px;font-weight:700}.resources-list-item h4{color:var(--ink);letter-spacing:-.01em;margin:0 0 2px;font-family:Cormorant Garamond,Georgia,serif;font-size:18px;font-style:italic;font-weight:500}.resources-list-item span{color:var(--ink-faint);font-family:Inter,system-ui,sans-serif;font-size:12.5px}.resources-list-cta{color:var(--accent);letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;align-items:center;gap:8px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:11px;font-weight:700;display:inline-flex}.resources-list-cta svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:14px;height:14px}.resources-cta{text-align:center;background:radial-gradient(520px 240px at 50% 0,#0e63380f,#0000 70%),#fff;border:1px solid #141e1914;border-radius:22px;flex-direction:column;align-items:center;gap:14px;padding:48px 32px;display:flex}.resources-cta h3{color:var(--ink);letter-spacing:-.02em;margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(24px,2.8vw,34px);font-style:italic;font-weight:500;line-height:1.15}.resources-cta h3 em{color:var(--accent);font-style:italic;font-weight:600}.resources-cta .landing-btn-primary{background:var(--accent);color:#fff;border-color:#0000;min-width:240px;min-height:50px;margin-top:6px;padding-inline:32px;font-size:13.5px;font-weight:700;box-shadow:0 1px #0e63384d,0 16px 32px #0e633833}.resources-cta .landing-btn-primary:hover{background:var(--accent-hover)}.resources-cta>span{color:var(--ink-faint);letter-spacing:.18em;text-transform:uppercase;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;font-weight:600}@media (width<=1080px){.tutorials-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=920px){.resources-page{width:min(100% - 24px,1180px);padding:40px 0 56px}.resources-section{margin-bottom:48px}.tutorials-grid,.resources-grid{grid-template-columns:1fr;gap:16px}.resources-list-item{flex-direction:column;align-items:flex-start;gap:14px}.resources-cta{padding:36px 22px}}.login-page{isolation:isolate;background:radial-gradient(720px 320px at 50% 0,#0e633814,#0000 70%),radial-gradient(480px 480px at 90% 100%,#6ba88a12,#0000 65%),#fbfaf6;place-items:center;min-height:100vh;padding:48px 24px;display:grid;position:relative}.login-page:before{content:none}.login-card{text-align:center;background:#fff;border:1px solid #141e1914;border-radius:18px;width:min(100%,460px);padding:48px 52px 32px;position:relative;box-shadow:0 1px #141e190a,0 24px 56px #141e1914,0 4px 12px #141e190a}.login-card:before{content:none}.login-wordmark{color:var(--ink);justify-content:center;align-items:center;gap:0;line-height:1;text-decoration:none;display:inline-flex}.login-brand-wordmark .calibrx-wordmark-text{color:var(--ink);font-size:54px}.login-brand-mark{--calibrx-ring:#0a0a08;--calibrx-x:#0e6338;--calibrx-dot:#fff;color:#0a0a08;width:50px;height:50px}.login-subtitle{color:var(--ink-dim);letter-spacing:-.01em;margin-top:14px;font-family:Cormorant Garamond,Georgia,serif;font-size:22px;font-style:italic;font-weight:500;line-height:1.25}.login-credit-pill{width:100%;min-height:32px;color:var(--ink-dim);background:#0e63380a;border:1px solid #0e63382e;border-radius:999px;justify-content:center;align-items:center;gap:9px;margin-top:24px;padding:7px 14px;font-size:12px;font-weight:500;line-height:1.35;display:inline-flex}.login-credit-pill svg{fill:none;width:15px;height:15px;stroke:var(--accent);stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none}.login-credit-pill strong{color:var(--accent);font-weight:700}.login-options{gap:12px;margin-top:28px;display:grid}.login-option-btn{letter-spacing:0;cursor:pointer;border-radius:12px;justify-content:center;align-items:center;gap:11px;width:100%;min-height:48px;font-family:Inter,system-ui,sans-serif;font-size:14px;font-weight:600;transition:transform .18s,box-shadow .18s,border-color .18s,background .18s;display:inline-flex;position:relative}.login-option-btn:hover{transform:translateY(-1px)}.login-option-btn:disabled{cursor:wait;opacity:.72}.google-login-btn{color:var(--ink);background:#fff;border:1px solid #141e191f;box-shadow:0 1px #141e1908}.google-login-btn:hover{background:#fbfaf6;border-color:#141e1938;box-shadow:0 4px 12px #141e190f}.google-mark{color:#4285f4;border-radius:50%;place-items:center;width:20px;height:20px;font-family:Arial,sans-serif;font-size:20px;font-weight:800;line-height:1;display:inline-grid}.login-last-used{min-height:20px;color:var(--accent);letter-spacing:.12em;text-transform:uppercase;box-shadow:none;background:#0e63381a;border-radius:999px;align-items:center;padding:0 8px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:9px;font-weight:700;display:inline-flex;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.login-alert{color:#663027;text-align:left;background:#90362a0d;border:1px solid #90362a38;border-left:3px solid #90362a;border-radius:10px;margin-top:20px;padding:12px 14px;font-size:13px;line-height:1.55}.login-form{text-align:left;gap:8px;margin-top:0;display:grid}.login-email-step{gap:14px;margin-top:24px;display:grid}.login-form label{letter-spacing:.2em;text-transform:uppercase;color:var(--ink-faint);font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;font-weight:700}.login-form input{min-height:48px;color:var(--ink);text-align:left;background:#fbfaf6;border:1px solid #141e1924;border-radius:12px;padding:0 16px;font-family:Inter,system-ui,sans-serif;font-size:14px;transition:border-color .18s,box-shadow .18s,background .18s}.login-form input:hover{border-color:#141e1938}.login-form input:focus{border-color:var(--accent);background:#fff;outline:none;box-shadow:0 0 0 3px #0e63381f}.email-login-btn{background:var(--accent);color:#fff;border:1px solid #0000;margin-top:6px;box-shadow:0 1px #0e63384d,0 12px 24px #0e63382e}.email-login-btn:hover{background:var(--accent-hover);box-shadow:0 1px #0e63385c,0 16px 30px #0e63383d}.email-login-btn svg{fill:none;stroke:currentColor;stroke-width:1.9px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.login-inline-note{border:1px solid #0e633829;border-left:3px solid var(--accent);color:var(--accent-hover);text-align:left;background:#0e63380a;border-radius:10px;padding:12px 14px;font-size:12.5px;line-height:1.5}.login-step-back{min-height:32px;color:var(--ink-faint);letter-spacing:.18em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;justify-self:center;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;font-weight:700;transition:color .18s}.login-step-back:hover{color:var(--accent)}.login-resend-btn{min-height:34px;color:var(--accent);letter-spacing:.16em;text-transform:uppercase;cursor:pointer;background:0 0;border:1px solid #0e63382e;border-radius:999px;justify-self:center;padding:0 14px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;font-weight:700;transition:border-color .18s,background .18s}.login-resend-btn:hover{background:#0e63380d;border-color:#0e633857}.login-resend-btn:disabled{cursor:wait;opacity:.6}.login-terms{color:var(--ink-faint);border-top:1px solid #141e190f;margin-top:32px;padding-top:22px;font-size:11.5px;line-height:1.55}.login-terms a{color:var(--accent);border-bottom:1px solid #0e633838;font-weight:600;text-decoration:none;transition:border-color .18s}.login-terms a:hover{border-bottom-color:var(--accent)}.login-back-link{color:var(--ink-faint);letter-spacing:.18em;text-transform:uppercase;align-items:center;gap:6px;margin-top:14px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;font-weight:700;text-decoration:none;transition:color .18s;display:inline-flex}.login-back-link:before{content:"←";letter-spacing:0;font-family:Inter,system-ui,sans-serif;font-size:12px}.login-back-link:hover{color:var(--accent)}@media (width<=920px){.landing-hero,.landing-section,.landing-compare,.landing-final-cta,.landing-divider{width:min(100% - 40px,1180px)}.landing-hero{width:100%;padding-top:40px}.landing-hero-grid{width:min(100% - 40px,1180px)}.landing-hero-grid,.landing-feature-grid,.landing-compare-grid,.landing-workflow-track,.docs-hero,.docs-section,.docs-troubleshooting,.product-feature-grid,.pricing-page-v2 .pricing-grid{grid-template-columns:1fr}.docs-page{width:min(100% - 40px,1180px);padding-top:42px}.docs-screenshot{min-height:300px}.docs-troubleshooting-grid{grid-template-columns:1fr}.product-feature-grid .landing-feature-tile:nth-child(4){grid-column:auto}.landing-feature-tile.featured{grid-area:auto;min-height:360px}.landing-workflow-diagram{min-height:auto;margin-bottom:20px;padding-top:0}.landing-workflow-loop{display:none}.landing-workflow-badge{min-width:min(100%,330px);padding:15px 22px}.landing-workflow-wordmark .calibrx-wordmark-text{font-size:36px}.landing-workflow-panels{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:22px}.landing-workflow-panel{min-height:auto}.landing-compare-grid .before{border-bottom:1.5px solid #0a0a08;border-right:0}.landing-workflow-track:before{display:none}.landing-workflow-track article{grid-template-columns:auto 1fr;align-items:start;column-gap:18px;display:grid}.landing-workflow-track article>span{grid-row:span 2;margin-bottom:0}.landing-workflow-track.landing-hero-steps{text-align:center;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 22px;padding:0}.landing-workflow-track.landing-hero-steps:before{content:none;display:none}.landing-workflow-track.landing-hero-steps article{padding:6px 4px;display:block}.landing-workflow-track.landing-hero-steps article:not(:last-child):after{display:none}.landing-workflow-track.landing-hero-steps article>span{letter-spacing:.05em;width:36px;height:36px;margin:0 auto 10px;font-size:11px}.landing-workflow-track.landing-hero-steps h3{font-size:14px}.landing-workflow-track.landing-hero-steps p{max-width:none;font-size:10.5px}.public-header{grid-template-columns:1fr auto;gap:14px}.public-nav{order:3;grid-column:1/-1;justify-content:flex-start;padding-bottom:10px;overflow-x:auto}.public-hero{grid-template-columns:1fr;gap:34px;min-height:auto;padding-top:34px}.public-hero-panel{max-width:560px}.public-feature-grid,.public-feature-grid.wide,.pricing-grid{grid-template-columns:1fr}}@media (width<=620px){.login-card{border-radius:14px;padding:40px 24px 26px}.login-wordmark{font-size:32px}.login-brand-wordmark .calibrx-wordmark-text{font-size:44px}.login-subtitle{font-size:19px}.login-credit-pill{border-radius:12px;padding:8px 12px;font-size:11.5px}.public-header,.public-hero,.docs-page,.public-band,.public-page-section{width:min(100% - 24px,1180px)}.public-header{width:100%;min-height:68px;padding-inline:12px}.public-actions{gap:6px}.public-link-btn{display:none}.public-hero h1,.public-page-section h1,.seo-article h1{font-size:2.55rem}.landing-hero h1{white-space:normal;font-size:2.55rem}.landing-hero-actions,.landing-trust-line,.landing-final-cta>div>div{flex-direction:column;align-items:stretch}.landing-btn{width:100%}.landing-demo{aspect-ratio:1}.landing-demo-matrix{bottom:70px;left:14px;right:14px}.landing-section h2,.landing-compare h2,.landing-final-cta h2{font-size:2.25rem}.landing-feature-tile,.landing-feature-tile.featured,.landing-compare-grid article,.docs-hero-copy,.docs-map,.docs-section-copy,.docs-troubleshooting,.landing-final-cta>div{padding:22px 18px}.docs-hero h1{font-size:2.55rem}.docs-section h2,.docs-troubleshooting h2{font-size:2.2rem}.docs-toc{margin-inline:-12px;padding-inline:12px;top:68px}.docs-screenshot{min-height:260px}.landing-workflow-track article{grid-template-columns:1fr}.landing-workflow-track article>span{margin-bottom:16px}.public-hero-actions{flex-direction:column;align-items:stretch}.policy-shell{grid-template-columns:1fr}.policy-sidebar{position:static}.policy-document{padding:26px 20px}.public-primary-btn.large,.public-secondary-btn.large{width:100%}.login-page{padding:14px}.login-card{padding:22px}}.api-sdk-page-header{background:var(--bg)}.api-sdk-header-actions{flex-flow:wrap;align-items:center}.api-sdk-status-pill{border:1px solid var(--line-strong);min-height:34px;color:var(--ink);letter-spacing:.12em;text-transform:uppercase;background:#ffffffb8;border-radius:999px;align-items:center;padding:7px 12px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:600;display:inline-flex}.api-sdk-status-pill.live{background:var(--accent-soft);color:var(--accent);border-color:#0e633857}.api-sdk-main{gap:20px;max-width:1220px;display:grid}.api-sdk-command-center{border:1.5px solid var(--ink);background:var(--bg-2);border-radius:8px;grid-template-columns:minmax(0,1.1fr) minmax(340px,.9fr);align-items:stretch;gap:24px;padding:28px;display:grid;box-shadow:0 14px 30px #141e1914}.api-sdk-hero-copy{flex-direction:column;justify-content:center;gap:12px;display:flex}.api-sdk-hero-copy h2,.api-sdk-section-head h3,.api-sdk-api-panel h3{color:var(--ink);letter-spacing:0;margin:0;font-family:Fraunces,Georgia,serif;font-weight:400}.api-sdk-hero-copy h2{max-width:700px;font-size:clamp(2rem,4vw,3.05rem);line-height:1}.api-sdk-section-head h3,.api-sdk-api-panel h3{margin-top:4px;font-size:25px;line-height:1.05}.api-sdk-hero-copy p:not(.eyebrow),.api-sdk-workflow-step p,.api-sdk-api-panel p{max-width:620px;color:var(--ink-dim);margin:0;font-size:14px;line-height:1.7}.api-sdk-metric-row{flex-wrap:wrap;gap:8px;margin-top:6px;display:flex}.api-sdk-metric-row span{border:1px solid var(--line-strong);min-height:34px;color:var(--ink-dim);letter-spacing:.1em;text-transform:uppercase;background:#fff;border-radius:999px;align-items:center;gap:7px;padding:7px 11px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:700;display:inline-flex}.api-sdk-metric-row strong{color:var(--accent);font-size:13px}.api-sdk-terminal-card,.api-sdk-workflow-panel,.api-sdk-code-workbench,.api-sdk-export-panel,.api-sdk-capability-panel,.api-sdk-api-panel{border:1.5px solid var(--ink);background:#fff;border-radius:7px;box-shadow:0 10px 24px #141e190e}.api-sdk-terminal-card{align-content:start;gap:14px;padding:18px;display:grid}.api-sdk-terminal-head{border-bottom:1px solid var(--line);align-items:center;gap:7px;padding-bottom:12px;display:flex}.api-sdk-terminal-head span{border:1px solid var(--ink);background:#fff;border-radius:50%;width:10px;height:10px}.api-sdk-terminal-head span:nth-child(2){background:#f0c65a}.api-sdk-terminal-head span:nth-child(3){background:var(--accent)}.api-sdk-terminal-head em{color:var(--ink-faint);letter-spacing:.14em;text-transform:uppercase;margin-left:auto;font-family:JetBrains Mono,monospace;font-size:10px;font-style:normal;font-weight:700}.api-sdk-install-line{border:1px solid var(--ink);background:#11120f;border-radius:6px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:14px;display:grid}.api-sdk-install-line code{color:#f4f1e8;text-overflow:ellipsis;white-space:nowrap;font-family:JetBrains Mono,monospace;font-size:14px;overflow:hidden}.api-sdk-copy{border:1px solid var(--ink);background:var(--ink);color:#fff;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;border-radius:5px;min-height:32px;padding:0 11px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:700}.api-sdk-copy svg{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;vertical-align:-2px;width:13px;height:13px;margin-right:6px}.api-sdk-copy.copied{border-color:var(--accent);background:var(--accent)}.api-sdk-link-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;display:grid}.api-sdk-link-strip a{border:1px solid var(--line-strong);background:var(--bg);min-height:78px;color:var(--ink);border-radius:6px;gap:5px;padding:12px;text-decoration:none;transition:background .15s,border-color .15s,transform .15s;display:grid;position:relative}.api-sdk-link-strip a:hover{border-color:var(--accent);background:var(--accent-soft);transform:translateY(-1px)}.api-sdk-link-strip span,.api-sdk-section-head .eyebrow{color:var(--accent);letter-spacing:.18em;text-transform:uppercase;margin:0;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:700}.api-sdk-link-strip strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:700;overflow:hidden}.api-sdk-link-strip svg{fill:none;width:15px;height:15px;stroke:var(--accent);stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;position:absolute;bottom:10px;right:10px}.api-sdk-workbench{grid-template-columns:minmax(320px,.82fr) minmax(0,1.18fr);align-items:stretch;gap:18px;display:grid}.api-sdk-workflow-panel,.api-sdk-code-workbench{align-content:start;gap:16px;padding:18px;display:grid}.api-sdk-section-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:16px;padding-bottom:14px;display:flex}.api-sdk-section-head.compact{padding-bottom:12px}.api-sdk-section-head>a{color:var(--accent);letter-spacing:.12em;text-transform:uppercase;flex:none;align-self:center;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:700;text-decoration:none}.api-sdk-workflow-steps{gap:12px;display:grid}.api-sdk-workflow-step{border:1px solid var(--line-strong);background:var(--bg);border-radius:6px;grid-template-columns:44px minmax(0,1fr);gap:13px;padding:14px;display:grid}.api-sdk-workflow-step span{border:1px solid var(--ink);width:36px;height:36px;color:var(--accent);background:#fff;border-radius:50%;place-items:center;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:800;display:inline-grid}.api-sdk-workflow-step strong{color:var(--ink);margin-bottom:5px;font-family:Fraunces,Georgia,serif;font-size:22px;font-weight:400;line-height:1.05;display:block}.api-sdk-workflow-step p{font-size:13px;line-height:1.6}.api-sdk-snippet-tabs{flex-wrap:wrap;gap:8px;display:flex}.api-sdk-snippet-tabs button{border:1px solid var(--line-strong);background:var(--bg);min-height:32px;color:var(--ink-dim);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;border-radius:999px;padding:0 12px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:700}.api-sdk-snippet-tabs button.active{border-color:var(--ink);background:var(--ink);color:#fff}.api-sdk-code-workbench pre,.api-sdk-api-panel pre{border:1px solid var(--line);color:#f4f1e8;background:#11120f;border-radius:6px;margin:0;padding:16px;overflow-x:auto}.api-sdk-code-workbench code,.api-sdk-api-panel code{font-family:JetBrains Mono,monospace;font-size:12px;line-height:1.65}.api-sdk-detail-grid{grid-template-columns:minmax(0,1.05fr) minmax(260px,.75fr) minmax(300px,.95fr);align-items:stretch;gap:18px;display:grid}.api-sdk-export-panel,.api-sdk-capability-panel,.api-sdk-api-panel{align-content:start;gap:16px;padding:18px;display:grid}.api-sdk-export-matrix{gap:9px;display:grid}.api-sdk-export-row{border:1px solid var(--line-strong);background:var(--bg);border-radius:6px;grid-template-columns:58px minmax(0,1fr);align-items:center;gap:5px 11px;padding:12px;display:grid}.api-sdk-export-row span{background:var(--accent-soft);min-height:30px;color:var(--accent);letter-spacing:.1em;border:1px solid #0e633852;border-radius:999px;grid-row:span 2;justify-content:center;align-items:center;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:800;display:inline-flex}.api-sdk-export-row strong,.api-sdk-export-row em{text-overflow:ellipsis;white-space:nowrap;font-family:JetBrains Mono,monospace;overflow:hidden}.api-sdk-export-row strong{color:var(--ink);font-size:11px}.api-sdk-export-row em{color:var(--ink-faint);font-size:10px;font-style:normal}.api-sdk-capability-tags,.api-sdk-api-roadmap{flex-wrap:wrap;gap:8px;display:flex}.api-sdk-capability-tags span,.api-sdk-api-roadmap span{border:1px solid var(--line-strong);background:var(--bg);min-height:31px;color:var(--ink);letter-spacing:.1em;text-transform:uppercase;border-radius:999px;align-items:center;padding:7px 10px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:700;display:inline-flex}.api-sdk-api-panel{background:var(--bg)}.api-sdk-api-roadmap{align-content:flex-start}@media (width<=1080px){.api-sdk-command-center,.api-sdk-workbench,.api-sdk-detail-grid{grid-template-columns:1fr}}@media (width<=700px){.api-sdk-command-center,.api-sdk-workflow-panel,.api-sdk-code-workbench,.api-sdk-export-panel,.api-sdk-capability-panel,.api-sdk-api-panel{padding:16px}.api-sdk-link-strip{grid-template-columns:1fr}.api-sdk-section-head{display:grid}.api-sdk-install-line{grid-template-columns:1fr}.api-sdk-copy{justify-self:start}}.api-sdk-page-header{background:linear-gradient(180deg, #1f5d3a09, #fff0), var(--bg-2);border-bottom-color:#a9a398}.api-sdk-page-header .page-subtitle{color:#34332f}.analytics-html.api-sdk-page{--cal-ink-soft:#171717;--cal-muted:#45433d;--cal-muted-soft:#5b574f;--cal-line:#918b80;--cal-line-soft:#aaa398;--cal-line-faint:#d7d2c6;--cal-green:#164f31;--cal-green-dark:#0f3822;--cal-green-tint:#eef6f0;gap:20px;display:grid}.analytics-html.api-sdk-page .api-sdk-control-row{border-bottom-color:var(--cal-line);justify-content:flex-end}.analytics-html.api-sdk-page .api-sdk-export-btn{border-color:var(--cal-green);background:var(--cal-green);color:#fff}.analytics-html.api-sdk-page .api-sdk-export-btn:hover{border-color:var(--cal-green-dark);background:var(--cal-green-dark)}.analytics-html.api-sdk-page .api-sdk-row-header{border:1.5px solid var(--cal-ink);border-left:1.5px solid var(--cal-ink);background:var(--cal-surface);border-radius:0;align-items:center;gap:22px;margin:8px 0 0;padding:22px 28px;display:flex;box-shadow:inset 0 1px #fffffff2,0 12px 24px #14141217}.analytics-html.api-sdk-page .api-sdk-row-header:after{display:none}.analytics-html.api-sdk-page .api-sdk-row-header h2{color:var(--cal-ink);letter-spacing:0;font-size:26px;font-weight:500}.analytics-html.api-sdk-page .api-sdk-row-header h2 em{color:var(--cal-green);font-family:inherit;font-size:inherit;font-style:italic;font-weight:600;line-height:inherit}.analytics-html.api-sdk-page .api-sdk-row-header>em{color:var(--cal-muted);font-family:var(--cal-font-serif);font-size:15px;font-style:italic}.analytics-html.api-sdk-page .api-sdk-command-center,.analytics-html.api-sdk-page .api-sdk-workflow-panel,.analytics-html.api-sdk-page .api-sdk-code-workbench,.analytics-html.api-sdk-page .api-sdk-export-panel,.analytics-html.api-sdk-page .api-sdk-capability-panel,.analytics-html.api-sdk-page .api-sdk-api-panel{border:1.5px solid var(--cal-ink);background:var(--cal-surface);border-radius:0;box-shadow:inset 0 1px #fffffff2,0 18px 34px #14141221,0 2px 8px #14141214}.analytics-html.api-sdk-page .api-sdk-command-center{grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:0;margin-top:0;padding:0;overflow:hidden}.analytics-html.api-sdk-page .api-sdk-hero-copy{border-right:2px solid var(--cal-ink);background:var(--cal-surface);padding:28px}.analytics-html.api-sdk-page .api-sdk-hero-copy .eyebrow,.analytics-html.api-sdk-page .api-sdk-section-head .eyebrow{color:var(--cal-green);letter-spacing:.22em;font-size:10px;font-weight:700}.analytics-html.api-sdk-page .api-sdk-hero-copy h2{color:var(--cal-ink);font-family:var(--cal-font-serif);font-size:clamp(2rem,3.6vw,3rem);font-weight:500}.analytics-html.api-sdk-page .api-sdk-hero-copy p:not(.eyebrow),.analytics-html.api-sdk-page .api-sdk-workflow-step p,.analytics-html.api-sdk-page .api-sdk-api-panel p{color:var(--cal-muted)}.analytics-html.api-sdk-page .api-sdk-terminal-card{box-shadow:none;background:var(--cal-bg);border:0;border-radius:0;padding:28px}.analytics-html.api-sdk-page .api-sdk-terminal-head,.analytics-html.api-sdk-page .api-sdk-section-head{border-bottom:2px solid var(--cal-ink)}.analytics-html.api-sdk-page .api-sdk-metric-row span,.analytics-html.api-sdk-page .api-sdk-link-strip a,.analytics-html.api-sdk-page .api-sdk-workflow-step,.analytics-html.api-sdk-page .api-sdk-snippet-tabs button,.analytics-html.api-sdk-page .api-sdk-export-row,.analytics-html.api-sdk-page .api-sdk-capability-tags span,.analytics-html.api-sdk-page .api-sdk-api-roadmap span{border-color:var(--cal-ink);border-radius:0}.analytics-html.api-sdk-page .api-sdk-metric-row span,.analytics-html.api-sdk-page .api-sdk-link-strip a,.analytics-html.api-sdk-page .api-sdk-workflow-step,.analytics-html.api-sdk-page .api-sdk-export-row,.analytics-html.api-sdk-page .api-sdk-capability-tags span,.analytics-html.api-sdk-page .api-sdk-api-roadmap span{background:var(--cal-bg)}.analytics-html.api-sdk-page .api-sdk-metric-row strong,.analytics-html.api-sdk-page .api-sdk-link-strip span,.analytics-html.api-sdk-page .api-sdk-section-head>a,.analytics-html.api-sdk-page .api-sdk-workflow-step span,.analytics-html.api-sdk-page .api-sdk-export-row span{color:var(--cal-green)}.analytics-html.api-sdk-page .api-sdk-install-line{border:1.5px solid var(--cal-ink);border-radius:0}.analytics-html.api-sdk-page .api-sdk-copy{border-color:var(--cal-ink);border-radius:0}.analytics-html.api-sdk-page .api-sdk-link-strip a:hover,.analytics-html.api-sdk-page .api-sdk-snippet-tabs button.active{border-color:var(--cal-green);background:var(--cal-green-tint);color:var(--cal-green)}.analytics-html.api-sdk-page .api-sdk-workbench,.analytics-html.api-sdk-page .api-sdk-detail-grid{gap:20px}.analytics-html.api-sdk-page .api-sdk-workflow-panel,.analytics-html.api-sdk-page .api-sdk-code-workbench,.analytics-html.api-sdk-page .api-sdk-export-panel,.analytics-html.api-sdk-page .api-sdk-capability-panel,.analytics-html.api-sdk-page .api-sdk-api-panel{padding:0;overflow:hidden}.analytics-html.api-sdk-page .api-sdk-section-head{margin:0;padding:22px 24px 18px}.analytics-html.api-sdk-page .api-sdk-section-head h3,.analytics-html.api-sdk-page .api-sdk-api-panel h3{color:var(--cal-ink);font-family:var(--cal-font-serif);letter-spacing:0;font-size:24px;font-weight:500}.analytics-html.api-sdk-page .api-sdk-workflow-steps,.analytics-html.api-sdk-page .api-sdk-snippet-tabs,.analytics-html.api-sdk-page .api-sdk-export-matrix,.analytics-html.api-sdk-page .api-sdk-capability-tags,.analytics-html.api-sdk-page .api-sdk-api-panel>div:not(.api-sdk-section-head){padding:20px 24px 24px}.analytics-html.api-sdk-page .api-sdk-code-workbench pre{border-radius:0;margin:0 24px 24px}.analytics-html.api-sdk-page .api-sdk-api-panel{background:var(--cal-surface)}.analytics-html.api-sdk-page .api-sdk-api-roadmap{padding-top:0}.analytics-html.api-sdk-page .api-sdk-simple-panel{box-shadow:none;background:0 0;border:0;border-radius:0;overflow:visible}.analytics-html.api-sdk-page .api-sdk-language-bar{background:0 0;border-bottom:0;flex-wrap:wrap;justify-content:flex-start;gap:0;width:fit-content;padding:0;display:flex}.analytics-html.api-sdk-page .api-sdk-language-ticket{border:1.5px solid var(--cal-ink);background:var(--cal-surface);min-height:38px;color:var(--cal-ink);cursor:pointer;font-family:var(--cal-font-mono);letter-spacing:.1em;text-transform:uppercase;border-right:0;border-radius:9px 0 0 9px;align-items:center;gap:9px;padding:8px 14px;font-size:11px;font-weight:800;display:inline-flex}.analytics-html.api-sdk-page .api-sdk-language-ticket.active{background:var(--cal-green);color:#fff}.analytics-html.api-sdk-page .api-sdk-language-ticket em{color:currentColor;opacity:.72;font-size:9px;font-style:normal}.analytics-html.api-sdk-page .api-sdk-roadmap{grid-template-columns:1fr;min-height:auto;display:grid}.analytics-html.api-sdk-page .api-sdk-language-section{display:grid}.analytics-html.api-sdk-page .api-sdk-language-section-head{border-bottom:2px solid var(--cal-ink);background:var(--cal-surface);justify-content:space-between;align-items:flex-end;gap:20px;padding:22px 24px 18px;display:flex}.analytics-html.api-sdk-page .api-sdk-language-section-head .eyebrow{color:var(--cal-green);letter-spacing:.22em;margin:0 0 6px;font-size:10px;font-weight:700}.analytics-html.api-sdk-page .api-sdk-language-section-head h3{color:var(--cal-ink);font-family:var(--cal-font-serif);letter-spacing:0;margin:0;font-size:28px;font-weight:500;line-height:1.05}.analytics-html.api-sdk-page .api-sdk-language-section-head>span{border:1.5px solid var(--cal-ink);background:var(--cal-green-tint);min-height:30px;color:var(--cal-green);font-family:var(--cal-font-mono);letter-spacing:.12em;text-transform:uppercase;align-items:center;padding:6px 10px;font-size:10px;font-weight:800;display:inline-flex}.analytics-html.api-sdk-page .api-sdk-command-sections{gap:16px;padding:0;display:grid}.analytics-html.api-sdk-page .api-sdk-command-list{border-right:2px solid var(--cal-ink);background:var(--cal-bg);align-content:start;display:grid}.analytics-html.api-sdk-page .api-sdk-command-item{border:0;border-bottom:1.5px solid var(--cal-line);min-height:66px;color:var(--cal-ink);cursor:pointer;text-align:left;background:0 0;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:12px;padding:14px 18px;display:grid}.analytics-html.api-sdk-page .api-sdk-command-item:hover,.analytics-html.api-sdk-page .api-sdk-command-item.active{background:var(--cal-green-tint)}.analytics-html.api-sdk-page .api-sdk-command-item span{border:1.5px solid var(--cal-ink);background:var(--cal-surface);width:34px;height:34px;color:var(--cal-green);font-family:var(--cal-font-mono);place-items:center;font-size:10px;font-weight:800;display:inline-grid}.analytics-html.api-sdk-page .api-sdk-command-item.active span{background:var(--cal-green);color:#fff}.analytics-html.api-sdk-page .api-sdk-command-item strong{color:var(--cal-ink);font-family:var(--cal-font-mono);letter-spacing:.1em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font-size:11px;font-weight:800;overflow:hidden}.analytics-html.api-sdk-page .api-sdk-command-detail{border:1.5px solid var(--cal-ink);background:var(--cal-surface);border-radius:12px;align-content:start;gap:18px;padding:20px 22px 18px;transition:background .15s,box-shadow .15s,transform .15s;display:grid;position:relative;box-shadow:inset 0 1px #fffffff2,0 18px 34px #14141229,0 5px 12px #14141214}.analytics-html.api-sdk-page .api-sdk-command-detail:before{content:"";background:var(--cal-green);opacity:0;width:3px;transition:opacity .15s;position:absolute;top:20px;bottom:20px;left:0}.analytics-html.api-sdk-page .api-sdk-command-detail:hover{background:#fff;transform:translateY(-3px);box-shadow:inset 0 1px #fffffff2,0 26px 44px #14141233,0 8px 16px #1414121a}.analytics-html.api-sdk-page .api-sdk-command-detail:hover:before{opacity:1}.analytics-html.api-sdk-page .api-sdk-command-card,.analytics-html.api-sdk-page .api-sdk-command-card:last-child{border-bottom:1.5px solid var(--cal-ink)}.analytics-html.api-sdk-page .api-sdk-command-detail-head{border-bottom:0;justify-content:space-between;align-items:flex-start;gap:18px;padding-bottom:0;display:flex}.analytics-html.api-sdk-page .api-sdk-command-title-row{align-items:center;gap:12px;min-width:0;display:flex}.analytics-html.api-sdk-page .api-sdk-command-title-row>span{border:1.5px solid var(--cal-ink);background:var(--cal-green-tint);width:34px;height:34px;color:var(--cal-green);font-family:var(--cal-font-mono);border-radius:8px;flex:none;place-items:center;font-size:10px;font-weight:800;display:inline-grid}.analytics-html.api-sdk-page .api-sdk-command-detail-head .eyebrow,.analytics-html.api-sdk-page .api-sdk-coming-soon .eyebrow{color:var(--cal-green);letter-spacing:.22em;margin:0 0 6px;font-size:10px;font-weight:700}.analytics-html.api-sdk-page .api-sdk-command-detail h3,.analytics-html.api-sdk-page .api-sdk-coming-soon h3{color:var(--cal-ink);font-family:"Google Sans", "Product Sans", var(--cal-font-sans);letter-spacing:0;margin:0;font-size:23px;font-weight:600;line-height:1.12}.analytics-html.api-sdk-page .api-sdk-command-detail>p,.analytics-html.api-sdk-page .api-sdk-coming-soon p:not(.eyebrow){max-width:680px;color:var(--cal-muted);margin:0;font-size:14px;line-height:1.7}.analytics-html.api-sdk-page .api-sdk-command-detail pre{color:#d8dee9;background:#111418;border:0;border-radius:0;margin:0;padding:16px 20px;overflow-x:auto}.analytics-html.api-sdk-page .api-sdk-command-detail code{font-family:var(--cal-font-mono);font-size:12px;line-height:1.65}.analytics-html.api-sdk-page .api-sdk-code-line{display:inline}.analytics-html.api-sdk-page .api-sdk-code-frame{border:1.5px solid var(--cal-ink);background:#111418;border-radius:10px;overflow:hidden;box-shadow:0 12px 22px #11141833,inset 0 1px #ffffff14}.analytics-html.api-sdk-page .api-sdk-code-topbar{background:#0d1015;border-bottom:1px solid #d8dee91f;justify-content:space-between;align-items:center;gap:12px;min-height:36px;padding:8px 14px;display:flex}.analytics-html.api-sdk-page .api-sdk-code-dots{gap:6px;display:flex}.analytics-html.api-sdk-page .api-sdk-code-dots span{border-radius:50%;width:8px;height:8px}.analytics-html.api-sdk-page .api-sdk-code-dots span:first-child{background:#ff5f57}.analytics-html.api-sdk-page .api-sdk-code-dots span:nth-child(2){background:#febc2e}.analytics-html.api-sdk-page .api-sdk-code-dots span:nth-child(3){background:#28c840}.analytics-html.api-sdk-page .api-sdk-code-filename{color:#6f7787;font-family:var(--cal-font-mono);letter-spacing:.08em;font-size:10px;font-weight:700}.analytics-html.api-sdk-page .api-sdk-token-keyword{color:#82aaff;font-weight:700}.analytics-html.api-sdk-page .api-sdk-token-function{color:#c792ea;font-weight:650}.analytics-html.api-sdk-page .api-sdk-token-module{color:#7fdbca;font-weight:700}.analytics-html.api-sdk-page .api-sdk-token-string{color:#ecc48d}.analytics-html.api-sdk-page .api-sdk-token-shell-command{color:#addb67;font-weight:800}.analytics-html.api-sdk-page .api-sdk-language-bar{align-items:center;gap:8px;width:100%}.analytics-html.api-sdk-page .api-sdk-language-ticket{border:1.5px solid var(--cal-ink);background:var(--cal-surface);min-height:28px;color:var(--cal-muted);letter-spacing:.16em;border-radius:999px;gap:6px;padding:6px 12px;font-size:10px;line-height:1}.analytics-html.api-sdk-page .api-sdk-language-ticket:before{content:"";opacity:.7;background:currentColor;border-radius:50%;width:6px;height:6px}.analytics-html.api-sdk-page .api-sdk-language-ticket.active{border-color:var(--cal-green);background:var(--cal-green-tint);color:var(--cal-green)}.analytics-html.api-sdk-page .api-sdk-language-ticket:last-child{border-right:1.5px solid var(--cal-ink);border-radius:999px}.analytics-html.api-sdk-page .api-sdk-language-ticket em{letter-spacing:.18em;font-size:8px}.analytics-html.api-sdk-page .api-sdk-install-hint{border:1.5px solid var(--cal-ink);background:var(--cal-ink);min-height:31px;color:var(--cal-green-light);font-family:var(--cal-font-mono);letter-spacing:.04em;cursor:pointer;border-radius:999px;align-items:center;gap:8px;margin-left:auto;padding:7px 14px;font-size:11px;font-weight:700;transition:background .15s,border-color .15s;display:inline-flex}.analytics-html.api-sdk-page .api-sdk-install-hint:hover{border-color:var(--cal-green);background:var(--cal-green);color:#fff}.analytics-html.api-sdk-page .api-sdk-install-hint span{color:#93c4a5ad;font-weight:500}.analytics-html.api-sdk-page .api-sdk-step-wrap{display:grid}.analytics-html.api-sdk-page .api-sdk-command-sections{gap:0}.analytics-html.api-sdk-page .api-sdk-command-detail{background:var(--cal-surface);border-radius:12px;gap:0;padding:0;overflow:hidden}.analytics-html.api-sdk-page .api-sdk-command-detail:before{opacity:1;border-radius:12px 0 0 12px;width:4px;top:0;bottom:0}.analytics-html.api-sdk-page .api-sdk-command-detail:hover:before{width:6px}.analytics-html.api-sdk-page .api-sdk-command-detail-head{border-bottom:1px solid var(--cal-line-faint);grid-template-columns:36px minmax(0,1fr) auto;align-items:flex-start;gap:18px;padding:22px 24px 18px 28px;display:grid}.analytics-html.api-sdk-page .api-sdk-step-number{background:var(--cal-green);width:36px;height:36px;color:var(--cal-surface);font-family:var(--cal-font-mono);font-feature-settings:"zero" 1, "tnum" 1;border-radius:50%;place-items:center;font-size:13px;font-weight:800;display:inline-grid;position:relative}.analytics-html.api-sdk-page .api-sdk-step-number:after{content:"";border:1.5px dashed #0d422540;border-radius:50%;position:absolute;inset:-3px}.analytics-html.api-sdk-page .api-sdk-command-title-block{min-width:0}.analytics-html.api-sdk-page .api-sdk-command-title-block h3{color:var(--cal-ink);font-family:var(--cal-font-serif);letter-spacing:0;margin:0 0 6px;font-size:24px;font-weight:500;line-height:1.12}.analytics-html.api-sdk-page .api-sdk-command-title-block h3 em{color:var(--cal-green);font-style:italic;font-weight:600}.analytics-html.api-sdk-page .api-sdk-command-title-block p{max-width:720px;color:var(--cal-muted);margin:0;font-size:13px;line-height:1.58}.analytics-html.api-sdk-page .api-sdk-command-title-block p em{color:var(--cal-ink);font-family:var(--cal-font-serif);font-size:14px;font-style:italic;font-weight:500}.analytics-html.api-sdk-page .api-sdk-copy{background:var(--cal-bg);min-height:30px;color:var(--cal-ink);letter-spacing:.2em;border-radius:8px;align-self:center;font-size:9px}.analytics-html.api-sdk-page .api-sdk-copy:hover,.analytics-html.api-sdk-page .api-sdk-copy.copied{border-color:var(--cal-green);background:var(--cal-green);color:#fff}.analytics-html.api-sdk-page .api-sdk-code-frame{box-shadow:none;background:#223228;border:0;border-radius:0}.analytics-html.api-sdk-page .api-sdk-code-topbar{background:#293b30;border-bottom:1px solid #ffffff1a;min-height:39px;padding:10px 16px}.analytics-html.api-sdk-page .api-sdk-code-dots span{width:10px;height:10px}.analytics-html.api-sdk-page .api-sdk-code-filename{color:#c8c5bc75;font-weight:600}.analytics-html.api-sdk-page .api-sdk-command-detail pre{color:#eee9dc;background:#223228;padding:20px 24px 22px}.analytics-html.api-sdk-page .api-sdk-command-detail code{font-feature-settings:"zero" 1;font-size:13px;line-height:1.78}.analytics-html.api-sdk-page .api-sdk-token-keyword,.analytics-html.api-sdk-page .api-sdk-token-shell-command{color:#6ba88a}.analytics-html.api-sdk-page .api-sdk-token-function{color:#a8d4be}.analytics-html.api-sdk-page .api-sdk-token-module,.analytics-html.api-sdk-page .api-sdk-token-string{color:#d4a56a}.analytics-html.api-sdk-page .api-sdk-token-prompt{color:var(--cal-green-light)}.analytics-html.api-sdk-page .api-sdk-step-footer{border-top:1px solid var(--cal-line-faint);background:var(--cal-bg);align-items:center;gap:16px;min-height:42px;padding:10px 24px 10px 28px;display:flex}.analytics-html.api-sdk-page .api-sdk-step-tag{color:var(--cal-muted-soft);font-family:var(--cal-font-mono);letter-spacing:.16em;text-transform:uppercase;align-items:center;gap:6px;font-size:9px;font-weight:700;display:inline-flex}.analytics-html.api-sdk-page .api-sdk-step-tag:before{content:"";background:var(--cal-green-light);border-radius:50%;width:5px;height:5px}.analytics-html.api-sdk-page .api-sdk-step-tag.pip:before{background:var(--cal-amber)}.analytics-html.api-sdk-page .api-sdk-step-link{color:var(--cal-green);font-family:var(--cal-font-serif);border-bottom:1px solid #0d42254d;margin-left:auto;font-size:13px;font-style:italic;font-weight:600;text-decoration:none}.analytics-html.api-sdk-page .api-sdk-step-link:hover{border-color:var(--cal-green-dark);color:var(--cal-green-dark)}.analytics-html.api-sdk-page .api-sdk-step-connector{height:16px;margin-left:22px;position:relative}.analytics-html.api-sdk-page .api-sdk-step-connector:before{content:"";background:linear-gradient(180deg, var(--cal-green), var(--cal-green-tint));opacity:.5;width:4px;position:absolute;top:0;bottom:0;left:19px}.analytics-html.api-sdk-page .api-sdk-completion-panel{border:1.5px solid var(--cal-green-dark);background:var(--cal-green);color:#f4f1e8;border-radius:12px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:30px;margin-top:8px;padding:32px 40px;display:grid;position:relative;overflow:hidden}.analytics-html.api-sdk-page .api-sdk-completion-panel:before{content:"";pointer-events:none;border:1px dashed #ffffff29;position:absolute;inset:16px}.analytics-html.api-sdk-page .api-sdk-completion-panel:after{content:"";pointer-events:none;background:repeating-linear-gradient(-45deg,#0000 0 10px,#ffffff09 10px 20px);width:210px;position:absolute;inset:0 0 0 auto}.analytics-html.api-sdk-page .api-sdk-completion-mark,.analytics-html.api-sdk-page .api-sdk-completion-copy,.analytics-html.api-sdk-page .api-sdk-completion-actions{z-index:1;position:relative}.analytics-html.api-sdk-page .api-sdk-completion-mark svg{display:block}.analytics-html.api-sdk-page .api-sdk-completion-mark circle{fill:none;stroke:#f4f1e833;stroke-width:1.5px}.analytics-html.api-sdk-page .api-sdk-completion-mark path{fill:none;stroke:var(--cal-green-light);stroke-width:4px;stroke-linecap:square}.analytics-html.api-sdk-page .api-sdk-completion-mark circle:last-child{fill:#f4f1e8;stroke:none}.analytics-html.api-sdk-page .api-sdk-completion-copy .eyebrow{color:#f4f1e8a3;letter-spacing:.26em;margin:0 0 8px;font-size:10px}.analytics-html.api-sdk-page .api-sdk-completion-copy h3{color:#f4f1e8;font-family:var(--cal-font-serif);margin:0 0 6px;font-size:26px;font-style:italic;font-weight:500}.analytics-html.api-sdk-page .api-sdk-completion-copy h3 em{color:var(--cal-green-light);font-weight:600}.analytics-html.api-sdk-page .api-sdk-completion-copy p:not(.eyebrow){color:#f4f1e8b8;max-width:560px;margin:0;font-size:13px;line-height:1.55}.analytics-html.api-sdk-page .api-sdk-completion-actions{gap:8px;display:grid}.analytics-html.api-sdk-page .api-sdk-completion-actions a{color:#ffffffd1;min-height:34px;font-family:var(--cal-font-mono);letter-spacing:.16em;text-transform:uppercase;border:1.5px solid #ffffff59;justify-content:center;align-items:center;padding:8px 16px;font-size:10px;font-weight:800;text-decoration:none;display:inline-flex}.analytics-html.api-sdk-page .api-sdk-completion-actions a:first-child{color:var(--cal-green);background:#f4f1e8;border-color:#f4f1e8}.analytics-html.api-sdk-page .api-sdk-coming-soon{text-align:center;background:linear-gradient(var(--cal-line-faint) 1px, transparent 1px), linear-gradient(90deg, var(--cal-line-faint) 1px, transparent 1px), var(--cal-bg);border-top:2px solid var(--cal-ink);background-size:28px 28px,28px 28px,auto;align-content:center;justify-items:center;gap:12px;min-height:280px;padding:46px 24px;display:grid}.analytics-html.api-sdk-page .api-sdk-coming-soon h3{font-size:clamp(2.2rem,5vw,4rem)}@media (width<=1080px){.analytics-html.api-sdk-page .api-sdk-command-center{grid-template-columns:1fr}.analytics-html.api-sdk-page .api-sdk-hero-copy{border-right:0;border-bottom:2px solid var(--cal-ink)}.analytics-html.api-sdk-page .api-sdk-roadmap{grid-template-columns:1fr}.analytics-html.api-sdk-page .api-sdk-command-list{border-right:0;border-bottom:2px solid var(--cal-ink)}}@media (width<=620px){.analytics-html.api-sdk-page .api-sdk-row-header{padding:18px;display:grid}.analytics-html.api-sdk-page .api-sdk-hero-copy,.analytics-html.api-sdk-page .api-sdk-terminal-card,.analytics-html.api-sdk-page .api-sdk-section-head,.analytics-html.api-sdk-page .api-sdk-workflow-steps,.analytics-html.api-sdk-page .api-sdk-snippet-tabs,.analytics-html.api-sdk-page .api-sdk-export-matrix,.analytics-html.api-sdk-page .api-sdk-capability-tags,.analytics-html.api-sdk-page .api-sdk-api-panel>div:not(.api-sdk-section-head){padding:18px}.analytics-html.api-sdk-page .api-sdk-code-workbench pre{margin:0 18px 18px}.analytics-html.api-sdk-page .api-sdk-language-bar,.analytics-html.api-sdk-page .api-sdk-command-detail,.analytics-html.api-sdk-page .api-sdk-coming-soon{padding:18px}.analytics-html.api-sdk-page .api-sdk-language-bar{gap:8px;width:100%;padding:0}.analytics-html.api-sdk-page .api-sdk-install-hint{justify-content:center;width:100%;margin-left:0}.analytics-html.api-sdk-page .api-sdk-command-detail{padding:0}.analytics-html.api-sdk-page .api-sdk-command-detail-head{grid-template-columns:34px minmax(0,1fr);padding:18px;display:grid}.analytics-html.api-sdk-page .api-sdk-command-detail-head .api-sdk-copy{grid-column:1/-1;justify-self:start}.analytics-html.api-sdk-page .api-sdk-command-detail pre{padding:18px}.analytics-html.api-sdk-page .api-sdk-step-footer{flex-wrap:wrap;gap:8px 14px;padding:12px 18px}.analytics-html.api-sdk-page .api-sdk-step-link{margin-left:0}.analytics-html.api-sdk-page .api-sdk-completion-panel{grid-template-columns:1fr;gap:18px;padding:26px 24px}.analytics-html.api-sdk-page .api-sdk-completion-actions{justify-items:start}.analytics-html.api-sdk-page .api-sdk-language-ticket{flex:1;justify-content:center}}.exports-page-header{background:var(--bg)}.exports-header-actions{flex-flow:wrap;align-items:center}.exports-status-pill{border:1px solid var(--line-strong);min-height:34px;color:var(--ink);letter-spacing:.12em;text-transform:uppercase;background:#ffffffbd;border-radius:999px;align-items:center;padding:7px 12px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:700;display:inline-flex}.exports-main{gap:22px;max-width:1220px;display:grid}.exports-hero{border:1.5px solid var(--ink);background:var(--bg-2);border-radius:8px;grid-template-columns:minmax(0,1.12fr) minmax(280px,.88fr);align-items:stretch;gap:22px;padding:28px;display:grid;box-shadow:0 14px 30px #141e1914}.exports-hero-copy{flex-direction:column;justify-content:center;gap:12px;display:flex}.exports-hero-copy h2,.exports-section-head h3,.exports-sdk-panel h3,.exports-empty span{color:var(--ink);letter-spacing:0;margin:0;font-family:Fraunces,Georgia,serif;font-weight:400}.exports-hero-copy h2{max-width:720px;font-size:clamp(2rem,4vw,3rem);line-height:1}.exports-hero-copy p:not(.eyebrow),.exports-sdk-panel p,.exports-empty p{max-width:640px;color:var(--ink-dim);margin:0;font-size:14px;line-height:1.7}.exports-hero-panel{border:1.5px solid var(--ink);background:#fff;border-radius:7px;align-content:center;gap:10px;min-height:180px;padding:20px;display:grid;box-shadow:0 10px 24px #141e190e}.exports-panel-number{color:var(--accent);font-family:JetBrains Mono,monospace;font-size:44px;font-weight:700;line-height:1}.exports-panel-label{color:var(--ink);letter-spacing:.16em;text-transform:uppercase;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:700}.exports-panel-rule{background:var(--line-strong);height:1px;margin:7px 0}.exports-hero-panel code{border:1px solid var(--line);background:var(--bg);color:var(--ink);text-overflow:ellipsis;white-space:nowrap;border-radius:6px;padding:12px;font-family:JetBrains Mono,monospace;font-size:13px;overflow:hidden}.exports-layout{grid-template-columns:minmax(0,1fr) 380px;align-items:start;gap:18px;display:grid}.exports-stack{gap:18px;display:grid}.exports-section-head{border:1.5px solid var(--ink);background:#fff;border-radius:7px;justify-content:space-between;align-items:flex-start;gap:16px;padding:18px;display:flex;box-shadow:0 10px 24px #141e190e}.exports-section-head.compact{border:0;border-bottom:1px solid var(--line);box-shadow:none;border-radius:0;padding:0 0 14px}.exports-section-head h3{margin-top:4px;font-size:25px;line-height:1.05}.exports-section-head span{border:1px solid var(--line-strong);background:var(--bg);min-height:30px;color:var(--ink);letter-spacing:.12em;text-transform:uppercase;border-radius:999px;align-items:center;padding:7px 10px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:700;display:inline-flex}.exports-file-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.exports-file-card,.exports-sdk-panel,.exports-project-panel{border:1.5px solid var(--ink);background:#fff;border-radius:7px;box-shadow:0 10px 24px #141e190e}.exports-file-card{gap:12px;min-height:180px;padding:18px;display:grid}.exports-file-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:8px;padding-bottom:12px;display:flex}.exports-file-head span{background:var(--accent-soft);min-height:28px;color:var(--accent);letter-spacing:.12em;border:1px solid #0e633852;border-radius:999px;align-items:center;padding:6px 9px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:700;display:inline-flex}.exports-file-head code{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-family:JetBrains Mono,monospace;font-size:11px;overflow:hidden}.exports-file-card h4{color:var(--ink);letter-spacing:0;margin:0;font-family:Fraunces,Georgia,serif;font-size:24px;font-weight:400;line-height:1.05}.exports-file-card p{color:var(--ink-dim);margin:0;font-size:13px;line-height:1.65}.exports-sdk-panel{grid-template-columns:minmax(0,.78fr) minmax(320px,1fr);align-items:stretch;gap:18px;padding:18px;display:grid}.exports-sdk-panel h3{margin:5px 0 8px;font-size:26px;line-height:1.05}.exports-sdk-panel pre{border:1px solid var(--line);color:#f4f1e8;background:#11120f;border-radius:6px;margin:0;padding:16px;overflow-x:auto}.exports-sdk-panel code{font-family:JetBrains Mono,monospace;font-size:12px;line-height:1.65}.exports-project-panel{gap:16px;padding:18px;display:grid;position:sticky;top:84px}.exports-project-list{gap:10px;max-height:566px;padding-right:4px;display:grid;overflow-y:auto}.exports-project-row{border:1px solid var(--line-strong);background:var(--bg);color:var(--ink);border-radius:6px;gap:10px;padding:14px;text-decoration:none;transition:background .15s,border-color .15s,transform .15s;display:grid}.exports-project-row:hover{border-color:var(--accent);background:var(--accent-soft);transform:translateY(-1px)}.exports-project-main{gap:4px;display:grid}.exports-project-main span,.exports-project-meta span{color:var(--accent);letter-spacing:.12em;text-transform:uppercase;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:700}.exports-project-main strong{color:var(--ink);font-family:Fraunces,Georgia,serif;font-size:21px;font-weight:400;line-height:1.05}.exports-project-meta{border-top:1px solid var(--line);flex-wrap:wrap;gap:7px;padding-top:10px;display:flex}.exports-project-meta span{border:1px solid var(--line);min-height:24px;color:var(--ink-dim);letter-spacing:.1em;background:#fff;border-radius:4px;align-items:center;padding:5px 7px;font-size:9px;display:inline-flex}.exports-empty{gap:10px;padding:20px 0 2px;display:grid}.exports-empty span{font-size:24px}.exports-empty a{width:fit-content;color:var(--accent);letter-spacing:.12em;text-transform:uppercase;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:700}@media (width<=1080px){.exports-hero,.exports-layout,.exports-sdk-panel{grid-template-columns:1fr}.exports-project-panel{position:static}}@media (width<=700px){.exports-file-grid{grid-template-columns:1fr}.exports-hero,.exports-section-head,.exports-sdk-panel,.exports-project-panel{padding:16px}}.exports-page-header{background:linear-gradient(180deg, #1f5d3a09, #fff0), var(--bg-2);border-bottom-color:#a9a398}.exports-page-header .page-subtitle{color:#34332f}.analytics-html.exports-page{--cal-ink-soft:#171717;--cal-muted:#45433d;--cal-muted-soft:#5b574f;--cal-line:#918b80;--cal-line-soft:#aaa398;--cal-line-faint:#d7d2c6;--cal-green:#164f31;--cal-green-dark:#0f3822;--cal-green-tint:#eef6f0;gap:20px;display:grid}.analytics-html.exports-page .exports-control-row{border-bottom-color:var(--cal-line);justify-content:flex-end}.analytics-html.exports-page .exports-sdk-btn{border-color:var(--cal-green);background:var(--cal-green);color:#fff}.analytics-html.exports-page .exports-sdk-btn:hover{border-color:var(--cal-green-dark);background:var(--cal-green-dark)}.analytics-html.exports-page .exports-row-header{border:1.5px solid var(--cal-ink);border-left:1.5px solid var(--cal-ink);background:var(--cal-surface);border-radius:0;align-items:center;gap:22px;margin:8px 0 0;padding:22px 28px;display:flex;box-shadow:inset 0 1px #fffffff2,0 12px 24px #14141217}.analytics-html.exports-page .exports-row-header:after{display:none}.analytics-html.exports-page .exports-row-header h2{color:var(--cal-ink);letter-spacing:0;font-size:26px;font-weight:500}.analytics-html.exports-page .exports-row-header h2 em{color:var(--cal-green);font-family:inherit;font-size:inherit;font-style:italic;font-weight:600;line-height:inherit}.analytics-html.exports-page .exports-row-header>em{color:var(--cal-muted);font-family:var(--cal-font-serif);font-size:15px;font-style:italic}.analytics-html.exports-page .exports-hero,.analytics-html.exports-page .exports-section-head,.analytics-html.exports-page .exports-file-card,.analytics-html.exports-page .exports-sdk-panel,.analytics-html.exports-page .exports-project-panel{border:1.5px solid var(--cal-ink);background:var(--cal-surface);border-radius:0;box-shadow:inset 0 1px #fffffff2,0 18px 34px #14141221,0 2px 8px #14141214}.analytics-html.exports-page .exports-hero{grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);gap:0;padding:0;overflow:hidden}.analytics-html.exports-page .exports-hero-copy{border-right:2px solid var(--cal-ink);background:var(--cal-surface);padding:28px}.analytics-html.exports-page .exports-hero-panel{min-height:auto;box-shadow:none;background:var(--cal-bg);border:0;border-radius:0;padding:28px}.analytics-html.exports-page .exports-hero-copy .eyebrow,.analytics-html.exports-page .exports-section-head .eyebrow,.analytics-html.exports-page .exports-sdk-panel .eyebrow{color:var(--cal-green);letter-spacing:.22em;font-size:10px;font-weight:700}.analytics-html.exports-page .exports-hero-copy h2,.analytics-html.exports-page .exports-section-head h3,.analytics-html.exports-page .exports-sdk-panel h3,.analytics-html.exports-page .exports-empty span{color:var(--cal-ink);font-family:var(--cal-font-serif);letter-spacing:0;font-weight:500}.analytics-html.exports-page .exports-hero-copy h2{font-size:clamp(2rem,3.6vw,3rem)}.analytics-html.exports-page .exports-hero-copy p:not(.eyebrow),.analytics-html.exports-page .exports-file-card p,.analytics-html.exports-page .exports-sdk-panel p,.analytics-html.exports-page .exports-empty p{color:var(--cal-muted)}.analytics-html.exports-page .exports-panel-number,.analytics-html.exports-page .exports-project-main span,.analytics-html.exports-page .exports-empty a{color:var(--cal-green)}.analytics-html.exports-page .exports-panel-rule{background:var(--cal-ink);height:2px}.analytics-html.exports-page .exports-hero-panel code,.analytics-html.exports-page .exports-section-head span,.analytics-html.exports-page .exports-file-head span,.analytics-html.exports-page .exports-project-row,.analytics-html.exports-page .exports-project-meta span{border-color:var(--cal-ink);border-radius:0}.analytics-html.exports-page .exports-hero-panel code,.analytics-html.exports-page .exports-section-head span,.analytics-html.exports-page .exports-project-row,.analytics-html.exports-page .exports-project-meta span{background:var(--cal-bg)}.analytics-html.exports-page .exports-layout{grid-template-columns:minmax(0,1fr) 360px;align-items:stretch;gap:20px}.analytics-html.exports-page .exports-stack{gap:20px}.analytics-html.exports-page .exports-section-head{border-bottom:2px solid var(--cal-ink);align-items:flex-end;margin:0;padding:22px 24px 18px}.analytics-html.exports-page .exports-section-head.compact{border:0;border-bottom:2px solid var(--cal-ink);box-shadow:none}.analytics-html.exports-page .exports-file-grid{gap:20px}.analytics-html.exports-page .exports-file-card{min-height:188px;padding:0;overflow:hidden}.analytics-html.exports-page .exports-file-head{border-bottom:2px solid var(--cal-ink);padding:16px 18px 14px}.analytics-html.exports-page .exports-file-head span{background:var(--cal-green-tint);color:var(--cal-green)}.analytics-html.exports-page .exports-file-card h4,.analytics-html.exports-page .exports-file-card p{padding-inline:18px}.analytics-html.exports-page .exports-file-card h4{font-family:var(--cal-font-serif);font-weight:500}.analytics-html.exports-page .exports-file-card p{padding-bottom:18px}.analytics-html.exports-page .exports-sdk-panel{grid-template-columns:minmax(0,.78fr) minmax(320px,1fr);gap:0;padding:0;overflow:hidden}.analytics-html.exports-page .exports-sdk-panel>div{border-right:2px solid var(--cal-ink);padding:22px 24px}.analytics-html.exports-page .exports-sdk-panel pre{border:0;border-radius:0;margin:0}.analytics-html.exports-page .exports-project-panel{gap:0;padding:0;position:sticky;top:84px;overflow:hidden}.analytics-html.exports-page .exports-project-list{gap:0;max-height:610px;padding:0}.analytics-html.exports-page .exports-project-row{border:0;border-bottom:1.5px solid var(--cal-line);background:var(--cal-surface);padding:16px 18px;transform:none}.analytics-html.exports-page .exports-project-row:hover{background:var(--cal-green-tint)}.analytics-html.exports-page .exports-project-main strong{color:var(--cal-ink);font-family:var(--cal-font-serif);font-weight:500}.analytics-html.exports-page .exports-project-meta{border-top-color:var(--cal-line)}.analytics-html.exports-page .exports-empty{padding:22px 24px}@media (width<=1080px){.analytics-html.exports-page .exports-hero,.analytics-html.exports-page .exports-layout,.analytics-html.exports-page .exports-sdk-panel{grid-template-columns:1fr}.analytics-html.exports-page .exports-hero-copy,.analytics-html.exports-page .exports-sdk-panel>div{border-right:0;border-bottom:2px solid var(--cal-ink)}.analytics-html.exports-page .exports-project-panel{position:static}}@media (width<=620px){.analytics-html.exports-page .exports-row-header{padding:18px;display:grid}.analytics-html.exports-page .exports-hero-copy,.analytics-html.exports-page .exports-hero-panel,.analytics-html.exports-page .exports-section-head,.analytics-html.exports-page .exports-sdk-panel>div,.analytics-html.exports-page .exports-empty{padding:18px}}.analytics-html.exports-page .exports-workbench{grid-template-columns:minmax(220px,.72fr) minmax(260px,.92fr) minmax(0,1.65fr);align-items:stretch;gap:20px;display:grid}.analytics-html.exports-page .exports-camera-picker,.analytics-html.exports-page .exports-project-picker,.analytics-html.exports-page .exports-result-panel,.analytics-html.exports-page .exports-empty-state{border:1.5px solid var(--cal-ink);background:var(--cal-surface);box-shadow:inset 0 1px #fffffff2,0 18px 34px #14141221,0 2px 8px #14141214}.analytics-html.exports-page .exports-camera-picker,.analytics-html.exports-page .exports-project-picker,.analytics-html.exports-page .exports-result-panel{min-height:690px;overflow:hidden}.analytics-html.exports-page .exports-camera-picker,.analytics-html.exports-page .exports-project-picker{grid-template-rows:auto minmax(0,1fr);display:grid}.analytics-html.exports-page .exports-result-panel{align-content:start;gap:20px;padding:0;display:grid}.analytics-html.exports-page .exports-panel-head,.analytics-html.exports-page .exports-result-head{border-bottom:2px solid var(--cal-ink);background:var(--cal-surface);justify-content:space-between;align-items:flex-start;gap:18px;padding:22px 24px 18px;display:flex}.analytics-html.exports-page .exports-panel-head.compact{border-bottom:1.5px solid var(--cal-line);background:0 0;padding:0 0 16px}.analytics-html.exports-page .exports-panel-head .eyebrow,.analytics-html.exports-page .exports-result-head .eyebrow,.analytics-html.exports-page .exports-empty-state .eyebrow{color:var(--cal-green);letter-spacing:.22em;margin:0 0 6px;font-size:10px;font-weight:700}.analytics-html.exports-page .exports-panel-head h3,.analytics-html.exports-page .exports-result-head h3,.analytics-html.exports-page .exports-empty-state h3,.analytics-html.exports-page .exports-download-panel h3{color:var(--cal-ink);font-family:var(--cal-font-serif);letter-spacing:0;margin:0;font-size:25px;font-weight:500;line-height:1.05}.analytics-html.exports-page .exports-panel-head span,.analytics-html.exports-page .exports-result-score,.analytics-html.exports-page .exports-matrix-head span{border:1.5px solid var(--cal-ink);background:var(--cal-bg);color:var(--cal-green);font-family:var(--cal-font-mono);letter-spacing:.14em;text-transform:uppercase;flex:none;font-size:10px;font-weight:800}.analytics-html.exports-page .exports-panel-head span{align-items:center;min-height:30px;padding:7px 10px;display:inline-flex}.analytics-html.exports-page .exports-camera-list,.analytics-html.exports-page .exports-project-picker .exports-project-list{align-content:start;gap:0;max-height:628px;padding:0;display:grid;overflow-y:auto}.analytics-html.exports-page .exports-camera-option,.analytics-html.exports-page .exports-project-option{border:0;border-bottom:1.5px solid var(--cal-line);background:var(--cal-surface);width:100%;color:var(--cal-ink);cursor:pointer;text-align:left;gap:7px;padding:17px 18px;transition:background .15s,box-shadow .15s;display:grid}.analytics-html.exports-page .exports-camera-option strong,.analytics-html.exports-page .exports-project-option strong{color:var(--cal-ink);font-family:var(--cal-font-serif);text-overflow:ellipsis;white-space:nowrap;font-size:22px;font-weight:500;line-height:1;overflow:hidden}.analytics-html.exports-page .exports-camera-option span,.analytics-html.exports-page .exports-camera-option em,.analytics-html.exports-page .exports-project-option span,.analytics-html.exports-page .exports-project-option em,.analytics-html.exports-page .exports-result-head p:not(.eyebrow){color:var(--cal-muted);font-family:var(--cal-font-mono);letter-spacing:.12em;text-transform:uppercase;font-size:10px;font-style:normal;font-weight:700}.analytics-html.exports-page .exports-project-option span{color:var(--cal-green)}.analytics-html.exports-page .exports-result-head p:not(.eyebrow){color:var(--cal-muted);margin:8px 0 0}.analytics-html.exports-page .exports-result-score{background:var(--cal-green-tint);justify-items:end;gap:7px;min-width:116px;padding:12px 14px;display:grid}.analytics-html.exports-page .exports-result-score span{color:var(--cal-muted)}.analytics-html.exports-page .exports-result-score strong{color:var(--cal-green);font-family:var(--cal-font-mono);font-size:15px;line-height:1}.analytics-html.exports-page .exports-model-tabs{flex-wrap:wrap;gap:8px;padding:0 24px;display:flex}.analytics-html.exports-page .exports-model-tabs button{border:1.5px solid var(--cal-ink);background:var(--cal-bg);min-height:42px;color:var(--cal-ink);cursor:pointer;font-family:var(--cal-font-mono);letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:10px;padding:8px 12px;font-size:10px;font-weight:800;display:inline-flex}.analytics-html.exports-page .exports-model-tabs button.active,.analytics-html.exports-page .exports-model-tabs button:hover{background:var(--cal-green);color:#fff}.analytics-html.exports-page .exports-model-tabs button em{color:currentColor;opacity:.72;font-style:normal}.analytics-html.exports-page .exports-matrix-grid{grid-template-columns:minmax(0,1.03fr) minmax(260px,.97fr);gap:16px;padding:0 24px;display:grid}.analytics-html.exports-page .exports-matrix-card,.analytics-html.exports-page .exports-download-panel{border:1.5px solid var(--cal-ink);background:var(--cal-surface);overflow:hidden}.analytics-html.exports-page .exports-matrix-head{border-bottom:2px solid var(--cal-ink);background:var(--cal-bg);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:5px 12px;padding:16px 18px;display:grid}.analytics-html.exports-page .exports-matrix-head span{background:var(--cal-green);color:#fff;border-radius:50%;place-items:center;width:36px;height:36px;font-size:14px;display:inline-grid}.analytics-html.exports-page .exports-matrix-head strong{color:var(--cal-ink);font-family:var(--cal-font-serif);font-size:21px;font-weight:500;line-height:1}.analytics-html.exports-page .exports-matrix-head em{color:var(--cal-muted);font-family:var(--cal-font-mono);letter-spacing:.12em;text-transform:uppercase;grid-column:2;font-size:10px;font-style:normal;font-weight:700}.analytics-html.exports-page .exports-k-matrix,.analytics-html.exports-page .exports-d-vector{gap:10px;padding:18px;display:grid}.analytics-html.exports-page .exports-k-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.analytics-html.exports-page .exports-k-row code,.analytics-html.exports-page .exports-d-item code{border:1px solid var(--cal-line);background:var(--cal-bg);min-height:36px;color:var(--cal-ink);font-family:var(--cal-font-mono);font-feature-settings:"zero" 1, "tnum" 1;justify-content:flex-end;align-items:center;padding:8px 10px;font-size:11px;font-weight:700;display:inline-flex}.analytics-html.exports-page .exports-d-vector{max-height:302px;overflow-y:auto}.analytics-html.exports-page .exports-d-item{grid-template-columns:52px minmax(0,1fr);align-items:center;gap:8px;display:grid}.analytics-html.exports-page .exports-d-item span{border:1px solid var(--cal-line);background:var(--cal-green-tint);min-height:32px;color:var(--cal-green);font-family:var(--cal-font-mono);justify-content:center;align-items:center;font-size:10px;font-weight:800;display:inline-flex}.analytics-html.exports-page .exports-download-panel{gap:16px;margin:0 24px 24px;padding:18px;display:grid}.analytics-html.exports-page .exports-download-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.analytics-html.exports-page .exports-download-card{border:1.5px solid var(--cal-ink);background:var(--cal-bg);min-height:128px;color:var(--cal-ink);gap:8px;padding:15px;text-decoration:none;transition:background .15s,box-shadow .15s,transform .15s;display:grid}.analytics-html.exports-page .exports-download-card:hover{background:var(--cal-green-tint);box-shadow:4px 4px 0 var(--cal-ink);transform:translate(-2px,-2px)}.analytics-html.exports-page .exports-download-card span{color:var(--cal-green);font-family:var(--cal-font-mono);letter-spacing:.14em;text-transform:uppercase;font-size:10px;font-weight:800}.analytics-html.exports-page .exports-download-card strong{color:var(--cal-ink);font-family:var(--cal-font-mono);word-break:break-word;font-size:12px;font-weight:800}.analytics-html.exports-page .exports-download-card em,.analytics-html.exports-page .exports-empty-state p:not(.eyebrow),.analytics-html.exports-page .exports-missing{color:var(--cal-muted);margin:0;font-size:13px;font-style:normal;line-height:1.55}.analytics-html.exports-page .exports-missing{padding:18px}.analytics-html.exports-page .exports-empty-state{align-content:center;gap:10px;min-height:360px;padding:30px;display:grid}.analytics-html.exports-page .exports-empty-state.standalone{justify-items:start;min-height:320px}@media (width<=1260px){.analytics-html.exports-page .exports-workbench{grid-template-columns:minmax(220px,.85fr) minmax(0,1.55fr)}.analytics-html.exports-page .exports-result-panel{grid-column:1/-1}}@media (width<=900px){.analytics-html.exports-page .exports-workbench,.analytics-html.exports-page .exports-matrix-grid,.analytics-html.exports-page .exports-download-grid{grid-template-columns:1fr}.analytics-html.exports-page .exports-camera-picker,.analytics-html.exports-page .exports-project-picker,.analytics-html.exports-page .exports-result-panel{min-height:auto}}@media (width<=620px){.analytics-html.exports-page .exports-panel-head,.analytics-html.exports-page .exports-result-head{padding:18px;display:grid}.analytics-html.exports-page .exports-model-tabs,.analytics-html.exports-page .exports-matrix-grid{padding:0 18px}.analytics-html.exports-page .exports-download-panel{margin:0 18px 18px;padding:16px}}.analytics-html.exports-page{--exports-head:#0d4225;--exports-head-soft:#f4f1e899;--exports-head-line:#f4f1e829;--exports-head-light:#6ba88a;--exports-subhead:#1c6742;--exports-subhead-hover:#237a4f;--exports-subhead-light:#8bc9a6;--exports-vtint:#f3f7f4;--exports-panel-tint:#fafaf6}.analytics-html.exports-page .exports-row-header{grid-template-columns:minmax(0,1fr) auto;align-items:center;padding:22px 28px 22px 32px;display:grid;position:relative;overflow:hidden}.analytics-html.exports-page .exports-row-header:before{content:"";background:linear-gradient(180deg, var(--exports-head), var(--exports-head-light));width:8px;position:absolute;inset:0 auto 0 0}.analytics-html.exports-page .exports-row-header>div:first-child{min-width:0}.analytics-html.exports-page .exports-progress{border:1px solid var(--cal-green);background:var(--cal-green-tint);align-items:center;gap:6px;padding:8px 14px;display:inline-flex}.analytics-html.exports-page .exports-progress span{border:1.5px solid var(--cal-line-soft);background:var(--cal-line-faint);color:#0000;letter-spacing:0;border-radius:50%;width:10px;min-width:10px;height:10px;min-height:10px;padding:0;font-size:0;position:relative}.analytics-html.exports-page .exports-progress span.complete,.analytics-html.exports-page .exports-progress span.active{border-color:var(--cal-green);background:var(--cal-green)}.analytics-html.exports-page .exports-progress span.complete:before{content:"";border-radius:inherit;background:var(--exports-head-light);position:absolute;inset:2px}.analytics-html.exports-page .exports-progress span.active:after{content:"";border:1px solid var(--exports-head-light);border-radius:inherit;position:absolute;inset:-4px}.analytics-html.exports-page .exports-progress strong{color:var(--cal-green);font-family:var(--cal-font-mono);letter-spacing:.22em;text-transform:uppercase;margin-left:6px;font-size:9px;font-weight:800}.analytics-html.exports-page .exports-workbench{grid-template-columns:220px 280px minmax(0,1fr);gap:16px;position:relative}.analytics-html.exports-page .exports-workbench:before,.analytics-html.exports-page .exports-workbench:after{content:"";background:linear-gradient(90deg, var(--exports-head-light), var(--cal-green));opacity:.86;pointer-events:none;width:16px;height:2px;position:absolute;top:44px}.analytics-html.exports-page .exports-workbench:before{left:220px}.analytics-html.exports-page .exports-workbench:after{left:516px}.analytics-html.exports-page .exports-camera-picker,.analytics-html.exports-page .exports-project-picker,.analytics-html.exports-page .exports-result-panel,.analytics-html.exports-page .exports-empty-state{border:1.5px solid var(--cal-ink);background:var(--cal-surface);box-shadow:none;border-radius:0}.analytics-html.exports-page .exports-camera-picker,.analytics-html.exports-page .exports-project-picker,.analytics-html.exports-page .exports-result-panel{min-height:690px}.analytics-html.exports-page .exports-panel-head{border-bottom:1.5px solid var(--cal-ink);background:var(--exports-head);min-height:86px;color:var(--bg);padding:14px 18px 12px;position:relative;overflow:hidden}.analytics-html.exports-page .exports-panel-head:after,.analytics-html.exports-page .exports-result-head:before{content:"";pointer-events:none;background:repeating-linear-gradient(-45deg,#0000 0 7px,#ffffff07 7px 14px);width:88px;position:absolute;inset:0 0 0 auto}.analytics-html.exports-page .exports-step-line{z-index:1;align-items:center;gap:8px;margin-bottom:8px;display:flex;position:relative}.analytics-html.exports-page .exports-step-number{background:var(--exports-head-light);width:22px;min-width:22px;height:22px;min-height:22px;color:var(--exports-head);font-family:var(--cal-font-mono);letter-spacing:0;text-transform:none;font-feature-settings:"zero" 1, "tnum" 1;border:0;border-radius:50%;flex:none;place-items:center;padding:0;font-size:10px;font-weight:800;line-height:1;display:inline-grid;box-shadow:0 0 0 2px #f4f1e826}.analytics-html.exports-page .exports-panel-head .exports-step-number,.analytics-html.exports-page .exports-result-head .exports-step-number{letter-spacing:0;border:0;place-items:center;width:22px;min-width:22px;height:22px;min-height:22px;padding:0;display:inline-grid}.analytics-html.exports-page .exports-step-line .eyebrow{color:var(--exports-head-light);letter-spacing:.22em;flex:1;margin:0;font-size:9px}.analytics-html.exports-page .exports-step-line>em{color:var(--bg);font-family:var(--cal-font-mono);letter-spacing:.08em;background:#f4f1e81a;border:1px solid #f4f1e840;padding:2px 7px;font-size:9px;font-style:normal;font-weight:700}.analytics-html.exports-page .exports-panel-head h3{z-index:1;color:#fff;font-size:21px;font-style:italic;position:relative}.analytics-html.exports-page .exports-camera-list,.analytics-html.exports-page .exports-project-picker .exports-project-list{background:var(--cal-surface);max-height:604px}.analytics-html.exports-page .exports-camera-option,.analytics-html.exports-page .exports-project-option{border-bottom:1px solid var(--cal-line-faint);background:var(--cal-surface);gap:6px;min-height:84px;padding:14px 18px;position:relative}.analytics-html.exports-page .exports-camera-option:last-child,.analytics-html.exports-page .exports-project-option:last-child{border-bottom:0}.analytics-html.exports-page .exports-camera-option:hover,.analytics-html.exports-page .exports-camera-option.active,.analytics-html.exports-page .exports-project-option:hover,.analytics-html.exports-page .exports-project-option.active{background:var(--exports-vtint)}.analytics-html.exports-page .exports-camera-option.active,.analytics-html.exports-page .exports-project-option.active{box-shadow:none}.analytics-html.exports-page .exports-camera-option.active:before,.analytics-html.exports-page .exports-project-option.active:before{content:"";background:var(--cal-green);width:3px;position:absolute;inset:0 auto 0 0}.analytics-html.exports-page .exports-camera-option.active:after,.analytics-html.exports-page .exports-project-option.active:after{content:"→";background:var(--cal-green);width:18px;height:18px;color:var(--cal-surface);border-radius:50%;place-items:center;font-size:10px;font-weight:800;display:inline-grid;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.analytics-html.exports-page .exports-camera-option strong,.analytics-html.exports-page .exports-project-option strong{max-width:calc(100% - 28px);font-size:18px;font-style:italic}.analytics-html.exports-page .exports-camera-option.active strong,.analytics-html.exports-page .exports-project-option.active strong{color:var(--cal-green);font-weight:600}.analytics-html.exports-page .exports-camera-option span,.analytics-html.exports-page .exports-project-option em{color:var(--cal-muted-soft);letter-spacing:.06em;text-transform:none;flex-wrap:wrap;align-items:center;gap:8px;font-size:9px;display:inline-flex}.analytics-html.exports-page .exports-camera-option span em,.analytics-html.exports-page .exports-project-option span{border:1px solid var(--cal-line-faint);background:var(--cal-surface);color:var(--cal-green);font-family:var(--cal-font-mono);letter-spacing:.18em;text-transform:uppercase;padding:2px 7px;font-size:8px;font-style:normal;font-weight:800}.analytics-html.exports-page .exports-camera-option span i{background:var(--cal-line-soft);border-radius:50%;width:2px;height:2px}.analytics-html.exports-page .exports-project-option span{justify-self:start}.analytics-html.exports-page .exports-result-panel{flex-direction:column;gap:0;display:flex}.analytics-html.exports-page .exports-result-head{border-bottom:1.5px solid var(--cal-ink);background:var(--exports-head);color:var(--bg);padding:10px 21px;position:relative;overflow:hidden}.analytics-html.exports-page .exports-result-head:before{background:repeating-linear-gradient(-45deg,#0000 0 10px,#f4f1e80b 10px 20px);width:180px}.analytics-html.exports-page .exports-result-head:after{content:"";pointer-events:none;background:radial-gradient(320px 120px at 32%,#6ba88a24,#0000 70%);position:absolute;inset:0}.analytics-html.exports-page .exports-result-title-shell,.analytics-html.exports-page .exports-result-score{z-index:1;position:relative}.analytics-html.exports-page .exports-result-head .exports-step-line .eyebrow{color:var(--exports-head-light)}.analytics-html.exports-page .exports-result-head .exports-step-line{margin-bottom:4px}.analytics-html.exports-page .exports-result-head .exports-step-number{width:18px;min-width:18px;height:18px;min-height:18px;font-size:9px}.analytics-html.exports-page .exports-result-head h3{color:#fff;font-size:23px;font-style:italic}.analytics-html.exports-page .exports-result-head p:not(.eyebrow){color:var(--exports-head-soft);letter-spacing:.18em;flex-wrap:wrap;align-items:center;gap:7px;margin-top:1px;font-size:9px;display:flex}.analytics-html.exports-page .exports-result-head p:not(.eyebrow) em{color:var(--bg);font-family:var(--cal-font-serif);letter-spacing:0;text-transform:none;font-size:12px;font-style:italic;font-weight:500}.analytics-html.exports-page .exports-result-head p:not(.eyebrow) span{color:var(--exports-head-line)}.analytics-html.exports-page .exports-result-score{border:1.5px solid var(--exports-head-light);color:#fff;background:#f4f1e814;align-self:end;justify-items:center;min-width:110px;padding:6px 12px}.analytics-html.exports-page .exports-result-score:before,.analytics-html.exports-page .exports-result-score:after{content:"";width:8px;height:8px;position:absolute}.analytics-html.exports-page .exports-result-score:before{border-top:1.5px solid var(--exports-head-light);border-left:1.5px solid var(--exports-head-light);top:-3px;left:-3px}.analytics-html.exports-page .exports-result-score:after{border-right:1.5px solid var(--exports-head-light);border-bottom:1.5px solid var(--exports-head-light);bottom:-3px;right:-3px}.analytics-html.exports-page .exports-result-score span{color:var(--exports-head-soft);font-size:8px}.analytics-html.exports-page .exports-result-score strong{color:#fff;letter-spacing:-.01em;font-size:17px}.analytics-html.exports-page .exports-result-score strong em{color:var(--exports-head-light);margin-left:3px;font-size:8px;font-style:normal}.analytics-html.exports-page .exports-model-tabs{border-bottom:1.5px solid var(--cal-ink);background:var(--cal-green-tint);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:0;padding:0;display:grid}.analytics-html.exports-page .exports-model-tabs button{background:var(--cal-green-tint);min-height:64px;color:var(--cal-green);border:0;border-right:1px solid #19573929;align-content:center;gap:3px;padding:14px 18px;transition:background .15s,box-shadow .15s,transform .15s;display:grid;position:relative}.analytics-html.exports-page .exports-model-tabs button:last-child{border-right:0}.analytics-html.exports-page .exports-model-tabs button:hover{background:#19573921}.analytics-html.exports-page .exports-model-tabs button.active{z-index:1;background:var(--cal-surface);color:var(--cal-green);box-shadow:inset 0 0 0 1.5px var(--cal-ink), 0 10px 20px #19573921;transform:translateY(-2px)}.analytics-html.exports-page .exports-model-tabs button.active:after{content:"";background:var(--cal-green);width:4px;position:absolute;inset:0 auto 0 0}.analytics-html.exports-page .exports-model-tabs button span{color:currentColor;align-items:center;gap:7px;font-size:10px;display:inline-flex}.analytics-html.exports-page .exports-model-tabs button span:before{content:"";opacity:.65;background:currentColor;border-radius:50%;width:6px;height:6px}.analytics-html.exports-page .exports-model-tabs button.active span:before{content:"✓";background:var(--cal-green);width:17px;height:17px;color:var(--cal-surface);font-family:var(--cal-font-mono);opacity:1;place-items:center;font-size:10px;font-weight:900;line-height:1;display:inline-grid}.analytics-html.exports-page .exports-model-tabs button em{color:var(--cal-ink);font-family:var(--cal-font-mono);letter-spacing:-.005em;font-size:13px;font-style:normal;font-weight:700}.analytics-html.exports-page .exports-model-tabs button.active em{color:var(--cal-green)}.analytics-html.exports-page .exports-model-tabs button em i{color:currentColor;opacity:.72;font-size:9px;font-style:normal;font-weight:500}.analytics-html.exports-page .exports-matrix-grid{grid-template-columns:minmax(0,1.2fr) minmax(300px,1fr);gap:18px;padding:22px 24px}.analytics-html.exports-page .exports-matrix-card{box-shadow:none;border-radius:0}.analytics-html.exports-page .exports-matrix-head{border-bottom:1.5px solid var(--cal-ink);background:var(--cal-surface);color:var(--cal-ink);grid-template-columns:none;gap:10px;padding:11px 16px;display:flex}.analytics-html.exports-page .exports-matrix-head span{border:1px solid var(--cal-line-soft);width:26px;height:26px;color:var(--cal-green);box-shadow:none;font-family:var(--cal-font-serif);background:0 0;font-size:15px;font-style:italic}.analytics-html.exports-page .exports-matrix-head strong{color:var(--cal-ink);flex:1;font-size:17px;font-style:italic}.analytics-html.exports-page .exports-matrix-head em{color:var(--cal-muted-soft);grid-column:auto;font-size:9px}.analytics-html.exports-page .exports-k-matrix{background:var(--cal-line-faint);grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;padding:1px}.analytics-html.exports-page .exports-k-matrix code{background:var(--cal-surface);min-height:58px;color:var(--cal-ink);letter-spacing:-.01em;border:0;justify-content:center;align-items:center;padding:16px 10px 11px;font-size:14px;display:inline-flex;position:relative}.analytics-html.exports-page .exports-k-matrix code.zero{color:var(--cal-line-soft);font-weight:500}.analytics-html.exports-page .exports-k-matrix code.one{color:var(--cal-green)}.analytics-html.exports-page .exports-k-matrix code span{color:var(--cal-muted-soft);font-family:var(--cal-font-mono);letter-spacing:.04em;text-transform:lowercase;font-size:8px;font-weight:700;position:absolute;top:5px;left:7px}.analytics-html.exports-page .exports-d-vector{gap:0;max-height:300px;padding:8px}.analytics-html.exports-page .exports-d-item{border-bottom:1px solid var(--cal-line-faint);grid-template-columns:36px 1fr minmax(92px,auto);gap:12px;padding:9px 10px}.analytics-html.exports-page .exports-d-item:last-child{border-bottom:0}.analytics-html.exports-page .exports-d-item>span{min-height:auto;color:var(--cal-muted);background:0 0;border:0;justify-content:flex-start;font-size:11px}.analytics-html.exports-page .exports-d-item code{background:0 0;border:0;justify-content:flex-end;min-height:auto;padding:0;font-size:13px}.analytics-html.exports-page .exports-d-visual{background:var(--cal-line-faint);justify-self:center;width:100%;max-width:70px;height:4px;position:relative;overflow:visible}.analytics-html.exports-page .exports-d-visual:before{content:"";background:var(--cal-line-soft);width:1px;height:8px;position:absolute;top:-2px;left:50%}.analytics-html.exports-page .exports-d-visual i{background:var(--exports-subhead);position:absolute;inset-block:0}.analytics-html.exports-page .exports-d-visual i.neg{background:var(--cal-amber)}.analytics-html.exports-page .exports-download-panel{border:0;border-top:1.5px solid var(--cal-ink);background:var(--cal-green-tint);box-shadow:none;margin:0;padding:20px 24px 24px;position:relative}.analytics-html.exports-page .exports-download-panel:before{content:"";background:linear-gradient(90deg, var(--exports-subhead), var(--exports-subhead-light), var(--exports-subhead));height:4px;position:absolute;inset:0 0 auto}.analytics-html.exports-page .exports-download-head{justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:14px;display:flex}.analytics-html.exports-page .exports-download-title{align-items:baseline;gap:12px;display:flex}.analytics-html.exports-page .exports-download-title span{color:var(--cal-green);font-family:var(--cal-font-mono);letter-spacing:.22em;text-transform:uppercase;font-size:9px;font-weight:800}.analytics-html.exports-page .exports-download-title strong{color:var(--cal-ink);font-family:var(--cal-font-serif);font-size:20px;font-style:italic;font-weight:500}.analytics-html.exports-page .exports-download-head>em{border:1px solid var(--cal-line-faint);background:var(--cal-surface);color:var(--cal-muted);font-family:var(--cal-font-mono);letter-spacing:.04em;padding:4px 9px;font-size:9px;font-style:normal;font-weight:700}.analytics-html.exports-page .exports-file-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.analytics-html.exports-page .exports-file-group{border:1.5px solid var(--cal-ink);background:var(--cal-surface);overflow:hidden}.analytics-html.exports-page .exports-file-group-head{border-bottom:1.5px solid var(--cal-ink);background:var(--cal-surface);color:var(--cal-ink);align-items:center;gap:10px;padding:10px 14px;display:flex}.analytics-html.exports-page .exports-file-group-head>span{border:1.5px solid var(--cal-line-soft);width:24px;height:24px;color:var(--cal-green);font-family:var(--cal-font-mono);background:0 0;border-radius:4px;flex:none;place-items:center;font-size:10px;font-weight:800;display:inline-grid}.analytics-html.exports-page .exports-file-group.raw .exports-file-group-head>span{border-color:var(--cal-amber);color:var(--cal-amber);background:0 0}.analytics-html.exports-page .exports-file-group-head div{min-width:0}.analytics-html.exports-page .exports-file-group-head em{color:var(--cal-green);font-family:var(--cal-font-mono);letter-spacing:.22em;text-transform:uppercase;margin-bottom:3px;font-size:8px;font-style:normal;font-weight:800;line-height:1;display:block}.analytics-html.exports-page .exports-file-group.raw .exports-file-group-head em{color:var(--cal-amber)}.analytics-html.exports-page .exports-file-group-head strong{color:var(--cal-ink);font-family:var(--cal-font-serif);font-size:15px;font-style:italic;font-weight:500;line-height:1.1;display:block}.analytics-html.exports-page .exports-file-row{border-bottom:1px solid var(--cal-line-faint);color:var(--cal-ink);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px 14px;text-decoration:none;transition:background .12s;display:grid}.analytics-html.exports-page .exports-file-row:last-child{border-bottom:0}.analytics-html.exports-page .exports-file-row:hover{background:var(--exports-vtint)}.analytics-html.exports-page .exports-file-info{min-width:0}.analytics-html.exports-page .exports-file-info>strong{color:var(--cal-ink);font-family:var(--cal-font-mono);word-break:break-word;margin-bottom:3px;font-size:11px;font-weight:700;line-height:1.3;display:block}.analytics-html.exports-page .exports-file-info>strong span.json{color:var(--cal-amber)}.analytics-html.exports-page .exports-file-info>strong span.yaml{color:var(--cal-green)}.analytics-html.exports-page .exports-file-info p{align-items:center;gap:8px;margin:0;display:flex}.analytics-html.exports-page .exports-file-info p span{color:var(--cal-muted-soft);font-family:var(--cal-font-mono);font-size:9px;font-weight:700}.analytics-html.exports-page .exports-file-info p em{border:1px solid var(--cal-line-faint);background:var(--cal-bg);color:var(--cal-muted);font-family:var(--cal-font-mono);letter-spacing:.18em;padding:1px 5px;font-size:8px;font-style:normal;font-weight:800}.analytics-html.exports-page .exports-download-icon{border:1.5px solid var(--cal-green);background:var(--cal-green);width:30px;height:30px;color:var(--cal-surface);place-items:center;transition:background .15s,border-color .15s,color .15s;display:inline-grid}.analytics-html.exports-page .exports-download-icon svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:13px;height:13px}.analytics-html.exports-page .exports-file-row:hover .exports-download-icon{border-color:var(--cal-green-dark);background:var(--cal-green-dark);color:var(--cal-surface)}@media (width<=1260px){.analytics-html.exports-page .exports-workbench{grid-template-columns:220px minmax(260px,1fr)}.analytics-html.exports-page .exports-workbench:before{left:228px}.analytics-html.exports-page .exports-workbench:after{display:none}}@media (width<=900px){.analytics-html.exports-page .exports-workbench,.analytics-html.exports-page .exports-matrix-grid,.analytics-html.exports-page .exports-file-groups{grid-template-columns:1fr}.analytics-html.exports-page .exports-camera-picker,.analytics-html.exports-page .exports-project-picker,.analytics-html.exports-page .exports-result-panel{min-height:auto}.analytics-html.exports-page .exports-result-panel{grid-column:auto}.analytics-html.exports-page .exports-workbench:before,.analytics-html.exports-page .exports-workbench:after{display:none}}@media (width<=620px){.analytics-html.exports-page .exports-row-header,.analytics-html.exports-page .exports-result-head,.analytics-html.exports-page .exports-download-head{grid-template-columns:1fr;align-items:flex-start;display:grid}.analytics-html.exports-page .exports-progress{width:fit-content}.analytics-html.exports-page .exports-matrix-grid,.analytics-html.exports-page .exports-download-panel{padding-left:18px;padding-right:18px}}.app{grid-template-columns:260px 1fr;min-height:100vh;transition:grid-template-columns .22s;display:grid}.app.sidebar-collapsed{grid-template-columns:0 1fr}.sidebar{background:var(--sidebar-bg);color:var(--sidebar-ink);z-index:45;border-right:1px solid var(--sidebar-line);flex-direction:column;height:100vh;transition:transform .22s,opacity .18s,visibility .18s;display:flex;position:sticky;top:0;overflow:hidden}.sidebar-collapsed .sidebar{opacity:0;visibility:hidden;pointer-events:none;transform:translate(-100%)}.sidebar:before{content:"";pointer-events:none;background:radial-gradient(circle at 20% 30%,#a8e6c014,#0000 40%),radial-gradient(circle at 80% 80%,#a8e6c00f,#0000 40%);position:absolute;inset:0}.sidebar-head{z-index:1;justify-content:center;align-items:center;padding:28px 22px 22px;display:flex;position:relative}.sidebar-brand{color:inherit;justify-content:center;align-items:center;gap:12px;width:100%;min-width:0;text-decoration:none;display:flex;position:relative}.sidebar-attached-toggle{z-index:44;color:#fff;cursor:pointer;background:linear-gradient(#19a75f,#0e7e49);border:1px solid #a8e6c0b8;border-left:0;border-radius:0 999px 999px 0;flex-direction:column;justify-content:center;align-items:center;width:38px;min-height:96px;padding:0 0 0 8px;transition:transform .15s,color .15s,box-shadow .15s;display:inline-flex;position:fixed;top:104px;left:252px;box-shadow:inset 0 0 0 1px #ffffff2e,10px 10px 28px #0c2a1f42}.sidebar-attached-toggle:before{content:"";background:linear-gradient(#0e6338,#0c4a2f);border-top:1px solid #a8e6c05c;border-bottom:1px solid #a8e6c05c;width:14px;position:absolute;top:-1px;bottom:-1px;left:-12px}.sidebar-attached-toggle:hover{color:#fff;background:linear-gradient(#22be70,#119356);transform:translate(2px);box-shadow:inset 0 0 0 1px #ffffff38,12px 12px 34px #0c2a1f52}.sidebar-attached-toggle svg,.sidebar-reveal svg{stroke:currentColor;fill:none;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;width:19px;height:19px}.brand-logo{--calibrx-ring:#f4f1e8;--calibrx-x:#6ba88a;--calibrx-dot:#f4f1e8;color:#f4f1e8;flex-shrink:0;width:32px;height:32px;display:block}.brand-wordmark{color:#fff}.brand-wordmark .calibrx-wordmark-text{color:#fff;font-size:34px}.workspace{background:var(--sidebar-active-bg);border:1px solid var(--sidebar-line);border-radius:8px;justify-content:space-between;align-items:center;margin:0 16px 24px;padding:12px 14px;display:flex;position:relative}.workspace-info{flex:1;min-width:0}.workspace-name{color:#fff;white-space:nowrap;text-overflow:ellipsis;margin-bottom:2px;font-size:13px;font-weight:600;overflow:hidden}.workspace-meta{color:var(--sidebar-ink-dim);text-transform:uppercase;letter-spacing:.12em;font-family:JetBrains Mono,monospace;font-size:10px}.sidebar-scroll{flex:1;padding:0 0 8px;overflow-y:auto}.nav-section{margin-bottom:20px;padding:0 12px;position:relative}.nav-label{color:var(--sidebar-ink-faint);text-transform:uppercase;letter-spacing:.22em;padding:0 12px 8px;font-family:JetBrains Mono,monospace;font-size:9px;font-weight:500}.nav-item{width:100%;color:var(--sidebar-ink-dim);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:6px;align-items:center;gap:12px;margin-bottom:1px;padding:9px 12px;font-family:inherit;font-size:13.5px;font-weight:500;text-decoration:none;transition:all .15s;display:flex;position:relative}.nav-item:hover{background:var(--sidebar-hover-bg);color:#fff}.nav-item.active{background:var(--sidebar-active-bg);color:#fff}.nav-item.active:before{content:"";background:var(--sidebar-accent);border-radius:0 2px 2px 0;width:2.5px;position:absolute;top:8px;bottom:8px;left:-12px}.nav-icon{opacity:.9;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;display:flex}.nav-icon svg{stroke:currentColor;fill:none;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:100%;height:100%}.nav-badge{color:var(--sidebar-accent);background:#a8e6c026;border-radius:100px;margin-left:auto;padding:2px 7px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:600}.nav-badge.new{background:var(--sidebar-accent);color:#0d2a1f}.sidebar-bottom{border-top:1px solid var(--sidebar-line);padding:16px 16px 20px;position:relative}.user-card{width:100%;color:inherit;background:0 0;border:0;border-radius:8px;align-items:center;gap:12px;margin-bottom:10px;padding:6px 2px 12px;display:flex}.user-avatar{background:linear-gradient(135deg, var(--sidebar-accent), #18a05c);color:#0d2a1f;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-family:Fraunces,serif;font-size:14px;font-weight:500;display:flex}.user-info{flex:1;min-width:0}.user-name{color:#fff;white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:500;overflow:hidden}.user-role{color:var(--sidebar-ink-dim);text-transform:uppercase;letter-spacing:.1em;font-family:JetBrains Mono,monospace;font-size:10px}.sidebar-logout-btn{color:#fff;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;background:#ffffff12;border:1px solid #ffffff42;border-radius:7px;justify-content:center;align-items:center;gap:9px;width:100%;min-height:40px;margin-bottom:14px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;font-weight:800;transition:background .15s,border-color .15s,transform .15s;display:inline-flex}.sidebar-logout-btn svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.sidebar-logout-btn:hover{background:#ffffff1f;border-color:#ffffff70;transform:translateY(-1px)}.sidebar-plan-card{background:radial-gradient(circle at 100% 0,#a8d8bd2e,#0000 42%),linear-gradient(#ffffff16,#ffffff09),#0000003d;border:1px solid #a8d8bd4d;border-radius:10px;gap:12px;padding:14px;display:grid;position:relative;overflow:hidden;box-shadow:0 10px 26px #00000029}.sidebar-plan-card:before{content:"";background:linear-gradient(90deg,#0000,#f4f1e852,#0000);height:1px;position:absolute;inset:0 0 auto}.sidebar-plan-topline,.sidebar-plan-footer{justify-content:space-between;align-items:center;gap:10px;display:flex}.sidebar-plan-topline span,.sidebar-plan-footer span{color:var(--sidebar-ink-dim);letter-spacing:.12em;text-transform:uppercase;font-family:JetBrains Mono,ui-monospace,monospace;font-size:9px;font-style:normal;font-weight:800}.sidebar-plan-topline strong{min-height:20px;color:var(--sidebar-accent);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;background:#a8d8bd1f;border:1px solid #a8d8bd4d;border-radius:999px;align-items:center;padding:0 8px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:9px;font-weight:900;display:inline-flex}.sidebar-plan-main{gap:4px;display:grid}.sidebar-plan-main strong{color:#fff;letter-spacing:-.035em;font-family:Cormorant Garamond,Georgia,serif;font-size:24px;font-style:italic;font-weight:600;line-height:.95}.sidebar-plan-main span{color:#f4f1e8b8;letter-spacing:.04em;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;font-weight:800}.sidebar-plan-track{background:#ffffff1f;border-radius:999px;height:4px;overflow:hidden}.sidebar-plan-track span{border-radius:inherit;background:linear-gradient(90deg, var(--sidebar-accent), #18a05c);height:100%;display:block}.sidebar-plan-footer a{color:var(--sidebar-accent);letter-spacing:.12em;text-transform:uppercase;font-family:JetBrains Mono,ui-monospace,monospace;font-size:9px;font-weight:900;text-decoration:none}.sidebar-plan-footer a:hover{color:#fff}.credits{border:1px solid var(--sidebar-line);background:#0003;border-radius:8px;padding:14px;position:relative}.credits-summary{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;margin:0;padding:0;display:block}.credits-summary:hover .credits-label,.credits-summary:hover .credits-reset{color:#fffc}.credits-head{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.credits-label{color:var(--sidebar-ink-dim);text-transform:uppercase;letter-spacing:.15em;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:500}.credits-val{color:#fff;font-family:Fraunces,serif;font-size:15px;font-style:italic;font-weight:500}.credits-val span{color:var(--sidebar-ink-dim);font-size:12px}.credits-bar{background:var(--sidebar-line);border-radius:2px;height:3px;margin-bottom:12px;overflow:hidden}.credits-fill{background:linear-gradient(90deg, var(--sidebar-accent), #18a05c);border-radius:2px;width:32%;height:100%}.credits-reset{color:var(--sidebar-ink-dim);text-transform:uppercase;letter-spacing:.12em;margin-bottom:12px;font-family:JetBrains Mono,monospace;font-size:10px}.credits-btn{color:#0d2a1f;text-transform:uppercase;letter-spacing:.12em;cursor:pointer;background:#fff;border:none;border-radius:6px;justify-content:center;align-items:center;gap:6px;width:100%;padding:9px;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:600;transition:all .15s;display:flex}.credits-btn:hover{background:var(--sidebar-accent);transform:translateY(-1px)}.credits-history{color:#123226;background:#f8f4ea;border:1px solid #70b69157;border-radius:10px;width:100%;margin-top:12px;padding:14px;position:static;box-shadow:0 16px 34px #0000002e}.credits-history:before{display:none}.credits-history-head{border-bottom:1px solid #12322629;justify-content:space-between;align-items:center;margin-bottom:8px;padding-bottom:10px;display:flex}.credits-history-head span{letter-spacing:.16em;text-transform:uppercase;color:#11683e;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:700}.credits-history-head strong{color:#466255;font-family:JetBrains Mono,monospace;font-size:11px}.credits-history-list{max-height:180px;padding-right:4px;overflow-y:auto}.credits-history-list::-webkit-scrollbar{width:6px}.credits-history-list::-webkit-scrollbar-track{background:#12322614;border-radius:999px}.credits-history-list::-webkit-scrollbar-thumb{background:#11683e59;border-radius:999px}.credits-history-item{border-bottom:1px solid #1232261a;justify-content:space-between;gap:12px;padding:10px 0;display:flex}.credits-history-item:last-child{border-bottom:none}.credits-history-item div{gap:3px;min-width:0;display:grid}.credits-history-item strong{color:#102b20;font-size:13px;font-weight:650;line-height:1.2}.credits-history-item span{letter-spacing:.04em;color:#102b2094;font-family:JetBrains Mono,monospace;font-size:10px}.credits-history-item em{white-space:nowrap;font-family:JetBrains Mono,monospace;font-size:12px;font-style:normal;font-weight:800}.credits-history-item .credit-gain{color:#08713f}.credits-history-item .credit-spend{color:#9f3a2f}.credits-history-state{letter-spacing:.12em;text-transform:uppercase;color:#102b209e;padding:16px 4px 4px;font-family:JetBrains Mono,monospace;font-size:10px}.credits-history-state.error{color:#9f3a2f}.main-area{background:var(--bg);min-height:100vh;position:relative;overflow-x:hidden}.sidebar-reveal{z-index:80;background:var(--accent);color:#fff;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;border:1px solid #0e633847;border-radius:999px;align-items:center;gap:8px;height:42px;padding:0 14px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:800;transition:transform .15s,box-shadow .15s,background .15s;display:inline-flex;position:fixed;top:86px;left:16px;box-shadow:0 12px 30px #0e633838}.sidebar-reveal:hover{background:#0f7443;transform:translateY(-1px);box-shadow:0 16px 38px #0e633847}.topbar{border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:50;background:#ffffffe6;justify-content:space-between;align-items:center;padding:16px 40px;display:flex;position:sticky;top:0}.topbar-left{color:var(--ink-faint);text-transform:uppercase;letter-spacing:.12em;align-items:center;gap:14px;min-width:0;font-family:JetBrains Mono,monospace;font-size:11px;display:flex}.breadcrumb{align-items:center;gap:10px;min-width:0;display:flex}.breadcrumb-sep{color:var(--ink-faint)}.breadcrumb-current{color:var(--ink);text-transform:none;letter-spacing:0;font-family:Inter,sans-serif;font-size:14px;font-weight:500}.topbar-right{flex-shrink:0;align-items:center;gap:12px;display:flex}.icon-btn{border:1px solid var(--line);background:var(--bg-2);cursor:pointer;width:36px;height:36px;color:var(--ink-dim);border-radius:6px;justify-content:center;align-items:center;transition:all .15s;display:flex}.icon-btn:hover{border-color:var(--line-strong);color:var(--ink)}.icon-btn svg{stroke:currentColor;fill:none;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.icon-btn.has-dot{position:relative}.icon-btn.has-dot:after{content:"";background:var(--accent);border:2px solid var(--bg-2);border-radius:50%;width:7px;height:7px;position:absolute;top:7px;right:7px}.notifications-menu{position:relative}.notifications-popover{z-index:70;border:1px solid var(--line-strong);background:#fff;border-radius:8px;width:min(360px,100vw - 28px);padding:10px;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 24px 54px #141e1929}.notifications-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:38px;padding:0 6px 8px;display:flex}.notifications-head span{color:var(--ink);font-size:13px;font-weight:800}.notifications-head strong{min-width:24px;height:24px;color:var(--accent);background:#eef7f0;border-radius:999px;justify-content:center;align-items:center;font-family:JetBrains Mono,monospace;font-size:11px;display:inline-flex}.notifications-list{gap:6px;max-height:min(420px,100vh - 170px);padding-top:8px;padding-right:3px;display:grid;overflow-y:auto}.notifications-list::-webkit-scrollbar{width:6px}.notifications-list::-webkit-scrollbar-track{background:var(--line);border-radius:999px}.notifications-list::-webkit-scrollbar-thumb{background:#0e633859;border-radius:999px}.notification-item{width:100%;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:7px;grid-template-columns:34px 1fr;align-items:start;gap:10px;padding:10px;display:grid;position:relative}.notification-item.unread{background:#0e63380b;border-color:#0e633833}.notification-item.unread:after{content:"";background:var(--accent);border-radius:999px;width:7px;height:7px;position:absolute;top:10px;right:10px}.notification-item.read{color:var(--ink-faint);opacity:.72}.notification-item:hover{background:var(--bg-2);opacity:1;border-color:#0e63382e}.notification-icon{width:30px;height:30px;color:var(--accent);background:#eef7f0;border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.notification-item.read .notification-icon{background:var(--bg-3);color:var(--ink-faint)}.notification-item.read strong,.notification-item.read em{color:var(--ink-faint)}.notification-icon svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.notification-item strong,.notification-item em,.notification-item small{display:block}.notification-item strong{font-size:13px;line-height:1.25}.notification-item em{color:var(--ink-dim);margin-top:3px;font-size:12px;font-style:normal;line-height:1.35}.notification-item small{color:var(--ink-faint);margin-top:6px;font-family:JetBrains Mono,monospace;font-size:10px}.notifications-empty{color:var(--ink-dim);padding:18px 10px 10px;font-size:13px;line-height:1.45}.session-badge{border:1px solid var(--line-strong);color:var(--ink-dim);background:var(--bg-2);letter-spacing:.1em;white-space:nowrap;border-radius:100px;align-items:center;gap:8px;padding:7px 14px;font-family:JetBrains Mono,monospace;font-size:11px;display:inline-flex}.dot-live{background:var(--accent-bright);border-radius:50%;flex-shrink:0;width:6px;height:6px;position:relative}.dot-live:after{content:"";background:var(--accent-bright);opacity:.3;border-radius:50%;animation:2s infinite pulse;position:absolute;inset:-4px}@keyframes pulse{0%,to{opacity:.3;transform:scale(1)}50%{opacity:0;transform:scale(1.6)}}.stepper-container{background:var(--bg-2);border-bottom:1px solid var(--line);padding:40px 48px 36px}.stepper-wrap{max-width:1200px;margin:0 auto}.stepper-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:36px;display:flex}.stepper-head-left{flex-direction:column;gap:6px;display:flex}.stepper-eyebrow{color:var(--accent);text-transform:uppercase;letter-spacing:.22em;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:500}.stepper-title{letter-spacing:-.025em;color:var(--ink);font-family:Fraunces,serif;font-size:44px;font-weight:300;line-height:1.05}.stepper-title em{color:var(--accent);font-style:italic;font-weight:500}.stepper-sub{color:var(--ink-dim);max-width:620px;margin-top:6px;font-size:14px;line-height:1.65}.stepper-progress{text-align:right;color:var(--ink-faint);letter-spacing:.12em;text-transform:uppercase;font-family:JetBrains Mono,monospace;font-size:11px;line-height:1.8}.stepper-progress b{color:var(--ink);text-transform:none;letter-spacing:0;font-family:Fraunces,serif;font-size:20px;font-style:italic;font-weight:400}.stepper-track{grid-template-columns:repeat(var(--step-count,6), 1fr);gap:0;display:grid;position:relative}.stepper-track:before{content:"";top:26px;left:var(--step-side,8.33%);right:var(--step-side,8.33%);background:var(--line-strong);height:1px;position:absolute}.stepper-track .progress-line{top:26px;left:var(--step-side,8.33%);background:#0e63386b;height:1px;transition:width .4s;position:absolute}.hstep{cursor:pointer;z-index:1;font:inherit;color:inherit;background:0 0;border:0;flex-direction:column;align-items:center;gap:20px;padding:0 8px;transition:transform .15s;display:flex;position:relative}.hstep:hover .hstep-circle{transform:scale(1.08)}.hstep:disabled{cursor:not-allowed;opacity:1}.hstep:disabled:hover .hstep-circle{transform:none}.hstep:disabled .hstep-label,.hstep:disabled .hstep-meta{opacity:.5}.hstep:disabled:not(.active):not(.done) .hstep-circle{background:var(--bg-2);color:#141e1957;border-color:#141e1929}.hstep-circle{border:1.5px solid var(--line-strong);background:var(--bg-2);width:52px;height:52px;color:var(--ink-faint);border-radius:50%;justify-content:center;align-items:center;font-family:JetBrains Mono,monospace;font-size:14px;font-weight:500;transition:all .25s;display:flex;position:relative}.hstep.active .hstep-circle{border-color:var(--accent);background:var(--accent);color:#fff;box-shadow:0 0 0 4px var(--accent-soft)}.hstep.active .hstep-circle:after{content:"";border:2px solid var(--accent);pointer-events:none;background:0 0;border-radius:50%;animation:1.45s ease-in-out infinite stepHeartbeat;position:absolute;inset:-14px}.hstep.done .hstep-circle{color:var(--ink);background:#cfe4d6;border-color:#0e63386b}.hstep.done .hstep-circle:before{content:"✓";font-size:15px}.hstep.done .hstep-circle span{display:none}.hstep-label{text-align:center;color:var(--ink-dim);max-width:120px;font-size:12px;font-weight:500;line-height:1.3;transition:color .2s}.hstep.active .hstep-label{color:var(--ink);font-weight:600}.hstep-meta{color:var(--ink-faint);text-transform:uppercase;letter-spacing:.15em;text-align:center;font-family:JetBrains Mono,monospace;font-size:9px}@keyframes stepHeartbeat{0%,to{opacity:.62;transform:scale(.96)}18%{opacity:1;transform:scale(1.05)}34%{opacity:.72;transform:scale(.99)}48%{opacity:1;transform:scale(1.08)}}@media (prefers-reduced-motion:reduce){.hstep.active .hstep-circle:after{opacity:.85;animation:none}}.main{max-width:1200px;margin:0 auto;padding:48px 48px 90px;position:relative}.step-content{animation:.35s fadeIn;display:none}.step-content.active{display:block}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.project-start-panel{grid-template-columns:minmax(0,1.05fr) minmax(300px,.95fr);align-items:stretch;gap:20px;display:grid}.project-form-card,.project-summary-card{border:1px solid var(--line);background:var(--bg-2);box-shadow:var(--shadow);border-radius:8px;padding:30px}.project-form-card textarea{resize:vertical;min-height:120px}.camera-name-section{gap:10px}.camera-choice-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.camera-choice-head span{color:var(--ink-faint);text-transform:uppercase;letter-spacing:.12em;font-family:JetBrains Mono,monospace;font-size:9px}.camera-choice-list{flex-wrap:wrap;gap:8px;display:flex}.camera-chip{border:1px solid var(--line);color:var(--ink-dim);text-transform:uppercase;letter-spacing:.08em;cursor:pointer;background:#ffffff9e;border-radius:999px;padding:7px 10px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:700;transition:border-color .18s,color .18s,background .18s}.camera-chip:hover,.camera-chip.selected{background:var(--accent-soft);color:var(--accent);border-color:#0e63386b}.project-summary-card{background:radial-gradient(circle at 0 0, var(--accent-soft), transparent 58%), var(--bg-2);flex-direction:column;display:flex}.project-summary-title{color:var(--ink);margin-bottom:12px;font-family:Fraunces,serif;font-size:30px;font-weight:300;line-height:1.08}.project-summary-card p{font-size:14px;line-height:1.65}.project-summary-list{gap:10px;margin-top:auto;padding-top:28px;display:grid}.project-summary-list div{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;padding:11px 0;display:flex}.project-summary-list div:last-child{border-bottom:0}.project-summary-list span{color:var(--ink-faint);text-transform:uppercase;letter-spacing:.12em;font-family:JetBrains Mono,monospace;font-size:10px}.project-summary-list b{color:var(--accent);text-align:right;font-family:JetBrains Mono,monospace;font-size:12px}.active-project-strip{border:1px solid var(--line);background:var(--bg-2);box-shadow:var(--shadow);border-radius:8px;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;padding:16px 18px;display:flex}.active-project-strip strong{color:var(--ink);font-family:Fraunces,serif;font-size:22px;font-weight:400}.upload-msg{margin-top:16px}.upload-msg.limit{color:#160c08;min-height:58px;box-shadow:none;background:#fff0ef;border:1px solid #e48b8b;border-left:5px solid #8e1f1f;border-radius:0;align-items:center;gap:12px;padding:12px 16px;display:flex}.upload-msg.limit i{color:#b23b3b;border:1px solid #e28b8b;border-radius:50%;flex:none;justify-content:center;align-items:center;width:28px;height:28px;font-family:JetBrains Mono,monospace;font-size:15px;font-style:normal;font-weight:800;line-height:1;display:inline-flex}.upload-msg.limit strong{letter-spacing:.22em;text-transform:uppercase;white-space:nowrap;color:#7a1919;background:#fff7f6;border:1px solid #b23b3b2e;border-radius:4px;flex:none;align-items:center;min-height:30px;padding:7px 10px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:900;display:inline-flex}.upload-limit-count{color:#9a1f1f;background:#fde2e1;border-radius:4px;flex:none;justify-content:center;align-items:center;min-height:26px;padding:5px 9px;font-family:JetBrains Mono,monospace;font-size:13px;font-weight:900;line-height:1;display:inline-flex}.upload-msg.limit .upload-limit-text{color:#120c08;white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-family:JetBrains Mono,monospace;font-size:14px;font-weight:700;line-height:1.35;overflow:hidden}.upload-msg.limit u{color:#120c08;text-underline-offset:3px;font-weight:800;text-decoration-color:#7a1919;text-decoration-thickness:2px}.upload-msg.limit a{color:#fff;letter-spacing:0;text-transform:none;white-space:nowrap;background:#07512f;border:1px solid #07512f;border-radius:7px;flex:none;justify-content:center;align-self:center;align-items:center;min-height:34px;margin-left:auto;padding:0 18px;font-family:Inter,system-ui,sans-serif;font-size:14px;font-weight:800;text-decoration:none;display:inline-flex}.upload-msg.limit a:hover{background:#0e6338;border-color:#0e6338}.upload-progress-card{border:1px solid var(--line-strong);box-shadow:var(--shadow);background:#ffffffeb;border-radius:4px;margin-top:16px;padding:24px 26px}.upload-progress-head{justify-content:space-between;align-items:flex-end;gap:22px;display:flex}.upload-progress-title{min-width:0}.upload-progress-title span{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-family:Fraunces,Georgia,serif;font-size:20px;font-style:italic;font-weight:400;line-height:1.1;display:block;overflow:hidden}.upload-progress-title small,.upload-progress-percent small{color:var(--ink-faint);letter-spacing:.16em;text-transform:uppercase;margin-top:5px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:700;display:block}.upload-progress-percent{text-align:right;flex:none}.upload-progress-percent strong{color:var(--ink);font-feature-settings:"tnum";font-family:JetBrains Mono,monospace;font-size:30px;font-weight:700;line-height:.95}.upload-progress-percent em{color:var(--accent);margin-left:2px;font-family:Fraunces,Georgia,serif;font-size:18px;font-style:italic;font-weight:400}.upload-progress-percent small{color:var(--accent)}.upload-progress-track{border:1px solid var(--line-strong);background:var(--bg);border-radius:2px;height:34px;margin-top:16px;position:relative;overflow:hidden}.upload-progress-fill{background:var(--accent);z-index:1;height:100%;transition:width .16s linear;position:absolute;inset:0 auto 0 0}.upload-progress-fill:after{content:"";background-image:repeating-linear-gradient(-45deg,#ffffff14 0 6px,#0000 6px 12px);animation:1.1s linear infinite upload-stripe-flow;position:absolute;inset:0}.upload-progress-fill:before{content:"";background:#ffffff9e;width:2px;position:absolute;top:0;bottom:0;right:0;box-shadow:0 0 8px #ffffff6b}.upload-progress-track.complete .upload-progress-fill:after{opacity:.45;animation:none}.upload-progress-track.complete .upload-progress-fill:before{display:none}.upload-progress-ticks{z-index:2;pointer-events:none;position:absolute;inset:0}.upload-progress-ticks i{background:#141e1942;width:1px;position:absolute;top:0;bottom:0}.upload-progress-ticks i.major{background:#141e197a}.upload-progress-scale{justify-content:space-between;margin-top:8px;padding-inline:1px;display:flex}.upload-progress-scale span{color:var(--ink-faint);letter-spacing:.06em;font-family:JetBrains Mono,monospace;font-size:9px}.upload-progress-telemetry{border-top:1px solid #141e191a;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:22px;display:grid}.upload-progress-cell{border-right:1px solid #141e191a;min-width:0;padding:14px 16px 0 0}.upload-progress-cell:last-child{border-right:none;padding-right:0}.upload-progress-cell span{color:var(--ink-faint);letter-spacing:.17em;text-transform:uppercase;margin-bottom:5px;font-family:JetBrains Mono,monospace;font-size:9px;font-weight:700;display:block}.upload-progress-cell strong{color:var(--ink);font-feature-settings:"tnum";font-family:JetBrains Mono,monospace;font-size:15px;font-weight:600;line-height:1}.upload-progress-cell em{color:var(--ink-faint);margin-left:4px;font-family:Fraunces,Georgia,serif;font-size:12px;font-style:italic;font-weight:400}@keyframes upload-stripe-flow{0%{background-position:0 0}to{background-position:24px 0}}@media (prefers-reduced-motion:reduce){.upload-progress-fill,.upload-progress-fill:after{transition:none;animation:none}}@media (width<=640px){.upload-progress-card{padding:20px}.upload-progress-head{flex-direction:column;align-items:flex-start}.upload-progress-percent{text-align:left}.upload-progress-telemetry{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:14px}.upload-progress-cell:nth-child(2){border-right:none;padding-right:0}}.dropzone{border:2px dashed var(--line-strong);text-align:center;background:var(--bg-2);cursor:pointer;border-radius:8px;padding:72px 40px;transition:all .25s;display:block}.dropzone:hover{border-color:var(--accent);background:var(--accent-soft)}.dropzone.busy{cursor:wait;opacity:.72}.dropzone-input{display:none}.dropzone-icon{border:1.5px dashed var(--line-strong);width:64px;height:64px;color:var(--ink-dim);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 20px;font-family:Fraunces,serif;font-size:32px;font-style:italic;font-weight:300;transition:all .25s;display:flex}.dropzone:hover .dropzone-icon{border-color:var(--accent);color:var(--accent)}.dropzone-title{color:var(--ink);margin-bottom:8px;font-family:Fraunces,serif;font-size:24px;font-weight:400;display:block}.dropzone-title em{color:var(--accent);font-style:italic;font-weight:500}.dropzone-sub{color:var(--ink-dim);margin-bottom:20px;font-size:14px;display:block}.dropzone-specs{color:var(--ink-faint);text-transform:uppercase;letter-spacing:.13em;flex-wrap:wrap;justify-content:center;gap:24px;font-family:JetBrains Mono,monospace;font-size:10px;display:inline-flex}.dropzone-specs span{align-items:center;gap:8px;display:flex}.dropzone-specs span:before{content:"";background:var(--accent);border-radius:50%;width:4px;height:4px}.uploaded-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:16px;margin-top:36px;padding-bottom:14px;display:flex}.uploaded-header-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:14px;display:flex}.uploaded-header h3{font-family:Fraunces,serif;font-size:20px;font-weight:400}.uploaded-header h3 em{color:var(--accent);font-style:italic}.uploaded-count{color:var(--ink-faint);text-transform:uppercase;letter-spacing:.12em;font-family:JetBrains Mono,monospace;font-size:11px}.upload-clear-btn{min-height:32px;color:var(--red);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;background:#c44a400f;border:1px solid #c44a4052;border-radius:4px;align-items:center;gap:7px;padding:0 13px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:700;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.upload-clear-btn svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;width:14px;height:14px}.upload-clear-btn:hover:not(:disabled){border-color:var(--red);background:var(--red-soft)}.upload-clear-btn:disabled{cursor:not-allowed;opacity:.42}.uploaded-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin-top:20px;display:grid}.thumb{aspect-ratio:4/3;background:var(--bg-2);border:1px solid var(--line);color:var(--ink-faint);box-shadow:var(--shadow);text-align:center;background-image:repeating-linear-gradient(45deg,#0000,#0000 10px,#0e633806 10px 20px);border-radius:6px;justify-content:center;align-items:center;padding:12px;font-family:JetBrains Mono,monospace;font-size:10px;transition:all .2s;display:flex;position:relative;overflow:hidden}.thumb-photo{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.thumb-name{z-index:1;border:1px solid var(--line);color:var(--ink);text-overflow:ellipsis;white-space:nowrap;background:#ffffffe0;border-radius:2px;padding:3px 6px;position:absolute;bottom:28px;left:6px;right:6px;overflow:hidden}.thumb:hover{border-color:var(--line-strong);transform:translateY(-1px)}.thumb-label{color:var(--ink-dim);background:var(--bg-2);border:1px solid var(--line);z-index:1;border-radius:2px;padding:2px 6px;font-size:9px;position:absolute;bottom:6px;left:6px}.thumb-more{background:var(--bg-2);background-image:repeating-linear-gradient(45deg,#0000,#0000 10px,#0e633806 10px 20px)}.pattern-grid{grid-template-columns:repeat(2,1fr);gap:18px;display:grid}.pattern-card{border:1px solid var(--line);background:var(--bg-2);cursor:pointer;box-shadow:var(--shadow);font:inherit;color:inherit;text-align:left;border-radius:8px;padding:26px;transition:all .2s;position:relative}.pattern-card:hover{border-color:var(--line-strong);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.pattern-card.selected{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 4px var(--accent-soft), var(--shadow)}.pattern-card.selected:after{content:"✓";background:var(--accent);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:13px;font-weight:700;display:flex;position:absolute;top:18px;right:18px}.pattern-preview{background:var(--bg-3);border:1px solid var(--line);border-radius:6px;justify-content:center;align-items:center;width:100%;height:130px;margin-bottom:18px;display:flex}.pattern-preview.chess{background-image:linear-gradient(45deg, var(--accent) 25%, transparent 25%), linear-gradient(-45deg, var(--accent) 25%, transparent 25%), linear-gradient(45deg, transparent 75%, var(--accent) 75%), linear-gradient(-45deg, transparent 75%, var(--accent) 75%);opacity:.85;background-color:#0000;background-position:0 0,0 13px,13px -13px,-13px 0;background-size:26px 26px}.pattern-preview.charuco,.pattern-preview.aruco{background:linear-gradient(180deg, #ffffffc7, #f4f0e7eb), var(--bg-3);padding:6px}.pattern-card h3{color:var(--ink);margin-bottom:8px;font-family:Fraunces,serif;font-size:21px;font-weight:500}.pattern-card p{color:var(--ink-dim);margin-bottom:14px;font-size:13px;line-height:1.6}.pattern-meta{flex-wrap:wrap;gap:8px;display:flex}.tag{border:1px solid var(--line-strong);color:var(--ink-dim);text-transform:uppercase;letter-spacing:.1em;background:var(--bg-2);white-space:nowrap;border-radius:3px;align-items:center;padding:4px 10px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:500;display:inline-flex}.tag.hot,.tag.accent{border-color:var(--accent);color:var(--accent);background:var(--accent-soft);font-weight:500}.tag.amber{border-color:var(--amber);color:var(--amber);background:var(--amber-soft)}.tag.red{border-color:var(--red);color:var(--red);background:var(--red-soft)}.tag--fisheye{color:#4f46e5;background:#6366f112;border-color:#6366f1}.tag--pinhole{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.tag--pinhole_wide{color:#5b5aa6;background:#5b5aa61a;border-color:#5b5aa6}.tag--calibrated{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.tag--detected{color:#2563eb;background:#2563eb12;border-color:#2563eb}.tag--ready{border-color:var(--amber);color:var(--amber);background:var(--amber-soft)}.tag--created{border-color:var(--line-strong);color:var(--ink-faint);background:var(--bg-3)}.tag--ok{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.tag--down{border-color:var(--red);color:var(--red);background:var(--red-soft)}.tag--checking{border-color:var(--line-strong);color:var(--ink-faint);background:var(--bg-3);animation:1.4s ease-in-out infinite blink}@keyframes blink{0%,to{opacity:1}50%{opacity:.5}}.params-split{perspective:1200px;grid-template-columns:1fr 1fr;gap:22px;width:min(1180px,100vw - 96px);margin-left:50%;padding-top:28px;display:grid;transform:translate(-50%)}.params-panel,.panel{border:1px solid var(--line);background:var(--bg-2);box-shadow:var(--shadow);border-radius:8px;padding:30px}.option-panel{isolation:isolate;background:linear-gradient(180deg, #fffffff5, #f8f9f4fa), var(--bg-2);flex-direction:column;padding:0;transition:transform .18s,border-color .18s,box-shadow .18s,background .18s;display:flex;position:relative;overflow:visible;box-shadow:inset 0 1px #fffffff5,0 28px 60px #141e1829,0 10px 22px #141e181c,0 0 0 1px #0e63380a}.option-panel:before{content:"";border:1px solid var(--line);background:linear-gradient(180deg, #ffffffe6, #f6f4ecfa), var(--bg-2);pointer-events:none;z-index:4;border-bottom:0;border-radius:8px 8px 0 0;height:18px;position:absolute;top:-1px;left:-1px;right:-1px;box-shadow:inset 0 1px #ffffffe0}.option-panel:after{content:"";filter:blur(18px);pointer-events:none;z-index:-1;background:#141e1829;border-radius:14px;position:absolute;inset:16px -12px -16px 12px}.option-panel:hover{border-color:var(--line-accent);background:linear-gradient(180deg, #0e633806, transparent 36%), var(--bg-2);transform:translateY(-4px);box-shadow:inset 0 1px #ffffffe6,0 34px 70px #141e1833,0 14px 28px #141e1821,0 0 0 1px #0e633814}.option-panel.featured,.option-panel.featured:before{border-color:var(--line-accent)}.option-head{z-index:2;border-bottom:1px solid var(--line);background:linear-gradient(180deg, #0e633812, #ffffff8a 76%), var(--bg-2);justify-content:space-between;align-items:flex-start;gap:16px;padding:18px 22px 14px;display:flex;position:relative}.option-kicker{color:var(--accent);letter-spacing:.18em;text-transform:uppercase;align-items:center;gap:8px;margin-bottom:7px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:600;display:flex}.option-mark{border:1px solid var(--line-accent);background:var(--accent-soft);width:21px;height:21px;color:var(--accent);letter-spacing:0;border-radius:50%;justify-content:center;align-items:center;font-size:11px;display:inline-flex}.option-copy{max-width:520px;color:var(--ink-dim);font-size:11px;line-height:1.42}.option-ticket{z-index:1;border:1px solid var(--line-accent);background:linear-gradient(180deg, #ffffffd1, #e0ddd1f0), var(--bg-3);opacity:.96;text-align:left;text-transform:uppercase;transform-origin:0 100%;border-bottom-color:#0e633833;border-radius:7px 7px 0 0;min-width:112px;padding:8px 18px 8px 14px;font-family:JetBrains Mono,monospace;transition:border-color .18s,background .18s,transform .18s,opacity .18s;position:absolute;top:-32px;left:0;transform:translateY(7px);box-shadow:inset 0 1px #ffffffdb,inset 0 -7px 15px #1a221c0f,0 6px 14px #1a221c14}.option-panel:hover .option-ticket{border-color:var(--line-accent);background:linear-gradient(180deg, #ffffffe0, #0e633824), var(--bg-3);opacity:1;transform:translateY(4px)}.option-ticket:after{content:"";background:repeating-linear-gradient(to bottom, var(--line-accent) 0, var(--line-accent) 2px, transparent 2px, transparent 5px);opacity:.65;width:1px;position:absolute;top:8px;bottom:8px;right:10px}.option-ticket span{color:var(--accent);letter-spacing:.18em;font-size:10px;font-weight:700;line-height:1.1;display:block}.panel-label{color:var(--accent);text-transform:uppercase;letter-spacing:.22em;margin-bottom:6px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:500}.panel-title{color:var(--ink);margin-bottom:0;font-family:Fraunces,serif;font-size:20px;font-weight:400}.panel-title em{color:var(--accent);font-style:italic;font-weight:500}.manual-fields{grid-template-columns:1fr 1fr;gap:9px;padding:0;display:grid}.manual-fields .input-group{background:linear-gradient(180deg, #ffffffa8, #f8f7f1b8), var(--bg-2);border:1px solid #0e633829;border-radius:5px;margin-bottom:0;padding:8px;transition:border-color .15s,background .15s,box-shadow .15s;box-shadow:inset 0 1px #ffffffd1}.manual-fields .input-group:focus-within{border-color:var(--accent);background:var(--bg-2);box-shadow:0 0 0 3px #0e633814}.manual-fields .span-2{grid-column:span 1}.manual-fields .full-row{grid-column:1/-1}.manual-test{justify-content:center;margin:14px 0 0;display:flex}.manual-standard-test{border-top:1px solid #0e633833;justify-content:center;align-items:center;gap:14px;min-height:44px;margin-top:12px;padding:8px 10px 0;display:flex}.manual-test-meta{text-align:left;min-width:0;max-width:300px}.manual-test-meta .panel-label{align-items:center;gap:8px;margin-bottom:0;display:inline-flex}.manual-test-meta .panel-label:before{content:"";opacity:.72;background:currentColor;border-radius:1px;flex-shrink:0;width:14px;height:2px}.manual-standard-test .btn{grid-column:2;justify-self:center;min-width:188px;min-height:38px}.charuco-manual{background:radial-gradient(circle at 18% 0%, #0e633821, transparent 34%), linear-gradient(180deg, #eff8f2fa, #f9fbf6fa), var(--accent-soft);border-style:solid;border-color:#0a5b3352;grid-template-rows:minmax(0,1fr) auto;place-content:stretch;gap:10px;padding:12px 16px;display:grid;box-shadow:inset 0 1px #ffffffe0,0 16px 34px #0e633829,inset 0 0 0 1px #ffffffb8}.charuco-fields{grid-template-rows:72px minmax(0,1fr);grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;height:100%}.charuco-fields-shell{box-sizing:border-box;background:linear-gradient(160deg,#ffffffe0 0%,#e8f6eec2 100%),#ffffff8c;border:1px solid #0e633838;border-radius:10px;height:100%;min-height:0;padding:10px;box-shadow:inset 0 1px #fffffff5,0 2px 8px #0e63380f,0 14px 28px #0e63381a}.charuco-fields .input-group{background:#fffffff7;border-color:#0e633829;border-radius:8px;min-width:0;padding:8px 10px;transition:border-color .15s,box-shadow .15s;box-shadow:inset 0 1px #ffffffe6,0 3px 8px #141e180f}.charuco-fields .input-group:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #0e63381a,inset 0 1px #ffffffe6}.charuco-fields .input-label{color:#053e25bd;font-weight:700}.charuco-fields .full-row{grid-column:1/-1}.charuco-manual-test{border-top:1px solid #0e633833;justify-content:center;align-items:center;gap:14px;margin-top:0;padding:8px 10px 0}.charuco-manual-test .btn{flex-shrink:0;min-width:188px;min-height:38px}.input-group{margin-bottom:16px}.input-label{color:var(--ink-dim);text-transform:uppercase;letter-spacing:.15em;margin-bottom:5px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:500;display:block}.input-field,input:not([type=file]),textarea,select{background:var(--bg-2);border:1px solid var(--line-strong);width:100%;color:var(--ink);border-radius:4px;padding:8px 10px;font-family:JetBrains Mono,monospace;font-size:13px;transition:all .15s}.input-field:focus,input:not([type=file]):focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}input[type=file]{background:var(--bg-2);border:2px dashed var(--line-strong);width:100%;color:var(--ink-dim);cursor:pointer;border-radius:4px;padding:20px 18px;font-family:JetBrains Mono,monospace;font-size:12px;transition:border-color .14s,background .14s}input[type=file]:hover{border-color:var(--accent);background:var(--accent-soft)}input[type=file]::file-selector-button{background:var(--accent-soft);border:1px solid var(--line-accent);color:var(--accent);cursor:pointer;text-transform:uppercase;letter-spacing:.1em;border-radius:3px;margin-right:14px;padding:6px 14px;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:600;transition:background .14s}input[type=file]::file-selector-button:hover{background:#0e633824}.input-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.option-action{box-sizing:border-box;border:1px dashed var(--accent);background:linear-gradient(180deg, #f6fbf7f0, #e8f2ebf0), var(--accent-soft);border-radius:6px;width:calc(100% - 44px);height:auto;min-height:170px;margin:14px 22px 0;padding:14px;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffffd1,0 10px 22px #0e633814}.manual-action{flex-direction:column;justify-content:space-between;display:flex}.auto-detect{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:234px;display:flex}.manual-action,.auto-detect{height:234px;min-height:234px}.charuco-params .option-action{height:264px;min-height:264px}.auto-detect.disabled{background:linear-gradient(180deg, #f5f4ede0, #f0ede5f5), var(--bg-2);border-color:#0e63382e}.auto-detect.disabled p{max-width:420px}.auto-detect h4{margin-bottom:7px;font-family:Fraunces,serif;font-size:17px;font-weight:500}.auto-detect p{color:var(--ink-dim);max-width:520px;margin-bottom:14px;font-size:12px;line-height:1.42}.auto-note{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);margin-top:10px;font-size:11px}.detection-result{box-sizing:border-box;border:1px solid #0e63382e;border-top:2px solid var(--accent);background:linear-gradient(180deg, #fffffffa 0%, #f0f8f3f5 100%), var(--bg-3);border-radius:0 0 8px 8px;width:calc(100% - 44px);min-height:88px;margin:14px 22px 22px;padding:16px 20px 18px;box-shadow:inset 0 1px #ffffffeb,0 8px 22px #0e633817}.detection-result.detection-score-card{background:linear-gradient(#fffdf8fa 0%,#f1ece0f0 100%),#f3ede0;border-color:#9b8766 #78684d3d #78684d3d;box-shadow:inset 0 1px #ffffffeb,0 8px 22px #483e2d14}.detection-score-card .score-display{border-bottom-color:#78684d29}.detection-score-card .score-val{color:#7c6746}.detection-score-card .score-meta code{color:#68563a;background:#78684d1a}.detect-msg{margin:14px 22px 0}.msg.ok.detection-result-msg{color:#68563a;background:linear-gradient(135deg,#fffdf8fa,#f0eadde6),#f3ede0;border-color:#9b8766;box-shadow:inset 0 1px #ffffffd1,0 10px 24px #483e2d14}.detect-msg+.detection-result{margin-top:14px}.score-display{border-bottom:1px solid #0e63381f;align-items:center;gap:12px;margin-bottom:10px;padding-bottom:10px;display:flex}.score-val{color:var(--accent);min-width:3.2ch;font-family:Fraunces,serif;font-size:38px;font-style:italic;font-weight:400;line-height:1}.score-label{color:var(--ink-faint);text-transform:uppercase;letter-spacing:.18em;font-family:JetBrains Mono,monospace;font-size:10px;line-height:1.5}.score-meta{color:var(--ink-dim);font-size:12.5px;line-height:1.65}.score-meta code{color:var(--accent);background:#ffffffe6;border:1px solid #0e63382e;border-radius:4px;padding:2px 7px;font-family:JetBrains Mono,monospace;font-size:11.5px;font-weight:500}.validation-toolbar{background:var(--bg-2);border:1.5px solid #12181447;border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 16px;margin-bottom:16px;padding:16px 18px;display:flex;box-shadow:inset 0 1px #ffffffeb,0 18px 46px #141e191f,0 6px 16px #141e1914,0 1px 3px #141e190d}.toolbar-stats{color:var(--ink-dim);text-transform:uppercase;letter-spacing:.1em;flex:auto;gap:28px;min-width:0;font-family:JetBrains Mono,monospace;font-size:11px;display:flex}.validation-stats-wrap{flex:auto;gap:9px;min-width:0;display:grid}.toolbar-stats b{color:var(--ink);margin-right:6px;font-family:Fraunces,serif;font-size:22px;font-style:italic;font-weight:500;display:inline-block}.stat-approved b{color:var(--accent)}.stat-pending b{color:var(--amber)}.stat-no-pattern b{color:var(--ink-faint)}.stat-rejected b{color:var(--red)}.validation-status-bar{background:#141e190f;border:1px solid #141e191a;border-radius:999px;flex:0 0 100%;width:100%;height:7px;margin:0;display:flex;overflow:hidden}.validation-status-bar span{min-width:0;height:100%;display:block}.toolbar-actions{flex-wrap:wrap;gap:8px;display:flex}.validation-batch-actions{border-top:0;flex-direction:column;flex:none;justify-content:flex-end;align-items:flex-end;width:auto;padding-top:0}.validation-batch-buttons{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.validation-approve-hint{max-width:170px;color:var(--ink-dim);text-align:right;font-family:Manrope,system-ui,sans-serif;font-size:11px;font-weight:600;line-height:1.3}.validation-note{color:#8d473d;background:linear-gradient(90deg,#c66a5c2e,#c66a5c14);border-left:3px solid #c66a5c;border-radius:0 5px 5px 0;flex-wrap:wrap;align-items:flex-start;gap:10px;margin:-6px 0 18px;padding:12px 16px;font-size:13px;line-height:1.5;display:flex}.validation-note strong{color:#7d3b33}.validation-note-body{flex:260px}.validation-note-mark{color:#9a4c41;background:#c66a5c38;border:1px solid #c66a5c47;border-radius:999px;flex:none;justify-content:center;align-items:center;width:20px;height:20px;margin-top:1px;font-family:JetBrains Mono,monospace;font-size:12px;font-weight:700;display:inline-flex}.validation-note-link{color:#8d473d;text-transform:uppercase;letter-spacing:.12em;cursor:pointer;vertical-align:baseline;text-underline-offset:.22em;background:0 0;border:0;padding:0;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:700;text-decoration:underline;transition:color .15s,opacity .15s;display:inline}.validation-note-link:hover{color:#7d3b33;opacity:.92}.btn{border:1px solid var(--line-strong);background:var(--bg-2);color:var(--ink);text-transform:uppercase;letter-spacing:.12em;cursor:pointer;white-space:nowrap;border-radius:4px;justify-content:center;align-items:center;gap:8px;padding:9px 18px;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:500;text-decoration:none;transition:all .15s;display:inline-flex}.btn:hover{border-color:var(--ink-dim);background:var(--bg-3)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.btn.primary{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}.btn.primary:hover:not(:disabled){background:var(--accent-hover)}.btn.danger{color:var(--red);border-color:#c4433a4d}.btn.danger:hover{background:var(--red-soft)}.btn.pending{color:var(--amber);background:var(--amber-soft);border-color:#c77a186b;font-weight:700}.btn.pending:hover:not(:disabled){border-color:var(--amber);background:#c77a1829}.btn.full{width:100%}.btn.compact{padding:7px 12px;font-size:10px}.validation-pagebar{background:#faf8f3eb;border:1.5px solid #12181447;border-radius:14px;justify-content:space-between;align-items:center;width:100%;min-height:64px;margin:0 0 16px;padding:14px 18px;display:flex;box-shadow:inset 0 1px #fffffff2,inset 0 0 0 1px #ffffff80,0 18px 46px #141e191f,0 6px 16px #141e1914,0 1px 3px #141e190d}.validation-filters{background:#ffffffb8;border:1.5px solid #1218146b;border-radius:999px;flex-wrap:wrap;gap:7px;padding:5px;display:flex;box-shadow:inset 0 1px #fffffff2,inset 0 0 0 1px #ffffff9e,0 0 0 3px #1218140d,0 12px 26px #141e191a,0 3px 8px #141e190f}.validation-filter{min-height:30px;color:var(--ink-dim);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;align-items:center;gap:7px;padding:0 12px;font-family:JetBrains Mono,monospace;font-size:9.5px;font-weight:700;transition:border-color .15s,background .15s,color .15s;display:inline-flex}.validation-filter-dot{opacity:.7;background:currentColor;border-radius:999px;width:6px;height:6px}.validation-filter-all .validation-filter-dot{background:var(--ink-faint)}.validation-filter-rejected .validation-filter-dot{background:var(--red)}.validation-filter-no-pattern .validation-filter-dot{background:var(--ink-faint)}.validation-filter-pending .validation-filter-dot{background:var(--amber)}.validation-filter-approved .validation-filter-dot{background:var(--accent)}.validation-filter:hover{color:var(--ink);background:#ffffffc2;box-shadow:0 4px 10px #141e190f}.validation-filter.active{color:var(--ink);background:#fff;border-color:#141e1933;box-shadow:inset 0 1px #fffffff2,0 8px 18px #141e191f,0 2px 5px #141e190f}.validation-filter-rejected.active{color:var(--red)}.validation-filter-no-pattern.active{color:var(--ink-faint)}.validation-filter-pending.active{color:var(--amber)}.validation-filter-approved.active{color:var(--accent)}.validation-pager{background:#ffffffe6;border:1px solid #141e192e;border-radius:999px;justify-content:center;align-items:center;gap:14px;min-width:176px;padding:7px 10px;display:flex;box-shadow:inset 0 1px #fffffff2,inset 0 0 0 1px #ffffff9e,0 14px 30px #141e191f,0 4px 10px #141e1912}.validation-page-count{color:#315744;letter-spacing:.08em;white-space:nowrap;font-family:JetBrains Mono,monospace;font-size:12px;font-weight:500}.validation-page-btn{color:#28523c;cursor:pointer;background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;padding-bottom:3px;font-family:Inter,system-ui,sans-serif;font-size:24px;font-weight:700;line-height:1;transition:background .15s,color .15s;display:inline-flex}.validation-page-btn:hover:not(:disabled){color:var(--accent);background:#0e633814}.validation-page-btn:disabled{opacity:.36;cursor:not-allowed}.validation-pagebar-bottom{margin-top:16px}.validation-pagebar-bottom .validation-pagebar{margin-bottom:0}.val-thumb{aspect-ratio:4/3;background:var(--bg-2);border:2px solid var(--line);cursor:pointer;box-shadow:var(--shadow);font:inherit;border-radius:6px;padding:0;transition:all .2s;position:relative;overflow:hidden}.val-thumb:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.val-thumb.approved{border-color:var(--accent)}.val-thumb.no-pattern{border-color:var(--ink-faint);opacity:.72}.val-thumb.rejected{border-color:var(--red);opacity:.55}.val-thumb-img{background:var(--bg-3);background-image:repeating-linear-gradient(45deg,#0000,#0000 10px,#0e63380a 10px 20px);position:absolute;inset:0}.corner-dot{background:var(--accent);z-index:2;border-radius:50%;width:5px;height:5px;position:absolute;box-shadow:0 0 0 1.5px #fff,0 0 4px #0e63384d}.val-thumb-info{letter-spacing:.08em;z-index:3;background:linear-gradient(#0000,#fff9 30%,#fffffffa);justify-content:space-between;align-items:center;padding:9px 11px;font-family:JetBrains Mono,monospace;font-size:10px;display:flex;position:absolute;bottom:0;left:0;right:0}.val-thumb-name{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:500;overflow:hidden}.val-thumb-score{color:var(--accent);font-weight:500}.validation-empty{border:1px dashed var(--line-strong);background:var(--bg-2);box-shadow:var(--shadow);border-radius:8px;padding:32px}.validation-empty h3{margin-bottom:8px;font-family:Fraunces,serif;font-size:23px;font-weight:400}.validation-empty p{font-size:14px;line-height:1.6}.validation-command-bar{border:1.5px solid var(--ink);background:#fff;border-radius:0;margin-bottom:10px;overflow:hidden;box-shadow:0 18px 42px #141e191c,inset 0 2px #ffffffd1}.validation-command-row{grid-template-columns:minmax(0,1fr) auto;align-items:stretch;display:grid}.validation-command-stats{grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.validation-command-stat{min-width:0;color:var(--ink);cursor:pointer;text-align:left;background:#fff;border:0;border-right:1px solid #141e1947;border-radius:0;padding:17px 20px 18px;transition:background .15s,color .15s;position:relative}.validation-command-stat:hover{background:var(--bg)}.validation-command-stat.active:after{content:"";background:var(--accent);height:3px;position:absolute;bottom:0;left:0;right:0}.validation-stat-key{color:var(--ink-faint);letter-spacing:.22em;text-transform:uppercase;align-items:center;gap:7px;margin-bottom:8px;font-family:JetBrains Mono,monospace;font-size:9px;font-weight:700;line-height:1.2;display:flex}.validation-stat-key:before{content:"";background:currentColor;border-radius:50%;flex:none;width:7px;height:7px}.validation-command-stat.total .validation-stat-key{color:var(--ink)}.validation-command-stat.approved .validation-stat-key,.validation-command-stat.approved .validation-stat-value{color:var(--accent)}.validation-command-stat.pending .validation-stat-key,.validation-command-stat.pending .validation-stat-value{color:#6b6b66}.validation-command-stat.no-pattern .validation-stat-key,.validation-command-stat.no-pattern .validation-stat-value{color:var(--amber)}.validation-command-stat.rejected .validation-stat-key,.validation-command-stat.rejected .validation-stat-value{color:var(--red)}.validation-stat-value{color:var(--ink);font-feature-settings:"zero" 1, "tnum" 1;font-variant-numeric:tabular-nums slashed-zero;letter-spacing:0;font-family:JetBrains Mono,monospace;font-size:clamp(25px,3vw,36px);font-weight:500;line-height:1;display:block}.validation-stat-value.zero{color:var(--ink-faint)}.validation-command-actions{border-left:2px solid var(--ink);background:var(--bg);justify-content:flex-end;align-items:center;gap:10px;min-width:260px;padding:18px 22px;display:flex}.validation-command-actions .btn{border:1.5px solid var(--ink);min-height:38px;color:var(--ink);letter-spacing:.2em;background:0 0;border-radius:0;padding:0 16px;font-family:Inter,system-ui,sans-serif;font-size:10px;font-weight:700}.validation-command-actions .btn:hover{background:var(--ink);color:#fff}.validation-command-actions .btn.primary{border-color:var(--accent);background:var(--accent);color:#fff}.validation-command-actions .btn.primary:hover{border-color:var(--accent-hover);background:var(--accent-hover)}.validation-command-actions .btn b{font-feature-settings:"zero" 1, "tnum" 1;font-variant-numeric:tabular-nums slashed-zero;font-family:JetBrains Mono,monospace;font-size:11px}.validation-progress-strip{border:1.5px solid var(--ink);background:#fff;margin-bottom:18px;padding:6px;box-shadow:0 10px 24px #141e1914}.validation-status-bar{background:#141e1924;border:0;border-radius:0;width:100%;height:6px;margin:0;display:flex;overflow:hidden}.validation-status-bar-approved{background:var(--accent)}.validation-status-bar-pending{background:#6b6b66}.validation-status-bar-no-pattern{background:var(--amber)}.validation-status-bar-rejected{background:var(--red)}.validation-note{border:1.5px solid var(--ink);color:var(--amber);box-shadow:none;background:#fff;border-radius:0;margin:0 0 16px;padding:12px 18px}.validation-note strong,.validation-note-link{color:var(--ink)}.validation-helper-strip{border:1.5px solid var(--ink);background:#fff;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px;min-height:56px;margin-bottom:16px;padding:12px 20px;display:flex}.validation-helper-copy{color:var(--ink-dim);font-family:Inter,system-ui,sans-serif;font-size:12px;font-weight:600}.validation-helper-copy em{color:var(--ink);font-family:Cormorant Garamond,Fraunces,Georgia,serif;font-size:15px;font-style:italic;font-weight:600}.validation-helper-num{color:var(--ink);font-feature-settings:"zero" 1, "tnum" 1;font-variant-numeric:tabular-nums slashed-zero;letter-spacing:.02em;font-family:JetBrains Mono,monospace;font-size:13px;font-weight:700}.validation-pager{min-width:auto;box-shadow:none;background:0 0;border:0;border-radius:0;padding:0}.validation-pagination{align-items:center;gap:8px;display:inline-flex}.validation-page-btn{border:1.5px solid var(--ink);width:30px;height:30px;color:var(--ink);background:#fff;border-radius:0;padding:0 0 2px;font-family:Inter,system-ui,sans-serif;font-size:21px;font-weight:700;line-height:1}.validation-page-btn:hover:not(:disabled){background:var(--ink);color:#fff}.validation-page-count{min-width:112px;color:var(--ink);font-feature-settings:"zero" 1, "tnum" 1;font-variant-numeric:tabular-nums slashed-zero;letter-spacing:.02em;text-align:center;padding-inline:5px;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:500}.validation-page-count span{font-weight:700}.validation-grid-frame{border:1.5px solid var(--ink);background:#fff;padding:4px;overflow:visible;box-shadow:0 18px 42px #141e191a}.validation-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;display:grid}.val-thumb{aspect-ratio:4/3;box-shadow:none;cursor:pointer;background:linear-gradient(135deg,#575751,#242421);border:1px solid #141e1947;border-radius:0;padding:0;transition:box-shadow .15s,transform .15s;position:relative;overflow:hidden}.val-thumb:after{content:"";z-index:4;pointer-events:none;border:3px solid #0000;position:absolute;inset:0}.val-thumb:hover,.val-thumb:focus-within{z-index:5;transform:scale(1.018);box-shadow:0 8px 22px #141e192e}.val-thumb:focus-visible{outline:2px solid var(--ink);outline-offset:-4px}.val-thumb.approved:after{border-color:var(--accent)}.val-thumb.pending:after{border-color:#0000}.val-thumb.no-pattern:after{border-color:var(--amber)}.val-thumb.rejected:after{border-color:var(--red)}.val-thumb.no-pattern,.val-thumb.rejected{opacity:1}.val-thumb.pending{border-color:#141e1947}.val-thumb-photo{object-fit:cover;filter:grayscale(.1)saturate(.95)contrast(1.08);width:100%;height:100%;position:absolute;inset:0}.val-thumb.rejected .val-thumb-photo,.val-thumb.no-pattern .val-thumb-photo{filter:grayscale(.42)saturate(.78)contrast(1.02)}.val-thumb-overlay{z-index:1;background:linear-gradient(#0000000d 52%,#00000094),radial-gradient(circle at 50% 45%,#ffffff14,#0000 55%);position:absolute;inset:0}.val-thumb-badge{z-index:6;color:#fff;background:#6b6b66;border:1.5px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-family:JetBrains Mono,monospace;font-size:13px;font-weight:700;line-height:1;display:inline-flex;position:absolute;top:7px;left:7px}.val-thumb.approved .val-thumb-badge{background:var(--accent)}.val-thumb.pending .val-thumb-badge{background:#6b6b66}.val-thumb.no-pattern .val-thumb-badge{background:var(--amber)}.val-thumb.rejected .val-thumb-badge{background:var(--red)}.val-thumb-info{z-index:5;color:#fff;font-feature-settings:"zero" 1, "tnum" 1;font-variant-numeric:tabular-nums slashed-zero;letter-spacing:.02em;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000c7;justify-content:space-between;align-items:center;gap:10px;padding:7px 10px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:500;display:flex;position:absolute;bottom:0;left:0;right:0}.val-thumb-name{color:#ffffffdb;text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.val-thumb-score{color:#d8f3df;flex:none;align-items:center;gap:5px;font-weight:700;display:inline-flex}.val-thumb-score:before{content:"";background:#0f8;border-radius:50%;width:5px;height:5px}.val-thumb.no-pattern .val-thumb-score{color:#ffdca9}.val-thumb.no-pattern .val-thumb-score:before{background:#ff9b3d}.val-thumb.rejected .val-thumb-score{color:#ffd0cd}.val-thumb.rejected .val-thumb-score:before{background:#ff6b6b}.val-thumb-stamp{z-index:5;color:#fff;letter-spacing:.22em;text-transform:uppercase;border:1.5px solid #fff;padding:6px 14px;font-family:Inter,system-ui,sans-serif;font-size:10px;font-weight:800;line-height:1;position:absolute;top:50%;left:50%;box-shadow:0 2px 9px #00000057}.val-thumb-stamp.no-pattern-stamp{background:var(--amber);transform:translate(-50%,-50%)}.val-thumb-stamp.rejected-stamp{background:var(--red);transform:translate(-50%,-50%)rotate(-12deg)}.val-thumb-actions{z-index:7;opacity:0;pointer-events:none;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0d4225db;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:18px;transition:opacity .15s;display:flex;position:absolute;inset:0}.val-thumb:hover .val-thumb-actions,.val-thumb:focus-within .val-thumb-actions{opacity:1;pointer-events:auto}.val-thumb-action{width:min(150px,82%);min-height:32px;color:var(--ink);cursor:pointer;letter-spacing:.2em;text-transform:uppercase;background:#fff;border:0;border-radius:0;padding:0 12px;font-family:Inter,system-ui,sans-serif;font-size:10px;font-weight:800;line-height:1;transition:background .15s,color .15s}.val-thumb-action:hover:not(:disabled){background:var(--ink);color:#fff}.val-thumb-action.primary{background:var(--accent);color:#fff}.val-thumb-action.primary:hover:not(:disabled){background:var(--accent-hover)}.val-thumb-action.danger{background:var(--red);color:#fff}.val-thumb-action.danger:hover:not(:disabled){background:#8f2f2a}.val-thumb-action:disabled{opacity:.45;cursor:not-allowed}.val-thumb-placeholder{aspect-ratio:4/3;visibility:hidden;pointer-events:none}.validation-bottom-bar{border:1.5px solid var(--ink);background:#fff;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px;min-height:58px;margin-top:18px;padding:13px 20px;display:flex;box-shadow:0 12px 28px #141e1914}.validation-bottom-info{color:var(--ink-dim);font-size:11px;font-weight:600}.validation-bottom-info span{color:var(--ink);font-feature-settings:"zero" 1, "tnum" 1;font-variant-numeric:tabular-nums slashed-zero;font-family:JetBrains Mono,monospace;font-size:13px;font-weight:700}.validation-empty{border:1.5px solid var(--ink);background:#fff;border-radius:0;box-shadow:0 18px 42px #141e191a}@media (width<=980px){.validation-command-row{grid-template-columns:1fr}.validation-command-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.validation-command-stat:nth-child(2n){border-right:0}.validation-command-actions{border-left:0;border-top:1.5px solid var(--ink);justify-content:flex-start;min-width:0}.validation-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.validation-command-stats{grid-template-columns:1fr}.validation-command-stat{border-right:0}.validation-command-actions,.validation-helper-strip,.validation-bottom-bar{flex-direction:column;align-items:stretch}.validation-command-actions .btn,.validation-pagination{width:100%}.validation-pagination{justify-content:space-between}.validation-grid{grid-template-columns:1fr}}.preview-generation-page{place-items:center;min-height:min(720px,100vh - 260px);padding:16px 0 28px;display:grid}.preview-generation-card{background:#fffffff0;border:1px solid #141e192e;border-radius:5px;width:min(720px,100%);padding:42px 38px 34px;box-shadow:inset 0 1px #fffffff5,0 22px 56px #141e191f,0 6px 18px #141e1914}.preview-generation-head{text-align:center;max-width:520px;margin:0 auto 28px}.preview-generation-head h3{letter-spacing:0;margin-top:8px;font-family:Fraunces,Georgia,serif;font-size:31px;font-weight:400}.preview-generation-head h3 em{color:var(--accent)}.preview-generation-head p{color:var(--ink-dim);margin-top:10px;font-size:14px;line-height:1.65}.preview-dial-wrap{justify-content:center;margin-bottom:32px;display:flex}.preview-dial{width:240px;height:240px;position:relative}.preview-dial svg{width:100%;height:100%;overflow:visible;transform:rotate(-90deg)}.preview-ring-guide,.preview-ring-track,.preview-ring-progress,.preview-ring-spinner,.preview-ring-scanner{fill:none}.preview-ring-guide{stroke:#141e192e;stroke-width:.75px;stroke-dasharray:2 5}.preview-ring-track{stroke:#141e1914;stroke-width:4px}.preview-ring-progress{stroke:var(--accent);stroke-width:4px;stroke-linecap:round;transition:stroke-dashoffset .28s}.preview-ring-spinner{stroke:var(--accent);stroke-width:1.5px;stroke-linecap:round;stroke-dasharray:60 580;opacity:.52;transform-origin:120px 120px;animation:1.55s linear infinite preview-dial-spin}.preview-ring-scanner{stroke:var(--accent);stroke-width:.7px;stroke-dasharray:30 472;opacity:.38;transform-origin:120px 120px;animation:3.2s linear infinite reverse preview-dial-spin}.preview-ring-dot{fill:var(--accent);animation:1.9s ease-in-out infinite preview-dot-pulse}.preview-ring-ticks line{stroke:#68736c8c;stroke-width:.6px}.preview-ring-ticks line.major{stroke:#141e1980;stroke-width:.9px}.preview-dial-center{pointer-events:none;text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.preview-dial-center strong{color:var(--ink);font-feature-settings:"tnum";font-family:JetBrains Mono,monospace;font-size:42px;font-weight:600;line-height:1}.preview-dial-center strong em{color:var(--ink-faint);margin-left:2px;font-family:Fraunces,Georgia,serif;font-size:24px;font-style:italic;font-weight:400}.preview-dial-center span{max-width:150px;color:var(--ink-faint);margin-top:8px;font-family:Fraunces,Georgia,serif;font-size:15px;font-style:italic;line-height:1.2}.preview-generation-stages{border-top:1px solid #141e191a;display:grid}.preview-stage{min-height:62px;color:var(--ink-dim);border-bottom:1px solid #141e191a;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;display:grid}.preview-stage:last-child{border-bottom:0}.preview-stage.pending{opacity:.42}.preview-stage-marker{background:var(--bg);width:24px;height:24px;color:var(--ink-faint);border:1px solid #141e1938;border-radius:50%;justify-content:center;align-items:center;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:700;display:inline-flex}.preview-stage.active .preview-stage-marker{border-color:var(--accent);background:var(--accent);color:#fff;animation:1.35s ease-in-out infinite preview-marker-pulse}.preview-stage.done .preview-stage-marker{background:var(--accent-soft);color:var(--accent);border-color:#0e63386b}.preview-stage strong{color:var(--ink);font-family:Fraunces,Georgia,serif;font-size:17px;font-style:italic;font-weight:400;display:block}.preview-stage small{color:var(--ink-faint);margin-top:2px;font-size:12px;display:block}.preview-stage em{color:var(--ink-faint);letter-spacing:.12em;text-transform:uppercase;font-family:JetBrains Mono,monospace;font-size:10px;font-style:normal;font-weight:700}.preview-stage.active em,.preview-stage.done em{color:var(--accent)}.preview-generation-summary{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:22px;display:flex}.preview-generation-summary span{min-height:28px;color:var(--ink-dim);letter-spacing:.1em;text-transform:uppercase;background:#f1efe6b8;border:1px solid #141e191f;border-radius:999px;align-items:center;padding:0 12px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:700;display:inline-flex}@keyframes preview-dial-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes preview-dot-pulse{0%,to{opacity:.34;r:2.5}50%{opacity:1;r:4}}@keyframes preview-marker-pulse{0%,to{box-shadow:0 0 #0e633857}50%{box-shadow:0 0 0 7px #0e633800}}@media (prefers-reduced-motion:reduce){.preview-ring-spinner,.preview-ring-scanner,.preview-ring-dot,.preview-stage.active .preview-stage-marker{animation:none}.preview-ring-progress{transition:none}}@media (width<=640px){.preview-generation-page{min-height:auto;padding-top:0}.preview-generation-card{padding:30px 22px 26px}.preview-generation-head h3{font-size:26px}.preview-dial{width:210px;height:210px}.preview-stage{grid-template-columns:auto minmax(0,1fr)}.preview-stage em{grid-column:2;margin-top:-8px}}.review-modal-backdrop{z-index:140;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0e14119e;place-items:center;padding:36px;display:grid;position:fixed;inset:0}.review-modal{border:1px solid var(--line-accent);background:linear-gradient(180deg, #fffffff0, #f4f2eaf5), var(--bg-2);border-radius:8px;grid-template-rows:minmax(0,1fr) auto;width:min(1080px,92vw);height:min(744px,86vh);display:grid;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffffbf,0 34px 80px #0c120e52}.review-image-wrap{background:#fff;place-items:center;min-height:0;padding:30px 84px 26px;display:grid}.review-image-frame{border:1px solid var(--line-strong);background:linear-gradient(180deg, #ffffffeb, #f6f4edf5), var(--bg-2);border-radius:10px;place-items:center;width:min(100%,920px);max-width:calc(100% + 56px);height:min(100%,560px);max-height:100%;padding:14px;display:grid;overflow:hidden;box-shadow:inset 0 1px #ffffffdb,0 18px 36px #141e1829}.review-lens-stage{background:#ffffff8a 50%/contain no-repeat;border-radius:8px;justify-content:center;align-items:center;width:100%;max-width:100%;height:100%;max-height:100%;display:flex;position:relative;overflow:hidden}.review-image{object-fit:contain;background:var(--bg-2);cursor:zoom-in;width:100%;min-width:0;height:100%;min-height:0;display:block}.review-zoom-lens{z-index:4;pointer-events:none;outline:1px solid var(--accent);background-repeat:no-repeat;background-color:var(--bg-2);border:2px solid #fffffff0;border-radius:50%;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 4px #0e63382e,0 16px 34px #0c120e52,inset 0 0 0 1px #0e63382e}.review-close,.review-arrow{z-index:2;border:1px solid var(--line-strong);color:var(--ink);cursor:pointer;background:#ffffffe6;justify-content:center;align-items:center;transition:transform .15s,border-color .15s,background .15s;display:inline-flex;position:absolute}.review-close{border-radius:50%;width:36px;height:36px;font-size:21px;line-height:1;top:18px;right:18px}.review-arrow{border-radius:999px;width:44px;height:64px;font-family:JetBrains Mono,monospace;font-size:20px;top:50%;transform:translateY(-50%)}.review-arrow.left{left:18px}.review-arrow.right{right:18px}.review-close:hover,.review-arrow:hover{border-color:var(--accent);background:#fff}.review-arrow:hover{transform:translateY(-50%)scale(1.04)}.review-footer{border-top:1px solid var(--line);background:var(--bg-2);justify-content:space-between;align-items:center;gap:20px;padding:20px 24px;display:flex}.review-meta{gap:4px;min-width:0;display:grid}.review-status-badge{z-index:5;min-height:24px;color:var(--ink-faint);font-feature-settings:"zero" 1;letter-spacing:.12em;text-transform:uppercase;background:#fffffff0;border:1.5px solid;align-items:center;gap:7px;padding:0 9px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:700;line-height:1;display:inline-flex;position:absolute;top:12px;right:12px}.review-status-badge.approved{color:var(--accent);background:#fffffff5}.review-status-badge.pending,.review-status-badge.awaiting{color:var(--ink-faint);background:#fffffff0}.review-status-badge.no-pattern{color:var(--amber);background:#fffffff5}.review-status-badge.rejected{color:var(--red);background:#fffffff5}.review-meta strong{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-family:Fraunces,serif;font-size:24px;font-weight:400;overflow:hidden}.review-position{color:var(--ink-dim);letter-spacing:.08em;text-transform:uppercase;font-family:JetBrains Mono,monospace;font-size:11px}.review-actions{flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;gap:10px;display:flex}.model-grid{grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:36px;display:grid}.model-card{border:1px solid var(--line);background:var(--bg-2);cursor:pointer;box-shadow:var(--shadow);font:inherit;color:inherit;text-align:left;border-radius:8px;padding:30px 26px;transition:all .2s;position:relative}.model-card:hover{border-color:var(--line-strong);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.model-card.selected{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 4px var(--accent-soft), var(--shadow)}.model-card.selected:after{content:"";background:var(--accent);width:100%;height:3px;position:absolute;top:0;left:0}.model-status-tag{border:1px solid var(--line);background:var(--bg);max-width:calc(100% - 24px);color:var(--ink-dim);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;text-overflow:ellipsis;border-radius:6px;padding:5px 8px;font-family:JetBrains Mono,monospace;font-size:9px;font-weight:700;line-height:1;position:absolute;top:12px;right:12px;overflow:hidden}.model-status-tag.calibrated{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.model-icon{justify-content:center;align-items:center;width:48px;height:48px;margin-bottom:16px;display:flex}.model-icon svg{width:100%;height:100%;stroke:var(--ink-dim);fill:none;stroke-width:1.3px}.model-card.selected .model-icon svg{stroke:var(--accent)}.model-card h4{margin-bottom:8px;font-family:Fraunces,serif;font-size:19px;font-weight:500}.model-card p{color:var(--ink-dim);margin-bottom:12px;font-size:13px;line-height:1.6}.run-section{border:1px solid var(--line);background:var(--bg-2);text-align:center;box-shadow:var(--shadow);border-radius:8px;padding:44px;position:relative;overflow:hidden}.run-section:before{content:"";background:radial-gradient(circle at 50% 0%, var(--accent-soft), transparent 70%);pointer-events:none;position:absolute;inset:0}.run-section.blocked:before{background:radial-gradient(circle at 50% 0%, var(--red-soft), transparent 70%)}.run-eyebrow{color:var(--accent);text-transform:uppercase;letter-spacing:.22em;margin-bottom:14px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:500;position:relative}.run-section.blocked .run-eyebrow{color:var(--red)}.run-title{color:var(--ink);letter-spacing:-.01em;margin-bottom:26px;font-family:Fraunces,serif;font-size:30px;font-weight:300;position:relative}.run-title em{color:var(--accent);font-style:italic;font-weight:500}.run-section.blocked .run-title em{color:var(--red)}.run-btn{background:var(--accent);color:#fff;text-transform:uppercase;letter-spacing:.15em;cursor:pointer;border:none;border-radius:4px;align-items:center;gap:12px;padding:18px 48px;font-family:JetBrains Mono,monospace;font-size:13px;font-weight:600;transition:all .2s;display:inline-flex;position:relative;box-shadow:0 4px 16px #0e633833}.run-section.blocked .run-btn{background:var(--red);box-shadow:0 4px 16px #c4433a2e}.run-btn:hover{background:var(--accent-hover);transform:translateY(-1px);box-shadow:0 6px 20px #0e63384d}.run-section.blocked .run-btn:hover{background:#a9342d;box-shadow:0 6px 20px #c4433a42}.run-btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;transform:none}.run-btn .arrow{transition:transform .2s}.run-btn:hover .arrow{transform:translate(4px)}.run-meta{color:var(--ink-faint);text-transform:uppercase;letter-spacing:.15em;margin-top:16px;font-family:JetBrains Mono,monospace;font-size:10px;position:relative}.calibrate-msg{text-align:left;max-width:560px;margin:18px auto 0;position:relative}.results-panel{grid-template-columns:1fr 1fr;gap:18px;margin-top:36px;display:grid}.result-box{border:1px solid var(--line);background:var(--bg-2);box-shadow:var(--shadow);border-radius:8px;padding:26px}.matrix{color:var(--ink);background:var(--bg-3);border-left:3px solid var(--accent);white-space:pre;border-radius:0 4px 4px 0;margin-top:12px;padding:16px 18px;font-family:JetBrains Mono,monospace;font-size:13px;line-height:2;overflow-x:auto}.matrix .comment{color:var(--ink-faint)}.matrix .val{color:var(--accent);font-weight:500}.result-empty{background:var(--bg-3);border-left:3px solid var(--line-strong);color:var(--ink-faint);text-transform:uppercase;letter-spacing:.08em;border-radius:0 4px 4px 0;margin-top:12px;padding:18px;font-family:JetBrains Mono,monospace;font-size:12px}.coeff-section{border-top:1px solid var(--line);margin-top:22px;padding-top:18px}.coeff-vector{padding:13px 16px;font-size:12px;line-height:1.8}.coeff-vector-row{align-items:flex-end;gap:10px;min-width:max-content;display:flex}.coeff-vector-item{gap:1px;min-width:64px;display:inline-grid}.coeff-vector-name{color:var(--ink-faint);text-transform:uppercase;letter-spacing:.12em;font-size:9px;line-height:1}.coeff-bracket{color:var(--ink);line-height:1.45}.coeff-empty{margin-top:12px}.metric-list{margin-top:14px}.metric-row{border-bottom:1px solid var(--line);justify-content:space-between;gap:16px;padding:11px 0;font-size:13px;display:flex}.metric-row:last-child{border-bottom:none;padding-bottom:0}.metric-row span:first-child{color:var(--ink-dim);text-transform:uppercase;letter-spacing:.1em;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:500}.metric-row span:last-child{color:var(--ink);text-align:right;font-family:JetBrains Mono,monospace;font-weight:500}.metric-row .good{color:var(--accent)}.undistort-panel{border:1px solid var(--line);background:var(--bg-2);box-shadow:var(--shadow);border-radius:8px;padding:32px}.undistort-controls{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:26px;padding-bottom:24px;display:flex}.undistort-heading{flex-wrap:wrap;align-items:flex-start;gap:16px;display:flex}.undistort-model-tag{white-space:nowrap;margin-top:3px}.undistort-title{margin-top:4px;font-family:Fraunces,serif;font-size:24px;font-weight:400}.undistort-title em{color:var(--accent);font-style:italic;font-weight:500}.undistort-help{max-width:520px;color:var(--ink-dim);margin-top:8px;font-size:13px;line-height:1.6}.undistort-model-confirm{border:1px solid var(--line);border-left:3px solid var(--accent);background:var(--bg-3);text-transform:uppercase;border-radius:6px;align-items:stretch;gap:0;width:fit-content;margin-top:14px;padding:10px 12px;font-family:JetBrains Mono,monospace;font-size:11px;display:flex}.undistort-model-confirm div{gap:5px;padding:0 14px;display:grid}.undistort-model-confirm div:first-child{padding-left:0}.undistort-model-confirm div+div{border-left:1px solid var(--line)}.undistort-model-confirm span{color:var(--ink-faint)}.undistort-model-confirm strong{color:var(--ink);font-weight:700}.undistort-model-options{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.undistort-model-option{border:1px solid var(--line);background:var(--bg);min-width:128px;color:var(--ink-dim);text-align:left;cursor:pointer;border-radius:6px;gap:5px;padding:11px 12px;transition:all .2s;display:grid}.undistort-model-option:hover:not(:disabled){border-color:var(--accent);transform:translateY(-1px)}.undistort-model-option.selected{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);border-width:2px;padding:10px 11px;position:relative;box-shadow:0 8px 22px #0e633829}.undistort-model-option.selected:before{content:"Selected";background:var(--accent);color:#fff;text-transform:uppercase;letter-spacing:.08em;border-radius:999px;padding:2px 7px;font-family:JetBrains Mono,monospace;font-size:9px;font-weight:700;position:absolute;top:-10px;right:8px}.undistort-model-option:disabled{opacity:.48;cursor:not-allowed}.undistort-model-option-head,.undistort-model-option strong{text-transform:uppercase;font-family:JetBrains Mono,monospace;font-size:11px}.undistort-model-option-head{justify-content:space-between;align-items:center;gap:10px;font-weight:700;display:flex}.undistort-model-check{background:var(--accent);color:#fff;border-radius:999px;place-items:center;width:18px;height:18px;font-size:12px;line-height:1;display:inline-grid}.undistort-model-option strong{color:inherit}.undistort-picker input{display:none}.balance-slider{appearance:none;cursor:pointer;background:0 0;border:0;width:100%;height:24px;padding:0}.balance-slider:focus{box-shadow:none;border-color:#0000}.balance-slider:disabled{cursor:not-allowed;opacity:.5}.balance-slider::-webkit-slider-runnable-track{background:linear-gradient(90deg, var(--accent), var(--accent-bright));border-radius:999px;height:3px}.balance-slider::-webkit-slider-thumb{appearance:none;border:2px solid var(--bg-2);background:var(--accent);width:18px;height:18px;box-shadow:0 0 0 3px var(--accent-soft), var(--shadow);border-radius:50%;margin-top:-7.5px}.balance-slider::-moz-range-track{background:linear-gradient(90deg, var(--accent), var(--accent-bright));border-radius:999px;height:3px}.balance-slider::-moz-range-thumb{border:2px solid var(--bg-2);background:var(--accent);width:18px;height:18px;box-shadow:0 0 0 3px var(--accent-soft), var(--shadow);border-radius:50%}.undistort-msg{margin:-10px 0 24px}.compare-view{grid-template-columns:1fr 1fr;gap:18px;margin-bottom:26px;display:grid}.compare-column{align-content:start;display:grid}.compare-box{aspect-ratio:4/3;background:var(--bg-3);border:1px solid var(--line-strong);border-radius:6px;position:relative;overflow:hidden}.compare-label{background:var(--bg-2);color:var(--ink);text-transform:uppercase;letter-spacing:.15em;z-index:2;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:3px;padding:5px 11px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:500;position:absolute;top:12px;left:12px}.compare-box.before .compare-label{border-left:3px solid var(--amber)}.compare-box.after .compare-label{border-left:3px solid var(--accent)}.compare-box.is-refreshing:after{content:"";z-index:2;background:#ffffff38;position:absolute;inset:0}.compare-img{background:repeating-linear-gradient(45deg,#c77a180d 0 1px,#0000 1px 14px),repeating-linear-gradient(-45deg,#c77a180d 0 1px,#0000 1px 14px),linear-gradient(135deg,#ede5d4,#e5dcc5);position:absolute;inset:0}.compare-img-after{background:linear-gradient(135deg,#e8efe4,#dfe8d9)}.compare-photo{object-fit:contain;background:var(--bg-3);width:100%;height:100%;position:absolute;inset:0}.compare-placeholder{z-index:1;color:var(--ink-dim);letter-spacing:.14em;text-transform:uppercase;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:500;position:absolute;bottom:16px;left:18px;right:18px}.compare-refresh{z-index:3;justify-content:flex-end;display:flex;position:absolute;bottom:16px;right:16px}.compare-refresh-card{min-width:170px;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#f7f9f4eb;border:1px solid #19754438;border-radius:6px;gap:4px;padding:10px 12px;display:grid}.compare-refresh-kicker{color:var(--ink-faint);text-transform:uppercase;letter-spacing:.14em;font-family:JetBrains Mono,monospace;font-size:10px}.compare-refresh-card strong{color:var(--accent);letter-spacing:.08em;font-family:JetBrains Mono,monospace;font-size:12px;font-weight:600}.distorted-grid{pointer-events:none;position:absolute;inset:0}.distorted-grid svg{width:100%;height:100%}.straight-grid{pointer-events:none;background-image:linear-gradient(#0e63382e 1px,#0000 1px),linear-gradient(90deg,#0e63382e 1px,#0000 1px);background-size:44px 44px;position:absolute;inset:0}.download-row{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding-top:24px;display:flex}.download-title{margin-top:4px;font-family:Fraunces,serif;font-size:22px;font-weight:400}.download-title em{color:var(--accent);font-style:italic;font-weight:500}.download-helper{color:var(--ink-dim);margin-top:4px;font-size:12px;line-height:1.45}.download-group{flex-wrap:wrap;gap:10px;display:flex}.rectify-download-row{background:var(--bg-2);width:100%;box-shadow:var(--shadow);border:1px solid #0e63382e;border-radius:8px;margin:18px 0 0;padding:18px 20px}.rectify-panel{grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr);align-items:stretch;gap:24px;width:100%;display:grid}.rectify-preview,.rectify-controls{background:linear-gradient(180deg, #fffffffa, #f8faf5fa), var(--bg-2);border:1px solid #0e63382e;border-radius:8px;position:relative;box-shadow:inset 0 1px #fffffff5,0 26px 60px #141e182e,0 10px 24px #141e181f,0 0 0 1px #ffffffb8}.rectify-preview:after,.rectify-controls:after{content:"";filter:blur(18px);pointer-events:none;z-index:-1;background:#141e1824;border-radius:12px;position:absolute;inset:14px -12px -16px 12px}.rectify-preview{grid-column:2;grid-template-rows:minmax(0,1fr) auto;min-width:0;padding:16px;display:grid}.rectify-output{aspect-ratio:4/3;width:100%;height:100%;min-height:0}.rectify-preview-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding-top:8px;display:flex}.rectify-preview-foot strong{color:var(--ink);margin-top:2px;font-size:13px;font-weight:500;display:block}.rectify-controls{grid-area:1/1;align-content:start;gap:8px;min-width:0;max-height:none;padding:14px 16px;display:grid;overflow:visible}.rectify-controls-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:16px;padding-bottom:8px;display:flex}.rectify-empty{color:var(--ink-dim);background:#faf4e8b8;border:1px solid #c77a1842;border-radius:6px;padding:12px 14px;font-size:12px;line-height:1.5}.rectify-slider-group{border:1px solid var(--line);border-left:3px solid var(--group-accent,var(--accent));background:linear-gradient(180deg, var(--group-tint,#ffffffd1), #f7f9f4c7), var(--bg-2);border-radius:7px;align-items:start;gap:6px;padding:8px 10px 10px;display:grid}.projection-group,.matrix-group,.distortion-group{--group-accent:#0e7a4a;--group-tint:#e4f4ebe6}.rectify-group-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:14px;padding-bottom:5px;display:flex}.rectify-group-head>div{gap:2px;display:grid}.rectify-group-head strong{color:var(--ink);font-family:Fraunces,serif;font-size:15px;font-weight:450;line-height:1.15}.rectify-group-head>span,.rectify-group-kicker{color:var(--ink-faint);letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;font-family:JetBrains Mono,monospace;font-size:8px;font-weight:700}.rectify-group-kicker{color:var(--group-accent,var(--accent))}.rectify-slider-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid}.projection-group .rectify-slider-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rectify-slider-row{background:linear-gradient(180deg, #ffffffc7, #faf9f4db), var(--bg-2);border:1px solid #0e63381f;border-radius:6px;gap:4px;min-width:0;padding:6px 8px;display:grid;overflow:hidden}.rectify-slider-head{color:var(--ink-faint);text-transform:uppercase;letter-spacing:.12em;grid-template-columns:minmax(72px,1fr) auto;align-items:center;gap:8px;min-height:18px;font-family:JetBrains Mono,monospace;font-size:9px;font-weight:500;display:grid}.rectify-slider-head>span:first-child{text-overflow:clip;white-space:nowrap;min-width:0;overflow:visible}.rectify-slider-actions{flex-shrink:0;justify-content:flex-end;align-items:center;gap:6px;min-width:0;display:inline-flex}.rectify-slider-head strong{color:var(--accent);letter-spacing:.06em;text-align:left;text-overflow:ellipsis;white-space:nowrap;min-width:64px;font-size:11px;overflow:hidden}.rectify-step-control{color:var(--ink-faint);letter-spacing:.14em;text-transform:uppercase;grid-template-columns:auto minmax(58px,82px);justify-content:end;align-items:center;gap:6px;font-family:JetBrains Mono,monospace;font-size:8px;font-weight:700;display:grid}.rectify-step-control input{width:100%;min-width:0;color:var(--accent);text-align:right;cursor:text;background:#e8f6ee8f;border:1px solid #0e63382e;border-radius:4px;padding:4px 6px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:600}.rectify-step-control input:focus{border-color:#0e63386b;outline:none;box-shadow:0 0 0 2px #0e633814}.rectify-step-control input:disabled{opacity:.55;cursor:not-allowed}.rectify-slider-track{gap:1px;min-width:0;display:grid}.rectify-slider-grades{pointer-events:none;grid-template-columns:repeat(11,1fr);align-items:start;height:7px;padding:0 9px;display:grid}.rectify-slider-grades span{background:#0e63386b;border-radius:999px;justify-self:center;width:1px;height:5px}.rectify-slider-grades span:first-child,.rectify-slider-grades span:last-child{background:#0e6338b8;height:7px}.rectify-restore{border:1px solid var(--line);background:var(--bg-3);width:42px;min-width:42px;height:20px;color:var(--ink-dim);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;border-radius:4px;padding:0;font-family:JetBrains Mono,monospace;font-size:0;font-weight:700;transition:border-color .15s,color .15s,background .15s}.rectify-restore:before{content:"Reset";font-size:8px;line-height:1}.rectify-restore:hover:not(:disabled){border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.rectify-restore:disabled{cursor:not-allowed;opacity:.42}.rectify-slider-hint{color:var(--ink-dim);white-space:nowrap;text-overflow:ellipsis;font-size:8px;line-height:1.2;overflow:hidden}@media (width<=1180px){.rectify-slider-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1440px){.rectify-panel{grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr)}}.step-nav{z-index:30;pointer-events:none;justify-content:space-between;align-items:center;gap:16px;width:auto;margin:0;padding:0;display:flex;position:absolute;top:48%;left:-156px;right:-156px;transform:translateY(-50%)}.compass-nav-button{pointer-events:auto;width:132px;color:var(--ink);cursor:pointer;background:0 0;border:0;flex-direction:column;align-items:center;gap:14px;padding:0;display:inline-flex}.compass-dial{flex-shrink:0;width:132px;height:132px;display:block;position:relative}.compass-ring-outer,.compass-ring-inner{pointer-events:none;border-radius:50%;position:absolute}.compass-ring-outer{background:0 0;border:0;inset:0}.compass-ring-inner{border:1px dashed #1b1f1c9e;inset:12px}.compass-ticks{pointer-events:none;position:absolute;inset:0}.compass-tick{background:var(--line-strong);transform-origin:50% 66px;width:1px;height:6px;position:absolute;top:0;left:50%}.compass-tick.major{background:var(--ink-dim);height:9px}.compass-cardinal{letter-spacing:.22em;color:var(--ink-faint);text-transform:uppercase;margin:0;font-family:JetBrains Mono,monospace;font-size:9px;font-weight:500;line-height:1;position:absolute}.compass-cardinal.n{top:15px;left:50%;transform:translate(-50%)}.compass-cardinal.s{bottom:15px;left:50%;transform:translate(-50%)}.compass-cardinal.e{top:50%;right:14px;transform:translateY(-50%)}.compass-cardinal.w{top:50%;left:14px;transform:translateY(-50%)}.compass-dial-core{border:1px solid var(--ink-dim);background:var(--bg);width:56px;height:56px;color:var(--ink);box-shadow:0 0 0 5px var(--bg), 0 0 0 6px var(--line-strong);border-radius:50%;justify-content:center;align-items:center;font-family:Fraunces,Georgia,serif;font-size:25px;line-height:1;transition:transform .2s,background .15s,box-shadow .2s,border-color .15s;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.compass-meta{text-align:center;gap:4px;display:grid}.compass-meta-label{letter-spacing:.22em;color:var(--ink-faint);text-transform:uppercase;font-family:JetBrains Mono,monospace;font-size:9px;font-weight:500}.compass-meta-step{color:var(--ink);font-family:Fraunces,Georgia,serif;font-size:15px;font-style:italic;line-height:1}.compass-nav-button:hover .compass-dial-core{background:var(--bg-2);border-color:var(--accent);box-shadow:0 0 0 5px var(--bg), 0 0 0 6px var(--accent), 0 0 0 13px #0e633814;transform:translate(-50%,-50%)scale(1.06)}.compass-nav-button:active .compass-dial-core{transform:translate(-50%,-50%)scale(.96)}.compass-nav-button.next .compass-ring-outer{background:0 0;border-color:#0000}.compass-nav-button.next .compass-ring-inner{border-color:#1b1f1c9e}.compass-nav-button.next .compass-tick{background:var(--accent);opacity:.42}.compass-nav-button.next .compass-tick.major{opacity:.85}.compass-nav-button.next .compass-cardinal,.compass-nav-button.next .compass-meta-label,.compass-nav-button.next .compass-meta-step{color:var(--accent)}.compass-nav-button.next .compass-dial-core{border-color:var(--accent);background:var(--accent);color:#fff;width:64px;height:64px;box-shadow:0 0 0 5px var(--bg), 0 0 0 6px var(--accent);font-size:29px}.compass-nav-button.next:hover .compass-dial-core{background:var(--accent-hover);border-color:var(--accent-hover);box-shadow:0 0 0 5px var(--bg), 0 0 0 6px var(--accent-hover), 0 0 0 13px #0e63381a;transform:translate(-50%,-50%)scale(1.08)}.compass-nav-button:disabled{opacity:.36;cursor:not-allowed}.compass-nav-button:disabled .compass-dial-core{box-shadow:none}.compass-nav-button:disabled:hover .compass-dial-core{background:var(--bg);border-color:var(--ink-dim);transform:translate(-50%,-50%)}.page-header{background:var(--bg-2);border-bottom:1px solid var(--line);padding:40px 48px 36px}.page-header-inner{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:32px;max-width:1200px;margin:0 auto;display:flex}.page-header-left{flex-direction:column;gap:10px;max-width:680px;display:flex}.page-header-right{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:10px;display:flex}.eyebrow{color:var(--accent);text-transform:uppercase;letter-spacing:.22em;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:500}.display-title{letter-spacing:-.025em;color:var(--ink);font-family:Fraunces,serif;font-size:3.2rem;font-weight:300;line-height:1}.display-title em{color:var(--accent);font-style:italic;font-weight:500}.page-subtitle{color:var(--ink-dim);max-width:560px;font-size:14px;line-height:1.65}.section-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:22px;padding-bottom:18px;display:flex}.section-head h2{font-family:Fraunces,serif;font-size:1.3rem;font-weight:400}.section-head h2 em{color:var(--accent);font-style:italic;font-weight:500}.section-count{color:var(--ink-faint);text-transform:uppercase;letter-spacing:.12em;white-space:nowrap;font-family:JetBrains Mono,monospace;font-size:11px}.content-grid{grid-template-columns:1fr 1fr;gap:24px;display:grid}.content-grid.thirds{grid-template-columns:repeat(3,1fr)}.content-grid.auto{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.analytics-hero{background:linear-gradient(120deg, #0e633814, #ffffffb8 46%), var(--bg-2)}.analytics-kpis span{color:var(--ink-faint);letter-spacing:.14em;text-transform:uppercase;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:600;display:block}.analytics-main{max-width:1480px}.analytics-compact-main{max-width:1360px}.analytics-compact{gap:20px;display:grid}.analytics-compact-topbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-end;gap:28px;padding-bottom:24px;display:flex}.analytics-compact-eyebrow{color:var(--ink-faint);letter-spacing:.16em;text-transform:uppercase;margin:0 0 6px;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:700}.analytics-compact-topbar h1{color:var(--ink);letter-spacing:0;margin:0;font-family:Fraunces,Georgia,serif;font-size:2.25rem;font-weight:500;line-height:1}.analytics-compact-topbar h1 em,.analytics-compact-verdict-copy h2 em,.analytics-compact-card-head h3 em{color:var(--accent);font-style:italic}.analytics-compact-controls{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.analytics-compact-select{border:1px solid var(--line-strong);min-width:220px;min-height:38px;color:var(--ink);background:#fff;border-radius:4px;padding:8px 12px;font-size:12px;font-weight:700}.analytics-compact-btn{border:1px solid var(--line-strong);min-height:38px;color:var(--ink-dim);letter-spacing:.12em;text-transform:uppercase;background:0 0;border-radius:4px;padding:0 16px;font-size:11px;font-weight:800}.analytics-compact-verdict{border:1px solid var(--line-strong);box-shadow:var(--shadow);background:#fff;border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:30px;padding:26px 30px;display:grid}.analytics-compact-badge{border:1px solid var(--accent);background:#eef7f0;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:112px;height:112px;display:flex;position:relative}.analytics-compact-badge:before{content:"";border:1px dashed #0e633880;border-radius:50%;position:absolute;inset:-5px}.analytics-compact-badge span{color:var(--accent);font-family:Fraunces,Georgia,serif;font-size:2.9rem;font-style:italic;line-height:.9}.analytics-compact-badge em{max-width:80px;color:var(--accent);letter-spacing:.16em;text-align:center;text-transform:uppercase;margin-top:4px;font-family:JetBrains Mono,monospace;font-size:8px;font-style:normal;font-weight:800;line-height:1.25}.analytics-compact-verdict-copy p,.analytics-compact-verdict-stats span,.analytics-compact-card-head p,.analytics-coverage-grid span{color:var(--ink-faint);letter-spacing:.16em;text-transform:uppercase;margin:0;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:800}.analytics-compact-verdict-copy p{color:var(--accent)}.analytics-compact-verdict-copy h2{color:var(--ink);letter-spacing:0;margin:6px 0;font-family:Fraunces,Georgia,serif;font-size:1.8rem;font-weight:500;line-height:1.08}.analytics-compact-verdict-copy span{max-width:620px;color:var(--ink-dim);font-size:13px;line-height:1.5;display:block}.analytics-compact-verdict-stats{white-space:nowrap;gap:26px;display:flex}.analytics-compact-verdict-stats strong{color:var(--ink);margin-top:5px;font-family:JetBrains Mono,monospace;font-size:1.45rem;line-height:1;display:block}.analytics-compact-verdict-stats em{color:var(--accent);margin-top:5px;font-family:JetBrains Mono,monospace;font-size:10px;font-style:normal;display:block}.analytics-compact-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:20px;display:grid}.analytics-compact-card{border:1px solid var(--line-strong);min-width:0;box-shadow:var(--shadow);background:#fff;border-radius:8px;padding:22px 24px}.analytics-compact-card.span-4{grid-column:span 4}.analytics-compact-card.span-5{grid-column:span 5}.analytics-compact-card.span-6{grid-column:span 6}.analytics-compact-card.span-7{grid-column:span 7}.analytics-compact-card.span-8{grid-column:span 8}.analytics-compact-card.span-12{grid-column:1/-1}.analytics-compact-card-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.analytics-compact-card-head h3{color:var(--ink);letter-spacing:0;margin:4px 0 0;font-family:Fraunces,Georgia,serif;font-size:1.25rem;font-weight:500}.analytics-compact-card-head>span{color:var(--ink-dim);text-align:right;font-family:JetBrains Mono,monospace;font-size:10px;line-height:1.5}.analytics-compact-chart .analytics-chart{height:240px}.analytics-model-mix-list{gap:0;display:grid}.analytics-model-row{border-bottom:1px solid var(--line);grid-template-columns:12px 1fr auto auto;align-items:center;gap:12px;padding:11px 0;display:grid}.analytics-model-row:last-child{border-bottom:0}.analytics-model-swatch{border-radius:2px;width:10px;height:10px}.analytics-model-name{color:var(--ink);font-family:Fraunces,Georgia,serif;font-size:1rem;font-style:italic;line-height:1.1}.analytics-model-name small{color:var(--ink-faint);margin-top:2px;font-family:Inter,system-ui,sans-serif;font-size:10px;font-style:normal;display:block}.analytics-model-count{color:var(--ink);font-family:JetBrains Mono,monospace;font-size:14px;font-weight:800}.analytics-model-best{color:var(--ink-dim);text-align:right;font-family:JetBrains Mono,monospace;font-size:10px}.analytics-coverage-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.analytics-coverage-grid div{border-left:3px solid var(--accent);background:#eef7f0;border-radius:6px;padding:14px 15px}.analytics-coverage-grid strong{color:var(--ink);margin-top:7px;font-family:Fraunces,Georgia,serif;font-size:1.65rem;font-weight:500;line-height:1;display:block}.analytics-coverage-grid em{color:var(--ink-dim);margin-top:7px;font-size:11px;font-style:normal;line-height:1.35;display:block}.analytics-error-map{gap:14px;display:grid}.analytics-error-map-frame{border:1px solid var(--line);background:radial-gradient(circle at 80% 24%,#c77a1814,#0000 26%),radial-gradient(circle at 18% 76%,#c77a1812,#0000 24%),#f8fbf7;border-radius:8px;overflow:hidden}.analytics-error-map-frame svg{width:100%;min-height:300px;display:block}.analytics-error-map-sensor{fill:#ffffffb8;stroke:#10231a52;stroke-width:1.2px}#error-map-grid path{fill:none;stroke:#10231a13;stroke-width:1px}.analytics-error-map-grid-fill{opacity:.9}.analytics-error-map-third{stroke:#2d6f8f38;stroke-dasharray:5 7;stroke-width:1px}.analytics-error-map-crosshair{stroke:#0e63388c;stroke-linecap:round;stroke-width:1.4px}.analytics-error-map-hotspot{fill:none;stroke:#c77a1875;stroke-dasharray:7 6;stroke-width:1.4px}.analytics-error-dot{stroke:#ffffffd1;stroke-width:.8px}.analytics-error-dot.low{fill:#0e6338;opacity:.72}.analytics-error-dot.medium{fill:#c77a18;opacity:.78}.analytics-error-dot.high{fill:#b83b37;opacity:.86}.analytics-error-map-label{fill:#10231a8f;letter-spacing:0;font-family:JetBrains Mono,monospace;font-size:10px}.analytics-error-map-foot{grid-template-columns:1fr 1fr auto;align-items:center;gap:12px;display:grid}.analytics-error-map-foot>div:not(.analytics-error-map-legend){border:1px solid var(--line);background:#fff;border-radius:6px;padding:12px 14px}.analytics-error-map-foot strong{color:var(--ink);font-family:Fraunces,Georgia,serif;font-size:1.25rem;font-weight:500;line-height:1;display:block}.analytics-error-map-foot span{color:var(--ink-dim);font-family:JetBrains Mono,monospace;font-size:10px}.analytics-error-map-legend{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.analytics-error-map-legend span{align-items:center;gap:5px;display:inline-flex}.analytics-error-map-legend i{border-radius:999px;width:8px;height:8px}.analytics-error-map-legend i.low{background:#0e6338}.analytics-error-map-legend i.medium{background:#c77a18}.analytics-error-map-legend i.high{background:#b83b37}.analytics-html-main{max-width:1420px}.analytics-html{--cal-bg:#fafaf7;--cal-surface:#fff;--cal-ink:#1a1a1a;--cal-ink-soft:#2c2c2a;--cal-muted:#6b6b66;--cal-muted-soft:#9a9892;--cal-line:#c9c7bd;--cal-line-soft:#d4d2c8;--cal-line-faint:#e8e6dc;--cal-shadow-ink:#1a1a1a1f;--cal-green:#1f5d3a;--cal-green-mid:#4a8a64;--cal-pinhole-wide:#5b5aa6;--cal-green-light:#93c4a5;--cal-green-dark:#174629;--cal-green-soft:#e8f0e9;--cal-green-tint:#f3f7f4;--cal-amber:#b8742a;--cal-amber-soft:#f5ead6;--cal-red:#a83232;--cal-red-soft:#f3dada;--cal-font-sans:"Inter", system-ui, -apple-system, sans-serif;--cal-font-serif:"Cormorant Garamond", "Fraunces", Georgia, serif;--cal-font-mono:"JetBrains Mono", "SF Mono", Consolas, monospace;max-width:1320px;color:var(--cal-ink);font-family:var(--cal-font-sans);margin:0 auto}.analytics-html .topbar{z-index:auto;border:0;border-bottom:.5px solid var(--cal-line-faint);-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;justify-content:space-between;align-items:flex-end;margin-bottom:28px;padding:0 0 24px;display:flex;position:static}.analytics-html .topbar .title-block .eyebrow{color:var(--cal-muted);letter-spacing:.18em;text-transform:uppercase;margin:0 0 6px;font-size:11px}.analytics-html .topbar h1{color:var(--cal-ink);font-family:var(--cal-font-serif);letter-spacing:0;margin:0;font-size:30px;font-weight:400;line-height:1}.analytics-html .topbar h1 em,.analytics-html .verdict-content h2 em,.analytics-html .card-head h3 em{color:var(--cal-green);font-style:italic}.analytics-html .analytics-control-row{border-bottom:.5px solid var(--cal-line-faint);justify-content:flex-end;align-items:flex-end;gap:18px;margin-bottom:28px;padding:0 0 22px;display:flex}.analytics-html .analytics-scope-summary{gap:5px;min-width:0;display:grid}.analytics-html .analytics-scope-summary span{color:var(--cal-green);font-family:var(--cal-font-mono);letter-spacing:.18em;text-transform:uppercase;font-size:10px;font-weight:600}.analytics-html .analytics-scope-summary strong{color:var(--cal-ink);font-family:var(--cal-font-serif);text-overflow:ellipsis;white-space:nowrap;font-size:23px;font-style:italic;font-weight:400;line-height:1;overflow:hidden}.analytics-html .controls{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.analytics-html .camera-select{border:1px solid var(--cal-line);background:var(--cal-surface);min-width:200px;min-height:35px;color:var(--cal-ink);font-family:var(--cal-font-sans);cursor:pointer;border-radius:2px;padding:9px 14px;font-size:12px}.analytics-html .btn-ghost{border:1px solid var(--cal-line);min-height:35px;color:var(--cal-ink-soft);font-family:var(--cal-font-sans);letter-spacing:.16em;text-transform:uppercase;cursor:pointer;background:#ffffffb3;border-radius:2px;justify-content:center;align-items:center;padding:9px 18px;font-size:11px;font-weight:500;line-height:1;text-decoration:none;display:inline-flex}.analytics-html .btn-ghost:hover{border-color:var(--cal-ink-soft);color:var(--cal-ink-soft)}.analytics-html .date-range-menu,.analytics-html .export-menu{display:inline-flex;position:relative}.analytics-html .date-range-options,.analytics-html .export-options{z-index:30;border:1px solid var(--cal-line);background:var(--cal-surface);border-radius:4px;min-width:170px;padding:6px;display:grid;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 14px 30px #1a1a1a24}.analytics-html .date-range-options button,.analytics-html .export-options button{min-height:32px;color:var(--cal-ink-soft);font-family:var(--cal-font-mono);letter-spacing:.12em;text-align:left;text-transform:uppercase;cursor:pointer;background:0 0;border:0;border-radius:2px;padding:0 10px;font-size:10px;font-weight:600}.analytics-html .date-range-options button:hover,.analytics-html .date-range-options button.active,.analytics-html .export-options button:hover,.analytics-html .export-options button.active{background:var(--cal-green-tint);color:var(--cal-green)}.analytics-html .verdict{border:1px solid var(--cal-line);background:var(--cal-surface);border-radius:4px;grid-template-columns:minmax(190px,.42fr) minmax(0,1fr) auto;align-items:center;gap:28px;margin-bottom:20px;padding:28px 32px;display:grid;box-shadow:inset 0 1px #ffffffe6,0 20px 38px #1a1a1a17,0 2px 8px #1a1a1a12}.analytics-html .verdict-camera{border-right:1px solid var(--cal-line-faint);min-width:0;padding-right:24px}.analytics-html .verdict-camera span{color:var(--cal-green);font-family:var(--cal-font-mono);letter-spacing:.18em;text-transform:uppercase;margin-bottom:7px;font-size:10px;font-weight:600;display:block}.analytics-html .verdict-camera strong{color:var(--cal-ink);font-family:var(--cal-font-serif);text-overflow:ellipsis;white-space:nowrap;font-size:34px;font-style:italic;font-weight:400;line-height:.95;display:block;overflow:hidden}.analytics-html .verdict-camera em{background:var(--cal-green-tint);color:var(--cal-green);font-family:var(--cal-font-mono);letter-spacing:.12em;text-transform:uppercase;border:1px solid #1f5d3a47;border-radius:999px;margin-top:12px;padding:4px 9px;font-size:9px;font-style:normal;font-weight:600;display:inline-flex}.analytics-html .verdict-content .verdict-eyebrow{color:var(--cal-green);letter-spacing:.18em;text-transform:uppercase;margin:0 0 6px;font-size:11px;font-weight:500}.analytics-html .verdict-content h2{color:var(--cal-ink);font-family:var(--cal-font-serif);margin:0 0 6px;font-size:24px;font-weight:400;line-height:1.1}.analytics-html .verdict-content .verdict-desc{color:var(--cal-muted);margin:0;font-size:13px;line-height:1.5}.analytics-html .verdict-stats{flex-shrink:0;gap:32px;display:flex}.analytics-html .verdict-stat .key{color:var(--cal-muted-soft);letter-spacing:.18em;text-transform:uppercase;margin:0 0 4px;font-size:9px;font-weight:500}.analytics-html .verdict-stat .val{color:var(--cal-ink);font-family:var(--cal-font-mono);font-feature-settings:"tnum";letter-spacing:-.02em;margin:0;font-size:22px;font-weight:500}.analytics-html .verdict-stat .val.text{max-width:180px;font-family:var(--cal-font-serif);letter-spacing:0;text-overflow:ellipsis;white-space:nowrap;font-size:20px;font-style:italic;line-height:1.05;overflow:hidden}.analytics-html .verdict-stat .val .unit{color:var(--cal-muted);font-family:var(--cal-font-serif);margin-left:3px;font-size:14px;font-style:italic;font-weight:400}.analytics-html .verdict-stat .delta{color:var(--cal-green);font-family:var(--cal-font-mono);margin:4px 0 0;font-size:10px}.analytics-html .verdict-stat .delta.bad,.analytics-html .meta-bad{color:var(--cal-amber)}.analytics-html .grid{grid-template-columns:repeat(12,1fr);gap:20px;display:grid}.analytics-html .analytics-row-header{border:1px solid var(--cal-line);border-left:3px solid var(--cal-green);background:#ffffffc7;border-radius:4px;grid-template-columns:auto auto 1fr;align-items:center;gap:12px;margin:30px 0 14px;padding:14px 16px;display:grid;box-shadow:inset 0 1px #ffffffe6,0 8px 18px #1a1a1a0b}.analytics-html .verdict+.analytics-row-header{margin-top:6px}.analytics-html .analytics-row-header:after{content:"";background:linear-gradient(90deg, var(--cal-line), var(--cal-line-faint));height:1px}.analytics-html .analytics-row-header span{background:var(--cal-green);color:#fff;min-height:22px;font-family:var(--cal-font-mono);letter-spacing:.16em;border-radius:999px;align-items:center;padding:0 8px;font-size:10px;font-weight:500;display:inline-flex}.analytics-html .analytics-row-header h2{color:var(--cal-ink);font-family:var(--cal-font-serif);margin:0;font-size:22px;font-weight:500;line-height:1}.analytics-html .analytics-row-header em{color:var(--cal-ink-soft);font-family:var(--cal-font-serif);letter-spacing:0;justify-self:start;font-size:16px;font-style:italic;font-weight:400;line-height:1.35}.analytics-html .card{border:1px solid var(--cal-line);background:var(--cal-surface);border-top-color:#b9b6aa;border-radius:4px;min-width:0;padding:22px 24px;position:relative;box-shadow:inset 0 1px #ffffffe6,0 16px 30px #1a1a1a16,0 2px 7px #1a1a1a11}.analytics-html .card:after{content:"";pointer-events:none;border-radius:inherit;position:absolute;inset:0;box-shadow:inset 0 0 0 1px #1f5d3a0e,inset 0 -1px #1a1a1a09}.analytics-html .error-inspection-grid .card{min-height:430px}.analytics-html .error-inspection-grid .projection-run-list,.analytics-html .error-inspection-grid .image-list{max-height:358px}.analytics-html .error-inspection-grid .heatmap-wrap svg{height:330px}.analytics-html .quality-side-card{gap:18px;display:grid}.analytics-html .quality-side-card .stacked-panel+.stacked-panel{border-top:1px solid var(--cal-ink);padding-top:18px}.analytics-html .quality-side-card .card-head{margin-bottom:14px}.analytics-html .projection-selector-card .card-head,.analytics-html .image-contribution-card .card-head{border-bottom:1px solid var(--cal-ink);margin-bottom:16px;padding-bottom:14px}.analytics-html .span-3{grid-column:span 3}.analytics-html .span-4{grid-column:span 4}.analytics-html .span-5{grid-column:span 5}.analytics-html .span-6{grid-column:span 6}.analytics-html .span-7{grid-column:span 7}.analytics-html .span-8{grid-column:span 8}.analytics-html .span-12{grid-column:span 12}.analytics-html .card-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.analytics-html .card-head .eyebrow{color:var(--cal-green);letter-spacing:.18em;text-transform:uppercase;margin:0 0 4px;font-size:10px;font-weight:500}.analytics-html .card-head h3{color:var(--cal-ink);font-family:var(--cal-font-serif);margin:0;font-size:18px;font-weight:400;line-height:1.1}.analytics-html .card-head .meta{color:var(--cal-ink-soft);font-family:var(--cal-font-mono);letter-spacing:.05em;text-align:right;font-size:10px;line-height:1.45}.analytics-html .meta-good{color:var(--cal-green);font-weight:500}.analytics-html .intrinsics{grid-template-columns:1fr 1fr;gap:0;display:grid}.analytics-html .intrinsics .row{border-bottom:.5px solid var(--cal-line-faint);justify-content:space-between;align-items:baseline;gap:12px;padding:9px 0;display:flex}.analytics-html .intrinsics .row:nth-last-child(-n+2){border-bottom:none}.analytics-html .intrinsics .row.right{border-left:.5px solid var(--cal-line-faint);padding-left:18px}.analytics-html .intrinsics .row .key{color:var(--cal-muted);font-family:var(--cal-font-mono);letter-spacing:.04em;font-size:11px}.analytics-html .intrinsics .row .val{color:var(--cal-ink);font-family:var(--cal-font-mono);font-feature-settings:"tnum";font-size:12px;font-weight:500}.analytics-html .heatmap-wrap{border:1px solid var(--cal-line);background:var(--cal-green-tint);border-radius:3px;padding:10px;position:relative;box-shadow:inset 0 1px #ffffffb8}.analytics-html .heatmap-wrap svg rect[stroke="var(--cal-green)"]{stroke-width:.9px;opacity:.68}.analytics-html .heatmap-wrap svg line[stroke="var(--cal-green)"]{stroke-width:.55px;opacity:.34}.analytics-html .trend-wrap svg,.analytics-html .scatter-wrap svg{width:100%;height:auto;display:block}.analytics-html .heatmap-wrap svg{width:100%;height:275px;display:block}.analytics-html .heatmap-legend{color:var(--cal-muted);letter-spacing:.14em;text-transform:uppercase;justify-content:space-between;align-items:center;margin-top:9px;font-size:9px;display:flex}.analytics-html .heatmap-legend .scale{background:linear-gradient(90deg, var(--cal-green), var(--cal-green-light), var(--cal-amber), var(--cal-red));border-radius:3px;flex:1;height:6px;margin:0 12px}.analytics-html .heatmap-sparse-label{fill:var(--cal-amber);font-family:var(--cal-font-mono);letter-spacing:.1em;font-size:8px}.analytics-html .projection-run-list{flex-direction:column;gap:8px;max-height:332px;padding:4px 4px 4px 32px;display:flex;overflow-y:auto}.analytics-html .projection-run-list::-webkit-scrollbar{width:6px}.analytics-html .projection-run-list::-webkit-scrollbar-track{background:var(--cal-line-faint)}.analytics-html .projection-run-list::-webkit-scrollbar-thumb{background:var(--cal-line);border-radius:3px}.analytics-html .projection-run-option{border:1px solid var(--cal-ink);background:var(--cal-surface);width:100%;color:var(--cal-ink);font:inherit;text-align:left;cursor:pointer;border-radius:3px;grid-template-columns:1fr auto;gap:8px 12px;padding:11px 12px;transition:border-color .15s,background .15s,transform .15s;display:grid;position:relative;box-shadow:0 5px 12px #1a1a1a09}.analytics-html .projection-run-option:hover{border-color:var(--cal-ink);background:var(--cal-green-tint);transform:translateY(-1px)}.analytics-html .projection-run-option.active{border-color:var(--cal-ink);background:var(--cal-green-tint);box-shadow:inset 4px 0 0 var(--cal-green), 0 9px 18px #1f5d3a29}.analytics-html .projection-run-main{min-width:0}.analytics-html .projection-run-main strong{color:var(--cal-ink);font-family:var(--cal-font-serif);text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-style:italic;font-weight:400;line-height:1.1;display:block;overflow:hidden}.analytics-html .projection-run-main em,.analytics-html .projection-run-stats em{color:var(--cal-muted);letter-spacing:.04em;margin-top:3px;font-size:10px;font-style:normal;display:block}.analytics-html .projection-run-model{border:.5px solid var(--cal-line);color:var(--cal-muted);letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;border-radius:999px;place-self:start end;padding:2px 7px;font-size:8px;font-weight:500}.analytics-html .projection-run-model.pinhole{border-color:var(--cal-green);color:var(--cal-green);background:#1f5d3a0f}.analytics-html .projection-run-model.pinhole-wide{border-color:var(--cal-pinhole-wide);color:var(--cal-pinhole-wide);background:#5b5aa61a}.analytics-html .projection-run-model.fisheye{border-color:var(--cal-amber);color:var(--cal-amber);background:#b8742a17}.analytics-html .projection-run-stats{border-top:.5px solid var(--cal-line-faint);grid-column:1/-1;justify-content:space-between;align-items:baseline;gap:12px;padding-top:2px;display:flex}.analytics-html .projection-run-stats strong{color:var(--cal-green);font-family:var(--cal-font-mono);font-size:12px;font-weight:500}.analytics-html .projection-run-best{border:1px solid var(--cal-ink);background:var(--cal-green);color:#fff;min-width:42px;min-height:16px;font-family:var(--cal-font-mono);letter-spacing:.12em;text-transform:uppercase;box-shadow:none;transform-origin:50%;border-radius:3px 3px 0 0;justify-content:center;align-items:center;padding:0 7px;font-size:8px;font-style:normal;font-weight:600;display:inline-flex;position:absolute;top:50%;left:-33px;transform:translateY(-50%)rotate(-90deg)}.analytics-html .image-list{flex-direction:column;gap:8px;max-height:420px;padding-right:4px;display:flex;overflow-y:auto}.analytics-html .image-list::-webkit-scrollbar{width:6px}.analytics-html .image-list::-webkit-scrollbar-track{background:var(--cal-line-faint)}.analytics-html .image-list::-webkit-scrollbar-thumb{background:var(--cal-line);border-radius:3px}.analytics-html .img-row{border-bottom:1px solid var(--cal-line-faint);cursor:pointer;grid-template-columns:50px 1fr auto;align-items:center;gap:12px;padding:6px 0;transition:background .15s;display:grid}.analytics-html .img-row:hover{background:var(--cal-green-tint)}.analytics-html .img-row:last-child{border-bottom:none}.analytics-html .img-id{color:var(--cal-muted);font-family:var(--cal-font-mono);letter-spacing:.04em;font-size:10px}.analytics-html .img-bar-track{background:var(--cal-line-faint);border-radius:3px;height:6px;position:relative;overflow:hidden}.analytics-html .img-bar-fill{border-radius:3px;position:absolute;inset:0 auto 0 0}.analytics-html .img-bar-fill.good{background:var(--cal-green)}.analytics-html .img-bar-fill.medium{background:var(--cal-green-mid)}.analytics-html .img-bar-fill.high{background:var(--cal-amber)}.analytics-html .img-bar-fill.outlier{background:var(--cal-red)}.analytics-html .img-val{color:var(--cal-ink);font-family:var(--cal-font-mono);font-feature-settings:"tnum";font-size:11px}.analytics-html .img-val.outlier{color:var(--cal-red);font-weight:500}.analytics-html .coverage-wrap{grid-template-columns:1fr 1fr;gap:16px;display:grid}.analytics-html .coverage-stat{border:1px solid #1f5d3a38;border-left:3px solid var(--cal-green);background:var(--cal-green-tint);border-radius:3px;padding:14px 16px;box-shadow:0 6px 14px #1a1a1a09}.analytics-html .coverage-stat.warn{border-left-color:var(--cal-amber);background:var(--cal-amber-soft)}.analytics-html .coverage-stat .key{color:var(--cal-green);letter-spacing:.18em;text-transform:uppercase;margin:0 0 6px;font-size:9px;font-weight:500}.analytics-html .coverage-stat.warn .key{color:var(--cal-amber)}.analytics-html .coverage-stat .val{color:var(--cal-ink);font-family:var(--cal-font-serif);margin:0 0 4px;font-size:24px;line-height:1}.analytics-html .coverage-stat .val em{font-style:italic}.analytics-html .coverage-stat .desc{color:var(--cal-muted);margin:0;font-size:11px;line-height:1.4}.analytics-html .model-trend-grid{grid-template-columns:1fr;gap:8px;display:grid}.analytics-html .model-trend-panel{border:1px solid var(--cal-line);border-left:4px solid var(--cal-green);background:var(--cal-surface);border-radius:3px;grid-template-columns:minmax(150px,.28fr) minmax(0,1fr);align-items:stretch;gap:18px;min-width:0;padding:12px 18px 10px;display:grid;position:relative;box-shadow:inset 0 1px #ffffffb8}.analytics-html .model-trend-panel.pinhole-wide{background:var(--cal-surface);border-left-color:var(--cal-pinhole-wide)}.analytics-html .model-trend-panel.fisheye{background:var(--cal-surface);border-left-color:var(--cal-amber)}.analytics-html .model-trend-head{border-right:1px solid var(--cal-line-faint);align-content:space-between;gap:16px;margin-bottom:0;padding:4px 16px 4px 0;display:grid}.analytics-html .model-trend-title p{border:1px solid var(--cal-green);background:var(--cal-green);color:#fff;min-height:22px;font-family:var(--cal-font-mono);letter-spacing:.18em;border-radius:999px;align-items:center;margin:0 0 5px;padding:0 9px;font-size:10px;font-weight:700;display:inline-flex}.analytics-html .model-trend-panel.pinhole-wide .model-trend-title p{border-color:var(--cal-pinhole-wide);background:var(--cal-pinhole-wide)}.analytics-html .model-trend-panel.fisheye .model-trend-title p{border-color:var(--cal-amber);background:var(--cal-amber)}.analytics-html .model-trend-title h4{color:var(--cal-ink);font-family:var(--cal-font-serif);margin:0;font-size:18px;font-weight:400;line-height:1}.analytics-html .model-trend-title h4 em{color:var(--cal-green);font-style:italic}.analytics-html .model-trend-meta{color:var(--cal-muted);font-family:var(--cal-font-mono);text-align:left;white-space:nowrap;font-size:10px;line-height:1.45}.analytics-html .model-trend-meta strong{color:var(--cal-green);margin-left:4px;font-weight:600;display:inline-block}.analytics-html .model-trend-panel .trend-wrap svg{height:170px}.analytics-html .trend-wrap svg{height:220px}.analytics-html .trend-axis{stroke:#8f8b80;stroke-width:.9px}.analytics-html .trend-grid{stroke:#d0cdc2;stroke-width:.8px}.analytics-html .trend-tick{fill:#55534d;font-family:var(--cal-font-mono);font-size:9px;font-weight:500}.analytics-html .trend-line{fill:none;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round}.analytics-html .trend-area{fill:var(--cal-green);opacity:.06}.analytics-html .trend-point{stroke-width:2.1px}.analytics-html .trend-threshold{stroke:var(--cal-amber);stroke-width:1.1px;stroke-dasharray:3 3}.analytics-html .trend-threshold-label{fill:var(--cal-amber);font-family:var(--cal-font-mono);font-size:9px;font-weight:500}.analytics-html .trend-empty-label{fill:var(--cal-muted);font-family:var(--cal-font-mono);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:500}.analytics-html .model-mix{flex-direction:column;gap:10px;display:flex}.analytics-html .model-row{border-bottom:1px solid var(--cal-line-faint);grid-template-columns:14px 1fr auto auto;align-items:center;gap:12px;padding:10px 0;display:grid}.analytics-html .model-row:last-child{border-bottom:none}.analytics-html .model-row .swatch{border-radius:2px;width:10px;height:10px}.analytics-html .model-row .name{color:var(--cal-ink);font-family:var(--cal-font-serif);font-size:14px;font-style:italic}.analytics-html .model-row .name .desc{color:var(--cal-muted);font-family:var(--cal-font-sans);letter-spacing:.04em;margin-top:1px;font-size:10px;font-style:normal;display:block}.analytics-html .model-row .count{color:var(--cal-ink);font-family:var(--cal-font-mono);font-feature-settings:"tnum";font-size:14px;font-weight:500}.analytics-html .model-row .best{color:var(--cal-muted);font-family:var(--cal-font-mono);text-align:right;font-size:10px}.analytics-html .scatter-wrap svg{height:220px}.analytics-html .scatter-point.pinhole{fill:var(--cal-green)}.analytics-html .scatter-point.pinhole-wide{fill:var(--cal-pinhole-wide)}.analytics-html .scatter-point.fisheye{fill:var(--cal-amber)}.analytics-html .scatter-point{opacity:.96;stroke:var(--cal-surface);stroke-width:1.8px}.analytics-html .scatter-zone{fill:var(--cal-green);opacity:.08}.analytics-html .scatter-label{fill:var(--cal-green-dark);font-family:var(--cal-font-mono);letter-spacing:.08em;text-transform:uppercase;font-size:8px;font-weight:600}.analytics-html .run-table{border-collapse:collapse;width:100%}.analytics-html .run-table thead th{border-bottom:1px solid var(--cal-line);color:var(--cal-muted);letter-spacing:.18em;text-align:left;text-transform:uppercase;padding:0 12px 8px 0;font-size:9px;font-weight:500}.analytics-html .run-table thead th:last-child{text-align:right;padding-right:0}.analytics-html .run-table tbody td{border-bottom:1px solid var(--cal-line-faint);vertical-align:middle;padding:11px 12px 11px 0;font-size:12px}.analytics-html .run-table tbody td:last-child{text-align:right;padding-right:0}.analytics-html .run-table tbody tr:last-child td{border-bottom:none}.analytics-html .run-table .name{color:var(--cal-ink);font-family:var(--cal-font-serif);font-size:14px;font-style:italic}.analytics-html .run-table .sub{color:var(--cal-muted);letter-spacing:.04em;margin-top:2px;font-size:10px}.analytics-html .run-table .pill{border:.5px solid var(--cal-line);color:var(--cal-muted);letter-spacing:.14em;text-transform:uppercase;border-radius:10px;padding:2px 8px;font-size:9px;font-weight:500;display:inline-block}.analytics-html .run-table .pill.pinhole{border-color:var(--cal-green);background:var(--cal-green-tint);color:var(--cal-green)}.analytics-html .run-table .pill.pinhole-wide{border-color:var(--cal-pinhole-wide);color:var(--cal-pinhole-wide);background:#5b5aa61a}.analytics-html .run-table .pill.fisheye{border-color:var(--cal-amber);background:var(--cal-amber-soft);color:var(--cal-amber)}.analytics-html .run-table .pill.pattern{border-color:var(--cal-ink);color:var(--cal-ink);background:#fff}.analytics-html .run-table .rms{color:var(--cal-ink);font-family:var(--cal-font-mono);font-feature-settings:"tnum";font-size:12px}.analytics-html .run-table .rms.best{color:var(--cal-green);font-weight:500}.analytics-html .run-table .rms.muted{color:var(--cal-muted)}.analytics-html .run-table .badge-best{color:var(--cal-green);font-family:var(--cal-font-serif);margin-left:6px;font-size:11px;font-style:italic;display:inline-block}.analytics-html .run-table .mini-bar{background:var(--cal-line-faint);vertical-align:middle;border-radius:2px;width:80px;height:4px;margin-right:8px;display:inline-block;position:relative;overflow:hidden}.analytics-html .run-table .mini-bar-fill{background:var(--cal-green);border-radius:2px;position:absolute;inset:0 auto 0 0}.analytics-html.analytics-page{--cal-ink-soft:#191815;--cal-muted:#3f3c36;--cal-muted-soft:#5f5b53;--cal-line:#9d968a;--cal-line-soft:#b9b3a7;--cal-line-faint:#d8d3c7;--cal-green:#164f31;--cal-green-mid:#35744e;--cal-green-dark:#0e3520;--cal-green-light:#7fb895;--cal-green-soft:#dfeee3;--cal-green-tint:#edf7ef;--analytics-panel-tint:#f4faf5;--analytics-panel-tint-strong:#e5f2e8;--analytics-border-strong:#7d766b;--analytics-green-shadow:#164f312e}.analytics-html.analytics-page .analytics-control-row{border-bottom-color:var(--cal-line)}.analytics-html.analytics-page .camera-select,.analytics-html.analytics-page .btn-ghost{border-color:var(--cal-line);background:var(--cal-surface);color:var(--cal-ink);box-shadow:0 6px 14px #1a1a1a0b}.analytics-html.analytics-page .camera-select:focus,.analytics-html.analytics-page .btn-ghost:hover{border-color:var(--cal-green);box-shadow:0 0 0 3px #164f3114}.analytics-html.analytics-page .export-button{border-color:var(--cal-green);background:var(--cal-green);color:#fff}.analytics-html.analytics-page .export-button:hover{border-color:var(--cal-green-dark);background:var(--cal-green-dark);color:#fff}.analytics-html.analytics-page .verdict{border-color:var(--analytics-border-strong);border-left:5px solid var(--cal-green);background:linear-gradient(90deg, #164f3129, #edf7efeb 36%, #fffffffa), var(--cal-surface);box-shadow:0 1px 0 #fffffff2 inset, 0 22px 42px #14141221, 0 8px 22px var(--analytics-green-shadow)}.analytics-html.analytics-page .verdict-camera{border-right-color:#164f3138}.analytics-html.analytics-page .verdict-camera span,.analytics-html.analytics-page .verdict-content .verdict-eyebrow,.analytics-html.analytics-page .card-head .eyebrow{color:var(--cal-green-dark);font-weight:800}.analytics-html.analytics-page .verdict-camera em{border-color:var(--cal-green);background:var(--cal-green);color:#fff}.analytics-html.analytics-page .verdict-stat .val,.analytics-html.analytics-page .run-table .rms.best{font-weight:700}.analytics-html.analytics-page .analytics-row-header{border-color:var(--analytics-border-strong);background:linear-gradient(90deg, #164f311f, #ffffffeb 34%), var(--cal-surface);border-left-width:5px;box-shadow:inset 0 1px #fffffff2,0 12px 24px #14141217}.analytics-html.analytics-page .analytics-row-header:after{background:linear-gradient(90deg, var(--analytics-border-strong), var(--cal-line-faint))}.analytics-html.analytics-page .analytics-row-header span{background:var(--cal-green-dark);box-shadow:0 0 0 3px #164f311a}.analytics-html.analytics-page .analytics-row-header em{color:var(--cal-muted)}.analytics-html.analytics-page .card{border-color:var(--analytics-border-strong);border-top-width:3px;border-top-color:var(--cal-green);background:linear-gradient(180deg, #164f310e, #fffffffa 42%), var(--cal-surface);box-shadow:inset 0 1px #fffffff2,0 18px 34px #14141221,0 4px 14px #164f3114}.analytics-html.analytics-page .card:after{box-shadow:inset 0 0 0 1px #164f3114,inset 0 -1px #1a1a1a0a}.analytics-html.analytics-page .card-head{border-bottom:1px solid #164f312e;padding-bottom:14px}.analytics-html.analytics-page .projection-selector-card .card-head,.analytics-html.analytics-page .image-contribution-card .card-head,.analytics-html.analytics-page .quality-side-card .stacked-panel+.stacked-panel{border-color:var(--cal-green-dark)}.analytics-html.analytics-page .card-head h3{color:#111}.analytics-html.analytics-page .card-head .meta{color:var(--cal-muted);font-weight:700}.analytics-html.analytics-page .heatmap-wrap{background:linear-gradient(180deg, var(--analytics-panel-tint-strong), var(--analytics-panel-tint)), var(--cal-green-tint);border-color:#164f317a;box-shadow:inset 0 1px #ffffffd1,0 8px 18px #164f3114}.analytics-html.analytics-page .heatmap-wrap svg rect[stroke="var(--cal-green)"]{stroke-width:1.15px;opacity:.92}.analytics-html.analytics-page .heatmap-wrap svg line[stroke="var(--cal-green)"]{stroke-width:.72px;opacity:.46}.analytics-html.analytics-page .projection-run-option{border-color:var(--cal-line);background:#ffffffeb}.analytics-html.analytics-page .projection-run-option:hover{border-color:var(--cal-green-dark);background:var(--analytics-panel-tint)}.analytics-html.analytics-page .projection-run-option.active{border-color:var(--cal-green-dark);background:linear-gradient(90deg, #164f3129, #fffffff5 46%), var(--cal-green-tint);box-shadow:inset 5px 0 0 var(--cal-green), 0 12px 24px #164f3133}.analytics-html.analytics-page .projection-run-best{background:var(--cal-green-dark)}.analytics-html.analytics-page .coverage-stat{background:linear-gradient(180deg, var(--analytics-panel-tint-strong), var(--analytics-panel-tint)), var(--cal-green-tint);border-color:#164f316b;border-left-width:5px}.analytics-html.analytics-page .model-trend-panel{border-color:var(--cal-line);background:linear-gradient(90deg, #164f3112, #fffffffa 42%), var(--cal-surface);border-left-width:5px;box-shadow:0 8px 18px #14141212}.analytics-html.analytics-page .model-trend-head{border-right-color:#164f312e}.analytics-html.analytics-page .trend-axis{stroke:#5f5a52;stroke-width:1px}.analytics-html.analytics-page .trend-grid{stroke:#b9b3a7;stroke-width:.9px}.analytics-html.analytics-page .trend-tick{fill:#2d2b27;font-weight:700}.analytics-html.analytics-page .trend-area,.analytics-html.analytics-page .scatter-zone{opacity:.12}.analytics-html.analytics-page .scatter-point{stroke-width:2.2px}.analytics-html.analytics-page .run-table thead th{border-bottom:2px solid var(--analytics-border-strong);color:var(--cal-ink-soft);font-weight:800}.analytics-html.analytics-page .run-table tbody tr:hover td{background:#164f310e}.analytics-html.analytics-page .run-table tbody tr.is-best td{background:#164f3118;border-bottom-color:#164f312e}.analytics-html.analytics-page .run-table tbody tr.is-best td:first-child{box-shadow:inset 4px 0 0 var(--cal-green);padding-left:10px}.analytics-html.analytics-page .run-table .badge-best{color:var(--cal-green-dark);font-weight:700}.analytics-html.analytics-page .run-table .mini-bar{background:#d5dfd7}.analytics-html .cameras-control-row,.analytics-html .projects-control-row{justify-content:flex-end}.cameras-page-header{background:linear-gradient(180deg, #1f5d3a0a, #fff0), var(--bg-2);border-bottom-color:#a9a398}.cameras-page-header .page-subtitle{color:#34332f}.analytics-html.cameras-page{--cal-ink-soft:#171717;--cal-muted:#45433d;--cal-muted-soft:#5b574f;--cal-line:#918b80;--cal-line-soft:#aaa398;--cal-line-faint:#d7d2c6;--cal-green:#164f31;--cal-green-dark:#0f3822;--cal-green-tint:#eef6f0;--cal-shadow-ink:#1414122e}.analytics-html.cameras-page .analytics-control-row{border-bottom-color:var(--cal-line)}.analytics-html.cameras-page .analytics-row-header{border-color:#817a70;border-left-color:var(--cal-green);background:#fff;box-shadow:inset 0 1px #fffffff2,0 10px 22px #14141214}.analytics-html.cameras-page .analytics-row-header:after{background:linear-gradient(90deg,#817a70,#d7d2c6)}.analytics-html .cameras-new-calibration-btn,.analytics-html .projects-new-calibration-btn{border-color:var(--cal-green);background:var(--cal-green);color:#fff;box-shadow:0 10px 22px #1f5d3a29}.analytics-html .cameras-new-calibration-btn:hover,.analytics-html .projects-new-calibration-btn:hover{border-color:var(--cal-green-dark);background:var(--cal-green-dark);color:#fff}.analytics-html .cameras-row-header{margin-top:30px}.analytics-html .cameras-verdict{padding-right:88px;position:relative}.analytics-html .cameras-verdict-menu{z-index:5;position:absolute;top:22px;right:24px}.analytics-html .cameras-runs-head-actions{justify-content:flex-end;align-items:center;gap:12px;display:flex}.analytics-html .cameras-card-menu{position:relative;top:auto;right:auto}.analytics-html .cameras-menu-trigger{border:1px solid var(--cal-line);background:var(--cal-surface);width:36px;height:36px;color:var(--cal-ink-soft);cursor:pointer;border-radius:3px;justify-content:center;align-items:center;display:inline-flex;box-shadow:0 8px 18px #1a1a1a0e}.analytics-html .cameras-menu-trigger:hover{border-color:var(--cal-ink);color:var(--cal-ink)}.analytics-html .cameras-menu-trigger svg{fill:currentColor;width:18px;height:18px}.analytics-html .cameras-menu-popover{border:1px solid var(--cal-line);background:var(--cal-surface);border-radius:4px;width:190px;padding:6px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 16px 32px #1a1a1a24}.analytics-html .cameras-menu-item{width:100%;min-height:36px;color:var(--cal-ink-soft);font-family:var(--cal-font-mono);letter-spacing:.1em;text-align:left;text-transform:uppercase;cursor:pointer;background:0 0;border:0;border-radius:3px;align-items:center;gap:9px;padding:0 10px;font-size:10px;font-weight:700;display:flex}.analytics-html .cameras-menu-item svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px}.analytics-html .cameras-menu-item:hover{background:var(--cal-green-tint);color:var(--cal-green)}.analytics-html .cameras-menu-item.danger:hover{background:var(--cal-red-soft);color:var(--cal-red)}.analytics-html .cameras-workspace-grid{grid-template-columns:minmax(300px,.38fr) minmax(0,1fr);align-items:start;gap:20px;display:grid}.analytics-html .cameras-list-card,.analytics-html .cameras-runs-card{min-height:520px}.analytics-html.cameras-page .cameras-list-card,.analytics-html.cameras-page .cameras-runs-card{border-color:#5f5a52 #817a70 #817a70;box-shadow:inset 0 1px #fffffff2,0 18px 34px #14141221,0 2px 8px #14141214}.analytics-html .cameras-list-card .card-head,.analytics-html .cameras-runs-card .card-head{border-bottom:1px solid var(--cal-ink);margin-bottom:16px;padding-bottom:14px}.analytics-html.cameras-page .cameras-list-card .card-head,.analytics-html.cameras-page .cameras-runs-card .card-head{border-bottom-width:2px}.analytics-html .cameras-health-summary{border:1px solid var(--cal-line);background:linear-gradient(90deg, var(--cal-green-tint), #ffffffe0 36%), var(--cal-surface);border-radius:4px;grid-template-columns:minmax(150px,.32fr) minmax(220px,1fr) auto;align-items:stretch;gap:18px;margin-bottom:18px;padding:16px 18px;display:grid;box-shadow:inset 0 1px #ffffffe6,0 8px 18px #1a1a1a0b}.analytics-html.cameras-page .cameras-health-summary{border-color:#817a70;border-left:4px solid var(--cal-green);background:linear-gradient(90deg, #164f3124, #fffffff0 42%), var(--cal-surface);box-shadow:inset 0 1px #fffffff2,0 12px 24px #164f311f}.analytics-html .cameras-health-camera{border-right:1px solid var(--cal-line-faint);min-width:0;padding-right:18px}.analytics-html .cameras-health-camera span,.analytics-html .cameras-health-copy span,.analytics-html .cameras-health-stats span{color:var(--cal-green);font-family:var(--cal-font-mono);letter-spacing:.18em;text-transform:uppercase;font-size:9px;font-weight:600;display:block}.analytics-html.cameras-page .cameras-health-camera span,.analytics-html.cameras-page .cameras-health-copy span,.analytics-html.cameras-page .cameras-health-stats span{color:var(--cal-green-dark)}.analytics-html .cameras-health-camera strong{color:var(--cal-ink);font-family:var(--cal-font-serif);text-overflow:ellipsis;white-space:nowrap;margin-top:7px;font-size:27px;font-style:italic;font-weight:400;line-height:.95;display:block;overflow:hidden}.analytics-html .cameras-health-camera em{background:var(--cal-surface);color:var(--cal-green);font-family:var(--cal-font-mono);letter-spacing:.12em;text-transform:uppercase;border:1px solid #1f5d3a47;border-radius:999px;margin-top:10px;padding:4px 8px;font-size:8px;font-style:normal;font-weight:600;display:inline-flex}.analytics-html.cameras-page .cameras-health-camera em{border-color:var(--cal-green);background:var(--cal-green);color:#fff}.analytics-html .cameras-health-copy h4{color:var(--cal-ink);font-family:var(--cal-font-serif);margin:5px 0;font-size:21px;font-weight:400;line-height:1.08}.analytics-html .cameras-health-copy h4 em{color:var(--cal-green);font-style:italic}.analytics-html .cameras-health-copy p{color:var(--cal-muted);margin:0;font-size:12px;line-height:1.45}.analytics-html.cameras-page .cameras-health-copy p{color:#34332f}.analytics-html .cameras-health-stats{grid-template-columns:repeat(3,minmax(74px,auto));align-content:center;gap:14px;display:grid}.analytics-html .cameras-health-stats div{border-left:1px solid var(--cal-line-faint);padding-left:14px}.analytics-html .cameras-health-stats strong{color:var(--cal-ink);font-family:var(--cal-font-mono);font-feature-settings:"tnum";white-space:nowrap;margin-top:6px;font-size:14px;font-weight:500;display:block}.analytics-html.cameras-page .cameras-health-stats strong{color:#111;font-weight:700}.analytics-html .cameras-list{flex-direction:column;gap:9px;max-height:610px;padding:3px 4px 3px 0;display:flex;overflow-y:auto}.analytics-html .cameras-list::-webkit-scrollbar{width:6px}.analytics-html .cameras-list::-webkit-scrollbar-track{background:var(--cal-line-faint)}.analytics-html .cameras-list::-webkit-scrollbar-thumb{background:var(--cal-line);border-radius:3px}.analytics-html .cameras-list-item{border:1px solid var(--cal-line);background:var(--cal-surface);width:100%;color:var(--cal-ink);font:inherit;text-align:left;cursor:pointer;border-radius:3px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px 13px;transition:border-color .15s,background .15s,box-shadow .15s,transform .15s;display:grid;box-shadow:0 5px 12px #1a1a1a09}.analytics-html.cameras-page .cameras-list-item{border-color:#8e887d;box-shadow:0 7px 15px #1414120e}.analytics-html .cameras-list-item:hover{border-color:var(--cal-ink);background:var(--cal-green-tint);transform:translateY(-1px)}.analytics-html .cameras-list-item.selected{border-color:var(--cal-ink);background:var(--cal-green-tint);box-shadow:inset 4px 0 0 var(--cal-green), 0 10px 20px #1f5d3a21}.analytics-html.cameras-page .cameras-list-item:hover{background:#f3faf5}.analytics-html.cameras-page .cameras-list-item.selected{box-shadow:inset 5px 0 0 var(--cal-green), 0 12px 24px #164f312e;background:#edf7ef;border-width:2px}.analytics-html .cameras-list-item-main{min-width:0}.analytics-html .cameras-list-item-main strong{color:var(--cal-ink);font-family:var(--cal-font-serif);text-overflow:ellipsis;white-space:nowrap;font-size:19px;font-style:italic;font-weight:400;line-height:1;display:block;overflow:hidden}.analytics-html .cameras-list-item-sub,.analytics-html .cameras-list-item-date{color:var(--cal-muted);font-family:var(--cal-font-mono);letter-spacing:.04em;margin-top:5px;font-size:10px;display:block}.analytics-html.cameras-page .cameras-list-item-sub,.analytics-html.cameras-page .cameras-list-item-date{color:#3f3c36;font-weight:600}.analytics-html .cameras-list-item-tags{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.analytics-html .cameras-list-item-side{justify-items:end;gap:12px;min-width:72px;display:grid}.analytics-html .cameras-list-item-arrow{border:1px solid var(--cal-line);width:28px;height:28px;color:var(--cal-green);font-family:var(--cal-font-mono);border-radius:50%;justify-content:center;align-items:center;font-size:13px;display:inline-flex}.analytics-html.cameras-page .cameras-list-item-arrow{border-color:var(--cal-green);color:var(--cal-green-dark)}.analytics-html .cameras-list-item.selected .cameras-list-item-arrow{border-color:var(--cal-green);background:var(--cal-green);color:#fff}.analytics-html .pill{border:.5px solid var(--cal-line);color:var(--cal-muted);letter-spacing:.14em;text-transform:uppercase;border-radius:10px;padding:2px 8px;font-size:9px;font-weight:500;line-height:1.35;display:inline-block}.analytics-html.cameras-page .pill,.analytics-html.cameras-page .run-table .pill{border-width:1px;font-weight:700}.analytics-html .pill.pinhole,.analytics-html .run-table .pill.pinhole{border-color:var(--cal-green);background:var(--cal-green-tint);color:var(--cal-green)}.analytics-html .pill.pinhole-wide,.analytics-html .run-table .pill.pinhole-wide{border-color:var(--cal-pinhole-wide);color:var(--cal-pinhole-wide);background:#5b5aa61a}.analytics-html .pill.fisheye,.analytics-html .run-table .pill.fisheye{border-color:var(--cal-amber);background:var(--cal-amber-soft);color:var(--cal-amber)}.analytics-html .pill.pattern,.analytics-html .run-table .pill.pattern{border-color:var(--cal-ink);color:var(--cal-ink);background:#fff}.analytics-html .pill.status-calibrated,.analytics-html .run-table .pill.status-calibrated{border-color:var(--cal-green);background:var(--cal-green-tint);color:var(--cal-green)}.analytics-html .pill.status-detected,.analytics-html .run-table .pill.status-detected{color:#2563eb;background:#2563eb14;border-color:#2563eb}.analytics-html .pill.status-ready,.analytics-html .run-table .pill.status-ready{border-color:var(--cal-amber);background:var(--cal-amber-soft);color:var(--cal-amber)}.analytics-html .pill.status-created,.analytics-html .run-table .pill.status-created{border-color:var(--cal-line);background:var(--cal-line-faint);color:var(--cal-muted)}.analytics-html.cameras-page .run-table thead th{color:#34332f;border-bottom-color:#817a70;font-weight:700}.analytics-html.cameras-page .run-table tbody td{color:#222;border-bottom-color:#d2ccc0}.analytics-html.cameras-page .run-table .sub,.analytics-html.cameras-page .run-table .rms.muted{color:#3f3c36}.analytics-html.cameras-page .run-table .name{color:#050505;font-size:16px;font-weight:400}.analytics-html.cameras-page .cameras-run-name-link:hover .name{color:var(--cal-green-dark);text-underline-offset:3px;text-decoration:underline}.analytics-html .cameras-runs-card{overflow-x:auto}.analytics-html .cameras-runs-card .run-table{min-width:780px}.analytics-html .cameras-run-name-link{min-width:0;color:inherit;text-decoration:none;display:grid}.analytics-html .cameras-run-name-link:hover .name{color:var(--cal-green)}.analytics-html .cameras-empty{border:1px dashed var(--cal-line);background:var(--cal-green-tint);border-radius:4px;align-content:center;justify-items:start;gap:10px;min-height:260px;padding:28px;display:grid}.analytics-html .cameras-empty .eyebrow{color:var(--cal-green);letter-spacing:.18em;text-transform:uppercase;margin:0;font-size:10px}.analytics-html .cameras-empty h4{color:var(--cal-ink);font-family:var(--cal-font-serif);margin:0;font-size:22px;font-style:italic;font-weight:400}.analytics-html .cameras-empty p{color:var(--cal-muted);margin:0;font-size:13px;line-height:1.5}.analytics-html.cameras-page .cameras-row-header{border:1.5px solid var(--cal-ink);border-left:1.5px solid var(--cal-ink);background:var(--cal-surface);border-radius:0;align-items:center;gap:22px;margin:8px 0 20px;padding:22px 28px;display:flex;box-shadow:inset 0 1px #fffffff2,0 12px 24px #14141217}.analytics-html.cameras-page .cameras-row-header:after{display:none}.analytics-html.cameras-page .cameras-row-header h2{color:var(--cal-ink);letter-spacing:-.01em;font-size:26px;font-weight:500}.analytics-html.cameras-page .cameras-row-header h2 em{color:var(--cal-green);font-family:inherit;font-size:inherit;font-style:italic;font-weight:600;line-height:inherit}.analytics-html.cameras-page .cameras-row-header>em{color:var(--cal-muted);font-size:15px}.analytics-html.cameras-page .cameras-workspace-grid{--cameras-panel-height:clamp(660px, calc(100vh - 250px), 860px);grid-template-columns:320px minmax(0,1fr);align-items:stretch;gap:20px}.analytics-html.cameras-page .cameras-list-card,.analytics-html.cameras-page .cameras-runs-card{min-height:var(--cameras-panel-height);height:var(--cameras-panel-height);border:1.5px solid var(--cal-ink);background:var(--cal-surface);border-radius:0;flex-direction:column;padding:0;display:flex;overflow:hidden;box-shadow:inset 0 1px #fffffff2,0 18px 34px #14141221}.analytics-html.cameras-page .cameras-runs-card{overflow:hidden}.analytics-html.cameras-page .cameras-list-card:after,.analytics-html.cameras-page .cameras-runs-card:after{display:none}.analytics-html.cameras-page .cameras-list-card .card-head,.analytics-html.cameras-page .cameras-runs-card .card-head{border-bottom:2px solid var(--cal-ink);align-items:flex-end;margin:0;padding:22px 24px 18px}.analytics-html.cameras-page .cameras-runs-card .card-head{padding-inline:28px}.analytics-html.cameras-page .cameras-list-card .card-head .eyebrow,.analytics-html.cameras-page .cameras-runs-card .card-head .eyebrow{color:var(--cal-green);letter-spacing:.22em;margin:0 0 6px;font-size:10px;font-weight:700}.analytics-html.cameras-page .cameras-list-card .card-head h3,.analytics-html.cameras-page .cameras-runs-card .card-head h3{color:var(--cal-ink);letter-spacing:-.01em;font-size:22px;font-weight:500;line-height:1}.analytics-html.cameras-page .cameras-list-card .card-head h3 em,.analytics-html.cameras-page .cameras-runs-card .card-head h3 em{color:var(--cal-green);font-weight:600}.analytics-html.cameras-page .cameras-list-card .card-head .meta,.analytics-html.cameras-page .cameras-runs-card .card-head .meta,.analytics-html.cameras-page .cameras-runs-head-actions .meta{border:1.5px solid var(--cal-ink);background:var(--cal-bg);min-height:28px;color:var(--cal-ink);font-family:var(--cal-font-mono);letter-spacing:.04em;align-items:center;padding:5px 10px;font-size:11px;font-weight:600;line-height:1;display:inline-flex}.analytics-html.cameras-page .cameras-menu-trigger{border:1.5px solid var(--cal-ink);width:32px;height:32px;box-shadow:none;border-radius:0}.analytics-html.cameras-page .cameras-menu-trigger:hover{background:var(--cal-ink);color:#fff}.analytics-html.cameras-page .cameras-list{background:var(--cal-bg);scrollbar-gutter:stable;flex:1;gap:7px;min-height:0;max-height:none;padding:12px;overflow-y:auto}.analytics-html.cameras-page .cameras-list-item{border:1px solid var(--cal-line-soft);background:var(--cal-surface);border-radius:3px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:10px;padding:10px 14px;display:grid;position:relative;box-shadow:0 8px 18px #1414120b}.analytics-html.cameras-page .cameras-list-item:last-child{border-bottom:1px solid var(--cal-line-soft)}.analytics-html.cameras-page .cameras-list-item:hover{border-color:var(--cal-ink);background:var(--cal-green-tint);transform:none;box-shadow:0 10px 22px #14141213}.analytics-html.cameras-page .cameras-list-item.selected{border-color:var(--cal-green);background:#dcecdf;box-shadow:0 10px 22px #164f311f}.analytics-html.cameras-page .cameras-list-item-badge{border:1.5px solid var(--cal-line);background:var(--cal-bg);width:32px;height:32px;color:var(--cal-muted);border-radius:50%;justify-content:center;align-items:center;margin-top:1px;transition:background .15s,border-color .15s,color .15s,box-shadow .15s;display:inline-flex}.analytics-html.cameras-page .cameras-list-item-badge svg{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;width:17px;height:17px}.analytics-html.cameras-page .cameras-list-item-badge svg circle:last-child{fill:currentColor}.analytics-html.cameras-page .cameras-list-item.selected .cameras-list-item-badge{border-color:var(--cal-green);background:var(--cal-green);color:#fff;box-shadow:0 0 0 3px #0d42251a}.analytics-html.cameras-page .cameras-list-item-main{min-width:0}.analytics-html.cameras-page .cameras-list-item-top{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:3px;display:flex}.analytics-html.cameras-page .cameras-list-item-main strong{color:var(--cal-ink);letter-spacing:-.01em;font-size:17px;font-style:normal;font-weight:500;line-height:1.1;display:block}.analytics-html.cameras-page .cameras-list-item.selected .cameras-list-item-main strong{color:var(--cal-green);font-style:italic}.analytics-html.cameras-page .cameras-list-item-sub{color:var(--cal-muted);font-family:var(--cal-font-sans);letter-spacing:.02em;margin:0;font-size:10px;font-weight:500}.analytics-html.cameras-page .cameras-list-item-sub em{color:var(--cal-ink);font-family:var(--cal-font-serif);font-size:12px;font-style:italic;font-weight:500}.analytics-html.cameras-page .cameras-list-item-sub span{color:var(--cal-line-soft);margin:0 5px}.analytics-html.cameras-page .cameras-list-item-date{color:var(--cal-muted);font-family:var(--cal-font-mono);letter-spacing:.04em;white-space:nowrap;margin:0;font-size:9px;font-weight:600}.analytics-html.cameras-page .cameras-list-item-tags{border-top:1px solid var(--cal-line-soft);box-sizing:border-box;scrollbar-width:none;flex-wrap:nowrap;grid-column:1/-1;gap:4px;width:100%;max-width:100%;margin-top:7px;margin-left:0;padding-top:6px;padding-right:0;display:flex;overflow:auto hidden}.analytics-html.cameras-page .cameras-list-item-tags::-webkit-scrollbar{display:none}.analytics-html.cameras-page .cameras-list-item-tags .pill{letter-spacing:.14em;border-radius:0;flex:none;padding:3px 6px;font-size:7.5px;font-weight:700;line-height:1}.analytics-html.cameras-page .cameras-health-summary{border:0;border-bottom:2px solid var(--cal-ink);background:var(--cal-surface);box-shadow:none;border-radius:0;grid-template-columns:auto minmax(240px,1fr) auto;align-items:center;gap:32px;margin:0;padding:24px 28px;display:grid;position:relative;overflow:hidden}.analytics-html.cameras-page .cameras-health-summary:before{display:none}.analytics-html.cameras-page .cameras-health-grade,.analytics-html.cameras-page .cameras-health-copy,.analytics-html.cameras-page .cameras-health-stats{z-index:1;position:relative}.analytics-html.cameras-page .cameras-health-grade{align-items:center;gap:16px;display:flex}.analytics-html.cameras-page .cameras-health-grade-circle{border:2px solid var(--cal-green);background:var(--cal-surface);width:64px;height:64px;color:var(--cal-green);font-family:var(--cal-font-serif);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:32px;font-style:italic;font-weight:600;line-height:1;display:flex;box-shadow:0 0 0 5px #0d422514}.analytics-html.cameras-page .cameras-health-grade-circle.mid{border-color:var(--cal-green);color:var(--cal-green)}.analytics-html.cameras-page .cameras-health-grade-circle.low{border-color:var(--cal-amber);color:var(--cal-amber)}.analytics-html.cameras-page .cameras-health-grade-circle.none{border-color:var(--cal-line);color:var(--cal-muted)}.analytics-html.cameras-page .cameras-health-grade span:not(.cameras-health-grade-circle),.analytics-html.cameras-page .cameras-health-copy span,.analytics-html.cameras-page .cameras-health-stats span{color:var(--cal-green);font-family:var(--cal-font-mono);letter-spacing:.22em;text-transform:uppercase;font-size:9px;font-weight:700;display:block}.analytics-html.cameras-page .cameras-health-grade strong{color:var(--cal-green);letter-spacing:.18em;text-transform:uppercase;margin-top:3px;font-size:11px;font-weight:700;display:block}.analytics-html.cameras-page .cameras-health-copy h4{color:var(--cal-ink);letter-spacing:-.01em;margin:6px 0 4px;font-size:22px;font-weight:500;line-height:1.2}.analytics-html.cameras-page .cameras-health-copy h4 em{color:var(--cal-green);font-weight:600}.analytics-html.cameras-page .cameras-health-copy p{color:var(--cal-muted);margin:0;font-size:12px;font-weight:500;line-height:1.45}.analytics-html.cameras-page .cameras-health-copy p strong{color:var(--cal-ink);font-family:var(--cal-font-serif);font-size:13px;font-style:italic;font-weight:500}.analytics-html.cameras-page .cameras-health-stats{gap:0;align-content:initial;display:flex}.analytics-html.cameras-page .cameras-health-stats div{border-left:0;border-right:1px solid var(--cal-line-soft);text-align:right;padding:0 22px}.analytics-html.cameras-page .cameras-health-stats div:first-child{padding-left:0}.analytics-html.cameras-page .cameras-health-stats div:last-child{border-right:0;padding-right:0}.analytics-html.cameras-page .cameras-health-stats strong{color:var(--cal-ink);font-family:var(--cal-font-mono);letter-spacing:-.02em;white-space:nowrap;margin-top:6px;font-size:18px;font-weight:600;line-height:1;display:block}.analytics-html.cameras-page .cameras-health-stats div:first-child strong{color:var(--cal-green);font-weight:700}.analytics-html.cameras-page .run-table{border-collapse:collapse;min-width:850px}.analytics-html.cameras-page .cameras-project-table-scroll{scrollbar-gutter:stable;flex:1;min-height:0;max-height:none;overflow:auto}.analytics-html.cameras-page .cameras-project-table-scroll::-webkit-scrollbar{width:8px;height:8px}.analytics-html.cameras-page .cameras-project-table-scroll::-webkit-scrollbar-track{background:var(--cal-bg)}.analytics-html.cameras-page .cameras-project-table-scroll::-webkit-scrollbar-thumb{border:2px solid var(--cal-bg);background:var(--cal-line);border-radius:999px}.analytics-html.cameras-page .run-table thead th{z-index:2;background:var(--cal-bg);color:var(--cal-ink);letter-spacing:.22em;border-bottom:0;padding:14px 14px 14px 0;font-size:9px;font-weight:700;position:sticky;top:0}.analytics-html.cameras-page .run-table thead th:first-child{padding-left:28px}.analytics-html.cameras-page .run-table thead th:last-child{padding-right:28px}.analytics-html.cameras-page .run-table tbody tr{cursor:pointer;transition:background .15s}.analytics-html.cameras-page .run-table tbody tr:hover{background:var(--cal-green-tint)}.analytics-html.cameras-page .run-table tbody tr.is-best,.analytics-html.cameras-page .run-table tbody tr.is-best:hover{background:#edf7ef}.analytics-html.cameras-page .run-table tbody td{border-bottom:1px solid var(--cal-line-soft);color:var(--cal-ink);padding:16px 14px 16px 0;font-size:12px}.analytics-html.cameras-page .run-table tbody td:first-child{padding-left:28px}.analytics-html.cameras-page .run-table tbody td:last-child{padding-right:28px}.analytics-html.cameras-page .cameras-run-name-link{gap:3px}.analytics-html.cameras-page .run-table .name-row{align-items:center;gap:8px;display:flex}.analytics-html.cameras-page .run-table .name{color:var(--cal-ink);font-family:var(--cal-font-mono);letter-spacing:0;font-size:13px;font-style:normal;font-weight:600;line-height:1.25}.analytics-html.cameras-page .run-table .sub{color:var(--cal-muted);font-family:var(--cal-font-mono);letter-spacing:.04em;margin:0;font-size:10px;font-weight:500}.analytics-html.cameras-page .run-table .badge-best{border:1px solid var(--cal-ink);background:var(--cal-surface);color:var(--cal-ink);font-family:var(--cal-font-sans);letter-spacing:.2em;text-transform:uppercase;margin-left:0;padding:2px 7px;font-size:8px;font-style:normal;font-weight:700;line-height:1}.analytics-html.cameras-page .run-table .pill{font-family:var(--cal-font-sans);letter-spacing:.18em;white-space:nowrap;border-radius:0;align-items:center;gap:6px;font-size:9px;font-weight:700;line-height:1;display:inline-flex}.analytics-html.cameras-page .run-table .pill.status-calibrated,.analytics-html.cameras-page .run-table .pill.status-detected,.analytics-html.cameras-page .run-table .pill.status-ready,.analytics-html.cameras-page .run-table .pill.status-created{border-radius:12px;padding:4px 10px}.analytics-html.cameras-page .run-table .pill.status-calibrated:before,.analytics-html.cameras-page .run-table .pill.status-detected:before,.analytics-html.cameras-page .run-table .pill.status-ready:before,.analytics-html.cameras-page .run-table .pill.status-created:before{content:"";background:currentColor;border-radius:50%;width:5px;height:5px}.analytics-html.cameras-page .run-table .pill.status-calibrated{background:#d4e5da}.analytics-html.cameras-page .run-table .pill.status-ready,.analytics-html.cameras-page .run-table .pill.status-created{border-color:var(--cal-amber);background:var(--cal-amber-soft);color:var(--cal-amber)}.analytics-html.cameras-page .run-table .pill.pinhole,.analytics-html.cameras-page .run-table .pill.pinhole-wide,.analytics-html.cameras-page .run-table .pill.fisheye{letter-spacing:.2em;border-width:1.5px;border-radius:0;padding:4px 10px}.analytics-html.cameras-page .run-table .pill.pinhole-wide{border-color:var(--cal-pinhole-wide);background:var(--cal-pinhole-wide);color:#fff}.analytics-html.cameras-page .run-table .pill.fisheye{background:var(--cal-amber);color:#fff}.analytics-html.cameras-page .run-table .pill.pattern{border:1.5px dashed var(--cal-muted);color:var(--cal-muted);border-radius:0;padding:4px 10px}.analytics-html.cameras-page .run-table .rms{color:var(--cal-ink);font-size:13px;font-weight:600}.analytics-html.cameras-page .run-table .rms.best{color:var(--cal-ink);font-weight:700}.analytics-html.cameras-page .run-table .rms.muted{color:var(--cal-muted-soft);font-weight:500}.projects-page-header{background:linear-gradient(180deg, #1f5d3a09, #fff0), var(--bg-2);border-bottom-color:#a9a398}.projects-page-header .page-subtitle{color:#34332f}.analytics-html.settings-page{gap:28px;padding-bottom:54px;display:grid}.analytics-html.settings-page .settings-control-row{justify-content:space-between;align-items:flex-end;gap:22px;margin-bottom:2px;display:flex}.analytics-html.settings-page .settings-row-header{gap:6px;display:grid}.analytics-html.settings-page .settings-row-header h2{color:#0a0a08;letter-spacing:-.035em;margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(28px,3vw,42px);font-style:italic;font-weight:500;line-height:.98}.analytics-html.settings-page .settings-row-header h2 em,.analytics-html.settings-page .settings-panel-head h3 em,.analytics-html.settings-page .settings-hero-copy h3 em{color:#0e6338;font-style:italic}.analytics-html.settings-page .settings-row-header span{color:#526057;font-family:Google Sans,Inter,system-ui,sans-serif;font-size:14px}.analytics-html.settings-page .settings-actions{align-items:center;gap:10px;display:flex}.analytics-html.settings-page .settings-refresh,.analytics-html.settings-page .settings-upgrade{letter-spacing:.14em;text-transform:uppercase;cursor:pointer;border:1.5px solid #0a0a08;border-radius:0;justify-content:center;align-items:center;min-height:38px;padding:0 16px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;font-weight:800;text-decoration:none;transition:transform .18s,background .18s,color .18s;display:inline-flex}.analytics-html.settings-page .settings-refresh{color:#0a0a08;background:#fff}.analytics-html.settings-page .settings-refresh:hover:not(:disabled),.analytics-html.settings-page .settings-upgrade:hover{transform:translate(-2px,-2px)}.analytics-html.settings-page .settings-refresh:disabled{cursor:wait;opacity:.62}.analytics-html.settings-page .settings-upgrade{color:#fff;background:#0d4225;border-color:#0a0a08}.analytics-html.settings-page .settings-error,.analytics-html.settings-page .settings-ledger-state{color:#8c2d24;letter-spacing:.12em;text-transform:uppercase;background:#9a2c220f;border:1px solid #9a2c2233;padding:18px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;font-weight:800}.analytics-html.settings-page .settings-hero,.analytics-html.settings-page .settings-panel{background:linear-gradient(135deg,#6ba88a14,#0000 42%),#fff;border:1.5px solid #0a0a08;border-radius:0;position:relative;overflow:visible;box-shadow:5px 5px #0d422585}.analytics-html.settings-page .settings-hero:before,.analytics-html.settings-page .settings-panel:before{display:none}.analytics-html.settings-page .settings-hero{color:#f4f1e8;background:radial-gradient(520px 280px at 100% 0,#6ba88a3d,#0000 68%),#0a0a08;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:32px;padding:32px;display:grid}.analytics-html.settings-page .settings-hero-copy .eyebrow{color:#a8d8bd;background:#6ba88a21;border-color:#6ba88ab8}.analytics-html.settings-page .settings-hero-copy h3{color:#f4f1e8}.analytics-html.settings-page .settings-hero-copy h3 em{color:#a8d8bd}.analytics-html.settings-page .settings-hero-copy p:not(.eyebrow){color:#f4f1e8c2}.analytics-html.settings-page .settings-hero-copy{gap:10px;max-width:640px;display:grid}.analytics-html.settings-page .settings-hero-copy .eyebrow,.analytics-html.settings-page .settings-panel-head .eyebrow{color:#0e6338;letter-spacing:.16em;text-transform:uppercase;background:#6ba88a21;border:1px solid #0d422557;align-items:center;width:max-content;min-height:22px;margin:0;padding:0 8px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:9px;font-weight:900;display:inline-flex}.analytics-html.settings-page .settings-hero-copy h3,.analytics-html.settings-page .settings-panel-head h3{color:#0a0a08;letter-spacing:-.035em;margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:30px;font-style:italic;font-weight:600;line-height:.98}.analytics-html.settings-page .settings-hero-copy p:not(.eyebrow){color:#526057;max-width:560px;margin:0;font-size:14px;line-height:1.55}.analytics-html.settings-page .settings-hero .settings-hero-copy .eyebrow{color:#a8d8bd;background:#a8d8bd1f;border-color:#a8d8bd9e}.analytics-html.settings-page .settings-hero .settings-hero-copy h3{color:#f4f1e8;font-size:clamp(42px,4.8vw,66px)}.analytics-html.settings-page .settings-hero .settings-hero-copy h3 em{color:#a8d8bd}.analytics-html.settings-page .settings-hero .settings-hero-copy p:not(.eyebrow){color:#f4f1e8b8}.analytics-html.settings-page .settings-plan-features{flex-wrap:wrap;gap:0;max-width:620px;margin:12px 0 0;padding:0;list-style:none;display:flex}.analytics-html.settings-page .settings-plan-features li{gap:5px;min-width:118px;padding:0 22px;display:grid;position:relative}.analytics-html.settings-page .settings-plan-features li:first-child{padding-left:0}.analytics-html.settings-page .settings-plan-features li:not(:last-child):after{content:"";background:#a8d8bd2e;width:1px;height:34px;position:absolute;top:4px;right:0}.analytics-html.settings-page .settings-plan-features span{color:#f4f1e86b;letter-spacing:.18em;text-transform:uppercase;font-family:JetBrains Mono,ui-monospace,monospace;font-size:9px;font-weight:800}.analytics-html.settings-page .settings-plan-features strong{color:#f4f1e8;letter-spacing:-.025em;font-family:Cormorant Garamond,Georgia,serif;font-size:21px;font-style:italic;font-weight:600;line-height:.95}.analytics-html.settings-page .settings-plan-features li:nth-child(2n) strong{color:#a8d8bd}.analytics-html.settings-page .settings-credit-meter{justify-items:center;gap:14px;min-width:230px;display:grid}.analytics-html.settings-page .settings-credit-ring{background:radial-gradient(circle at center, #0a0a08 0 57%, transparent 58%), conic-gradient(#a8d8bd 0 calc(var(--credit-percent,0%) - 0.28%), #a8d8bdb8 calc(var(--credit-percent,0%) - 0.08%) var(--credit-percent,0%), #f4f1e81f calc(var(--credit-percent,0%) + 0.18%) 100%);border-radius:50%;align-content:center;place-items:center;width:154px;height:154px;display:grid;box-shadow:inset 0 0 0 1px #a8d8bd6b}.analytics-html.settings-page .settings-credit-ring strong{color:#f4f1e8;letter-spacing:0;font-family:JetBrains Mono,ui-monospace,monospace;font-size:30px;font-style:normal;font-weight:800;line-height:1}.analytics-html.settings-page .settings-credit-ring span,.analytics-html.settings-page .settings-credit-meta em{color:#f4f1e894;letter-spacing:.12em;text-transform:uppercase;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;font-style:normal;font-weight:700}.analytics-html.settings-page .settings-credit-meta{text-align:center;gap:4px;display:grid}.analytics-html.settings-page .settings-credit-meta span{color:#f4f1e8;font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px;font-weight:800}.analytics-html.settings-page .settings-grid{grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);align-items:start;gap:22px;display:grid}.analytics-html.settings-page .settings-workspace{grid-template-columns:270px minmax(0,1fr);align-items:start;gap:24px;display:grid}.analytics-html.settings-page .settings-workspace-nav{box-shadow:none;background:#f7f8f5;border:1.5px solid #0a0a08;border-radius:8px;gap:8px;padding:16px;display:grid;position:sticky;top:24px}.analytics-html.settings-page .settings-nav-label{color:#0a0a08;letter-spacing:.14em;text-transform:uppercase;border-bottom:0;width:max-content;margin:0 0 8px;padding:0;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;font-weight:900}.analytics-html.settings-page .settings-nav-button{color:#25342b;cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:7px;gap:5px;width:100%;min-height:62px;padding:12px 13px;transition:background .18s,border-color .18s,color .18s;display:grid;position:relative}.analytics-html.settings-page .settings-nav-button strong{color:inherit;letter-spacing:-.01em;font-family:Google Sans,Inter,ui-sans-serif,system-ui,sans-serif;font-size:13px;font-weight:800}.analytics-html.settings-page .settings-nav-button span{color:#69736c;font-size:12px;line-height:1.35}.analytics-html.settings-page .settings-nav-button:hover{color:#0d4225;background:#fff;border-color:#0d42251f}.analytics-html.settings-page .settings-nav-button.active{color:#0d4225;background:#fff;border-color:#0d422533}.analytics-html.settings-page .settings-nav-button.active span{color:#5f6a63}.analytics-html.settings-page .settings-workspace-main{min-height:460px;box-shadow:none;background:#fff;border:1.5px solid #0a0a08;border-radius:8px;padding:30px}.analytics-html.settings-page .settings-workspace-heading{border-bottom:1px solid #0a0a085c;gap:8px;margin-bottom:26px;padding-bottom:18px;display:grid}.analytics-html.settings-page .settings-workspace-heading span{color:#0d4225;letter-spacing:.16em;text-transform:uppercase;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;font-weight:900}.analytics-html.settings-page .settings-workspace-heading h3{color:#0a0a08;letter-spacing:-.03em;margin:0;font-family:Google Sans,Inter,ui-sans-serif,system-ui,sans-serif;font-size:28px;font-style:normal;font-weight:800;line-height:1.05}.analytics-html.settings-page .settings-workspace-heading p{color:#526057;margin:0;font-size:15px}.analytics-html.settings-page .settings-workspace-body{gap:20px;display:grid}.analytics-html.settings-page .settings-account-card{background:#f8f9f7;border:1px solid #0d42251f;border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;min-height:104px;padding:18px;display:grid}.analytics-html.settings-page .settings-account-avatar{color:#fff;background:#d8ddd9;border:0;border-radius:50%;place-items:center;width:62px;height:62px;font-family:Google Sans,Inter,ui-sans-serif,system-ui,sans-serif;font-size:24px;font-style:normal;font-weight:800;display:grid}.analytics-html.settings-page .settings-account-card strong{color:#0a0a08;font-family:Google Sans,Inter,ui-sans-serif,system-ui,sans-serif;font-size:18px;font-weight:800;display:block}.analytics-html.settings-page .settings-account-card span{color:#5d6a63;margin-top:4px;font-size:14px;display:block}.analytics-html.settings-page .settings-action-list{background:#fff;border:1px solid #0a0a0857;border-radius:8px;display:grid;overflow:hidden}.analytics-html.settings-page .settings-action-list>div{background:#fff;border-bottom:1px solid #0a0a0852;justify-content:space-between;align-items:center;gap:18px;min-height:58px;padding:0 18px;display:flex}.analytics-html.settings-page .settings-action-list>div:last-child{border-bottom:0}.analytics-html.settings-page .settings-action-list span,.analytics-html.settings-page .settings-kpi-grid span{color:#526057;letter-spacing:0;font-family:Google Sans,Inter,ui-sans-serif,system-ui,sans-serif;font-size:13px;font-weight:500}.analytics-html.settings-page .settings-action-list strong{color:#0a0a08;letter-spacing:.07em;text-align:right;text-transform:uppercase;font-family:JetBrains Mono,ui-monospace,monospace;font-size:11px;font-weight:800}.analytics-html.settings-page .settings-action-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.analytics-html.settings-page .settings-action-button{color:#0a0a08;cursor:pointer;min-height:44px;box-shadow:none;background:#fff;border:1px solid #0a0a0847;border-radius:8px;justify-content:center;align-items:center;padding:0 18px;font-family:Google Sans,Inter,ui-sans-serif,system-ui,sans-serif;font-size:14px;font-weight:800;text-decoration:none;transition:background .18s,border-color .18s,color .18s;display:inline-flex}.analytics-html.settings-page .settings-action-button:hover:not(:disabled){color:#0d4225;border-color:#0d4225}.analytics-html.settings-page .settings-action-button.primary{color:#fff;background:#0d4225;border-color:#0d4225}.analytics-html.settings-page .settings-action-button.muted{color:#5d6a63}.analytics-html.settings-page .settings-action-button.danger{color:#9a2c22;border-color:#9a2c2247}.analytics-html.settings-page .settings-action-button:disabled{cursor:not-allowed;opacity:.54}.analytics-html.settings-page .settings-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.analytics-html.settings-page .settings-kpi-grid div{background:#f8f9f7;border:1px solid #0d42251f;border-radius:8px;gap:6px;padding:18px;display:grid}.analytics-html.settings-page .settings-kpi-grid strong{color:#0a0a08;letter-spacing:0;font-family:JetBrains Mono,ui-monospace,monospace;font-size:24px;font-weight:900}.analytics-html.settings-page .settings-kpi-grid em{color:#6a746e;font-size:12px;font-style:normal}.analytics-html.settings-page .settings-workspace-track{margin-top:0}.analytics-html.settings-page .settings-callout{color:#526057;background:#6ba88a1a;border:1px solid #0d422529;border-radius:8px;padding:16px 18px;font-size:14px;line-height:1.5}.analytics-html.settings-page .settings-panel{padding:24px}.analytics-html.settings-page .settings-panel-head{gap:6px;margin-bottom:20px;display:grid}.analytics-html.settings-page .settings-field-panel{min-height:252px}.analytics-html.settings-page .settings-field-list{gap:0;display:grid}.analytics-html.settings-page .settings-field-row{color:#0a0a08;border-top:1px solid #0d422529;justify-content:space-between;align-items:center;gap:18px;min-height:52px;display:flex}.analytics-html.settings-page .settings-field-row:last-child{border-bottom:1px solid #0d422529}.analytics-html.settings-page .settings-field-row span{color:#526057;font-size:13px}.analytics-html.settings-page .settings-field-row strong{color:#0a0a08;letter-spacing:.08em;text-align:right;text-transform:uppercase;font-family:JetBrains Mono,ui-monospace,monospace;font-size:11px;font-weight:800}.analytics-html.settings-page .settings-status-pill{background:#6ba88a21;border:1px solid #0d422547;align-items:center;min-height:24px;padding:0 9px;display:inline-flex;color:#0d4225!important}.analytics-html.settings-page .settings-profile-card-compact{margin-bottom:10px}.analytics-html.settings-page .settings-limit-grid,.analytics-html.settings-page .settings-cost-list{gap:12px;display:grid}.analytics-html.settings-page .settings-limit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-html.settings-page .settings-limit-grid div,.analytics-html.settings-page .settings-cost-list div{background:#6ba88a0f;border:1px solid #0d42252e;justify-content:space-between;align-items:center;gap:14px;min-height:54px;padding:13px 15px;display:flex}.analytics-html.settings-page .settings-limit-grid span,.analytics-html.settings-page .settings-cost-list span{color:#526057;font-size:13px}.analytics-html.settings-page .settings-limit-grid strong,.analytics-html.settings-page .settings-cost-list strong{color:#0a0a08;letter-spacing:-.035em;font-family:Cormorant Garamond,Georgia,serif;font-size:26px;font-style:italic;font-weight:600}.analytics-html.settings-page .settings-usage-track{background:#0d422514;border:1px solid #0e63382e;border-radius:0;height:8px;margin-top:18px;overflow:hidden}.analytics-html.settings-page .settings-usage-track span{background:#0d4225;border-radius:0;height:100%;display:block}.analytics-html.settings-page .settings-profile-card{background:#6ba88a0f;border:1px solid #0d42252e;align-items:center;gap:14px;padding:16px;display:flex}.analytics-html.settings-page .settings-profile-card>div{color:#fff;background:#0d4225;border-radius:50%;place-items:center;width:46px;height:46px;font-family:Fraunces,Georgia,serif;font-size:20px;display:grid}.analytics-html.settings-page .settings-profile-card span{gap:3px;min-width:0;display:grid}.analytics-html.settings-page .settings-profile-card strong{color:#0c1510;font-size:14px}.analytics-html.settings-page .settings-profile-card em{color:#667168;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-style:normal;overflow:hidden}.analytics-html.settings-page .settings-ledger-panel{grid-column:1/-1}.analytics-html.settings-page .settings-ledger-list{max-height:420px;padding-right:8px;display:grid;overflow-y:auto}.analytics-html.settings-page .settings-ledger-item{border-bottom:1px solid #0d422526;grid-template-columns:70px minmax(0,1fr) auto;align-items:center;gap:14px;padding:15px 0;display:grid}.analytics-html.settings-page .settings-ledger-item:last-child{border-bottom:0}.analytics-html.settings-page .settings-ledger-item>span{text-align:center;border-radius:0;justify-self:start;min-width:48px;padding:6px 8px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px;font-weight:900}.analytics-html.settings-page .settings-ledger-item>span.gain{color:#0e6338;background:#0e63381a}.analytics-html.settings-page .settings-ledger-item>span.spend{color:#9a2c22;background:#9a2c221a}.analytics-html.settings-page .settings-ledger-item div{gap:4px;min-width:0;display:grid}.analytics-html.settings-page .settings-ledger-item strong{color:#0c1510;font-size:14px}.analytics-html.settings-page .settings-ledger-item em,.analytics-html.settings-page .settings-ledger-item small{color:#667168;letter-spacing:.08em;text-transform:uppercase;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;font-style:normal;font-weight:700}.analytics-html.settings-page .settings-ledger-item small{white-space:nowrap;justify-self:end}@media (width<=980px){.analytics-html.settings-page .settings-control-row,.analytics-html.settings-page .settings-hero{grid-template-columns:1fr;align-items:start}.analytics-html.settings-page .settings-control-row{display:grid}.analytics-html.settings-page .settings-grid,.analytics-html.settings-page .settings-workspace,.analytics-html.settings-page .settings-limit-grid{grid-template-columns:1fr}.analytics-html.settings-page .settings-workspace-nav{position:static}.analytics-html.settings-page .settings-kpi-grid{grid-template-columns:1fr}.analytics-html.settings-page .settings-account-card{grid-template-columns:auto minmax(0,1fr)}.analytics-html.settings-page .settings-account-card .settings-action-button{grid-column:1/-1;justify-self:start}.analytics-html.settings-page .settings-credit-meter{justify-items:start}}.analytics-html.projects-page{--cal-ink-soft:#171717;--cal-muted:#45433d;--cal-muted-soft:#5b574f;--cal-line:#918b80;--cal-line-soft:#aaa398;--cal-line-faint:#d7d2c6;--cal-green:#164f31;--cal-green-dark:#0f3822;--cal-green-tint:#eef6f0;--cal-amber:#9b5f1c;--cal-amber-soft:#f6ead7}.analytics-html.projects-page .projects-frame{border:1.5px solid var(--cal-ink);background:var(--cal-surface);border-radius:0;overflow:hidden;box-shadow:inset 0 1px #fffffff2,0 18px 34px #14141221,0 2px 8px #14141214}.analytics-html.projects-page .projects-frame-head{border-bottom:2px solid var(--cal-ink);justify-content:space-between;align-items:flex-end;gap:20px;padding:22px 28px 18px;display:flex}.analytics-html.projects-page .projects-filter-panel .projects-frame-head{border-bottom:0}.analytics-html.projects-page .projects-grid-panel{background:var(--cal-bg);overflow-anchor:none;height:clamp(520px,100vh - 290px,760px);margin-top:18px}.analytics-html.projects-page .projects-frame-title-shell{align-items:center;min-width:0;display:flex}.analytics-html.projects-page .projects-frame-title .eyebrow{color:var(--cal-green);letter-spacing:.22em;margin:0 0 6px;font-size:10px;font-weight:700}.analytics-html.projects-page .projects-frame-title-row{flex-wrap:wrap;align-items:baseline;gap:18px;display:flex}.analytics-html.projects-page .projects-frame-title h3{color:var(--cal-ink);font-family:var(--cal-font-serif);letter-spacing:-.01em;margin:0;font-size:26px;font-weight:500;line-height:1}.analytics-html.projects-page .projects-frame-title h3 em{color:var(--cal-green);font-style:italic;font-weight:600}.analytics-html.projects-page .projects-frame-description{max-width:440px;color:var(--cal-muted);font-family:var(--cal-font-serif);letter-spacing:0;margin:0;font-size:15px;font-style:italic;font-weight:400;line-height:1.35}.analytics-html.projects-page .projects-frame-controls{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;display:flex}.analytics-html.projects-page .projects-filter-chips{border:1.5px solid var(--cal-ink);align-items:center;gap:0;display:flex}.analytics-html.projects-page .projects-filter-chip{border:0;border-right:1.5px solid var(--cal-ink);background:var(--cal-surface);min-height:34px;color:var(--cal-ink);cursor:pointer;font-family:var(--cal-font-sans);letter-spacing:.2em;text-transform:uppercase;align-items:center;gap:6px;padding:7px 12px;font-size:9px;font-weight:700;transition:background .15s,color .15s;display:inline-flex}.analytics-html.projects-page .projects-filter-chip:last-child{border-right:0}.analytics-html.projects-page .projects-filter-chip:hover{background:var(--cal-bg)}.analytics-html.projects-page .projects-filter-chip.active{background:var(--cal-green);color:#fff}.analytics-html.projects-page .projects-filter-chip span{background:var(--cal-bg);min-width:20px;color:var(--cal-ink);font-family:var(--cal-font-mono);letter-spacing:.02em;text-align:center;border:1px solid;padding:1px 6px;font-size:9px;font-weight:700}.analytics-html.projects-page .projects-filter-chip.active span{color:var(--cal-green);background:#fff;border-color:#fff}.analytics-html.projects-page .projects-total-pill{border:1.5px solid var(--cal-ink);background:var(--cal-bg);min-height:34px;color:var(--cal-ink);font-family:var(--cal-font-mono);letter-spacing:.04em;align-items:center;padding:5px 12px;font-size:11px;font-weight:700;display:inline-flex}.analytics-html.projects-page .projects-cards-grid{background:var(--cal-bg);scrollbar-width:thin;scrollbar-color:var(--cal-line) var(--cal-bg);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));align-content:start;align-items:stretch;gap:12px;height:100%;padding:16px;overflow-y:auto}.analytics-html.projects-page .projects-cards-grid::-webkit-scrollbar{width:7px}.analytics-html.projects-page .projects-cards-grid::-webkit-scrollbar-track{background:var(--cal-bg)}.analytics-html.projects-page .projects-cards-grid::-webkit-scrollbar-thumb{border:2px solid var(--cal-bg);background:var(--cal-line);border-radius:999px}.analytics-html.projects-page .project-card{border:1px solid var(--cal-line-soft);background:var(--cal-surface);height:auto;min-height:176px;color:var(--cal-ink);border-radius:3px;gap:0;padding:0;transition:background .15s,border-color .15s,box-shadow .15s;overflow:hidden;box-shadow:0 8px 18px #1414120e}.analytics-html.projects-page .project-card--completed{border-color:var(--cal-green)}.analytics-html.projects-page .project-card--draft{border-color:var(--cal-amber)}.analytics-html.projects-page .project-card:hover{border-color:var(--cal-ink);background:var(--cal-green-tint);transform:none;box-shadow:0 12px 24px #14141217}.analytics-html.projects-page .project-card--completed:hover{border-color:var(--cal-green);background:var(--cal-green-tint)}.analytics-html.projects-page .project-card--draft:hover{border-color:var(--cal-amber);background:var(--cal-amber-soft)}.analytics-html.projects-page .project-card .project-menu{z-index:5;position:absolute;top:10px;right:10px}.analytics-html.projects-page .project-card .project-menu-trigger{border:1px solid var(--cal-line);background:var(--cal-surface);width:26px;height:26px;color:var(--cal-ink);opacity:1;border-radius:3px}.analytics-html.projects-page .project-card .project-menu-trigger:hover,.analytics-html.projects-page .project-card .project-menu-trigger[aria-expanded=true]{border-color:var(--cal-ink);background:var(--cal-green-tint);color:var(--cal-green)}.analytics-html.projects-page .project-card .project-menu-popover{border:1px solid var(--cal-line);background:var(--cal-surface);border-radius:4px;top:34px;right:0;box-shadow:0 16px 32px #1a1a1a24}.analytics-html.projects-page .project-card .project-menu-item{color:var(--cal-ink-soft);border-radius:3px;font-size:10px}.analytics-html.projects-page .project-card .project-menu-item:hover{background:var(--cal-green-tint);color:var(--cal-green)}.analytics-html.projects-page .project-card .project-menu-item.danger:hover{background:var(--cal-red-soft);color:var(--cal-red)}.analytics-html.projects-page .project-card__complete-mark,.analytics-html.projects-page .project-card__draft-mark{z-index:4;pointer-events:none;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex;position:absolute;top:10px;right:44px}.analytics-html.projects-page .project-card__complete-mark{color:var(--cal-green)}.analytics-html.projects-page .project-card__draft-mark{color:var(--cal-amber)}.analytics-html.projects-page .project-card__complete-mark svg,.analytics-html.projects-page .project-card__draft-mark svg{width:100%;height:100%}.analytics-html.projects-page .project-card__complete-circle{fill:var(--cal-green);stroke:var(--cal-green-dark);stroke-width:1.25px}.analytics-html.projects-page .project-card__complete-check{fill:none;stroke:#fff;stroke-width:2.35px;stroke-linecap:round;stroke-linejoin:round}.analytics-html.projects-page .project-card__draft-circle{fill:var(--cal-amber);stroke:#6f3f0d;stroke-width:1.25px}.analytics-html.projects-page .project-card__draft-pencil{fill:none;stroke:#fff;stroke-width:1.65px;stroke-linecap:round;stroke-linejoin:round}.analytics-html.projects-page .project-card__body{color:inherit;flex-direction:column;flex:1;gap:0;padding:13px 14px 10px;text-decoration:none;display:flex}.analytics-html.projects-page .project-card__title-row{justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:4px;padding-right:32px;display:flex}.analytics-html.projects-page .project-card--completed .project-card__title-row,.analytics-html.projects-page .project-card--draft .project-card__title-row{padding-right:86px}.analytics-html.projects-page .project-card__name{color:var(--cal-ink);font-family:var(--cal-font-mono);letter-spacing:0;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:13px;font-style:normal;font-weight:600;line-height:1.3;display:-webkit-box;overflow:hidden}.analytics-html.projects-page .project-card__meta-row{color:var(--cal-muted);font-family:var(--cal-font-mono);letter-spacing:.04em;align-items:center;gap:8px;margin-bottom:8px;font-size:10px;font-weight:600;display:flex}.analytics-html.projects-page .project-card__meta-row .cam{color:var(--cal-green);font-weight:700}.analytics-html.projects-page .project-card__meta-row .sep{color:var(--cal-line-soft)}.analytics-html.projects-page .project-card__meta-row .id{color:var(--cal-muted-soft)}.analytics-html.projects-page .project-card__quality-block{border:1.5px solid var(--cal-ink);background:var(--cal-bg);grid-template-columns:auto 1fr auto;align-items:center;gap:12px;margin-bottom:5px;padding:8px 10px;display:grid}.analytics-html.projects-page .project-card__quality-block.draft-state,.analytics-html.projects-page .project-card__quality-block.pending-state{border-color:var(--cal-amber);background:var(--cal-amber-soft);grid-template-columns:1fr;gap:8px}.analytics-html.projects-page .project-card__quality-block.pending-state{border-color:var(--cal-green);background:var(--cal-green-tint)}.analytics-html.projects-page .project-card__grade-circle{width:36px;height:36px;font-family:var(--cal-font-serif);border:2px solid;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:19px;font-style:italic;font-weight:600;line-height:1;display:flex}.analytics-html.projects-page .project-card__grade-circle.grade-a{border-color:var(--cal-green);background:var(--cal-green);color:#fff}.analytics-html.projects-page .project-card__grade-circle.grade-b{border-color:var(--cal-green);background:var(--cal-surface);color:var(--cal-green)}.analytics-html.projects-page .project-card__grade-circle.grade-c,.analytics-html.projects-page .project-card__grade-circle.grade-pending{border-color:var(--cal-amber);background:var(--cal-surface);color:var(--cal-amber)}.analytics-html.projects-page .project-card__quality-rms p{color:var(--cal-muted);letter-spacing:.18em;text-transform:uppercase;margin:0 0 2px;font-size:9px;font-weight:700}.analytics-html.projects-page .project-card__quality-rms strong{color:var(--cal-green);font-family:var(--cal-font-mono);font-feature-settings:"tnum";font-size:14px;font-weight:700;line-height:1}.analytics-html.projects-page .project-card__quality-rms span{color:var(--cal-muted);font-family:var(--cal-font-serif);margin-left:3px;font-size:12px;font-style:italic;font-weight:500}.analytics-html.projects-page .project-card__quality-images{text-align:right}.analytics-html.projects-page .project-card__quality-images strong{color:var(--cal-ink);font-family:var(--cal-font-mono);font-feature-settings:"tnum";font-size:14px;font-weight:700;line-height:1;display:block}.analytics-html.projects-page .project-card__quality-images span{color:var(--cal-muted);letter-spacing:.18em;text-transform:uppercase;margin-top:3px;font-size:9px;font-weight:700;display:block}.analytics-html.projects-page .project-card__step-info{color:var(--cal-muted);font-family:var(--cal-font-mono);letter-spacing:.06em;justify-content:space-between;align-items:baseline;gap:10px;font-size:10px;font-weight:700;display:flex}.analytics-html.projects-page .project-card__step-info span{color:var(--cal-ink);font-family:var(--cal-font-serif);letter-spacing:0;font-size:14px;font-style:italic;font-weight:500}.analytics-html.projects-page .project-card__step-info strong{color:var(--cal-muted);font-size:10px}.analytics-html.projects-page .project-card__progress-bar{background:var(--cal-line-faint);height:4px;position:relative;overflow:hidden}.analytics-html.projects-page .project-card__progress-bar span{background:var(--cal-amber);position:absolute;inset:0 auto 0 0}.analytics-html.projects-page .project-card__quality-block.pending-state .project-card__progress-bar span{background:var(--cal-green)}.analytics-html.projects-page .project-card__footer{border-top:1px solid var(--cal-line-soft);justify-content:space-between;align-items:center;gap:12px;margin-top:0;padding-top:6px;display:flex}.analytics-html.projects-page .project-card__camera-pill,.analytics-html.projects-page .project-card__model-pill{border:1.5px solid var(--cal-line);min-height:22px;color:var(--cal-muted);background:var(--cal-surface);letter-spacing:.2em;text-transform:uppercase;white-space:nowrap;align-items:center;padding:3px 8px;font-size:8.5px;font-weight:700;display:inline-flex}.analytics-html.projects-page .project-card__camera-pill{border:1.5px solid var(--cal-ink);background:var(--cal-bg);max-width:54%;color:var(--cal-ink);font-family:var(--cal-font-mono);text-overflow:ellipsis;overflow:hidden}.analytics-html.projects-page .project-card__model-pill{text-overflow:ellipsis;flex-shrink:0;justify-content:flex-end;max-width:46%;margin-left:auto;overflow:hidden}.analytics-html.projects-page .project-card__model-pill.pinhole{border-color:var(--cal-green);background:var(--cal-green-tint);color:var(--cal-green)}.analytics-html.projects-page .project-card__model-pill.pinhole-wide{border-color:var(--cal-pinhole-wide);color:var(--cal-pinhole-wide);background:#5b5aa61a}.analytics-html.projects-page .project-card__model-pill.fisheye{border-color:var(--cal-amber);background:var(--cal-amber);color:#fff}.analytics-html.projects-page .projects-new-card{border:1px solid var(--cal-line-soft);background:var(--cal-bg);min-height:176px;color:var(--cal-muted);text-align:center;border-radius:3px;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:20px 16px;text-decoration:none;transition:background .18s,border-color .18s,color .18s;display:flex;position:relative;overflow:hidden;box-shadow:0 8px 18px #1414120b}.analytics-html.projects-page .projects-new-card:before{content:"";border:1.5px dashed var(--cal-line);transition:border-color .18s;position:absolute;inset:12px}.analytics-html.projects-page .projects-new-card:hover{border-color:var(--cal-green);background:var(--cal-green-tint);color:var(--cal-green)}.analytics-html.projects-page .projects-new-card:hover:before{border-color:var(--cal-green)}.analytics-html.projects-page .projects-new-card-plus{z-index:1;background:var(--cal-surface);width:42px;height:42px;font-family:var(--cal-font-serif);border:1.5px solid;border-radius:50%;justify-content:center;align-items:center;margin-bottom:10px;font-size:28px;font-style:italic;font-weight:500;line-height:1;display:flex}.analytics-html.projects-page .projects-new-card strong{z-index:1;color:currentColor;font-family:var(--cal-font-serif);font-size:20px;font-style:italic;font-weight:500}.analytics-html.projects-page .projects-new-card em{z-index:1;color:currentColor;font-family:var(--cal-font-mono);letter-spacing:.22em;text-transform:uppercase;font-size:10px;font-style:normal;font-weight:700}.analytics-html.projects-page .projects-archive-card .archive-empty{border-color:var(--cal-line);background:var(--cal-green-tint);border-radius:4px;margin:24px}.analytics-html.projects-page .projects-archive-card .archive-empty .panel-label{color:var(--cal-green)}.analytics-report-main{max-width:1180px}.analytics-report{gap:22px;display:grid}.analytics-report-head{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:8px;justify-content:space-between;gap:32px;padding:46px 54px 30px;display:flex}.analytics-report-label,.analytics-report-meta p,.analytics-report-section-head p,.analytics-report-foot p{letter-spacing:.18em;text-transform:uppercase;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:700}.analytics-report-label{color:var(--ink-faint);margin:0 0 14px}.analytics-report-head h1{color:var(--ink);letter-spacing:0;margin:0;font-family:Fraunces,Georgia,serif;font-size:clamp(2.05rem,4vw,3.1rem);font-weight:500;line-height:1.05}.analytics-report-head h1 em,.analytics-report-section-head h2 em,.analytics-verdict-text h3 em{color:var(--accent);font-style:italic}.analytics-report-subtitle{color:var(--ink-dim);flex-wrap:wrap;gap:8px;margin:12px 0 0;font-size:13px;line-height:1.55;display:flex}.analytics-report-subtitle span{color:var(--ink-faint)}.analytics-report-meta{text-align:right;min-width:168px}.analytics-report-meta p{color:var(--ink-faint);margin:0 0 5px}.analytics-report-meta p:not(:first-child){margin-top:14px}.analytics-report-meta strong{color:var(--ink);font-family:JetBrains Mono,monospace;font-size:12px;font-weight:700;display:block}.analytics-report-toolbar,.analytics-report-section{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:8px;padding:34px 54px}.analytics-report-toolbar{grid-template-columns:minmax(230px,.45fr) minmax(280px,.55fr);align-items:center;gap:24px;display:grid}.analytics-report-grid{grid-template-columns:repeat(12,minmax(0,1fr));align-items:stretch;gap:22px;display:grid}.analytics-report-grid>.analytics-report-section{min-width:0;height:100%}.analytics-panel-full{grid-column:1/-1}.analytics-panel-wide{grid-column:span 8}.analytics-panel-narrow{grid-column:span 4}.analytics-panel-half{grid-column:span 6}.analytics-report-section-head{grid-template-columns:auto 1fr;align-items:start;gap:16px;margin-bottom:26px;display:grid}.analytics-report-num{color:var(--accent);font-family:Fraunces,Georgia,serif;font-size:1.55rem;font-style:italic;line-height:1}.analytics-report-section-head h2{color:var(--ink);letter-spacing:0;margin:0 0 6px;font-family:Fraunces,Georgia,serif;font-size:1.75rem;font-weight:500;line-height:1.1}.analytics-report-section-head p{max-width:720px;color:var(--ink-dim);letter-spacing:0;text-transform:none;margin:0;font-family:Inter,system-ui,sans-serif;font-size:13px;font-weight:500;line-height:1.55}.analytics-verdict-block{background:linear-gradient(#eef7f0,#fff);border:1px solid #0e63389e;border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:34px;min-height:100%;padding:32px 34px;display:grid;position:relative;overflow:hidden}.analytics-verdict-block:before,.analytics-verdict-block:after{content:"";pointer-events:none;border-radius:50%;position:absolute}.analytics-verdict-block:before{border:1px dashed #0e633847;width:230px;height:230px;top:-82px;right:-78px}.analytics-verdict-block:after{border:1px solid #0e63382e;width:150px;height:150px;top:-40px;right:-34px}.analytics-verdict-grade{z-index:1;border:1px solid var(--accent);background:#fff;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:148px;height:148px;display:flex;position:relative;box-shadow:0 0 0 8px #0e63380f}.analytics-verdict-grade span{color:var(--accent);font-family:Fraunces,Georgia,serif;font-size:4.5rem;font-style:italic;line-height:.9}.analytics-verdict-grade em{max-width:100px;color:var(--accent);letter-spacing:.16em;text-align:center;text-transform:uppercase;font-family:JetBrains Mono,monospace;font-size:9px;font-style:normal;font-weight:800;line-height:1.35}.analytics-verdict-text{z-index:1;position:relative}.analytics-verdict-text>strong{min-height:28px;color:var(--accent);letter-spacing:.16em;text-transform:uppercase;background:#fff;border:1px solid #0e63387a;border-radius:4px;align-items:center;gap:8px;padding:0 12px;font-family:JetBrains Mono,monospace;font-size:10px;display:inline-flex}.analytics-verdict-text>strong:before{content:"";background:var(--accent);border-radius:50%;width:6px;height:6px}.analytics-verdict-text h3{max-width:620px;color:var(--ink);letter-spacing:0;margin:14px 0 10px;font-family:Fraunces,Georgia,serif;font-size:clamp(1.9rem,3vw,2.55rem);font-weight:500;line-height:1.1}.analytics-verdict-text p{max-width:700px;color:var(--ink-dim);margin:0;font-size:14px;line-height:1.65}.analytics-verdict-metrics{border-top:1px solid #0e63383d;grid-template-columns:repeat(3,1fr);gap:0;margin-top:0;padding-top:0;display:grid}.analytics-verdict-metrics--stacked{border-top:0;flex-direction:column;justify-content:stretch;min-height:calc(100% - 84px);display:flex}.analytics-verdict-metrics div{border-right:1px solid #0e633829;padding:0 20px}.analytics-verdict-metrics--stacked div{border-bottom:1px solid #0e633829;border-right:0;flex:1;padding:18px 0}.analytics-verdict-metrics--stacked div:first-child{padding-top:0}.analytics-verdict-metrics--stacked div:last-child{border-bottom:0;padding-bottom:0}.analytics-verdict-metrics div:first-child{padding-left:0}.analytics-verdict-metrics div:last-child{border-right:0;padding-right:0}.analytics-verdict-metrics span,.analytics-report-insight span{color:var(--ink-faint);letter-spacing:.14em;text-transform:uppercase;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:700;display:block}.analytics-verdict-metrics strong{color:var(--ink);margin-top:7px;font-family:Fraunces,Georgia,serif;font-size:1.12rem;font-weight:500;line-height:1.25;display:block}.analytics-verdict-metrics em{color:var(--ink-dim);margin-top:5px;font-family:JetBrains Mono,monospace;font-size:11px;font-style:normal;display:block}.analytics-report-insights{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.analytics-report-insight{border:1px solid var(--line);background:var(--bg-2);border-radius:7px;padding:22px}.analytics-report-icon{width:38px;height:38px;color:var(--accent);margin-bottom:16px}.analytics-report-icon svg{fill:none;stroke:currentColor;stroke-width:1.4px;stroke-linecap:round;stroke-linejoin:round;width:100%;height:100%}.analytics-report-icon svg circle:last-child{fill:currentColor}.analytics-report-insight h3{color:var(--ink);letter-spacing:0;margin:0 0 8px;font-family:Fraunces,Georgia,serif;font-size:1.25rem;font-style:italic;font-weight:500}.analytics-report-insight p{min-height:64px;color:var(--ink-dim);margin:0 0 14px;font-size:13px;line-height:1.6}.analytics-report-insight span{border-top:1px solid var(--line);color:var(--accent);letter-spacing:.06em;text-transform:none;padding-top:12px}.analytics-report-split{grid-template-columns:minmax(0,1.45fr) minmax(300px,.9fr);align-items:stretch;gap:24px;display:grid}.analytics-report-split .analytics-card{min-width:0}.analytics-run-table-wrap{overflow-x:auto}.analytics-run-table{border-collapse:collapse;width:100%;min-width:760px}.analytics-run-table th{border-bottom:1px solid var(--line-strong);color:var(--ink-faint);letter-spacing:.16em;text-align:left;text-transform:uppercase;padding:0 16px 12px 0;font-family:JetBrains Mono,monospace;font-size:9px;font-weight:800}.analytics-run-table th:last-child,.analytics-run-table td:last-child{text-align:right;padding-right:0}.analytics-run-table td{border-bottom:1px solid var(--line);color:var(--ink);padding:15px 16px 15px 0;font-size:12px}.analytics-run-table tr.best-row{background:linear-gradient(90deg,#eef7f0,#0000)}.analytics-run-name{color:var(--ink);font-family:Fraunces,Georgia,serif;font-size:1.05rem;font-style:italic;line-height:1.2}.analytics-run-name span{color:var(--accent);margin-left:8px;font-size:.82rem}.analytics-run-sub,.analytics-table-muted{color:var(--ink-faint);margin-top:3px;font-family:JetBrains Mono,monospace;font-size:10px}.analytics-model-pill{border:1px solid var(--line-strong);min-height:23px;color:var(--ink-dim);letter-spacing:.1em;text-transform:uppercase;border-radius:999px;align-items:center;padding:0 10px;font-family:JetBrains Mono,monospace;font-size:9px;font-weight:800;display:inline-flex}.analytics-model-pill.fisheye{color:var(--accent);background:#eef7f0;border-color:#0e633873}.analytics-model-pill.pinhole{color:#2d6f8f;background:#2d6f8f14;border-color:#2d6f8f6b}.analytics-model-pill.pinhole_wide{color:#5b5aa6;background:#5b5aa61a;border-color:#5b5aa66b}.analytics-table-num{color:var(--ink);font-family:JetBrains Mono,monospace;font-size:12px;font-weight:700}.analytics-table-num.best{color:var(--accent)}.analytics-mini-bar{background:var(--line);vertical-align:middle;border-radius:999px;width:72px;height:5px;margin-right:10px;display:inline-block;position:relative}.analytics-mini-bar span{border-radius:inherit;background:var(--accent);position:absolute;inset:0 auto 0 0}.analytics-report-foot{border:1px solid var(--line);background:var(--bg-2);box-shadow:var(--shadow);border-radius:8px;justify-content:space-between;gap:24px;padding:30px 54px 42px;display:flex}.analytics-report-foot p{color:var(--ink-faint);margin:0 0 7px}.analytics-report-foot strong{color:var(--ink);font-family:Fraunces,Georgia,serif;font-size:1.2rem;font-style:italic;font-weight:500;display:block}.analytics-report-foot span,.analytics-report-foot em{color:var(--ink-dim);margin-top:4px;font-size:12px;font-style:normal;display:block}.analytics-report-foot em{text-align:right;font-family:JetBrains Mono,monospace}.analytics-kpis{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.analytics-camera-filter{box-shadow:var(--shadow);background:#fff;border:1px solid #0e633829;border-radius:8px;grid-template-columns:minmax(220px,.4fr) minmax(280px,.6fr);align-items:center;gap:22px;padding:18px 20px;display:grid}.analytics-camera-filter h2{color:var(--ink);margin-top:4px;font-family:Fraunces,serif;font-size:1.35rem;font-weight:500}.analytics-scope-current{border:1px solid #0e63384d;border-left:5px solid var(--accent);background:#eef7f0;border-radius:7px;padding:12px 14px;box-shadow:inset 0 0 0 1px #ffffffb8}.analytics-scope-current .panel-label{color:var(--accent)}.analytics-camera-filter p{color:var(--ink-dim);margin-top:8px;font-size:13px;line-height:1.45}.analytics-camera-select{justify-self:end;gap:8px;width:min(100%,430px);display:grid}.analytics-camera-select label{color:var(--ink-faint);text-transform:uppercase;letter-spacing:.15em;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:700}.analytics-camera-select select{background:linear-gradient(180deg, #fff, var(--bg-2));border-color:#0e633838;min-height:44px;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px;font-weight:700}.analytics-camera-select span{color:var(--ink-dim);font-size:12px;line-height:1.4}.analytics-kpis div{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:8px;padding:18px 20px}.analytics-kpis strong{color:var(--ink);margin-top:8px;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:1.7rem;line-height:1;display:block}.analytics-grid-main{grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);gap:18px;display:grid}.analytics-card{background:#fff;border:1px solid #0e633829;border-radius:8px;min-width:0;padding:20px;box-shadow:inset 0 1px #ffffffeb,0 20px 44px #141e181c}.analytics-card-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:14px;margin-bottom:16px;padding-bottom:14px;display:flex}.analytics-card-head h2{color:var(--ink);margin-top:4px;font-family:Fraunces,serif;font-size:1.35rem;font-weight:500}.analytics-card-head>span{color:var(--ink-faint);letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:600}.analytics-chart-wrap{width:100%;overflow:hidden}.analytics-chart{width:100%;min-height:260px;display:block}.analytics-grid-line{stroke:#0e63381f;stroke-width:1px}.analytics-axis{stroke:#0e14114d;stroke-width:1.2px}.analytics-axis-label{fill:var(--ink-faint);letter-spacing:.08em;text-transform:uppercase;font-family:JetBrains Mono,monospace;font-size:10px}.analytics-line{fill:none;stroke:var(--accent);stroke-width:3px;stroke-linecap:round;stroke-linejoin:round}.analytics-dot-ring{fill:none;stroke:#0e633838;stroke-width:2px}.analytics-donut-layout{grid-template-columns:180px minmax(0,1fr);align-items:center;gap:18px;display:grid}.analytics-donut{width:180px;height:180px;transform:rotate(-90deg)}.analytics-donut-base,.analytics-donut-segment{fill:none;stroke-width:22px}.analytics-donut-base{stroke:#0e63381a}.analytics-donut-segment{transition:stroke-dasharray .2s}.analytics-donut-total,.analytics-donut-label{transform-origin:90px 90px;fill:var(--ink);transform:rotate(90deg)}.analytics-donut-total{font-family:Inter,system-ui,sans-serif;font-size:30px;font-weight:700}.analytics-donut-label{fill:var(--ink-faint);letter-spacing:.12em;text-transform:uppercase;font-family:JetBrains Mono,monospace;font-size:10px}.analytics-legend{gap:10px;display:grid}.analytics-legend div{color:var(--ink-dim);grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:9px;font-size:13px;display:grid}.analytics-legend span{border-radius:50%;width:10px;height:10px}.analytics-legend strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.analytics-legend em{color:var(--accent);font-family:JetBrains Mono,monospace;font-size:11px;font-style:normal;font-weight:700}.analytics-bars{gap:12px;display:grid}.analytics-bar-row{grid-template-columns:minmax(120px,1fr) minmax(130px,1.4fr) auto;align-items:center;gap:12px;display:grid}.analytics-bar-row strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:650;display:block;overflow:hidden}.analytics-bar-row span{color:var(--ink-faint);font-size:11px}.analytics-bar-row em{color:var(--accent);white-space:nowrap;font-family:JetBrains Mono,monospace;font-size:10px;font-style:normal;font-weight:700}.analytics-bar-track{background:#0e633817;border-radius:999px;height:9px;overflow:hidden}.analytics-bar-track span{border-radius:inherit;background:linear-gradient(90deg, var(--accent), #59a66e);height:100%;display:block}.analytics-empty-plot{border:1px dashed var(--line-strong);min-height:220px;color:var(--ink-faint);text-align:center;border-radius:8px;place-items:center;font-size:13px;display:grid}.stats-row{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.stat-card{background:var(--bg-2);border:1px solid var(--ink);box-shadow:var(--shadow);width:100%;color:inherit;font:inherit;text-align:left;border-radius:8px;flex-direction:column;gap:6px;padding:28px;transition:border-color .18s,box-shadow .18s,transform .18s;display:flex;overflow:hidden}.stat-card.clickable{cursor:pointer}.stat-card.clickable:hover,.stat-card.clickable.active{border-color:var(--ink);box-shadow:var(--shadow-lg);transform:translateY(-3px)}.stat-card.clickable.active{background:linear-gradient(180deg, #e8f6eeb8, #fffffff0), var(--bg-2);border-width:2px}.stat-card.clickable.active .stat-label,.stat-card.clickable.active .stat-helper{color:var(--ink)}.stat-card.clickable:focus-visible{outline-offset:3px;outline:2px solid #0e633861}.stat-label{color:var(--ink-faint);text-transform:uppercase;letter-spacing:.16em;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:500}.stat-value{color:var(--ink);letter-spacing:-.02em;font-family:Fraunces,serif;font-size:2.4rem;font-style:italic;font-weight:400;line-height:1.1;transition:transform .18s,color .18s}.stat-card.clickable:hover .stat-value,.stat-card.clickable.active .stat-value{transform:translate(4px)}.stat-value.accent{color:var(--accent)}.stat-helper{color:var(--ink-faint);font-size:13px}.stat-more{opacity:0;max-height:0;color:var(--accent);letter-spacing:.12em;text-transform:uppercase;font-family:JetBrains Mono,monospace;font-size:9px;font-weight:700;transition:max-height .2s,opacity .18s,transform .18s;overflow:hidden;transform:translateY(6px)}.stat-card.clickable:hover .stat-more,.stat-card.clickable:focus-visible .stat-more,.stat-card.clickable.active .stat-more{opacity:1;max-height:20px;transform:translateY(0)}.project-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;display:grid}.project-card{background:var(--bg-2);border:1px solid var(--ink);height:100%;min-height:232px;color:inherit;box-shadow:var(--shadow);border-radius:8px;flex-direction:column;gap:10px;padding:24px;text-decoration:none;transition:border-color .18s,transform .18s,box-shadow .18s;display:flex;position:relative}.project-card:hover{border-color:var(--ink);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.project-card__body{color:inherit;flex-direction:column;flex:1;gap:10px;text-decoration:none;display:flex}.project-card__header{justify-content:space-between;align-items:flex-start;gap:10px;padding-right:34px;display:flex}.project-card__name{color:var(--ink);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-family:Fraunces,serif;font-size:1.1rem;font-weight:500;line-height:1.3;display:-webkit-box;overflow:hidden}.project-card__desc{color:var(--ink-dim);-webkit-line-clamp:3;-webkit-box-orient:vertical;flex:1;font-size:13px;line-height:1.55;display:-webkit-box;overflow:hidden}.project-card__camera{gap:4px;padding-top:4px;display:grid}.project-card__camera span{color:var(--ink-faint);text-transform:uppercase;letter-spacing:.12em;font-family:JetBrains Mono,monospace;font-size:9px}.project-card__camera strong{color:var(--accent);text-overflow:ellipsis;white-space:nowrap;font-size:13px;line-height:1.4;overflow:hidden}.project-card__footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:8px;margin-top:4px;padding-top:12px;display:flex}.project-card__id{color:var(--ink-faint);letter-spacing:.08em;font-family:JetBrains Mono,monospace;font-size:10px}.project-card__actions{align-items:center;gap:10px;display:flex}.project-detail-tags{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.camera-workspace{grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);align-items:start;gap:18px;display:grid}.camera-list-panel,.camera-detail-panel{border:1px solid var(--line);background:#faf8f3;border-radius:20px;padding:0;overflow:hidden;box-shadow:inset 0 1px #ffffffeb,0 18px 48px #0f38281f,0 7px 18px #0f382814,0 1px 3px #0f38280f}.camera-list-panel .section-head{border-bottom:1px solid #0f38280f;margin:0;padding:30px 34px 24px}.camera-list-panel .panel-label{color:var(--accent);align-items:center;gap:8px;display:flex}.camera-list-panel .panel-label:before{content:"";background:var(--accent);border-radius:999px;width:6px;height:6px}.camera-list-panel .section-head h2{letter-spacing:-.02em;margin-top:6px;font-size:2.25rem;font-weight:500;line-height:1.05}.camera-list-panel .section-head h2 em{color:var(--accent);font-weight:400}.camera-list-panel .section-count{color:var(--ink-faint);letter-spacing:.14em}.camera-grid{gap:10px;padding:20px 28px 24px;display:grid}.camera-card{width:100%;color:inherit;text-align:left;cursor:pointer;box-shadow:none;background:#fff;border:1px solid #0f38280f;border-radius:10px;gap:8px;padding:12px 14px;transition:transform .18s,box-shadow .18s,background .18s,border-color .18s;display:grid;position:relative;overflow:hidden}.camera-card:hover{border-color:#0f38281f;transform:translate(2px);box-shadow:0 4px 12px #0f38280f,0 1px 3px #0f38280a}.camera-card.selected{border-color:var(--accent);background:linear-gradient(90deg,#0e63381a 0%,#fffffffa 60%),#fff;box-shadow:0 0 0 3px #0e633814,0 4px 12px #0f38280f}.camera-card-rail{background:0 0;border-radius:0 3px 3px 0;width:3px;position:absolute;inset:14px auto 14px 0}.camera-card.selected .camera-card-rail{background:var(--accent);width:3px}.camera-card-top{grid-template-columns:40px minmax(0,1fr);align-items:center;gap:12px;min-width:0;display:grid}.camera-card-lens{width:40px;height:40px;color:var(--ink);background:radial-gradient(circle,#0f3828d1 0 3px,#0000 4px),radial-gradient(circle,#0000 0 8px,#0f382838 9px 10px,#0000 11px),radial-gradient(circle,#0000 0 15px,#0f382829 16px 17px,#0000 18px),#faf8f3;border:1px solid #0f38281f;border-radius:50%;place-items:center;transition:transform .55s cubic-bezier(.16,1,.3,1),border-color .18s,background .18s;display:grid}.camera-card-lens span{border-radius:inherit;width:24px;height:24px;position:relative}.camera-card-lens span:before,.camera-card-lens span:after{content:"";opacity:.78;background:currentColor;position:absolute}.camera-card-lens span:before{width:1px;top:0;bottom:0;left:50%;transform:translate(-50%)}.camera-card-lens span:after{height:1px;top:50%;left:0;right:0;transform:translateY(-50%)}.camera-card:hover .camera-card-lens{transform:rotate(90deg)}.camera-card.selected .camera-card-lens{background:radial-gradient(circle at center, var(--accent) 0 3px, transparent 4px), radial-gradient(circle at center, transparent 0 8px, #0e633847 9px 10px, transparent 11px), radial-gradient(circle at center, transparent 0 15px, #0e633838 16px 17px, transparent 18px), #fff;color:var(--accent);border-color:#0e633847}.camera-card-copy{min-width:0}.camera-card-head,.camera-detail-head{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.camera-card-head{align-items:center}.camera-card-kicker,.camera-card-date,.camera-run-date{color:var(--ink-faint);text-transform:uppercase;letter-spacing:.12em;font-family:JetBrains Mono,monospace;font-size:9px}.camera-card-kicker,.camera-card-date{letter-spacing:.14em;font-size:8px}.camera-card strong,.camera-detail-head h2{color:var(--ink);font-family:Fraunces,serif}.camera-card strong{letter-spacing:0;text-overflow:ellipsis;white-space:nowrap;margin:1px 0 5px;font-family:Manrope,Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:1rem;font-weight:700;line-height:1.2;display:block;overflow:hidden}.camera-card-meta,.camera-card-bottom{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.camera-card-bottom{justify-content:space-between;gap:10px;padding-left:52px}.camera-card-stat{color:var(--ink-faint);letter-spacing:.04em;font-family:JetBrains Mono,monospace;font-size:9px}.camera-card-stat b{color:var(--ink);font-weight:700}.camera-card-stat--good b{color:var(--accent)}.camera-card-divider{background:#0f38281f;width:1px;height:10px}.camera-card-action{border:1px solid var(--accent);color:var(--accent);letter-spacing:.12em;text-transform:uppercase;opacity:0;background:0 0;border-radius:999px;align-items:center;gap:5px;padding:4px 10px;font-family:JetBrains Mono,monospace;font-size:8px;font-weight:700;line-height:1;transition:opacity .2s,transform .2s,background .2s,color .2s;display:inline-flex;transform:translate(8px)}.camera-card:hover .camera-card-action,.camera-card.selected .camera-card-action{opacity:1;transform:translate(0)}.camera-card.selected .camera-card-action{color:#fff;background:var(--accent)}.camera-card.selected .camera-card-action:before{content:"✓";font-family:Inter,system-ui,sans-serif}.camera-card-selected-badge{border:1px solid var(--accent);background:var(--accent);color:#fff;letter-spacing:.12em;text-transform:uppercase;width:fit-content;margin-top:7px;padding:3px 7px;font-family:JetBrains Mono,monospace;font-size:8px;font-weight:700;line-height:1;display:inline-flex}.camera-detail-head h2{color:var(--accent);letter-spacing:0;margin:2px 0 0;font-family:Manrope,Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:2.2rem;font-weight:700;line-height:1.05}.camera-detail-section-title{align-items:center;gap:14px;margin:-8px 0 0;padding:2px 32px 6px;display:flex}.camera-detail-head+.camera-detail-section-title{margin:0;display:none}.camera-detail-section-title:before,.camera-detail-section-title:after{content:"";background:#11182733;height:1px}.camera-detail-section-title:before{background:var(--accent);width:28px}.camera-detail-section-title:after{flex:1}.camera-detail-section-title span{color:var(--ink);letter-spacing:0;text-transform:none;font-family:Fraunces,Georgia,serif;font-size:1.38rem;font-style:italic;font-weight:500}.camera-detail-count{background:#fff;border:1px solid #0f382814;border-radius:999px;padding:3px 9px;color:var(--ink-faint)!important;letter-spacing:.08em!important;font-family:JetBrains Mono,monospace!important;font-size:11px!important;font-style:normal!important;font-weight:500!important}.camera-detail-menu{position:relative}.camera-menu-trigger{background:#ffffffb8;border-color:#11182729}.camera-menu-popover{z-index:8}.camera-detail-head{border-bottom:1px solid #0f38280f;padding:34px 36px 18px}.camera-detail-panel .panel-label{align-items:center;gap:8px;margin-bottom:10px;display:flex}.camera-detail-panel .panel-label:before{content:"";background:var(--accent);border-radius:999px;width:6px;height:6px;box-shadow:0 0 0 3px #0e633824}.camera-card-stats,.camera-detail-metrics{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.camera-card-stats{gap:4px}.camera-card-stats span,.camera-detail-metrics div{border:1px solid var(--line);color:var(--ink-faint);background:#ffffff7a;border-radius:8px;padding:8px 10px;font-size:10px;transition:border-color .22s,box-shadow .22s,transform .22s}.camera-detail-metrics div:hover{border-color:#0f382829;transform:translateY(-2px);box-shadow:0 4px 12px #0f38280f,0 1px 3px #0f38280a}.camera-card-stats span{padding:3px 5px;font-size:8px;line-height:1.05}.camera-card-stats b{font-size:.86rem}.camera-card-stats b,.camera-detail-metrics b{color:var(--accent);font-family:Fraunces,serif;font-size:1.18rem;font-style:italic;line-height:1;display:block}.camera-detail-metrics b{letter-spacing:0;font-variant-numeric:tabular-nums;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:1rem;font-style:normal;font-weight:650;line-height:1}.camera-detail-metrics span{text-transform:uppercase;letter-spacing:.12em;margin-bottom:4px;font-family:JetBrains Mono,monospace;font-size:7.5px;display:block}.camera-progress{background:#0e633814;border:1px solid #0e63383d;border-radius:999px;height:3px;overflow:hidden}.camera-progress span{border-radius:inherit;background:var(--accent);height:100%;display:block}.camera-models,.camera-run-tags{flex-wrap:wrap;gap:6px;display:flex}.camera-models{gap:6px}.camera-card .tag{border-radius:999px;padding:3px 7px;font-size:8px}.camera-detail-panel{isolation:isolate;color:var(--ink);background:#faf8f3;padding:0;position:sticky;top:24px;overflow:hidden}.camera-detail-panel:before{content:none}.camera-detail-panel>*{z-index:1;position:relative}.camera-detail-metrics{gap:6px;margin:0;padding:18px 32px 24px}.camera-detail-panel .panel-label,.camera-detail-panel .camera-run-date,.camera-detail-panel .camera-detail-metrics span{color:var(--ink-faint)}.camera-detail-panel .camera-detail-head h2,.camera-detail-panel .camera-detail-metrics b{color:var(--ink)}.camera-detail-panel .btn{color:var(--accent);background:#ffffffc7;border-color:#1118273d;box-shadow:0 10px 26px #0e633814}.camera-detail-panel .btn:hover:not(:disabled){border-color:var(--ink);background:#e8f6eeeb}.camera-detail-panel .camera-detail-metrics div,.camera-detail-panel .camera-run{box-shadow:none;background:#fff;border-color:#0f382814}.camera-detail-panel .camera-detail-metrics .best-rms-metric{background:linear-gradient(135deg,#0f3828 0%,#1a6b48 100%);border-color:#0000}.camera-detail-panel .camera-detail-metrics b{color:var(--accent)}.camera-detail-panel .camera-detail-metrics .best-rms-metric span{color:#faf8f3b8}.camera-detail-panel .camera-detail-metrics .best-rms-metric b{color:#faf8f3}.camera-detail-panel .camera-run:hover{border-color:#0f38282e;box-shadow:0 4px 12px #0f38280f,0 1px 3px #0f38280a}.camera-detail-panel .camera-run.camera-run--best{border-color:var(--accent);box-shadow:0 0 0 3px #0e633814,0 4px 12px #0f38280f}.camera-detail-panel .camera-run strong{color:var(--ink)}.camera-detail-panel .camera-run>div:first-child>span{color:var(--ink-faint)}.camera-run-list{gap:10px;margin-top:0;padding:0 32px 32px;display:grid}.camera-run{border:1px solid var(--line);min-height:88px;color:inherit;background:#ffffff94;border-radius:10px;grid-template-columns:minmax(190px,1fr) minmax(120px,auto);align-items:start;gap:8px 14px;padding:12px 14px;text-decoration:none;transition:border-color .18s,box-shadow .18s,transform .18s;display:grid;position:relative;overflow:visible}.camera-run:hover{transform:translate(2px)}.camera-run--best{border-color:var(--accent)}.camera-run--best:before{content:"";background:var(--accent);border-radius:0 3px 3px 0;width:3px;position:absolute;top:12px;bottom:12px;left:0}.camera-run--best>div:first-child{padding-left:24px}.camera-run>div:first-child{min-width:0}.camera-run strong{color:var(--ink);letter-spacing:0;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:3px;font-family:Fraunces,Georgia,serif;font-size:16px;font-weight:600;line-height:1.25;display:-webkit-box;overflow:hidden}.camera-run>div:first-child>span{color:var(--ink-faint);-webkit-line-clamp:1;-webkit-box-orient:vertical;font-size:11px;display:-webkit-box;overflow:hidden}.camera-run-tags{justify-content:flex-end}.camera-run-tags .tag{gap:4px;padding:2px 6px;font-size:7.5px}.camera-run-data{flex-wrap:wrap;grid-column:2;justify-content:flex-end;gap:4px;display:flex}.camera-run-data-tag{color:var(--ink);background:0 0;border-color:#0f38281f;border-radius:999px;padding:3px 7px;font-size:7.5px}.camera-run-date{color:#68736cc7;grid-area:2/1;align-self:center;font-size:8px}.camera-run-best-tick{z-index:2;color:#fff;background:var(--accent);width:16px;height:16px;box-shadow:none;border:0;border-radius:999px;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:12px;left:14px}.camera-run-best-tick svg{fill:none;stroke:currentColor;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;width:10px;height:10px}.camera-workspace,.camera-workspace *,.camera-workspace :before,.camera-workspace :after{transition:none!important;animation:none!important}.camera-card:hover,.camera-card:hover .camera-card-lens,.camera-detail-metrics div:hover,.camera-run:hover,.camera-card-action,.camera-card:hover .camera-card-action,.camera-card.selected .camera-card-action{transform:none}.project-menu{z-index:3;position:absolute;top:14px;right:14px}.project-menu-trigger{width:32px;height:32px;color:var(--ink-faint);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;transition:background .14s,border-color .14s,color .14s;display:inline-flex}.project-menu-trigger:hover,.project-menu-trigger[aria-expanded=true]{background:var(--bg-3);border-color:var(--line);color:var(--ink)}.project-menu-trigger svg{fill:currentColor;width:18px;height:18px}.project-menu-popover{border:1px solid var(--line);background:var(--bg-2);min-width:142px;box-shadow:var(--shadow-lg);border-radius:6px;padding:6px;position:absolute;top:38px;right:0}.project-menu-item{width:100%;color:var(--ink);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:4px;align-items:center;gap:9px;padding:9px 10px;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:600;display:flex}.project-menu-item:hover{background:var(--bg-3)}.project-menu-item.danger{color:var(--red)}.project-menu-item.danger:hover{background:var(--red-soft)}.project-menu-item svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;width:15px;height:15px}.form-stack{flex-direction:column;gap:16px;display:flex}.two-col{grid-template-columns:1fr 1fr;gap:16px;display:grid}.two-col>.full{grid-column:1/-1}.msg{border-left:3px solid;border-radius:4px;padding:12px 16px;font-family:JetBrains Mono,monospace;font-size:13px}.msg.ok{color:var(--accent);background:var(--accent-soft);border-color:var(--accent)}.msg.err{color:var(--red);background:var(--red-soft);border-color:var(--red)}.process-loader{border:1px solid var(--line-accent);background:linear-gradient(180deg, #ffffffc2, #eff4eceb), var(--accent-soft);box-shadow:0 1px 0 #ffffffc7 inset, var(--shadow);border-radius:6px;align-items:center;gap:16px;margin:16px 0;padding:14px 16px;display:flex;position:relative;overflow:hidden}.process-loader:after{content:"";background:linear-gradient(90deg,#0000,#0e633829,#0000);width:42%;animation:1.8s ease-in-out infinite processScan;position:absolute;top:0;bottom:0;left:-42%}.process-loader.compact{text-align:left;max-width:520px;margin:16px auto 0}.process-loader.overlay{z-index:5;background:linear-gradient(180deg, #ffffffdb, #e8f0e5f0), var(--accent-soft);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);pointer-events:none;justify-content:center;margin:0;padding:18px;position:absolute;inset:12px}.process-grid{z-index:1;background:#ffffff8f;border:1px solid #0e63383d;border-radius:4px;flex-shrink:0;grid-template-columns:repeat(4,10px);gap:4px;padding:8px;display:grid;position:relative}.process-grid span{width:10px;height:10px;animation:1.5s ease-in-out infinite processCell;animation-delay:calc(var(--i) * 55ms);background:#0e633814;border:1px solid #0e633873}.process-grid span:nth-child(4n+1),.process-grid span:nth-child(4n+4){background:#0e63382e}.process-copy{z-index:1;gap:3px;min-width:0;display:grid;position:relative}.process-copy strong{color:var(--accent);letter-spacing:.16em;text-transform:uppercase;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:700}.process-copy span{color:var(--ink-dim);font-size:13px;line-height:1.45}.process-phases{gap:8px;margin-top:10px;display:grid}.process-phase{background:#ffffff85;border:1px solid #0e633824;border-radius:4px;grid-template-columns:20px 1fr;align-items:start;gap:10px;padding:8px 10px;display:grid}.process-phase.active{background:#ecf4ebe6;border-color:#0e633861;box-shadow:inset 0 0 0 1px #0e63380f}.process-phase.done{background:#f0f6efc2;border-color:#0e633838}.process-phase-index{width:20px;height:20px;color:var(--accent);background:#ffffffeb;border:1px solid #0e633842;border-radius:999px;justify-content:center;align-items:center;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:700;display:inline-flex}.process-phase.active .process-phase-index,.process-phase.done .process-phase-index{background:#0e63381f;border-color:#0e633866}.process-phase-copy{gap:2px;display:grid}.process-phase-copy strong{letter-spacing:.12em;text-transform:uppercase;color:var(--ink);font-family:JetBrains Mono,monospace;font-size:10px;font-weight:700}.process-phase-copy span{color:var(--ink-dim);font-size:12px;line-height:1.45}@keyframes processScan{0%{transform:translate(0)}55%,to{transform:translate(340%)}}@keyframes processCell{0%,to{background:#0e633814;transform:scale(1)}45%{background:var(--accent);transform:scale(.82)}}.step-panel{background:var(--bg-2);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:8px;overflow:hidden}.step-panel+.step-panel{margin-top:20px}.step-panel-head{border-bottom:1px solid var(--line);align-items:flex-start;gap:20px;padding:28px 32px 24px;display:flex}.step-number{color:var(--ink-faint);text-align:right;flex-shrink:0;width:36px;font-family:Fraunces,serif;font-size:2rem;font-style:italic;font-weight:300;line-height:1}.step-panel.done .step-number{color:var(--accent)}.step-panel-title-area{flex:1;min-width:0}.step-panel-title-area .panel-label{margin-bottom:4px}.step-panel-title-area h2{color:var(--ink);font-family:Fraunces,serif;font-size:1.3rem;font-weight:400}.step-panel-title-area h2 em{color:var(--accent);font-style:italic;font-weight:500}.step-panel-status{flex-shrink:0}.step-panel-body{flex-direction:column;gap:20px;padding:28px 32px;display:flex}.result-grid{border-left:3px solid var(--accent);background:var(--bg-3);border-radius:0 4px 4px 0;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:0;display:grid;overflow:hidden}.result-metric{border-right:1px solid var(--line);border-bottom:1px solid var(--line);flex-direction:column;gap:4px;padding:16px 20px;display:flex}.result-metric:last-child{border-right:none}.result-metric-label{text-transform:uppercase;letter-spacing:.12em;color:var(--ink-faint);font-family:JetBrains Mono,monospace;font-size:10px;font-weight:500}.result-metric-value{color:var(--accent);font-family:JetBrains Mono,monospace;font-size:1.3rem;font-weight:500;line-height:1.2}.image-list{border-radius:4px;flex-direction:column;gap:5px;max-height:200px;display:flex;overflow-y:auto}.image-list-item{background:var(--bg-3);border:1px solid var(--line);color:var(--ink-dim);letter-spacing:.04em;border-radius:3px;justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;font-family:JetBrains Mono,monospace;font-size:12px;display:flex}.image-list-item span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.preview-image{object-fit:contain;border:1px solid var(--line-strong);background:var(--bg-3);border-radius:6px;width:100%;max-height:520px}.preview-download-row{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding-top:20px;display:flex}.muted{color:var(--ink-faint);font-size:14px}.muted.mono{font-family:JetBrains Mono,monospace;font-size:12px}.ghost-link{text-transform:uppercase;letter-spacing:.1em;color:var(--accent);font-family:JetBrains Mono,monospace;font-size:11px;font-weight:500;text-decoration:none;transition:color .14s}.ghost-link:hover{color:var(--accent-hover)}.archive-empty{border:1px dashed var(--line-strong);background:var(--bg-3);border-radius:8px;flex-direction:column;align-items:flex-start;gap:12px;padding:34px;display:flex}.archive-empty h3{color:var(--ink);font-family:Fraunces,serif;font-size:24px;font-weight:400}.archive-empty p{max-width:520px;font-size:14px;line-height:1.6}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#12181461;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.confirm-modal{border:1px solid var(--line);background:var(--bg-2);border-radius:8px;width:min(520px,100%);padding:30px;box-shadow:0 24px 80px #1218142e}.confirm-modal h2{letter-spacing:-.02em;margin-top:6px;font-family:Fraunces,serif;font-size:30px;font-weight:300}.confirm-modal h2 em{color:var(--red);font-style:italic;font-weight:500}.confirm-modal p{margin:12px 0 18px;font-size:14px;line-height:1.65}.danger-label{color:var(--red)}.confirm-project-name{border-left:3px solid var(--red);background:var(--red-soft);color:var(--ink);overflow-wrap:anywhere;margin-bottom:18px;padding:12px 14px;font-family:JetBrains Mono,monospace;font-size:13px}.confirm-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:22px;display:flex}.btn.delete-solid{background:var(--red);border-color:var(--red);color:#fff}.btn.delete-solid:hover:not(:disabled){background:#962b25}.section+.section{margin-top:32px}@media (width<=1100px){.app:not(.sidebar-collapsed){grid-template-columns:72px 1fr}.app:not(.sidebar-collapsed) .sidebar{width:72px}.brand-wordmark,.sidebar-attached-toggle span,.workspace-info,.nav-item>span:not(.nav-icon):not(.nav-badge),.nav-label,.user-info,.sidebar-logout-btn span,.sidebar-plan-card,.credits,.workspace,.sidebar-collapsed .brand-wordmark,.sidebar-collapsed .workspace-info,.sidebar-collapsed .nav-item>span:not(.nav-icon):not(.nav-badge),.sidebar-collapsed .nav-label,.sidebar-collapsed .user-info,.sidebar-collapsed .sidebar-logout-btn span,.sidebar-collapsed .sidebar-plan-card,.sidebar-collapsed .credits,.sidebar-collapsed .workspace{display:none}.sidebar-head{justify-content:center;padding:22px 0 18px}.sidebar-brand{justify-content:center}.sidebar-attached-toggle{min-height:96px;padding-left:6px;top:88px;left:68px}.nav-item{justify-content:center;padding:10px}.nav-item.active:before{display:none}.user-card{justify-content:center;padding:10px 0}.sidebar-logout-btn{min-height:38px;padding:0}.sidebar-bottom{padding:16px 12px 20px}.stats-row{grid-template-columns:repeat(2,1fr)}}@media (width<=900px){.page-header{padding:32px 24px 28px}.display-title{font-size:2.2rem}.content-grid,.content-grid.thirds,.analytics-grid-main,.project-start-panel,.params-split,.results-panel,.compare-view,.camera-workspace,.rectify-panel,.two-col{grid-template-columns:1fr}.camera-detail-panel{position:static}.rectify-panel{width:auto;margin-left:0;transform:none}.two-col>.full{grid-column:span 1}.params-split{gap:46px;width:auto;margin-left:0;transform:none}.step-panel-head{padding:22px 24px 20px}.step-panel-body,.panel,.params-panel{padding:22px 24px}.model-grid{grid-template-columns:1fr}.rectify-controls{grid-area:1/1;max-height:none}.rectify-preview{grid-area:2/1}}@media (width<=768px){.app{grid-template-columns:1fr}.sidebar{display:none}.topbar{padding:14px 20px}.topbar-right .icon-btn{display:none}.stepper-container{padding:28px 20px 24px}.stepper-title{font-size:30px}.main{padding:32px 20px 70px}.step-nav{pointer-events:auto;justify-content:center;gap:28px;width:100%;margin-top:36px;position:static;transform:none}.compass-nav-button{width:116px}.compass-dial{width:116px;height:116px}.compass-tick{transform-origin:50% 58px}.pattern-grid{grid-template-columns:1fr}.hstep-circle{width:42px;height:42px;font-size:12px}.hstep-label{font-size:10px}.hstep-meta{display:none}.validation-pager{justify-content:space-between;width:100%}.validation-toolbar{flex-direction:column;align-items:flex-start}.validation-batch-actions{justify-content:flex-start;align-items:flex-start;width:100%}.validation-approve-hint{text-align:left;max-width:none}.validation-batch-buttons{justify-content:flex-start}.validation-pagebar{flex-direction:column;align-items:flex-start}.validation-page-count{text-align:center;flex:1}.stepper-track:before,.stepper-track .progress-line{top:21px}}@media (width<=640px){.session-badge{display:none}.display-title{font-size:1.8rem}.stats-row,.analytics-kpis{grid-template-columns:1fr 1fr}.analytics-camera-filter,.analytics-report-head,.analytics-report-toolbar,.analytics-verdict-block,.analytics-compact-topbar,.analytics-compact-verdict,.analytics-report-split,.analytics-report-foot{grid-template-columns:1fr}.analytics-compact-topbar,.analytics-compact-verdict,.analytics-compact-controls,.analytics-compact-verdict-stats{align-items:flex-start}.analytics-compact-topbar,.analytics-compact-verdict{display:grid}.analytics-compact-controls,.analytics-compact-verdict-stats{justify-content:flex-start}.analytics-compact-grid{grid-template-columns:1fr}.analytics-compact-card.span-4,.analytics-compact-card.span-5,.analytics-compact-card.span-6,.analytics-compact-card.span-7,.analytics-compact-card.span-8,.analytics-compact-card.span-12{grid-column:1/-1}.analytics-report-grid{grid-template-columns:1fr}.analytics-panel-full,.analytics-panel-wide,.analytics-panel-narrow,.analytics-panel-half{grid-column:1/-1}.analytics-report-head,.analytics-report-toolbar,.analytics-report-section,.analytics-report-foot{padding-left:24px;padding-right:24px}.analytics-report-meta,.analytics-report-foot em{text-align:left}.analytics-verdict-metrics,.analytics-report-insights{grid-template-columns:1fr;gap:14px}.analytics-verdict-metrics div{border-bottom:1px solid #0e633829;border-right:0;padding:0 0 14px}.analytics-verdict-metrics div:last-child{border-bottom:0;padding-bottom:0}.analytics-camera-select{justify-self:stretch;width:100%}.analytics-donut-layout,.analytics-bar-row,.camera-card-stats,.camera-detail-metrics,.camera-card-head,.camera-detail-head,.camera-run{grid-template-columns:1fr}.camera-card-head,.camera-detail-head{flex-direction:column}.camera-run-tags{justify-content:flex-start}.camera-run-data,.camera-run-date{grid-area:auto/1;justify-content:flex-start}.section-head,.uploaded-header{flex-direction:column;align-items:flex-start;gap:8px}.toolbar-stats{justify-content:space-between;gap:12px;width:100%}.input-row{grid-template-columns:1fr}.option-head{flex-direction:column;gap:12px;padding:22px 24px 20px}.option-ticket{width:auto;margin:0;position:absolute;top:-32px;left:0}.manual-fields{grid-template-columns:1fr}.charuco-fields{grid-template-rows:none;grid-template-columns:1fr;height:auto}.charuco-fields-shell{height:auto}.charuco-fields .full-row{grid-column:span 1}.rectify-preview,.rectify-controls{padding:20px}.rectify-output{min-height:280px}.rectify-slider-grid{grid-template-columns:1fr}.manual-fields .span-2{grid-column:span 1}.charuco-manual-test{flex-direction:column;align-items:stretch;gap:12px}.charuco-manual-test .btn{width:100%;min-width:0}.option-action{width:calc(100% - 48px);height:auto;min-height:0;margin-left:24px;margin-right:24px}.charuco-params .option-action{height:auto;min-height:0}.manual-test .btn{width:100%}.manual-standard-test{flex-direction:column;align-items:stretch;padding-inline:0;display:flex}.manual-test-meta{max-width:none}.auto-detect,.detection-result{width:calc(100% - 48px);margin-left:24px;margin-right:24px}.detect-msg{margin-left:24px;margin-right:24px}.review-modal-backdrop{padding:16px}.review-modal{width:100%;height:86vh}.review-image-wrap{padding:58px 18px 18px}.review-arrow{width:42px;height:42px;top:auto;bottom:100px;transform:none}.review-arrow:hover{transform:scale(1.04)}.review-footer{flex-direction:column;align-items:stretch}.review-actions{width:100%}.review-actions .btn{flex:1}}@media (width<=500px){.hstep-label{display:none}.stats-row{grid-template-columns:1fr}.step-nav{gap:16px}.compass-nav-button{width:104px}.compass-dial{width:104px;height:104px}.compass-tick{transform-origin:50% 52px}.compass-dial-core{width:48px;height:48px}.compass-nav-button.next .compass-dial-core{width:54px;height:54px}}@media (width<=900px){.analytics-html .topbar,.analytics-html .analytics-control-row,.analytics-html .verdict{align-items:flex-start;display:grid}.analytics-html .controls,.analytics-html .verdict-stats{justify-content:flex-start}.analytics-html .verdict-camera{border-right:0;border-bottom:1px solid var(--cal-line-faint);padding-bottom:16px;padding-right:0}.analytics-html .grid,.analytics-html .cameras-control-row,.analytics-html .cameras-workspace-grid{grid-template-columns:1fr}.analytics-html.projects-page .projects-frame-head{align-items:flex-start;display:grid}.analytics-html.projects-page .projects-frame-controls{justify-content:flex-start}.analytics-html .cameras-health-summary{grid-template-columns:1fr}.analytics-html .cameras-health-camera{border-right:0;border-bottom:1px solid var(--cal-line-faint);padding-bottom:14px;padding-right:0}.analytics-html .cameras-control-row,.analytics-html .projects-control-row{justify-content:stretch}.analytics-html .span-3,.analytics-html .span-4,.analytics-html .span-5,.analytics-html .span-6,.analytics-html .span-7,.analytics-html .span-8,.analytics-html .span-12{grid-column:1/-1}}@media (width<=620px){.analytics-html .analytics-control-row{padding:0 0 18px}.analytics-html .verdict{grid-template-columns:1fr;padding:22px}.analytics-html .cameras-verdict{padding-top:68px}.analytics-html .cameras-verdict-menu{top:22px;left:22px;right:auto}.analytics-html .cameras-runs-head-actions{justify-content:flex-start;align-items:flex-start}.analytics-html .cameras-health-stats{grid-template-columns:1fr}.analytics-html .cameras-health-stats div{border-left:0;border-top:1px solid var(--cal-line-faint);padding:10px 0 0}.analytics-html .verdict-stats,.analytics-html .controls,.analytics-html .card-head,.analytics-html .analytics-row-header{display:grid}.analytics-html .analytics-row-header{grid-template-columns:auto 1fr}.analytics-html .analytics-row-header:after,.analytics-html .analytics-row-header em{grid-column:1/-1}.analytics-html .camera-select,.analytics-html .date-range-menu,.analytics-html .export-menu,.analytics-html .btn-ghost,.analytics-html .date-range-button,.analytics-html .export-button{width:100%}.analytics-html .date-range-options,.analytics-html .export-options{left:0;right:0}.analytics-html.projects-page .projects-frame-head{padding:18px}.analytics-html.projects-page .projects-frame-controls,.analytics-html.projects-page .projects-filter-chips{width:100%}.analytics-html.projects-page .projects-filter-chip{flex:1;justify-content:center;padding-inline:8px}.analytics-html.projects-page .projects-total-pill{justify-content:center;width:100%}.analytics-html .analytics-scope-summary strong{white-space:normal}.analytics-html .coverage-wrap,.analytics-html .intrinsics,.analytics-html .model-trend-grid,.analytics-html .model-trend-panel{grid-template-columns:1fr}.analytics-html .model-trend-head{border-right:0;border-bottom:1px solid var(--cal-line-faint);padding:0 0 10px}.analytics-html .intrinsics .row.right{border-left:0;padding-left:0}}@media (width<=900px){.analytics-html.cameras-page .cameras-row-header{align-items:flex-start}.analytics-html.cameras-page .cameras-workspace-grid,.analytics-html.cameras-page .cameras-health-summary{grid-template-columns:1fr}.analytics-html.cameras-page .cameras-health-stats{flex-wrap:wrap}.analytics-html.cameras-page .cameras-health-stats div{text-align:left}}@media (width<=620px){.analytics-html.cameras-page .cameras-row-header{grid-template-columns:auto 1fr;padding:18px;display:grid}.analytics-html.cameras-page .cameras-row-header>em{grid-column:1/-1}.analytics-html.cameras-page .cameras-list-card .card-head,.analytics-html.cameras-page .cameras-runs-card .card-head,.analytics-html.cameras-page .cameras-health-summary{padding:18px}.analytics-html.cameras-page .cameras-list-item{grid-template-columns:auto minmax(0,1fr);padding:16px 18px}.analytics-html.cameras-page .cameras-health-stats{grid-template-columns:1fr;display:grid}.analytics-html.cameras-page .cameras-health-stats div{border-top:1px solid var(--cal-line-soft);border-right:0;padding:10px 0 0}}.blog-page{width:min(1180px,100% - 56px);margin:0 auto;padding:64px 0 80px}.blog-article-page{padding-top:24px}.blog-hero{grid-template-columns:minmax(0,1fr) minmax(340px,.78fr);align-items:stretch;gap:28px;margin-bottom:56px;display:grid}.blog-hero-copy{box-shadow:none;background:0 0;border:0;flex-direction:column;justify-content:center;padding:clamp(32px,4vw,48px) 0;display:flex}.blog-eyebrow{color:var(--accent);letter-spacing:.26em;text-transform:uppercase;background:#0e63380a;border:1px solid #0e63382e;border-radius:999px;align-self:flex-start;align-items:center;gap:10px;margin:0 0 18px;padding:5px 14px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;font-weight:700;display:inline-flex}.blog-eyebrow:before{content:"";background:#6ba88a;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 3px #6ba88a2e}.blog-hero h1,.blog-not-found h1{max-width:820px;color:var(--ink);letter-spacing:-.03em;margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(34px,4.4vw,52px);font-style:italic;font-weight:400;line-height:1.06}.blog-hero h1 em,.blog-not-found h1 em,.blog-section-head h2 em,.blog-article-body h2 em,.blog-article-cta p em{color:var(--accent);font-style:italic;font-weight:600}.blog-hero-copy>p:not(.blog-eyebrow),.blog-article-hero>div>p,.blog-not-found p{max-width:540px;color:var(--ink-faint);margin-top:18px;font-family:Inter,system-ui,sans-serif;font-size:15px;font-weight:400;line-height:1.6}.blog-topic-row,.blog-card-tags{flex-wrap:wrap;gap:6px;display:flex}.blog-topic-row{margin-top:26px}.blog-topic-row span,.blog-card-tags span{color:var(--ink-dim);letter-spacing:.16em;text-transform:uppercase;background:#141e190d;border-radius:999px;align-items:center;padding:4px 10px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:9.5px;font-weight:600;display:inline-flex}.blog-card-tags span{color:var(--accent);background:#0e63380f;font-size:9px}.blog-card{color:#f4f1e8;background:radial-gradient(360px 200px at 100% 0,#6ba88a1a,#0000 70%),#0a0a08;border:1px solid #f4f1e814;border-radius:18px;flex-direction:column;gap:12px;padding:22px 24px 24px;text-decoration:none;transition:transform .22s,box-shadow .22s,border-color .22s;display:flex;overflow:hidden;box-shadow:inset 0 1px #f4f1e80a,0 2px #141e192e,0 14px 30px #141e192e,0 28px 56px #141e1924}.blog-card:hover{border-color:#6ba88a80;transform:translateY(-3px);box-shadow:inset 0 1px #f4f1e80d,0 2px #0e633852,0 20px 40px #0e633838,0 32px 60px #141e1933}.blog-card-visual{aspect-ratio:16/9;background:radial-gradient(360px 200px at 50% 0,#6ba88a38,#0000 70%),#13181c;border-bottom:1px solid #f4f1e80f;margin:-22px -24px 4px;overflow:hidden}.blog-card-visual img{object-fit:cover;width:100%;height:100%;display:block}.blog-card.featured{padding:28px 28px 30px}.blog-card-meta,.blog-article-meta{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.blog-card-meta span{color:#f4f1e88c;letter-spacing:.18em;text-transform:uppercase;font-family:JetBrains Mono,ui-monospace,monospace;font-size:9.5px;font-weight:700}.blog-card-meta span:first-child{color:#6ba88a}.blog-article-meta span{color:var(--ink-faint);letter-spacing:.18em;text-transform:uppercase;font-family:JetBrains Mono,ui-monospace,monospace;font-size:9.5px;font-weight:700}.blog-card h2{color:#f4f1e8;letter-spacing:-.015em;margin:4px 0 0;font-family:Inter,system-ui,sans-serif;font-size:clamp(18px,2vw,22px);font-style:normal;font-weight:700;line-height:1.25}.blog-card.featured h2{font-size:clamp(22px,2.6vw,28px);line-height:1.2}.blog-card p{color:#f4f1e8a6;margin:0;font-family:Inter,system-ui,sans-serif;font-size:13.5px;font-weight:400;line-height:1.6}.blog-card strong{color:#6ba88a;letter-spacing:.18em;text-transform:uppercase;align-items:center;gap:6px;margin-top:auto;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;font-weight:700;display:inline-flex}.blog-card-tags span{color:#6ba88a;background:#6ba88a24;border:1px solid #6ba88a38}.blog-card strong:after{content:"→";letter-spacing:0;font-family:Inter,system-ui,sans-serif;font-size:12px;transition:transform .22s}.blog-card:hover strong:after{transform:translate(3px)}.blog-section-head{max-width:760px;margin:0 0 24px}.blog-section-head .landing-section-eyebrow{color:var(--accent);letter-spacing:.24em;text-transform:uppercase;background:0 0;border:0;align-items:center;gap:10px;margin-bottom:12px;padding:0;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;font-weight:700;display:inline-flex}.blog-section-head .landing-section-eyebrow:before{content:"";background:#6ba88a;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 3px #6ba88a2e}.blog-section-head h2{color:var(--ink);letter-spacing:-.02em;margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(28px,3.2vw,40px);font-style:italic;font-weight:500;line-height:1.1}.blog-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-bottom:56px;display:grid}.blog-seo-panel{box-shadow:none;background:radial-gradient(520px 240px at 0 0,#0e63380f,#0000 70%),#fff;border:1px solid #141e1914;border-radius:22px;grid-template-columns:minmax(0,.85fr) minmax(0,1fr);align-items:center;gap:32px;padding:36px clamp(28px,4vw,44px);display:grid}.blog-seo-panel span{color:var(--accent);letter-spacing:.24em;text-transform:uppercase;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;font-weight:700}.blog-seo-panel h2{max-width:560px;color:var(--ink);letter-spacing:-.02em;margin:10px 0 0;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(24px,2.6vw,32px);font-style:italic;font-weight:500;line-height:1.15}.blog-seo-panel p{color:var(--ink-dim);margin:0;font-family:Inter,system-ui,sans-serif;font-size:14.5px;font-weight:400;line-height:1.6}.blog-reading-progress{z-index:50;pointer-events:none;background:#141e190d;height:2px;position:fixed;top:0;left:0;right:0}.blog-reading-progress>span{background:var(--accent);height:100%;transition:width .12s ease-out;display:block}.blog-article-page{position:relative}.blog-back-link{z-index:5;width:max-content;color:var(--ink-faint);letter-spacing:.2em;text-transform:uppercase;background:#fff;border:1px solid #141e1914;border-radius:999px;align-items:center;gap:8px;margin:0;padding:6px 14px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;font-weight:700;text-decoration:none;transition:color .22s,border-color .22s,background .22s;display:flex;position:absolute;top:0;right:0}.blog-back-link:before{content:"←";letter-spacing:0;font-family:Inter,system-ui,sans-serif;font-size:12px;transition:transform .22s}.blog-back-link:hover{color:var(--accent);background:#fbfaf6;border-color:#0e633838}.blog-back-link:hover:before{transform:translate(-3px)}.blog-article-hero{max-width:820px;box-shadow:none;text-align:center;background:0 0;border:0;border-bottom:1px solid #141e1914;margin:0 auto 28px;padding:0 0 22px;display:block}.blog-article-hero-copy{flex-direction:column;align-items:center;display:flex}.blog-article-hero .blog-eyebrow{margin:0 0 12px}.blog-article-hero h1{color:var(--ink);letter-spacing:-.02em;text-align:center;margin:0 0 14px;font-family:Inter,system-ui,sans-serif;font-size:clamp(26px,3vw,36px);font-style:normal;font-weight:700;line-height:1.18}.blog-article-deck{letter-spacing:0;text-align:center;max-width:720px;font-style:normal;font-weight:400;color:var(--ink-dim)!important;margin:0 auto 16px!important;font-family:Inter,system-ui,sans-serif!important;font-size:14.5px!important;line-height:1.55!important}.blog-article-meta{box-shadow:none;background:0 0;border:0;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin:0;padding:0;display:flex}.blog-article-meta span{color:var(--ink-faint);letter-spacing:.18em;text-transform:uppercase;background:0 0;border-radius:0;padding:0;font-family:JetBrains Mono,ui-monospace,monospace;font-size:9.5px;font-weight:700}.blog-article-meta-dot{border-radius:50%;height:3px;padding:0;background:#141e1938!important;width:3px!important}.blog-back-link{margin-bottom:18px}.blog-article-cover{background:#fff;border:1px solid #141e1914;border-radius:16px;max-width:1180px;margin:0 auto 28px;overflow:hidden;box-shadow:0 1px #141e1908,0 12px 24px #141e190d}.blog-article-cover img{aspect-ratio:28/9;object-fit:cover;background:#fbfaf6;width:100%;display:block}.blog-article-cover figcaption{color:var(--ink-faint);letter-spacing:.16em;text-transform:uppercase;text-align:left;background:#fbfaf6;border-top:1px solid #141e190f;margin:0;padding:12px 22px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;font-weight:700}.blog-image-frame{background:#fff;border:1px solid #141e1914;border-radius:14px;margin:0 0 32px;padding:0;overflow:hidden;box-shadow:0 1px #141e1908,0 10px 24px #141e190d}.blog-image-frame img{background:#fbfaf6;border:0;width:100%;display:block}.blog-image-frame figcaption{color:var(--ink-faint);letter-spacing:.16em;text-transform:uppercase;background:#fbfaf6;border-top:1px solid #141e190f;margin:0;padding:10px 18px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;font-weight:700}.blog-article-layout{grid-template-columns:240px minmax(0,1fr);align-items:start;gap:48px;max-width:1180px;margin:0 auto;display:grid}.blog-toc{background:radial-gradient(320px 180px at 100% 0,#6ba88a29,#0000 70%),#0a0a08;border:1px solid #0a0a08;border-radius:16px;flex-direction:column;gap:2px;padding:22px 22px 20px;display:flex;position:sticky;top:104px;box-shadow:0 1px #141e190a,0 16px 32px #141e191f}.blog-toc span{color:#6ba88a;letter-spacing:.24em;text-transform:uppercase;background:0 0;border-radius:0;align-items:center;gap:8px;margin-bottom:14px;padding:0;font-family:JetBrains Mono,ui-monospace,monospace;font-size:9.5px;font-weight:700;display:inline-flex}.blog-toc span:before{content:"";background:#6ba88a;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 3px #6ba88a33}.blog-toc a{color:#f4f1e8b8;border-radius:8px;padding:7px 10px 7px 14px;font-family:Inter,system-ui,sans-serif;font-size:12.5px;font-weight:500;line-height:1.35;text-decoration:none;transition:color .18s,background .18s;position:relative}.blog-toc a:before{content:"";background:0 0;border-radius:2px;width:3px;height:12px;transition:background .18s;position:absolute;top:50%;left:0;transform:translateY(-50%)}.blog-toc a:hover{color:#f4f1e8;background:#f4f1e80a}.blog-toc a:hover:before{background:#6ba88a}.blog-article-body{max-width:920px;box-shadow:none;background:0 0;border:0;padding:0}.blog-article-body>section{position:relative}.blog-article-body>section:not(.blog-takeaways):not(.blog-references){background:#f8f2e7;border:1px solid #141e1914;border-radius:16px;margin-top:18px;padding:28px 32px 32px;box-shadow:0 1px #141e1908,0 6px 18px #141e190a}.blog-article-body>section:not(.blog-takeaways):not(.blog-references):first-of-type,.blog-article-body>.blog-takeaways+section{margin-top:0}.blog-article-body>section.blog-references{margin-top:32px}.blog-section-header{align-items:baseline;gap:12px;margin:0 0 14px;display:flex}.blog-section-number{color:var(--ink-faint);letter-spacing:.16em;flex-shrink:0;font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px;font-weight:700;line-height:1}.blog-section-number-symbol{letter-spacing:0;color:var(--ink-faint);font-family:Cormorant Garamond,Georgia,serif;font-size:18px;font-style:italic;font-weight:600}.blog-section-header h2{flex:1;margin:0}.blog-article-body h2{color:var(--ink);letter-spacing:-.02em;margin:0 0 14px;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(19px,2.1vw,24px);font-style:italic;font-weight:500;line-height:1.2}.blog-article-body p,.blog-article-body li{color:#1a1f1c;letter-spacing:-.002em;font-family:Inter,system-ui,sans-serif;font-size:13.5px;font-weight:400;line-height:1.6}.blog-article-body p+p{margin-top:12px}.blog-takeaways+section>p:first-of-type{color:var(--ink);font-size:14.5px;font-weight:400;line-height:1.55}.blog-article-body h3{color:var(--ink);letter-spacing:-.01em;margin:22px 0 10px;font-family:Cormorant Garamond,Georgia,serif;font-size:18px;font-style:italic;font-weight:600}.blog-article-body ul{border-left:3px solid var(--accent);background:#0e633809;border-radius:0 10px 10px 0;gap:8px;margin:18px 0 0;padding:16px 20px;list-style:none;display:grid}.blog-article-body li{color:#1a1f1c;padding-left:22px;font-size:13px;line-height:1.55;position:relative}.blog-article-body li:before{content:"";background:var(--accent);border:0;border-radius:50%;width:6px;height:6px;position:absolute;top:8px;left:0}.blog-takeaways{color:#f4f1e8;background:radial-gradient(480px 240px at 100% 0,#6ba88a29,#0000 70%),#0a0a08;border:1px solid #0a0a08;border-radius:16px;margin:0 0 48px;padding:26px 30px;position:relative;box-shadow:0 14px 30px #141e191f}.blog-takeaways:before{display:none}.blog-takeaways-eyebrow{text-transform:uppercase;align-items:center;gap:8px;display:inline-flex;color:#6ba88a!important;letter-spacing:.26em!important;margin:0 0 10px!important;font-family:JetBrains Mono,ui-monospace,monospace!important;font-size:9.5px!important;font-weight:700!important;line-height:1!important}.blog-takeaways-eyebrow:before{content:"";background:#6ba88a;border-radius:50%;width:5px;height:5px;box-shadow:0 0 0 3px #6ba88a3d}.blog-takeaways h2{color:#f4f1e8;margin:0 0 18px;font-size:22px;font-style:italic;font-weight:500}.blog-takeaways ul{background:0 0;border:0;border-radius:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 24px;margin:0;padding:0;display:grid}.blog-takeaways li{color:#f4f1e8db;padding-left:20px;font-size:13.5px;line-height:1.55}.blog-takeaways li:before{background:#6ba88a;width:5px;height:5px;top:7px;box-shadow:0 0 0 3px #6ba88a33}.blog-math{color:var(--accent);display:inline-block}.blog-math-inline{background:#0e63380f;border:1px solid #0e633824;border-radius:6px;margin:0 1px;padding:1px 6px}.blog-math-inline .katex{color:var(--accent);font-size:.96em}.blog-math-display{border-left:3px solid var(--accent);color:var(--ink);background:linear-gradient(90deg,#0e63380d,#0000 80%),#0e633805;border-radius:12px;margin:18px 0;padding:16px 22px;display:block;overflow-x:auto}.blog-math-display .katex{color:var(--ink);font-size:1.1em}.blog-math-display .katex-display{text-align:left;margin:0}.blog-callout{border:0;border-left:3px solid var(--accent);color:var(--ink);letter-spacing:-.01em;background:linear-gradient(90deg,#0e63380b,#0000 80%);border-radius:0;margin:22px 0;padding:18px 22px 18px 44px;font-family:Cormorant Garamond,Georgia,serif;font-size:18px;font-style:italic;font-weight:500;line-height:1.4;position:relative}.blog-callout:before{content:"\"";color:var(--accent);opacity:.45;font-family:Cormorant Garamond,Georgia,serif;font-size:42px;font-style:italic;font-weight:700;line-height:1;position:absolute;top:6px;left:14px}.blog-article-body .blog-image-frame{margin-top:28px;margin-bottom:0}.blog-references ol{gap:12px;margin:16px 0 0;padding:0;list-style:none;display:grid}.blog-references li{background:#fff;border:1px solid #141e1914;border-radius:14px;padding:18px 22px;transition:border-color .18s,background .18s,transform .18s}.blog-references li:before{content:none}.blog-references li:hover{background:#fbfaf6;border-color:#0e633838;transform:translateY(-1px)}.blog-references a{color:var(--ink);letter-spacing:-.005em;font-family:Inter,system-ui,sans-serif;font-size:14.5px;font-style:italic;font-weight:400;line-height:1.35;text-decoration:none;transition:color .18s;display:block}.blog-references a:hover{color:var(--accent)}.blog-references span{color:var(--ink-faint);margin-top:6px;font-family:Inter,system-ui,sans-serif;font-size:13.5px;font-weight:400;line-height:1.55;display:block}.blog-related{border-top:1px solid #141e1914;max-width:1080px;margin:96px auto 0;padding-top:56px}.blog-related .blog-section-head{text-align:left;margin-bottom:28px}.blog-related-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.blog-related-card{color:var(--ink);background:#fff;border:1px solid #141e1914;border-radius:16px;flex-direction:column;gap:12px;padding:22px 24px;text-decoration:none;transition:transform .22s,border-color .22s,box-shadow .22s;display:flex;box-shadow:0 1px #141e1908,0 8px 20px #141e190a}.blog-related-card:hover{border-color:#0e633838;transform:translateY(-2px);box-shadow:0 1px #141e190a,0 16px 32px #141e1914}.blog-related-meta{letter-spacing:.18em;text-transform:uppercase;flex-wrap:wrap;gap:12px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:9.5px;font-weight:700;display:flex}.blog-related-meta span:first-child{color:var(--accent)}.blog-related-meta span:last-child{color:var(--ink-faint)}.blog-related-card h3{color:var(--ink);letter-spacing:-.01em;margin:0;font-family:Inter,system-ui,sans-serif;font-size:16px;font-style:normal;font-weight:700;line-height:1.3}.blog-related-card strong{color:var(--accent);letter-spacing:.18em;text-transform:uppercase;margin-top:auto;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;font-weight:700}.blog-article-cta{box-shadow:none;background:radial-gradient(520px 240px at 30% 0,#0e63380f,#0000 70%),#fff;border:1px solid #141e1914;border-radius:22px;justify-content:space-between;align-items:center;gap:24px;margin-top:48px;padding:32px 36px;display:flex}.blog-article-cta p{color:var(--ink);letter-spacing:-.02em;margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(22px,2.6vw,30px);font-style:italic;font-weight:500;line-height:1.2}.blog-article-cta .landing-btn-primary{background:var(--accent);color:#fff;border-color:#0000;flex-shrink:0;min-height:48px;padding-inline:28px;font-size:13px;font-weight:700;box-shadow:0 1px #0e63384d,0 14px 28px #0e633833}.blog-article-cta .landing-btn-primary:hover{background:var(--accent-hover)}.blog-not-found{text-align:center;background:#fff;border:1px solid #141e1914;border-radius:22px;padding:clamp(36px,5vw,60px);box-shadow:0 1px #141e1908,0 12px 28px #141e190d}.blog-not-found .blog-eyebrow{margin-left:auto;margin-right:auto}.blog-not-found h1{margin:0 auto}.blog-not-found p{margin:16px auto 0}.blog-not-found .landing-btn{margin-top:28px}@media (width<=980px){.blog-hero,.blog-article-layout,.blog-seo-panel,.blog-related-grid{grid-template-columns:1fr}.blog-hero{gap:24px}.blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.blog-toc{border-bottom:1px solid #141e1914;border-left:0;margin-bottom:32px;padding-bottom:20px;padding-left:0;position:static}.blog-related-grid{gap:14px}}@media (width<=680px){.blog-page{width:min(100% - 32px,1180px);padding:40px 0 56px}.blog-grid{grid-template-columns:1fr}.blog-article-hero h1{font-size:clamp(28px,7vw,38px)}.blog-article-deck{font-size:18px!important}.blog-article-cover img{aspect-ratio:16/10}.blog-article-cover-canvas{aspect-ratio:16/10;padding:22px}.blog-article-body p,.blog-article-body li{font-size:16px}.blog-article-body section>p:first-of-type:first-letter{font-size:40px}.blog-article-body section+section{margin-top:52px}.blog-takeaways{padding:24px 22px}.blog-callout{padding:20px 22px;font-size:19px}.blog-article-cta{flex-direction:column;align-items:flex-start;padding:26px 22px}.blog-article-cta .landing-btn-primary{width:100%}.blog-card-visual{aspect-ratio:16/10}.blog-related{margin-top:64px;padding-top:44px}}:root{--bg:#fff;--bg-2:#fff;--bg-3:#f4f6f4;--line:#141e1924;--line-strong:#141e1947;--line-accent:#0e63385c;--ink:#121814;--ink-dim:#3f4942;--ink-faint:#68736c;--accent:#0e6338;--accent-soft:#0e63381c;--accent-hover:#0a4a2a;--accent-bright:#18a05c;--dark:#0d2a1f;--amber:#c77a18;--amber-soft:#c77a181a;--red:#c4433a;--red-soft:#c4433a1c;--green:#0e6338;--sidebar-bg:linear-gradient(180deg, #0d2a1f 0%, #0f3a28 60%, #1a4d36 100%);--sidebar-ink:#d4e4db;--sidebar-ink-dim:#b4c9bc;--sidebar-ink-faint:#7f998b;--sidebar-line:#d4e4db29;--sidebar-line-strong:#d4e4db47;--sidebar-active-bg:#ffffff24;--sidebar-hover-bg:#ffffff14;--sidebar-accent:#a8e6c0;--grid:#141e190b;--shadow:0 1px 2px #141e1914, 0 12px 32px #141e1914;--shadow-lg:0 3px 8px #141e191a, 0 22px 56px #141e191f}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{min-height:100%}body{color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-image:linear-gradient(var(--grid) 1px, transparent 1px), linear-gradient(90deg, var(--grid) 1px, transparent 1px);background-size:48px 48px;font-family:Inter,system-ui,sans-serif;font-size:15px;font-weight:400;line-height:1.55;overflow-x:hidden}h1,h2,h3{letter-spacing:-.02em;color:var(--ink);font-family:Cormorant Garamond,Georgia,serif;font-weight:400}h1{font-size:2.6rem;line-height:1.05}h2{font-size:1.55rem;line-height:1.15}h3{font-size:1.1rem;font-weight:500;line-height:1.3}p{color:var(--ink-dim)}a{color:inherit;text-decoration:none}code,.mono{font-family:JetBrains Mono,Fira Code,ui-monospace,monospace}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:5px}::-webkit-scrollbar-thumb:hover{background:var(--ink-faint)}
