@font-face{font-display:block;font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2) format("woff2"),url(/assets/KaTeX_AMS-Regular-DMm9YOAa.woff) format("woff"),url(/assets/KaTeX_AMS-Regular-DRggAlZN.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff) format("woff"),url(/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff) format("woff"),url(/assets/KaTeX_Fraktur-Regular-CB_wures.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Main-Bold-Cx986IdX.woff2) format("woff2"),url(/assets/KaTeX_Main-Bold-Jm3AIy58.woff) format("woff"),url(/assets/KaTeX_Main-Bold-waoOVXN0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2) format("woff2"),url(/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff) format("woff"),url(/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2) format("woff2"),url(/assets/KaTeX_Main-Italic-BMLOBm91.woff) format("woff"),url(/assets/KaTeX_Main-Italic-3WenGoN9.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Main-Regular-B22Nviop.woff2) format("woff2"),url(/assets/KaTeX_Main-Regular-Dr94JaBh.woff) format("woff"),url(/assets/KaTeX_Main-Regular-ypZvNtVU.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2) format("woff2"),url(/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff) format("woff"),url(/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Math-Italic-t53AETM-.woff2) format("woff2"),url(/assets/KaTeX_Math-Italic-DA0__PXp.woff) format("woff"),url(/assets/KaTeX_Math-Italic-flOr_0UB.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:700;src:url(/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff) format("woff"),url(/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:italic;font-weight:400;src:url(/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff) format("woff"),url(/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:400;src:url(/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff) format("woff"),url(/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Script-Regular-D3wIWfF6.woff2) format("woff2"),url(/assets/KaTeX_Script-Regular-D5yQViql.woff) format("woff"),url(/assets/KaTeX_Script-Regular-C5JkGWo-.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2) format("woff2"),url(/assets/KaTeX_Size1-Regular-C195tn64.woff) format("woff"),url(/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2) format("woff2"),url(/assets/KaTeX_Size2-Regular-oD1tc_U0.woff) format("woff"),url(/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAA4oAA4AAAAAHbQAAA3TAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAABmAAgRQIDgmcDBEICo1oijYBNgIkA14LMgAEIAWJAAeBHAyBHBvbGiMRdnO0IkRRkiYDgr9KsJ1NUAf2kILNxgUmgqIgq1P89vcbIcmsQbRps3vCcXdYOKSWEPEKgZgQkprQQsxIXUgq0DqpGKmIvrgkeVGtEQD9DzAO29fM9jYhxZEsL2FeURH2JN4MIcTdO049NCVdxQ/w9NrSYFEBKTDKpLKfNkCGDc1RwjZLQcm3vqJ2UW9Xfa3tgAHz6ivp6vgC2yD4/6352ndnN0X0TL7seypkjZlMsjmZnf0Mm5Q+JykRWQBKCVCVPbARPXWyQtb5VgLB6Biq7/Uixcj2WGqdI8tGSgkuRG+t910GKP2D7AQH0DB9FMDW/obJZ8giFI3Wg8Cvevz0M+5m0rTh7XDBlvo9Y4vm13EXmfttwI4mBo1EG15fxJhUiCLbiiyCf/ZA6MFAhg3pGIZGdGIVjtPn6UcMk9A/UUr9PhoNsCENw1APAq0gpH73e+M+0ueyHbabc3vkbcdtzcf/fiy+NxQEjf9ud/ELBHAXJ0nk4z+MXH2Ev/kWyV4k7SkvpPc9Qr38F6RPWnM9cN6DJ0AdD1BhtgABtmoRoFCvPsBAumNm6soZG2Gk5GyVTo2sJncSyp0jQTYoR6WDvTwaaEcHsxHfvuWhHA3a6bN7twRKtcGok6NsCi7jYRrM2jExsUFMxMQYuJbMhuWNOumEJy9hi29Dmg5zMp/A5+hhPG19j1vBrq8JTLr8ki5VLPmG/PynJHVul440bxg5xuymHUFPBshC+nA9I1FmwbRBTNHAcik3Oae0cxKoI3MOriM42UrPe51nsaGxJ+WfXubAsP84aabUlQSJ1IiE0iPETLUU4CATgfXSCSpuRFRmCGbO+wSpAnzaeaCYW1VNEysRtuXCEL1kUFUbbtMv3Tilt/1c11jt3Q5bbMa84cpWipp8Elw3MZhOHsOlwwVUQM3lAR35JiFQbaYCRnMF2lxAWoOg2gyoIV4PouX8HytNIfLhqpJtXB4vjiViUI8IJ7bkC4ikkQvKksnOTKICwnqWSZ9YS5f0WCxmpgjbIq7EJcM4aI2nmhLNY2JIUgOjXZFWBHb+x5oh6cwb0Tv1ackHdKi0I9OO2wE9aogIOn540CCCziyhN+IaejtgAONKznHlHyutPrHGwCx9S6B8kfS4Mfi4Eyv7OU730bT1SCBjt834cXsf43zVjPUqqJjgrjeGnBxSG4aYAKFuVbeCfkDIjAqMb6yLNIbCuvXhMH2/+k2vkNpkORhR59N1CkzoOENvneIosjYmuTxlhUzaGEJQ/iWqx4dmwpmKjrwTiTGTCVozNAYqk/zXOndWxuWSmJkQpJw3pK5KX6QrLt5LATMqpmPAQhkhK6PUjzHUn7E0gHE0kPE0iKkolgkUx9SZmVAdDgpffdyJKg3k7VmzYGCwVXGz/tXmkOIp+vcWs+EMuhhvN0h9uhfzWJziBQmCREGSIFmQIkgVpAnSBRmC//6hkLZwaVhwxlrJSOdqlFtOYxlau9F2QN5Y98xmIAsiM1HVp2VFX+DHHGg6Ecjh3vmqtidX3qHI2qycTk/iwxSt5UzTmEP92ZBnEWTk4Mx8Mpl78ZDokxg/KWb+Q0QkvdKVmq3TMW+RXEgrsziSAfNXFMhDc60N5N9jQzjfO0kBKpUZl0ZmwJ41j/B9Hz6wmRaJB84niNmQrzp9eSlQCDDzazGDdVi3P36VZQ+Jy4f9UBNp+3zTjqI4abaFAm+GShVaXlsGdF3FYzZcDI6cori4kMxUECl9IjJZpzkvitAoxKue+90pDMvcKRxLl53TmOKCmV/xRolNKSqqUxc6LStOETmFOiLZZptlZepcKiAzteG8PEdpnQpbOMNcMsR4RR2Bs0cKFEvSmIjAFcnarqwUL4lDhHmnVkwu1IwshbiCcgvOheZuYyOteufZZwlcTlLgnZ3o/WcYdzZHW/WGaqaVfmTZ1aWCceJjkbZqsfbkOtcFlUZM/jy+hXHDbaUobWqqXaeWobbLO99yG5N3U4wxco0rQGGcOLASFMXeJoham8M+/x6O2WywK2l4HGbq1CoUyC/IZikQhdq3SiuNrvAEj0AVu9x2x3lp/xWzahaxidezFVtdcb5uEnzyl0ZmYiuKI0exvCd4Xc9CV1KB0db00z92wDPde0kukbvZIWN6jUWFTmPIC/Y4UPCm8UfDTFZpZNon1qLFTkBhxzB+FjQRA2Q/YRJT8pQigslMaUpFyAG8TMlXigiqmAZX4xgijKjRlGpLE0GdplRfCaJo0JQaSxNBk6ZmMzcya0FmrcisDdn0Q3HI2sWSppYigmlM1XT/kLQZSNpMJG0WkjYbSZuDpM1F0uYhFc1HxU4m1QJjDK6iL0S5uSj5rgXc3RejEigtcRBtqYPQsiTskmO5vosV+q4VGIKbOkDg0jtRrq+Em1YloaTFar3EGr1EUC8R0kus1Uus00usL97ABr2BjXoDm/QGNhuWtMVBKOwg/i78lT7hBsAvDmwHc/ao3vmUbBmhjeYySZNWvGkfZAgISDSaDo1SVpzGDsAEkF8B+gEapViUoZgUWXcRIGFZNm6gWbAKk0bp0k1MHG9fLYtV4iS2SmLEQFARzRcnf9PUS0LVn05/J9MiRRBU3v2IrvW974v4N00L7ZMk0wXP1409CHo/an8zTRHD3eSJ6m8D4YMkZNl3M79sqeuAsr/m3f+8/yl7A50aiAEJgeBeMWzu7ui9UfUBCe2TIqZIoOd/3/udRBOQidQZUERzb2/VwZN1H/Sju82ew2H2Wfr6qvfVf3hqwDvAIpkQVFy4B9Pe9e4/XvPeceu7h3dvO56iJPf0+A6cqA2ip18ER+iFgggiuOkvj24bby0N9j2UHIkgqIt+sVgfodC4YghLSMjSZbH0VR/6dMDrYJeKHilKTemt6v6kvzvn3/RrdWtr0GoN/xL+Sex/cPYLUpepx9cz/D46UPU5KXgAQa+NDps1v6J3xP1i2HtaDB0M9aX2deA7SYff//+gUCovMmIK/qfsFcOk+4Y5ZN97XlG6zebqtMbKgeRFi51vnxTQYBUik2rS/Cn6PC8ADR8FGxsRPB82dzfND90gIcshOcYUkfjherBz53odpm6TP8txlwOZ71xmfHHOvq053qFF/MRlS3jP0ELudrf2OeN8DHvp6ZceLe8qKYvWz/7yp0u4dKPfli3CYq0O13Ih71mylJ80tOi10On8wi+F4+LWgDPeJ30msSQt9/vkmHq9/Lvo2b461mP801v3W4xTcs6CbvF9UDdrSt+A8OUbpSh55qAUFXWznBBfdeJ8a4d7ugT5tvxUza3h9m4H7ptTqiG4z0g5dc0X29OcGlhpGFMpQo9ytTS+NViZpNdvU4kWx+LKxNY10kQ1yqGXrhe4/1nvP7E+nd5A92TtaRplbHSqoIdOqtRWti+fkB5/n1+/VvCmz12pG1kpQWsfi1ftlBobm0bpngs16CHkbIwdLnParxtTV3QYRlfJ0KFskH7pdN/YDn+yRuSd7sNH3aO0DYPggk6uWuXrfOc+fa3VTxFVvKaNxHsiHmsXyCLIE5yuOeN3/Jdf8HBL/5M6shjyhxHx9BjB1O0+4NLOnjLLSxwO7ukN4jMbOIcD879KLSi6Pk61Oqm2377n8079PXEEQ7cy7OKEC9nbpet118fxweTafpt69x/Bt8UqGzNQt7aelpc44dn5cqhwf71+qKp/Zf/+a0zcizOUWpl/iBcSXip0pplkatCchoH5c5aUM8I7/dWxAej8WicPL1URFZ9BDJelUwEwTkGqUhgSlydVes95YdXvhh9Gfz/aeFWvgVb4tuLbcv4+wLdutVZv/cUonwBD/6eDlE0aSiKK/uoH3+J1wDE/jMVqY2ysGufN84oIXB0sPzy8ollX/LegY74DgJXJR57sn+VGza0x3DnuIgABFM15LmajjjsNlYj+JEZGbuRYcAMOWxFkPN2w6Wd46xo4gVWQR/X4lyI/R6K/YK0110GzudPRW7Y+UOBGTfNNzHeYT0fiH0taunBpq9HEW8OKSaBGj21L0MqenEmNRWBAWDWAk4CpNoEZJ2tTaPFgbQYj8HxtFilErs3BTRwT8uO1NXQaWfIotchmPkAF5mMBAliEmZiOGVgCG9LgRzpscMAOOwowlT3JhusdazXGSC/hxR3UlmWVwWHpOIKheqONvjyhSiTHIkVUco5bnji8m//zL7PKaT1Vl5I6UE609f+gkr6MZKVyKc7zJRmCahLsdlyA5fdQkRSan9LgnnLEyGSkaKJCJog0wAgvepWBt80+1yKln1bMVtCljfNWDueKLsWwaEbBSfSPTEmVRsUcYYMnEjcjeyCZzBXK9E9BYBXLKjOSpUDR+nEV3TFSUdQaz+ot98QxgXwx0GQ+EEUAKB2qZPkQQ0GqFD8UPFMqyaCHM24BZmSGic9EYMagKizOw9Hz50DMrDLrqqLkTAhplMictiCAx5S3BIUQdeJeLnBy2CNtMfz6cV4u8XKoFZQesbf9YZiIERiHjaNodDW6LgcirX/mPnJIkBGDUpTBhSa0EIr38D5hCIszhCM8URGBqImoWjpvpt1ebu/v3Gl3qJfMnNM+9V+kiRFyROTPHQWOcs1dNW94/ukKMPZBvDi55i5CttdeJz84DLngLqjcdwEZ87bFFR8CIG35OAkDVN6VRDZ7aq67NteYqZ2lpT8oYB2CytoBd6VuAx4WgiAsnuj3WohG+LugzXiQRDeM3XYXlULv4dp5VFYC) format("woff2"),url(/assets/KaTeX_Size3-Regular-CTq5MqoE.woff) format("woff"),url(/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2) format("woff2"),url(/assets/KaTeX_Size4-Regular-BF-4gkZK.woff) format("woff"),url(/assets/KaTeX_Size4-Regular-DWFBv043.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2) format("woff2"),url(/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff) format("woff"),url(/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf) format("truetype")}.katex{font: 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;text-indent:0;text-rendering:auto}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.16.25"}.katex .katex-mathml{clip:rect(1px,1px,1px,1px);border:0;height:1px;overflow:hidden;padding:0;position:absolute;width:1px}.katex .katex-html>.newline{display:block}.katex .base{position:relative;white-space:nowrap;width:-webkit-min-content;width:-moz-min-content;width:min-content}.katex .base,.katex .strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;display:inline-table;table-layout:fixed}.katex .vlist-r{display:table-row}.katex .vlist{display:table-cell;position:relative;vertical-align:bottom}.katex .vlist>span{display:block;height:0;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{overflow:hidden;width:0}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{display:table-cell;font-size:1px;min-width:2px;vertical-align:bottom;width:2px}.katex .vbox{align-items:baseline;display:inline-flex;flex-direction:column}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{display:inline-flex;flex-direction:row}.katex .thinbox{max-width:0;width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .clap,.katex .llap,.katex .rlap{position:relative;width:0}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.katex .sqrt>.root{margin-left:.2777777778em;margin-right:-.5555555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.1666666667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.6666666667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.4566666667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.1466666667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.7142857143em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.8571428571em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.1428571429em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.2857142857em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.4285714286em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.7142857143em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.0571428571em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.4685714286em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.9628571429em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.5542857143em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.7777777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.8888888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.1111111111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.3044444444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.7644444444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.5833333333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.7283333333em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.0733333333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.4861111111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.4402777778em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.7277777778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.2893518519em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.4050925926em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.462962963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.5208333333em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.5787037037em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.2002314815em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.4398148148em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.2410800386em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.2892960463em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.337512054em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.3857280617em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.4339440694em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.4821600771em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.5785920926em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.6943105111em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.8331726133em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.1996142719em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.2009646302em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.2411575563em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.2813504823em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.3215434084em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.3617363344em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.4019292605em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.4823151125em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.578778135em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.6945337621em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.8336012862em}.katex .fontsize-ensurer.reset-size11.size11,.katex .sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{display:inline-block;width:.12em}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{display:inline-block;min-width:1px}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;fill-rule:nonzero;fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:block;height:inherit;position:absolute;width:100%}.katex svg path{stroke:none}.katex img{border-style:none;max-height:none;max-width:none;min-height:0;min-width:0}.katex .stretchy{display:block;overflow:hidden;position:relative;width:100%}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{overflow:hidden;position:relative;width:100%}.katex .halfarrow-left{left:0;overflow:hidden;position:absolute;width:50.2%}.katex .halfarrow-right{overflow:hidden;position:absolute;right:0;width:50.2%}.katex .brace-left{left:0;overflow:hidden;position:absolute;width:25.1%}.katex .brace-center{left:25%;overflow:hidden;position:absolute;width:50%}.katex .brace-right{overflow:hidden;position:absolute;right:0;width:25.1%}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{border:.04em solid;box-sizing:border-box}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{border-right:.049em solid;border-top:.049em solid;box-sizing:border-box;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{display:inline-block;position:absolute;right:calc(50% + .3em);text-align:left}.katex .cd-label-right{display:inline-block;left:calc(50% + .3em);position:absolute;text-align:right}.katex-display{display:block;margin:1em 0;text-align:center}.katex-display>.katex{display:block;text-align:center;white-space:nowrap}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{padding-left:2em;text-align:left}body{counter-reset:katexEqnNo mmlEqnNo}.editor-context-shell{position:fixed;z-index:38;right:0;bottom:calc(12px + env(safe-area-inset-bottom,0px));left:0;pointer-events:none}.editor-context-track{display:flex;gap:6px;padding:0 12px;overflow-x:auto;overscroll-behavior-x:contain;scroll-padding-inline:12px;scroll-snap-type:x proximity;touch-action:pan-x;pointer-events:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.editor-context-track:after{width:6px;flex:0 0 6px;content:""}.editor-context-track::-webkit-scrollbar{display:none}.editor-context-chip{display:inline-flex;height:46px;flex:0 0 auto;align-items:center;justify-content:center;gap:7px;min-width:48px;padding:0 13px;border:1px solid rgb(24 24 27 / 11%);border-radius:13px;background:#fffffff0;color:#4c4f55;font:inherit;font-size:12px;font-weight:540;line-height:1;scroll-snap-align:start;cursor:pointer;-webkit-tap-highlight-color:transparent}.editor-context-chip strong{color:#202124;font-size:13px;font-weight:650}.editor-context-chip.is-active{border-color:#0a84ff59;color:#0a84ff}.editor-context-color-dot{width:17px;height:17px;flex:0 0 17px;border:1px solid rgb(24 24 27 / 12%);border-radius:50%}.editor-context-popover{box-sizing:border-box;width:min(310px,calc(100vw - 24px));margin:0 auto 8px;padding:10px;border:1px solid rgb(24 24 27 / 11%);border-radius:14px;background:#fffffff7;color:#202124;pointer-events:auto}.editor-context-popover-header{display:flex;height:25px;align-items:center;justify-content:space-between;color:#777a80;font-size:12px;font-weight:560}.editor-context-popover-header strong{color:#202124;font-size:13px;font-weight:650}.editor-context-input{box-sizing:border-box;width:100%;height:38px;padding:0 10px;border:1px solid rgb(24 24 27 / 10%);border-radius:10px;outline:0;background:#f1f1f2;color:#202124;font:inherit;font-size:14px;font-weight:620}.editor-context-range{width:100%;margin:8px 0 3px;accent-color:#0a84ff}.editor-context-color-editor{display:flex;height:40px;align-items:center;gap:9px;padding:0 4px;cursor:pointer}.editor-context-color-editor>span{width:24px;height:24px;border:1px solid rgb(24 24 27 / 12%);border-radius:50%}.editor-context-color-editor strong{font-size:13px}.editor-context-color-editor input{position:absolute;width:1px;height:1px;opacity:0}.editor-context-options{display:flex;gap:5px;overflow-x:auto}.editor-context-options button{height:35px;flex:1 0 auto;padding:0 11px;border:0;border-radius:9px;background:#f1f1f2;color:#66696f;font:inherit;font-size:12px;font-weight:600}.editor-context-options button.is-active{background:#202124;color:#fff}html[data-editor-canvas-theme=dark] .editor-context-chip,html[data-editor-canvas-theme=dark] .editor-context-popover{border-color:#ffffff1f;background:#343438f5;color:#ffffffb8}html[data-editor-canvas-theme=dark] .editor-context-chip strong,html[data-editor-canvas-theme=dark] .editor-context-popover-header strong{color:#fff}html[data-editor-canvas-theme=dark] .editor-context-input,html[data-editor-canvas-theme=dark] .editor-context-options button{border-color:#ffffff1a;background:#444449;color:#fff}.editor-panels{position:fixed;z-index:42;inset:0;pointer-events:none}.editor-panel-launchers{position:absolute;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));display:flex;gap:4px;pointer-events:auto}.editor-panel-launcher{display:inline-flex;width:38px;height:38px;align-items:center;justify-content:center;padding:0;border:0;border-radius:10px;background:transparent;color:#55585e;cursor:pointer;-webkit-tap-highlight-color:transparent}.editor-panel-launcher:active,.editor-panel-launcher.is-active{background:#18181b12;color:#0a84ff}.editor-bottom-sheet{position:absolute;right:8px;bottom:calc(58px + env(safe-area-inset-bottom,0px));left:8px;display:flex;min-height:92px;max-height:82vh;flex-direction:column;overflow:hidden;border:1px solid rgb(24 24 27 / 11%);border-radius:18px;background:#fafafbfa;color:#202124;pointer-events:auto}.editor-sheet-drag-zone{display:flex;height:24px;flex:0 0 24px;align-items:center;justify-content:center;touch-action:none;cursor:ns-resize}.editor-sheet-handle{width:34px;height:4px;border-radius:999px;background:#2021243d}.editor-sheet-header{display:flex;height:38px;flex:0 0 38px;align-items:center;justify-content:space-between;padding:0 14px;border-bottom:1px solid rgb(24 24 27 / 7%)}.editor-sheet-header strong{font-size:14px;font-weight:650}.editor-sheet-header button{display:inline-flex;width:30px;height:30px;align-items:center;justify-content:center;padding:0;border:0;border-radius:8px;background:transparent;color:#73767c}.editor-sheet-content{min-height:0;flex:1;padding:8px;overflow-y:auto;overscroll-behavior:contain}.editor-panel-empty{margin:26px 12px;color:#888b91;font-size:13px;text-align:center}.editor-properties-pager-shell{min-width:0}.editor-properties-page-status{display:flex;height:26px;align-items:center;justify-content:space-between;padding:0 7px;color:#202124}.editor-properties-page-status span{font-size:12px;font-weight:650}.editor-properties-page-status small{color:#92949a;font-size:10px;font-weight:600}.editor-properties-pager{display:flex;gap:8px;padding:0 2px 2px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;touch-action:pan-x;scrollbar-width:none;-webkit-overflow-scrolling:touch}.editor-properties-pager::-webkit-scrollbar{display:none}.editor-property-page{box-sizing:border-box;width:calc(100% - 18px);min-width:calc(100% - 18px);min-height:172px;padding:11px;border:1px solid rgb(24 24 27 / 9%);border-radius:13px;background:#fff;color:#202124;scroll-snap-align:start;scroll-snap-stop:always}.editor-property-page-title{display:flex;height:25px;align-items:flex-start;justify-content:space-between}.editor-property-page-title strong{font-size:13px;font-weight:650}.editor-property-page-title span{color:#92949a;font-size:10px;font-weight:520}.editor-geometry-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:5px}.editor-geometry-grid.is-secondary{margin-top:7px}.editor-geometry-field{display:flex;height:43px;align-items:center;gap:4px;padding:0 10px;border-radius:10px;background:#f0f0f1}.editor-geometry-field input{width:100%;min-width:0;padding:0;border:0;outline:0;background:transparent;color:#202124;font:inherit;font-size:14px;font-weight:580}.editor-geometry-field span{color:#9a9ca1;font-size:11px;font-weight:650}.editor-fill-page{display:flex;flex-direction:column}.editor-fill-color{position:relative;display:flex;height:47px;align-items:center;gap:9px;margin-top:5px;padding:0 11px;border-radius:10px;background:#f0f0f1}.editor-fill-color i{width:22px;height:22px;border:1px solid rgb(24 24 27 / 12%);border-radius:6px}.editor-fill-color span{font-size:13px;font-weight:580}.editor-fill-color input{position:absolute;width:1px;height:1px;opacity:0}.editor-opacity-control{margin-top:7px;padding:8px 11px 7px;border-radius:10px;background:#f0f0f1}.editor-opacity-control>div{display:flex;align-items:center;justify-content:space-between}.editor-opacity-control span{color:#777a80;font-size:11px;font-weight:550}.editor-opacity-control strong{font-size:12px;font-weight:650}.editor-opacity-control input{width:100%;margin:7px 0 0;accent-color:#0a84ff}.editor-properties-dots{display:flex;height:15px;align-items:flex-end;justify-content:center;gap:4px}.editor-properties-dots i{width:4px;height:4px;border-radius:50%;background:#20212433}.editor-properties-dots i.is-active{width:12px;border-radius:999px;background:#0a84ff}.editor-layers{display:flex;flex-direction:column;gap:4px}.editor-layer-row{display:grid;min-height:48px;grid-template-columns:24px 1fr;align-items:center;gap:8px;padding:5px 10px;border:0;border-radius:10px;background:transparent;color:#55585e;font:inherit;text-align:left}.editor-layer-row.is-selected{background:#0a84ff17;color:#0a84ff}.editor-layer-row>span{display:flex;min-width:0;flex-direction:column;gap:2px}.editor-layer-row strong{overflow:hidden;color:#202124;font-size:13px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.editor-layer-row small{color:#92949a;font-size:10px}html[data-editor-canvas-theme=dark] .editor-properties-page-status{color:#fff}html[data-editor-canvas-theme=dark] .editor-property-page{border-color:#ffffff14;background:#2d2d31;color:#fff}html[data-editor-canvas-theme=dark] .editor-geometry-field,html[data-editor-canvas-theme=dark] .editor-fill-color,html[data-editor-canvas-theme=dark] .editor-opacity-control{background:#3b3b40}html[data-editor-canvas-theme=dark] .editor-geometry-field input{color:#fff}html[data-editor-canvas-theme=dark] .editor-properties-dots i{background:#ffffff3d}html[data-editor-canvas-theme=dark] .editor-properties-dots i.is-active{background:#0a84ff}html[data-editor-canvas-theme=dark] .editor-panel-launcher{color:#ffffffb3}html[data-editor-canvas-theme=dark] .editor-bottom-sheet{border-color:#ffffff1c;background:#343438fa;color:#fff}html[data-editor-canvas-theme=dark] .editor-sheet-header{border-color:#ffffff14}html[data-editor-canvas-theme=dark] .editor-sheet-handle{background:#ffffff47}html[data-editor-canvas-theme=dark] .editor-property-row,html[data-editor-canvas-theme=dark] .editor-property-slider,html[data-editor-canvas-theme=dark] .editor-property-action{border-color:#ffffff17;background:#404045;color:#fff}html[data-editor-canvas-theme=dark] .editor-property-row input,html[data-editor-canvas-theme=dark] .editor-property-row select,html[data-editor-canvas-theme=dark] .editor-property-slider strong,html[data-editor-canvas-theme=dark] .editor-layer-row strong{color:#fff}.editor-selection{--selection-ui-scale: 1;position:absolute;z-index:12;box-sizing:border-box;border:calc(1.5px * var(--selection-ui-scale)) solid #0a84ff;cursor:move;pointer-events:auto;touch-action:none;transform-origin:center}.editor-selection-size{position:absolute;bottom:calc(100% + 8px * var(--selection-ui-scale));left:0;padding:0;border:0;border-radius:0;background:transparent;color:#20212457;font-size:calc(11px * var(--selection-ui-scale));font-weight:550;line-height:1;letter-spacing:-.01em;pointer-events:none;white-space:nowrap}.editor-selection-handle{position:absolute;z-index:3;display:block;width:calc(10px * var(--selection-ui-scale));height:calc(10px * var(--selection-ui-scale));box-sizing:border-box;margin:0;padding:0;border:calc(1.5px * var(--selection-ui-scale)) solid #0a84ff;border-radius:calc(3px * var(--selection-ui-scale));background:#fff;pointer-events:auto;touch-action:none;-webkit-tap-highlight-color:transparent}.editor-selection-handle.is-north-west{top:0;left:0;cursor:nwse-resize;transform:translate(-50%,-50%)}.editor-selection-handle.is-north-east{top:0;right:0;cursor:nesw-resize;transform:translate(50%,-50%)}.editor-selection-handle.is-south-east{right:0;bottom:0;cursor:nwse-resize;transform:translate(50%,50%)}.editor-selection-handle.is-south-west{bottom:0;left:0;cursor:nesw-resize;transform:translate(-50%,50%)}.editor-selection-handle:focus-visible{outline:calc(2px * var(--selection-ui-scale)) solid rgb(10 132 255 / 28%);outline-offset:calc(2px * var(--selection-ui-scale))}.editor-selection-edge{position:absolute;z-index:1;display:block;margin:0;padding:0;border:0;background:transparent;pointer-events:auto;touch-action:none;-webkit-tap-highlight-color:transparent}.editor-selection-edge.is-north,.editor-selection-edge.is-south{left:calc(10px * var(--selection-ui-scale));width:calc(100% - 20px * var(--selection-ui-scale));height:calc(18px * var(--selection-ui-scale));cursor:ns-resize}.editor-selection-edge.is-north{top:calc(-9px * var(--selection-ui-scale))}.editor-selection-edge.is-south{bottom:calc(-9px * var(--selection-ui-scale))}.editor-selection-edge.is-east,.editor-selection-edge.is-west{top:calc(10px * var(--selection-ui-scale));width:calc(18px * var(--selection-ui-scale));height:calc(100% - 20px * var(--selection-ui-scale));cursor:ew-resize}.editor-selection-edge.is-east{right:calc(-9px * var(--selection-ui-scale))}.editor-selection-edge.is-west{left:calc(-9px * var(--selection-ui-scale))}.editor-selection-rotate-zone{position:absolute;z-index:2;display:block;width:calc(38px * var(--selection-ui-scale));height:calc(38px * var(--selection-ui-scale));margin:0;padding:0;border:0;background:transparent;cursor:grab;pointer-events:auto;touch-action:none;-webkit-tap-highlight-color:transparent}.editor-selection-rotate-zone:active{cursor:grabbing}.editor-selection-rotate-zone.is-north-west{top:calc(-33px * var(--selection-ui-scale));left:calc(-33px * var(--selection-ui-scale))}.editor-selection-rotate-zone.is-north-east{top:calc(-33px * var(--selection-ui-scale));right:calc(-33px * var(--selection-ui-scale))}.editor-selection-rotate-zone.is-south-east{right:calc(-33px * var(--selection-ui-scale));bottom:calc(-33px * var(--selection-ui-scale))}.editor-selection-rotate-zone.is-south-west{bottom:calc(-33px * var(--selection-ui-scale));left:calc(-33px * var(--selection-ui-scale))}@media (pointer: coarse){.editor-selection{border-width:calc(2px * var(--selection-ui-scale))}.editor-selection-handle{width:calc(12px * var(--selection-ui-scale));height:calc(12px * var(--selection-ui-scale));border-width:calc(2px * var(--selection-ui-scale));border-radius:calc(4px * var(--selection-ui-scale))}.editor-selection-edge.is-north,.editor-selection-edge.is-south{height:calc(24px * var(--selection-ui-scale))}.editor-selection-edge.is-north{top:calc(-12px * var(--selection-ui-scale))}.editor-selection-edge.is-south{bottom:calc(-12px * var(--selection-ui-scale))}.editor-selection-edge.is-east,.editor-selection-edge.is-west{width:calc(24px * var(--selection-ui-scale))}.editor-selection-edge.is-east{right:calc(-12px * var(--selection-ui-scale))}.editor-selection-edge.is-west{left:calc(-12px * var(--selection-ui-scale))}.editor-selection-rotate-zone{width:calc(46px * var(--selection-ui-scale));height:calc(46px * var(--selection-ui-scale))}.editor-selection-rotate-zone.is-north-west{top:calc(-40px * var(--selection-ui-scale));left:calc(-40px * var(--selection-ui-scale))}.editor-selection-rotate-zone.is-north-east{top:calc(-40px * var(--selection-ui-scale));right:calc(-40px * var(--selection-ui-scale))}.editor-selection-rotate-zone.is-south-east{right:calc(-40px * var(--selection-ui-scale));bottom:calc(-40px * var(--selection-ui-scale))}.editor-selection-rotate-zone.is-south-west{bottom:calc(-40px * var(--selection-ui-scale));left:calc(-40px * var(--selection-ui-scale))}}.editor-canvas{position:relative;width:100vw;height:100vh;height:100dvh;min-height:0;padding:0;overflow:hidden;background:#eeeeef}.editor-topbar{position:fixed;z-index:30;top:0;right:0;left:0;display:flex;height:calc(48px + env(safe-area-inset-top,0px));align-items:center;justify-content:space-between;padding:env(safe-area-inset-top,0px) 14px 0 10px;border:0;background:transparent;pointer-events:none}.editor-canvas-menu-root{position:relative;pointer-events:auto}.editor-topbar-controls{display:flex;align-items:center;gap:5px;pointer-events:auto}.editor-history-undo{display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center;padding:0;border:0;border-radius:9px;background:transparent;color:#4f5258;cursor:pointer;-webkit-tap-highlight-color:transparent}.editor-history-undo:active:not(:disabled){background:#18181b0f}.editor-history-undo:disabled{color:#4f52583d;cursor:default}html[data-editor-canvas-theme=dark] .editor-history-undo{color:#ffffffb8}html[data-editor-canvas-theme=dark] .editor-history-undo:disabled{color:#ffffff38}.editor-canvas-menu{display:inline-flex;height:34px;align-items:center;justify-content:center;gap:7px;padding:0 11px 0 9px;border:1px solid rgb(24 24 27 / 10%);border-radius:11px;background:#fff;color:#202124;font:inherit;font-size:14px;font-weight:650;line-height:1;letter-spacing:-.015em;cursor:pointer;-webkit-tap-highlight-color:transparent}.editor-canvas-menu:active{transform:scale(.98)}.editor-canvas-mark{position:relative;display:block;width:17px;height:20px}.editor-canvas-mark i{position:absolute;left:1px;display:block;width:15px;height:9px;background:currentColor;clip-path:polygon(0 0,100% 0,100% 100%,48% 100%)}.editor-canvas-mark i:first-child{top:0}.editor-canvas-mark i:last-child{bottom:0;transform:scaleX(-1)}.editor-canvas-menu-chevron{color:#8d8f94}.editor-canvas-dropdown{position:absolute;z-index:40;top:calc(100% + 8px);left:0;box-sizing:border-box;width:min(278px,calc(100vw - 20px));padding:7px;overflow:hidden;border:1px solid rgb(24 24 27 / 10%);border-radius:15px;background:#fffffffa;color:#202124}.editor-canvas-dropdown-row,.editor-canvas-dropdown-title{width:100%;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent}.editor-canvas-dropdown-row{display:grid;min-height:52px;grid-template-columns:24px 1fr auto;align-items:center;column-gap:10px;padding:6px 10px;border-radius:10px}.editor-canvas-dropdown-row:active{background:#18181b0f}.editor-canvas-row-copy{display:flex;min-width:0;flex-direction:column;gap:3px}.editor-canvas-dropdown-row strong,.editor-canvas-dropdown-title{font-size:14px;font-weight:590;line-height:1.2}.editor-canvas-row-copy small{color:#92949a;font-size:11px;font-weight:500}.editor-canvas-dropdown-title{display:flex;height:39px;align-items:center;gap:8px;padding:0 8px;border-radius:9px}.editor-canvas-dropdown-separator{height:1px;margin:3px 7px;background:#18181b14}.editor-canvas-dropdown-row.is-compact{min-height:44px}.editor-canvas-row-check{color:#0a84ff}.editor-canvas-switch{position:relative;width:31px;height:18px;border-radius:999px;background:#d5d6d9}.editor-canvas-switch:after{position:absolute;top:3px;left:3px;width:12px;height:12px;border-radius:50%;background:#fff;content:"";transition:transform .14s ease}.editor-canvas-switch.is-on{background:#0a84ff}.editor-canvas-switch.is-on:after{transform:translate(13px)}.editor-guide-preview{display:block;width:19px;height:19px;border:1px solid rgb(24 24 27 / 10%);border-radius:5px;background-color:#eeeeef}.editor-guide-preview[data-mode=dots]{background-image:radial-gradient(circle,rgb(32 33 36 / 42%) 1px,transparent 1px);background-size:5px 5px}.editor-guide-preview[data-mode=grid]{background-image:linear-gradient(to right,rgb(32 33 36 / 25%) 1px,transparent 1px),linear-gradient(to bottom,rgb(32 33 36 / 25%) 1px,transparent 1px);background-size:6px 6px}html[data-editor-canvas-theme=dark],html[data-editor-canvas-theme=dark] body{min-height:100%;background:#3b3b3f;overscroll-behavior:none}html[data-editor-canvas-theme=dark] .editor-canvas{background:#3b3b3f}html[data-editor-canvas-theme=dark] .editor-canvas-menu{border-color:#ffffff17;background:#343438;color:#f3f3f4}html[data-editor-canvas-theme=dark] .editor-canvas-dropdown{border-color:#ffffff1a;background:#3a3a3f;color:#f3f3f4}html[data-editor-canvas-theme=dark] .editor-canvas-dropdown-row:active{background:#ffffff12}html[data-editor-canvas-theme=dark] .editor-canvas-dropdown-separator{background:#ffffff17}html[data-editor-canvas-theme=dark] .editor-guide-preview{border-color:#ffffff1a;background-color:#3b3b3f}.editor-canvas-zoom{color:#20212457;font-size:11px;font-weight:550;line-height:1;letter-spacing:.015em;pointer-events:none;-webkit-user-select:none;user-select:none}html[data-editor-canvas-theme=dark] .editor-canvas{--editor-guide-dot: rgb(255 255 255 / 28%);--editor-guide-minor: rgb(255 255 255 / 10%);--editor-guide-major: rgb(255 255 255 / 22%)}html[data-editor-canvas-theme=dark] .editor-selection-size{color:#ffffff9e}html[data-editor-canvas-theme=dark] .editor-canvas-zoom{color:#ffffff61}.editor-canvas-stage{position:absolute;z-index:10;inset:0;overflow:hidden;pointer-events:auto;touch-action:none;user-select:none;-webkit-user-select:none}.editor-canvas-stage.is-frame-tool{cursor:crosshair}.editor-canvas-stage.is-pan-tool{cursor:grab}.editor-canvas-stage.is-pan-tool:active{cursor:grabbing}.editor-canvas-world{position:absolute;z-index:1;inset:0;width:100%;height:100%;transform-origin:0 0;will-change:transform}.editor-frame{position:absolute;z-index:2;box-sizing:border-box;min-width:1px;min-height:1px;border:1px solid rgb(24 24 27 / 22%);background:#fff;touch-action:none}.editor-frame.is-draft{z-index:4;border:2px solid #0a84ff;background:#ffffffe0;pointer-events:none}.editor-snap-guide{position:absolute;z-index:11;display:block;background:#ff2d8d;pointer-events:none}.editor-snap-guide.is-vertical{width:1px;transform:translate(-.5px)}.editor-snap-guide.is-horizontal{height:1px;transform:translateY(-.5px)}.editor-add-menu{position:absolute;z-index:24;display:flex;padding:4px;border:1px solid rgb(255 255 255 / 14%);border-radius:14px;background:#242424;color:#fff;pointer-events:auto;transform:translate(-50%,calc(-100% - 14px))}.editor-add-menu:after{position:absolute;top:100%;left:50%;width:8px;height:8px;border-right:1px solid rgb(255 255 255 / 14%);border-bottom:1px solid rgb(255 255 255 / 14%);background:#242424;content:"";transform:translate(-50%,-4px) rotate(45deg)}.editor-add-menu button{position:relative;z-index:1;min-width:74px;height:38px;padding:0 14px;border:0;border-radius:10px;background:transparent;color:inherit;font:inherit;font-size:14px;font-weight:600;cursor:pointer;-webkit-tap-highlight-color:transparent}.editor-add-menu button:active{background:#ffffff1a}/*! tailwindcss v4.1.14 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-red-100:oklch(93.6% .032 17.717);--color-red-500:oklch(63.7% .237 25.331);--color-blue-50:oklch(97% .014 254.604);--color-blue-300:oklch(80.9% .105 251.813);--color-blue-500:oklch(62.3% .214 259.815);--color-blue-600:oklch(54.6% .245 262.881);--color-blue-700:oklch(48.8% .243 264.376);--color-blue-800:oklch(42.4% .199 265.638);--color-slate-50:oklch(98.4% .003 247.858);--color-slate-100:oklch(96.8% .007 247.896);--color-slate-600:oklch(44.6% .043 257.281);--color-slate-700:oklch(37.2% .044 257.287);--color-slate-900:oklch(20.8% .042 265.755);--color-white:#fff;--spacing:.25rem;--container-lg:32rem;--container-2xl:42rem;--container-6xl:72rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-xl:1.25rem;--text-xl--line-height:calc(1.75/1.25);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5/2.25);--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--leading-relaxed:1.625;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite;--blur-sm:8px;--blur-2xl:40px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.inset-0{inset:calc(var(--spacing)*0)}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.mx-4{margin-inline:calc(var(--spacing)*4)}.mx-auto{margin-inline:auto}.mr-2{margin-right:calc(var(--spacing)*2)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.mb-6{margin-bottom:calc(var(--spacing)*6)}.mb-8{margin-bottom:calc(var(--spacing)*8)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.h-4{height:calc(var(--spacing)*4)}.h-10{height:calc(var(--spacing)*10)}.h-16{height:calc(var(--spacing)*16)}.h-\[500px\]{height:500px}.min-h-screen{min-height:100vh}.w-4{width:calc(var(--spacing)*4)}.w-10{width:calc(var(--spacing)*10)}.w-16{width:calc(var(--spacing)*16)}.w-\[400px\]{width:400px}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-6xl{max-width:var(--container-6xl)}.max-w-lg{max-width:var(--container-lg)}.flex-shrink-0{flex-shrink:0}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-pointer{cursor:pointer}.resize{resize:both}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.gap-0{gap:calc(var(--spacing)*0)}.gap-2{gap:calc(var(--spacing)*2)}.gap-3{gap:calc(var(--spacing)*3)}.overflow-auto{overflow:auto}.rounded{border-radius:.25rem}.rounded-\[10px\]{border-radius:10px}.rounded-\[20px\]{border-radius:20px}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-\[rgba\(0\,0\,0\,0\.08\)\]{border-color:#00000014}.bg-\[\#1a1a19\]{background-color:#1a1a19}.bg-\[\#f8f8f7\]{background-color:#f8f8f7}.bg-blue-600{background-color:var(--color-blue-600)}.bg-red-100{background-color:var(--color-red-100)}.bg-white{background-color:var(--color-white)}.bg-white\/80{background-color:#fffc}@supports (color:color-mix(in lab,red,red)){.bg-white\/80{background-color:color-mix(in oklab,var(--color-white)80%,transparent)}}.bg-gradient-to-br{--tw-gradient-position:to bottom right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-slate-50{--tw-gradient-from:var(--color-slate-50);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-slate-100{--tw-gradient-to:var(--color-slate-100);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.p-0{padding:calc(var(--spacing)*0)}.p-4{padding:calc(var(--spacing)*4)}.p-5{padding:calc(var(--spacing)*5)}.p-8{padding:calc(var(--spacing)*8)}.px-4{padding-inline:calc(var(--spacing)*4)}.px-5{padding-inline:calc(var(--spacing)*5)}.px-6{padding-inline:calc(var(--spacing)*6)}.py-2{padding-block:calc(var(--spacing)*2)}.py-2\.5{padding-block:calc(var(--spacing)*2.5)}.py-5{padding-block:calc(var(--spacing)*5)}.pt-8{padding-top:calc(var(--spacing)*8)}.pt-12{padding-top:calc(var(--spacing)*12)}.pb-8{padding-bottom:calc(var(--spacing)*8)}.text-center{text-align:center}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.leading-5{--tw-leading:calc(var(--spacing)*5);line-height:calc(var(--spacing)*5)}.leading-\[26px\]{--tw-leading:26px;line-height:26px}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[-0\.44px\]{--tw-tracking:-.44px;letter-spacing:-.44px}.tracking-\[-0\.154px\]{--tw-tracking:-.154px;letter-spacing:-.154px}.whitespace-break-spaces{white-space:break-spaces}.text-\[\#34322d\]{color:#34322d}.text-\[\#858481\]{color:#858481}.text-red-500{color:var(--color-red-500)}.text-slate-600{color:var(--color-slate-600)}.text-slate-700{color:var(--color-slate-700)}.text-slate-900{color:var(--color-slate-900)}.text-white{color:var(--color-white)}.shadow-\[0px_4px_11px_0px_rgba\(0\,0\,0\,0\.08\)\]{--tw-shadow:0px 4px 11px 0px var(--tw-shadow-color,#00000014);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.backdrop-blur-2xl{--tw-backdrop-blur:blur(var(--blur-2xl));-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}@media (hover:hover){.hover\:bg-\[\#1a1a19\]\/90:hover{background-color:#1a1a19e6}.hover\:bg-blue-700:hover{background-color:var(--color-blue-700)}.hover\:opacity-90:hover{opacity:.9}.hover\:shadow-lg:hover{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}@media (min-width:40rem){.sm\:flex-row{flex-direction:row}}}:root{--font-family:"Aspekta Archive","Helvetica Neue",Helvetica,Arial,sans-serif;--body-size:14px;--brand-size:15px;--body-line-height:24.5px;--body-letter-spacing:-.015em;--home-intro-line-height:22px;--home-heading-line-height:20px;--home-row-line-height:20px;--home-project-title-line-height:20px;--home-project-description-line-height:20.5px;--page:#fff;--ink:#111110;--body:#3c4142;--muted:#828b8c;--line:#f3f3f3;--image-surface:#f8f8f8;--content-width:552px;--reading-width:488px;--header-top:128px;--page-pad:var(--config-page-pad,32px);--reveal-distance:var(--config-reveal-distance,520px);--reveal-offset:var(--config-reveal-offset,20px);--page-scale-amount-base:var(--config-page-scale,.05);--max-shrink-px:var(--config-max-shrink,180px);--page-radius-max:var(--config-page-radius,32px);--footer-proximity-lead:320px;--footer-proximity-distance:200px;--footer-proximity:0;--gradient-opacity:0;--footer-bg-top:#070a14;--footer-bg-mid:#0b1533;--footer-bg-bottom:#1a2a5e;--footer-g1:#070a14;--footer-g2:#0b1533;--footer-g3:#1a2a5e;--footer-fg:#fff;--footer-link-bg:oklab(100% 0 5.96046e-8/.18);--footer-link-hover-bg:#fff;--footer-link-hover-fg:#111110;--footer-padding-top:96px;--footer-padding-bottom:128px;--footer-mobile-padding-top:16px;--footer-mobile-padding-bottom:64px;color:var(--ink);background:var(--footer-bg-bottom);font-family:var(--font-family);font-synthesis:none}@font-face{font-family:Aspekta Archive;src:url(/manus-storage/Aspekta-400_b502ef96.woff2)format("woff2");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Aspekta Archive;src:url(/manus-storage/Aspekta-500_929dc4ad.woff2)format("woff2");font-style:normal;font-weight:500;font-display:swap}*{box-sizing:border-box}html{background:var(--page);min-width:320px}body{isolation:isolate;color:var(--muted);font-size:var(--body-size);line-height:var(--body-line-height);letter-spacing:var(--body-letter-spacing);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:0 0;margin:0;position:relative}body:before{z-index:0;pointer-events:none;content:"";background:linear-gradient(180deg,var(--footer-bg-top) calc((100% - 140px)/5),var(--footer-bg-mid) calc((100% - 140px)*.55),var(--footer-bg-bottom) calc(100% - 140px));opacity:0;transition:opacity .12s linear;position:fixed;inset:0 0 -140px}html[data-footer-gradient=on] body:before{opacity:var(--gradient-opacity)}#root{background:0 0;min-height:100vh}a{color:inherit;text-underline-offset:3px;text-decoration-color:#0000;transition:color .16s cubic-bezier(.23,1,.32,1),text-decoration-color .16s cubic-bezier(.23,1,.32,1)}a:hover{color:#262626;text-decoration-color:#d6d6d6}.content{width:min(100%,var(--content-width));padding-left:var(--page-pad);padding-right:var(--page-pad);margin:0 auto}.site-header{padding-top:var(--header-top)}.site-header:before{content:"";background:url(/ibrim.png) 50%/cover no-repeat;border-radius:50%;width:36px;height:36px;margin-bottom:13px;display:block;box-shadow:inset 0 0 0 1px #1111100f}.brand-line{color:var(--ink);font-size:var(--body-size);gap:6px;line-height:20px;text-decoration:none;display:inline-flex}.brand-line>span:first-child{font-size:var(--brand-size)}.brand-role{color:var(--muted)}.home-content{padding-top:7.5px;padding-bottom:192px}.intro{max-width:var(--reading-width);color:var(--muted);line-height:var(--home-intro-line-height);padding-top:8px}.intro p{margin:0;padding-top:8px}.intro br{display:none}.intro a,.article-copy a{color:var(--body);-webkit-text-decoration:underline #d5d8d8;text-decoration:underline #d5d8d8}.home-section{margin-top:61.5px}.section-heading,.listing-heading{color:var(--muted);font-size:var(--body-size);letter-spacing:var(--body-letter-spacing);justify-content:space-between;align-items:baseline;display:flex}.section-heading{line-height:var(--home-heading-line-height)}.listing-heading{line-height:var(--body-line-height)}.section-heading a,.listing-heading a{color:var(--muted);-webkit-text-decoration:underline #0000;text-decoration:underline #0000}.section-heading a:hover,.listing-heading a:hover{text-decoration-color:#d7d7d7}.writing-list{border-top:1px solid var(--line);margin-top:8px}.writing-row{border-bottom:1px solid var(--line);color:var(--muted);line-height:var(--body-line-height);grid-template-columns:50px minmax(0,1fr) auto;align-items:baseline;gap:8px;padding:8px 0;text-decoration:none;display:grid}.home-content .writing-row{line-height:var(--home-row-line-height)}.writing-row:hover{color:var(--body)}.writing-year,.writing-date{color:var(--muted);font-variant-numeric:tabular-nums}.writing-date{text-align:right;white-space:nowrap}.writing-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.selected-section{margin-top:73px}.project-list{gap:40px;margin-top:16px;display:grid}.project-card{color:var(--muted);text-decoration:none;display:block}.project-image-wrap{aspect-ratio:16/9;background:var(--image-surface);border:1px solid #6b728012;border-radius:12px;width:100%;position:relative;overflow:hidden}.project-image{object-fit:contain;object-position:50% 50%;width:100%;height:100%;display:block;position:absolute;inset:0}.project-card h2{color:var(--body);font-size:var(--body-size);margin:12px 0 0;font-weight:400;line-height:20px}.home-content .project-card h2{line-height:var(--home-project-title-line-height)}.project-card:hover h2{color:var(--ink)}.project-type{color:var(--muted)}.project-card p{max-width:var(--reading-width);color:var(--muted);font-size:var(--body-size);margin:0;line-height:16.25px}.home-content .project-card p{line-height:var(--home-project-description-line-height)}.home-content .project-card p br{display:none}.site-surface{z-index:2;background:var(--page);transform-origin:top;will-change:transform,clip-path;position:relative;overflow:hidden}.site-footer{z-index:1;width:100%;padding:var(--footer-padding-top)0 var(--footer-padding-bottom);color:var(--footer-fg);text-align:center;background:0 0;margin:0;position:relative}.site-footer-inner{width:min(100%,var(--content-width));padding-left:var(--page-pad);padding-right:var(--page-pad);margin:0 auto}.footer-mix{opacity:.7;color:var(--footer-fg);font-family:var(--font-family);font-size:var(--body-size);mix-blend-mode:color-dodge;flex-direction:column;gap:4px;line-height:20px;display:flex}.site-footer p{color:var(--footer-fg);margin:0}.footer-location{font-size:var(--body-size);line-height:var(--body-line-height);padding-top:8px}.footer-links{font-size:var(--body-size);line-height:20px}.footer-links a{background:var(--footer-link-bg);color:var(--footer-fg);border-radius:4px;margin:2px 4px;padding:5px 4px 6px;line-height:10px;text-decoration:none;transition:background-color .2s cubic-bezier(.23,1,.32,1),color .2s cubic-bezier(.23,1,.32,1);display:inline-block}.footer-links a:hover{background:var(--footer-link-hover-bg);color:var(--footer-link-hover-fg)}.copyright{font-size:var(--body-size);padding-top:48px;line-height:20px}.listing-page,.article-page,.detail-page{min-height:55vh;padding-top:28px}.listing-page{padding-bottom:192px}.listing-page .project-list{margin-top:24px}.listing-page .writing-list{margin-top:19px}.article-copy{color:#666;max-width:540px;margin-top:30px;font-size:13px;line-height:1.6}.article-copy p{margin:0 0 16px}.detail-label{color:#969696;margin:28px 0 4px;font-size:11px}.detail-page h1{color:#424242;letter-spacing:-.04em;max-width:550px;margin:0;font-size:clamp(24px,5vw,34px);font-weight:400;line-height:1.16}.detail-image{object-fit:cover;width:100%;max-height:500px;margin-top:28px;display:block}.internal-shell{padding-top:var(--header-top);min-height:60vh;padding-bottom:192px}.internal-breadcrumb{height:20px;color:var(--muted);font-size:var(--body-size);white-space:nowrap;align-items:center;gap:6px;line-height:20px;display:flex}.internal-breadcrumb a:first-child{color:var(--ink);font-weight:500}.internal-breadcrumb a{color:var(--body);-webkit-text-decoration:underline #0000;text-decoration:underline #0000}.internal-breadcrumb a:hover{text-decoration-color:#d6dada}.breadcrumb-current{color:var(--muted);text-overflow:ellipsis;overflow:hidden}.work-gallery{width:calc(100vw - ((100vw - var(--content-width))/2 + var(--page-pad)));scroll-behavior:smooth;scrollbar-width:none;margin-top:40px;overflow-x:hidden}.work-gallery-track{gap:16px;display:flex}.work-gallery-card{width:var(--reading-width);flex:0 0 var(--reading-width);background:var(--image-surface);border:1px solid #6b728012;border-radius:12px;height:384px;overflow:hidden}.work-gallery-card img{width:calc(var(--reading-width) - 2px);object-fit:cover;height:382px;display:block}.gallery-controls{gap:4px;height:22px;margin-top:8px;display:flex}.gallery-control{color:#535a5b;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffffb3;border:1px solid #535a5b1a;border-radius:6px;justify-content:center;align-items:center;width:26px;height:22px;padding:4px 6px;transition:background-color .16s cubic-bezier(.23,1,.32,1),border-color .16s cubic-bezier(.23,1,.32,1),color .16s cubic-bezier(.23,1,.32,1),transform .16s cubic-bezier(.23,1,.32,1),opacity .16s cubic-bezier(.23,1,.32,1);display:inline-flex}.gallery-control:hover:not(:disabled){color:var(--body);background:#fff;border-color:#535a5b4d}.gallery-control:disabled{opacity:.3;pointer-events:none}.gallery-control:active{transform:scale(.97)}.gallery-control:focus-visible{outline-offset:2px;outline:2px solid #b2bcbd}.gallery-control svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:12px;height:12px}.work-detail{color:var(--muted);font-size:var(--body-size);line-height:var(--body-line-height);margin-top:39px}.work-title-row{justify-content:space-between;align-items:baseline;display:flex}.work-title-row h1{color:var(--body);margin:0;font-size:16px;font-weight:400;line-height:24px}.work-title-row h1 span{color:var(--muted);font-weight:400}.work-title-row time{color:var(--muted);font-size:12px;line-height:16px}.work-detail p{margin:0}.work-lede{margin-top:16px!important}.work-detail>p:not(.work-lede),.work-spec{margin-top:24px}.work-spec strong{color:var(--body);font-weight:500;display:block}.work-spec a{color:var(--body);-webkit-text-decoration:underline #d6dada;text-decoration:underline #d6dada}.article-detail{color:var(--muted);padding-top:60px}.article-detail-header{margin-bottom:24px}.article-detail-header h1{color:var(--body);letter-spacing:-.02em;margin:0;padding-bottom:4px;font-size:18px;font-weight:500;line-height:22.5px}.article-detail-header time{color:var(--muted);font-size:12px;line-height:16px;display:block}.article-prose{color:var(--muted);font-size:var(--body-size);line-height:var(--body-line-height)}.article-prose p{margin:4px 0 16px}.article-prose h2{color:var(--body);letter-spacing:-.025em;margin:40px 0 16px;font-size:20px;font-weight:500;line-height:28px}.article-prose figure{margin:32px 0}.article-prose img,.article-prose video{background:var(--image-surface);border-radius:12px;width:100%;height:auto;display:block}.article-prose a{color:var(--body);text-underline-offset:2px;font-weight:500;-webkit-text-decoration:underline #d6dada;text-decoration:underline #d6dada}.detail-return{align-items:center;gap:16px;padding-top:48px;display:flex}.detail-return span{background:#f1f1f1;flex:1;height:1px}.detail-return a{color:var(--muted);font-size:var(--body-size);padding:4px 8px;line-height:20px;-webkit-text-decoration:underline #0000;text-decoration:underline #0000}@media (max-width:640px){:root{--reveal-distance:var(--config-mobile-reveal-distance,640px);--page-pad:var(--config-mobile-page-pad,27px);--header-top:var(--config-mobile-header-top,48px)}.site-header{padding-top:var(--config-mobile-header-top,48px)}.site-header:before{width:34px;height:34px;margin-bottom:12px}.internal-shell{padding-bottom:144px}.listing-page{padding-bottom:128px}.internal-breadcrumb{gap:4px;font-size:12px}.work-gallery{width:calc(100vw - var(--page-pad) - var(--page-pad));margin-top:32px}.work-gallery-card{width:calc(100vw - var(--page-pad) - var(--page-pad));flex-basis:calc(100vw - var(--page-pad) - var(--page-pad));aspect-ratio:4/3;height:auto}.work-gallery-card img{width:100%;height:100%}.work-detail{margin-top:28px}.article-detail{padding-top:40px}.article-detail-header h1{font-size:17px}.home-content{padding-top:12px;padding-bottom:112px}.home-section{margin-top:52px}.selected-section{margin-top:62px}.project-list{gap:32px}.site-footer{padding:var(--footer-mobile-padding-top)0 var(--footer-mobile-padding-bottom)}.writing-row{grid-template-columns:36px minmax(0,1fr) auto;gap:6px}.writing-date{font-size:11px}}@media (max-width:480px){:root{--reveal-distance:var(--config-compact-reveal-distance,760px);--page-scale-amount-base:var(--config-compact-page-scale,.15);--max-shrink-px:var(--config-compact-max-shrink,220px);--page-radius-max:var(--config-compact-page-radius,40px)}}@media (prefers-reduced-motion:reduce){.site-surface{clip-path:none!important;transform:none!important}*,:before,:after{transition-duration:.01ms!important}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}}:root{--footer-sheet-progress: 0;--footer-sheet-radius: 0px}html{background:var(--page)!important}html[data-footer-overscroll=on]{background:var(--footer-g3, var(--footer-bg-bottom))!important}body{overscroll-behavior-y:auto}.site-surface{overflow:hidden;background:var(--page);transform-origin:top;backface-visibility:hidden;-webkit-backface-visibility:hidden;will-change:transform,clip-path}@media (prefers-reduced-motion: reduce){.site-surface{transform:none!important;clip-path:none!important;will-change:auto}}.site-header:before,.internal-shell:before{display:block;width:40px;height:40px;margin-bottom:12px;border-radius:50%;background:url(/ibrim.png) center / cover no-repeat;box-shadow:inset 0 0 0 1px #1111100f;content:""}.internal-breadcrumb>a:first-child{font-size:var(--brand-size)}.internal-breadcrumb{display:grid;grid-template-columns:max-content max-content max-content max-content minmax(0,1fr);align-items:start;height:auto;min-height:20px;white-space:nowrap}.internal-breadcrumb .breadcrumb-current{display:-webkit-box;min-width:0;overflow:hidden;white-space:normal;overflow-wrap:break-word;text-overflow:clip;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2}@media (max-width: 640px){.internal-shell{padding-top:var(--config-mobile-header-top, 48px)}.site-header:before,.internal-shell:before{width:38px;height:38px;margin-bottom:11px}}.project-list>.project-card:not([href="/works/interaction-prototypes"]):not([href="/works/henro-space"]):not([href="/works/inwards"]):not([href="/works/porostocky-photo"]):not([href="/works/comp-ai"]):not([href="/works/floreal"]){order:-1}.listing-page .project-card h2{display:-webkit-box;overflow:hidden;font-size:15px;line-height:21px;-webkit-box-orient:vertical;-webkit-line-clamp:2}.listing-page .writing-row{align-items:start}.listing-page .writing-title{display:-webkit-box;overflow:hidden;white-space:normal;font-size:15px;line-height:20px;text-overflow:ellipsis;-webkit-box-orient:vertical;-webkit-line-clamp:2}.markdown-body blockquote:has(a[href^="#bento-"]){width:min(100%,420px);margin:24px 0;padding:14px 16px 15px;border:1px solid rgb(17 17 16 / 5%);border-radius:12px;color:#303332;font-size:13px;line-height:18px;letter-spacing:-.01em}.markdown-body blockquote:has(a[href^="#bento-"])>p:first-child{display:none}.markdown-body blockquote:has(a[href^="#bento-"])>p{margin:0 0 10px}.markdown-body blockquote:has(a[href^="#bento-"])>p:last-child{margin-bottom:0}.markdown-body blockquote:has(a[href^="#bento-"]) strong{color:inherit;font-weight:500}.markdown-body blockquote:has(a[href^="#bento-"]) h2,.markdown-body blockquote:has(a[href^="#bento-"]) h3{margin:0 0 8px;color:inherit;font-size:14px;font-weight:500;line-height:19px;letter-spacing:-.015em}.markdown-body blockquote:has(a[href^="#bento-"]) ul,.markdown-body blockquote:has(a[href^="#bento-"]) ol{margin:8px 0 10px;padding-left:18px}.markdown-body blockquote:has(a[href^="#bento-"]) li+li{margin-top:3px}.markdown-body blockquote:has(a[href^="#bento-"]) a:not([href^="#bento-"]){color:inherit;font-weight:500;text-decoration:underline;text-decoration-color:#30333259;text-underline-offset:2px}.markdown-body blockquote:has(a[href^="#bento-"]) a:not([href^="#bento-"]):hover{text-decoration-color:currentColor}.markdown-body blockquote:has(a[href^="#bento-"]) img{display:block;width:100%;height:auto;margin:12px 0;border-radius:8px;background:#ffffff47}.markdown-body blockquote:has(a[href^="#bento-"]) p:has(>img){margin-bottom:10px}.markdown-body blockquote:has(a[href="#bento-cream"]){background:#f2eee5}.markdown-body blockquote:has(a[href="#bento-yellow"]){background:#f2e77a}.markdown-body blockquote:has(a[href="#bento-orange"]){background:#efad69}.markdown-body blockquote:has(a[href="#bento-mint"]){background:#cee6d2}.markdown-body blockquote:has(a[href="#bento-blue"]){background:#cadcf0}@media (max-width: 640px){.markdown-body blockquote:has(a[href^="#bento-"]){width:100%;margin:22px 0;padding:13px 14px 14px}}.internal-shell:has(>.work-gallery){--work-enter-y: 42px;animation:work-detail-enter .56s cubic-bezier(.22,1,.36,1) both;will-change:transform,opacity}@keyframes work-detail-enter{0%{opacity:.72;transform:translate3d(0,var(--work-enter-y),0)}to{opacity:1;transform:translateZ(0)}}.work-gallery{--gallery-card-width: var(--reading-width);--gallery-gap: 16px;--gallery-viewport-width: calc( 100vw - ((100vw - var(--content-width)) / 2 + var(--page-pad)) );width:var(--gallery-viewport-width);margin-top:40px;overflow-x:auto;scroll-behavior:smooth;scroll-snap-type:x mandatory;scroll-padding-inline-start:0;overscroll-behavior-inline:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch}.work-gallery::-webkit-scrollbar{display:none}.work-gallery-track{display:flex;width:max-content;gap:var(--gallery-gap);padding-right:max(0px,calc(var(--gallery-viewport-width) - var(--gallery-card-width)))}.work-gallery-card{width:var(--gallery-card-width);height:384px;flex:0 0 var(--gallery-card-width);overflow:hidden;border:1px solid rgb(107 114 128 / 7%);border-radius:12px;background:var(--image-surface);scroll-snap-align:start;scroll-snap-stop:always}.work-gallery-card img{display:block;width:calc(var(--gallery-card-width) - 2px);height:382px;object-fit:cover}@media (max-width: 640px){.internal-shell:has(>.work-gallery){--work-enter-y: 56px}.work-gallery{--gallery-edge: 20px;--gallery-card-width: calc(100vw - 40px) ;--gallery-viewport-width: calc(100vw - var(--gallery-edge));width:var(--gallery-viewport-width);margin-top:32px;margin-left:calc((var(--page-pad) - var(--gallery-edge)) * -1)}.work-gallery-card{height:auto;flex-basis:var(--gallery-card-width);aspect-ratio:4 / 3}.work-gallery-card img{width:100%;height:100%}.gallery-controls{margin-top:16px;margin-left:4px}}@media (prefers-reduced-motion: reduce){.internal-shell:has(>.work-gallery){animation:none}}.markdown-body{--heti-primary: oklch(25% .005 298);--heti-secondary: oklch(40% .005 298);--heti-highlight: oklch(.93 .195089 103.2532 / .5);color:var(--heti-secondary);font-family:var(--font-family);font-size:16px;letter-spacing:normal}.work-markdown{margin-top:24px}.markdown-body .heti,.markdown-body .heti *:not(svg):not(path){font-family:var(--font-family)}.markdown-body .heti{overflow-wrap:break-word;line-height:1.5;-webkit-hyphens:auto;hyphens:auto}.markdown-body .heti .post-title{margin-top:0;margin-bottom:.5rem;font-size:2.15rem;font-weight:700}.markdown-body .heti :where(h1,h2,h3,h4,h5,h6){margin-top:1.5em;margin-bottom:1rem;scroll-margin-top:5rem;font-weight:600}.markdown-body .heti :where(h1){color:var(--heti-primary);font-size:1.75rem}.markdown-body .heti :where(h2){color:var(--heti-primary);font-size:1.5rem}.markdown-body .heti :where(h3){font-size:1.25rem}.markdown-body .heti :where(h4){font-size:1.125rem}.markdown-body .heti :where(h5){font-size:1rem}.markdown-body .heti :where(h6){font-weight:400}.markdown-body .heti :where(h1,h2,h3){line-height:1.33em;text-wrap:balance}.markdown-body .heti :where(h1+h2,h2+h3,h3+h4,h4+h5,h5+h6){margin-top:1rem}.markdown-body .heti :where(p:not(.no-heti):not(.no-heti *)){margin-top:0;margin-bottom:1rem;text-wrap:pretty}.markdown-body .heti :where(a:not(.no-heti):not(.no-heti *)){color:inherit;font-weight:600;letter-spacing:0;text-decoration-line:underline;text-decoration-color:#48474acc;text-decoration-thickness:.075em;text-underline-offset:.1em;transition:color .15s ease-out,text-decoration-color .15s ease-out;overflow-wrap:anywhere}.markdown-body .heti :where(a:not(.no-heti):not(.no-heti *)):hover{color:var(--heti-primary);text-decoration-color:#222124cc}.markdown-body .heti :where(img:not(.no-heti):not(.no-heti *)){max-width:100%;height:auto;margin-right:auto;margin-left:auto;cursor:zoom-in}.markdown-body .heti :where(img:not(figure img):not(.no-heti):not(.no-heti *)){margin-top:1.5rem;margin-bottom:1.5rem;border-radius:.75rem}.markdown-body .heti :where(figure){width:100%;margin-top:1.5rem;margin-bottom:1.5rem}.markdown-body .heti :where(figcaption){margin-top:.625rem;color:#48474acc;font-size:.875rem;text-align:center}.markdown-body .heti :is(h1,h2,h3,h4,h5,h6,img,figure)+:is(img,figure){margin-top:1rem}.markdown-body .heti :is(img,figure):has(+:is(img,figure)){margin-bottom:1rem}.markdown-body .heti :where(video){display:block;width:100%;max-width:100%;aspect-ratio:16 / 9;margin:1.5rem auto;border-radius:.75rem;background:#48474a0d}.markdown-body .heti :where(pre){overflow:auto;padding:.75rem 1rem;border:1px solid oklch(40% .005 298 / .05);border-radius:.25rem;border-style:solid;background:#48474a0d!important;scrollbar-width:thin;scrollbar-color:transparent transparent;transition:scrollbar-color .3s ease-out}.markdown-body .heti :where(pre):hover{scrollbar-color:oklch(40% .005 298 / .15) transparent}.markdown-body .heti pre code{padding:0;border:0;background:transparent}.markdown-body .heti .code-block-wrapper{position:relative;margin-top:1.5rem;margin-bottom:1.5rem}.markdown-body .heti :is(h1,h2,h3,h4,h5,h6,.code-block-wrapper)+.code-block-wrapper{margin-top:1rem}.markdown-body .heti .code-block-wrapper:has(+.code-block-wrapper){margin-bottom:1rem}.markdown-body .heti :where(code){padding:.15em .4em;border:1px solid oklch(40% .005 298 / .05);border-radius:.25rem;border-style:solid;background:#48474a0d;font-size:.85em;letter-spacing:0;overflow-wrap:anywhere;counter-reset:line}.markdown-body .heti code span.line{position:relative;padding-left:2rem}.markdown-body .heti code span.line:before{position:absolute;left:0;width:1rem;color:#48474a66;line-height:1.9em;content:counter(line);counter-increment:line;direction:rtl}.markdown-body .heti :where(blockquote){margin-top:1.5rem;margin-bottom:1.5rem;padding:.125rem 1rem;border-left:4px solid oklch(40% .005 298 / .25);color:#48474acc}.markdown-body .heti blockquote[class*=admonition-]{padding-top:.375rem;padding-bottom:.375rem;color:var(--heti-secondary)}.markdown-body .heti blockquote blockquote{padding-top:0;padding-bottom:0}.markdown-body .heti blockquote>:first-child{margin-top:0}.markdown-body .heti blockquote>:last-child{margin-bottom:0}.markdown-body .heti :is(h1,h2,h3,h4,h5,h6,blockquote)+blockquote{margin-top:1rem}.markdown-body .heti blockquote:has(+blockquote){margin-bottom:1rem}.markdown-body .heti :where(table){display:block;box-sizing:border-box;max-width:100%;margin-top:1.5rem;margin-bottom:1.5rem;overflow-x:auto;table-layout:fixed;border-collapse:collapse;scrollbar-width:thin;scrollbar-color:transparent transparent;transition:scrollbar-color .3s ease-out}.markdown-body .heti :where(table):hover{scrollbar-color:oklch(40% .005 298 / .15) transparent}.markdown-body .heti :where(th,td){padding-right:.75rem;padding-bottom:.375rem;padding-left:.75rem;border-bottom:1px solid oklch(40% .005 298 / .25)}.markdown-body .heti tr :where(td:first-child,th:first-child){padding-left:0}.markdown-body .heti tr :where(td:last-child,th:last-child){padding-right:0}.markdown-body .heti :where(td){padding-top:.375rem}.markdown-body .heti tr:last-child :where(td){border-bottom:0}.markdown-body .heti :is(h1,h2,h3,h4,h5,h6,table)+table{margin-top:1rem}.markdown-body .heti table:has(+table){margin-bottom:1rem}.markdown-body .heti :where(ul,ol){margin-top:1.5rem;margin-bottom:1.5rem;padding-left:2em}.markdown-body .heti :where(ul,ol) :where(ul,ol){margin-top:0;margin-bottom:.25em}.markdown-body .heti :where(ul){list-style-type:disc}.markdown-body .heti :where(ol){list-style-type:decimal}.markdown-body .heti :where(ul,ol) :where(ul){list-style-type:circle}.markdown-body .heti :where(ul,ol) :where(ul,ol) :where(ul){list-style-type:square}.markdown-body .heti :where(li){margin-top:.25em;list-style-type:unset}.markdown-body .heti :is(h1,h2,h3,h4,h5,h6,ul,ol)+:is(ul,ol){margin-top:1rem}.markdown-body .heti :is(ul,ol):has(+:is(ul,ol)){margin-bottom:1rem}html.rtl .rtl-content .markdown-body .heti :where(ul,ol){margin-top:1.75rem;margin-bottom:1.75rem;padding-right:1.6rem;padding-left:0;text-align:right}html.rtl .rtl-content .markdown-body .heti :where(li){margin-top:.7em;padding-right:.3rem;padding-left:0;line-height:1.9}html.rtl .rtl-content .markdown-body .heti :where(li)::marker{color:#48474ac7}html.rtl .rtl-content .markdown-body .heti :where(li)>:where(p){margin-top:0;margin-bottom:.7rem}html.rtl .rtl-content .markdown-body .heti :where(li)>:where(p:last-child){margin-bottom:0}html.rtl .rtl-content .markdown-body .heti :where(li)>:where(ul,ol){margin-top:.85rem;margin-bottom:.25rem;padding-right:1.35rem;padding-left:0}html.rtl .rtl-content .markdown-body .heti :where(ul,ol) :where(ul,ol) :where(li){margin-top:.55em}.markdown-body .heti :where(sub,sup){position:relative;margin-right:.1em;margin-left:.1em;vertical-align:baseline;font-size:.75em}.markdown-body .heti :where(sub){bottom:-.25em}.markdown-body .heti :where(sup){top:-.5em}.markdown-body .heti :where(abbr[title]){padding-bottom:.0625rem;border-bottom:1px dotted var(--heti-secondary);cursor:help;text-decoration:none}.markdown-body .heti :where(u){text-decoration-line:underline;text-decoration-style:wavy;text-decoration-color:#f87171;text-underline-offset:.25em}.markdown-body .heti :where(kbd){display:inline-block;padding:.3em .4em;border:1px solid oklch(40% .005 298 / .4);border-radius:.25rem;border-style:solid;color:var(--heti-secondary);font-size:.85em;font-weight:700;line-height:1;letter-spacing:0}.markdown-body .heti :where(mark){padding-top:.1625rem;padding-bottom:.1625rem;background:var(--heti-highlight);color:inherit}.markdown-body .heti :where(sub,sup) :where(a){text-decoration:none}.markdown-body .heti :where(sup):target,.markdown-body .heti :where(sup) a:target{background:var(--heti-highlight)}.markdown-body .heti .data-footnote-backref{font-family:ui-serif,Georgia,Cambria,Times New Roman,Times,serif;text-decoration:none}.markdown-body .heti :where(hr){height:auto;margin-top:3.625rem;margin-bottom:2.625rem;border:0;text-align:center}.markdown-body .heti :where(hr):before{color:#48474a40;font-family:ui-serif,Georgia,Cambria,Times New Roman,Times,serif;font-size:1.5rem;white-space:pre;content:"*   *   *"}.markdown-body .heti :where(b,strong){font-weight:600}.markdown-body .heti :where(em){font-style:italic}.markdown-body .heti :where(q:is(:lang(zh),:lang(ja),:lang(ko))){quotes:"「" "」" "『" "』"}.markdown-body .heti input[type=checkbox]{margin-right:.45em;accent-color:var(--heti-secondary)}@supports (letter-spacing: .02em){.markdown-body .heti :where(:lang(zh),:lang(ja),:lang(ko)){letter-spacing:.02em}.markdown-body .heti :where(h1,h2,h3):where(:lang(zh),:lang(ja),:lang(ko)){letter-spacing:.05em;text-wrap:pretty}.markdown-body .heti :where(p:not(.no-heti):not(.no-heti *)):where(:lang(zh),:lang(ja),:lang(ko)){text-align:justify}}.article-detail.markdown-body{--heti-primary: oklch(25% .005 298);--heti-secondary: oklch(40% .005 298);--heti-highlight: oklch(.93 .195089 103.2532 / .5);--legacy-note: oklch(48.8% .243 264.376 / .8);--legacy-tip: oklch(50.8% .118 165.612 / .8);--legacy-important: oklch(49.6% .265 301.924 / .8);--legacy-warning: oklch(55.5% .163 48.998 / .8);--legacy-caution: oklch(50.5% .213 27.518 / .8)}.article-detail.markdown-body>.article-detail-header{color:var(--muted);font-family:var(--font-family);font-size:var(--body-size);line-height:var(--body-line-height);letter-spacing:var(--body-letter-spacing)}.article-detail.markdown-body>.article-detail-header .post-title,.article-detail.markdown-body>.article-detail-header time{font-family:var(--font-family)}.article-detail.markdown-body .post-content.heti,.article-detail.markdown-body .post-content.heti *:not(svg):not(path){font-family:var(--font-family)}.article-detail.markdown-body .post-content.heti{width:auto;max-width:none;margin:0;transform:none;color:var(--heti-secondary)}.article-detail.markdown-body .post-content.heti .heading-anchor-link{display:inline-block;transform:translateY(.1em);color:inherit;font-weight:inherit;text-decoration:none}.article-detail.markdown-body .post-content.heti .heading-anchor-link svg{width:.9em;aspect-ratio:1;margin-left:.4em;opacity:0;transition:opacity .15s ease-out,transform .1s ease-out}.article-detail.markdown-body .post-content.heti :is(h1,h2,h3,h4):hover .heading-anchor-link svg{opacity:.4}.article-detail.markdown-body .post-content.heti .heading-anchor-link:hover svg{opacity:.8!important}.article-detail.markdown-body .post-content.heti .heading-anchor-link:active svg{transform:scale(.9)}.article-detail.markdown-body .post-content.heti .admonition-title{display:flex;align-items:center;margin-bottom:1rem;font-weight:600}.article-detail.markdown-body .post-content.heti .admonition-title:before{display:inline-block;width:1rem;height:1rem;margin-right:.5rem;background:currentColor;content:"";-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain}.article-detail.markdown-body .post-content.heti .admonition-note{border-left-color:var(--legacy-note)!important}.article-detail.markdown-body .post-content.heti .admonition-note .admonition-title{color:var(--legacy-note)}.article-detail.markdown-body .post-content.heti .admonition-note .admonition-title:before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8Zm8-6.5a6.5 6.5 0 1 0 0 13 6.5 6.5 0 0 0 0-13ZM6.5 7.75A.75.75 0 0 1 7.25 7h1a.75.75 0 0 1 .75.75v2.75h.25a.75.75 0 0 1 0 1.5h-2a.75.75 0 0 1 0-1.5h.25v-2h-.25a.75.75 0 0 1-.75-.75ZM8 6a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z'%3E%3C/path%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8Zm8-6.5a6.5 6.5 0 1 0 0 13 6.5 6.5 0 0 0 0-13ZM6.5 7.75A.75.75 0 0 1 7.25 7h1a.75.75 0 0 1 .75.75v2.75h.25a.75.75 0 0 1 0 1.5h-2a.75.75 0 0 1 0-1.5h.25v-2h-.25a.75.75 0 0 1-.75-.75ZM8 6a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z'%3E%3C/path%3E%3C/svg%3E")}.article-detail.markdown-body .post-content.heti .admonition-tip{border-left-color:var(--legacy-tip)!important}.article-detail.markdown-body .post-content.heti .admonition-tip .admonition-title{color:var(--legacy-tip)}.article-detail.markdown-body .post-content.heti .admonition-tip .admonition-title:before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M8 1.5c-2.363 0-4 1.69-4 3.75 0 .984.424 1.625.984 2.304l.214.253c.223.264.47.556.673.848.284.411.537.896.621 1.49a.75.75 0 0 1-1.484.211c-.04-.282-.163-.547-.37-.847a8.456 8.456 0 0 0-.542-.68c-.084-.1-.173-.205-.268-.32C3.201 7.75 2.5 6.766 2.5 5.25 2.5 2.31 4.863 0 8 0s5.5 2.31 5.5 5.25c0 1.516-.701 2.5-1.328 3.259-.095.115-.184.22-.268.319-.207.245-.383.453-.541.681-.208.3-.33.565-.37.847a.751.751 0 0 1-1.485-.212c.084-.593.337-1.078.621-1.489.203-.292.45-.584.673-.848.075-.088.147-.173.213-.253.561-.679.985-1.32.985-2.304 0-2.06-1.637-3.75-4-3.75ZM5.75 12h4.5a.75.75 0 0 1 0 1.5h-4.5a.75.75 0 0 1 0-1.5ZM6 15.25a.75.75 0 0 1 .75-.75h2.5a.75.75 0 0 1 0 1.5h-2.5a.75.75 0 0 1-.75-.75Z'%3E%3C/path%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M8 1.5c-2.363 0-4 1.69-4 3.75 0 .984.424 1.625.984 2.304l.214.253c.223.264.47.556.673.848.284.411.537.896.621 1.49a.75.75 0 0 1-1.484.211c-.04-.282-.163-.547-.37-.847a8.456 8.456 0 0 0-.542-.68c-.084-.1-.173-.205-.268-.32C3.201 7.75 2.5 6.766 2.5 5.25 2.5 2.31 4.863 0 8 0s5.5 2.31 5.5 5.25c0 1.516-.701 2.5-1.328 3.259-.095.115-.184.22-.268.319-.207.245-.383.453-.541.681-.208.3-.33.565-.37.847a.751.751 0 0 1-1.485-.212c.084-.593.337-1.078.621-1.489.203-.292.45-.584.673-.848.075-.088.147-.173.213-.253.561-.679.985-1.32.985-2.304 0-2.06-1.637-3.75-4-3.75ZM5.75 12h4.5a.75.75 0 0 1 0 1.5h-4.5a.75.75 0 0 1 0-1.5ZM6 15.25a.75.75 0 0 1 .75-.75h2.5a.75.75 0 0 1 0 1.5h-2.5a.75.75 0 0 1-.75-.75Z'%3E%3C/path%3E%3C/svg%3E")}.article-detail.markdown-body .post-content.heti .admonition-important{border-left-color:var(--legacy-important)!important}.article-detail.markdown-body .post-content.heti .admonition-important .admonition-title{color:var(--legacy-important)}.article-detail.markdown-body .post-content.heti .admonition-important .admonition-title:before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M0 1.75C0 .784.784 0 1.75 0h12.5C15.216 0 16 .784 16 1.75v9.5A1.75 1.75 0 0 1 14.25 13H8.06l-2.573 2.573A1.458 1.458 0 0 1 3 14.543V13H1.75A1.75 1.75 0 0 1 0 11.25Zm1.75-.25a.25.25 0 0 0-.25.25v9.5c0 .138.112.25.25.25h2a.75.75 0 0 1 .75.75v2.19l2.72-2.72a.749.749 0 0 1 .53-.22h6.5a.25.25 0 0 0 .25-.25v-9.5a.25.25 0 0 0-.25-.25Zm7 2.25v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 9a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z'%3E%3C/path%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M0 1.75C0 .784.784 0 1.75 0h12.5C15.216 0 16 .784 16 1.75v9.5A1.75 1.75 0 0 1 14.25 13H8.06l-2.573 2.573A1.458 1.458 0 0 1 3 14.543V13H1.75A1.75 1.75 0 0 1 0 11.25Zm1.75-.25a.25.25 0 0 0-.25.25v9.5c0 .138.112.25.25.25h2a.75.75 0 0 1 .75.75v2.19l2.72-2.72a.749.749 0 0 1 .53-.22h6.5a.25.25 0 0 0 .25-.25v-9.5a.25.25 0 0 0-.25-.25Zm7 2.25v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 9a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z'%3E%3C/path%3E%3C/svg%3E")}.article-detail.markdown-body .post-content.heti .admonition-warning{border-left-color:var(--legacy-warning)!important}.article-detail.markdown-body .post-content.heti .admonition-warning .admonition-title{color:var(--legacy-warning)}.article-detail.markdown-body .post-content.heti .admonition-warning .admonition-title:before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M6.457 1.047c.659-1.234 2.427-1.234 3.086 0l6.082 11.378A1.75 1.75 0 0 1 14.082 15H1.918a1.75 1.75 0 0 1-1.543-2.575Zm1.763.707a.25.25 0 0 0-.44 0L1.698 13.132a.25.25 0 0 0 .22.368h12.164a.25.25 0 0 0 .22-.368Zm.53 3.996v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 11a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z'%3E%3C/path%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M6.457 1.047c.659-1.234 2.427-1.234 3.086 0l6.082 11.378A1.75 1.75 0 0 1 14.082 15H1.918a1.75 1.75 0 0 1-1.543-2.575Zm1.763.707a.25.25 0 0 0-.44 0L1.698 13.132a.25.25 0 0 0 .22.368h12.164a.25.25 0 0 0 .22-.368Zm.53 3.996v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 11a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z'%3E%3C/path%3E%3C/svg%3E")}.article-detail.markdown-body .post-content.heti .admonition-caution{border-left-color:var(--legacy-caution)!important}.article-detail.markdown-body .post-content.heti .admonition-caution .admonition-title{color:var(--legacy-caution)}.article-detail.markdown-body .post-content.heti .admonition-caution .admonition-title:before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4.47.22A.749.749 0 0 1 5 0h6c.199 0 .389.079.53.22l4.25 4.25c.141.14.22.331.22.53v6a.749.749 0 0 1-.22.53l-4.25 4.25A.749.749 0 0 1 11 16H5a.749.749 0 0 1-.53-.22L.22 11.53A.749.749 0 0 1 0 11V5c0-.199.079-.389.22-.53Zm.84 1.28L1.5 5.31v5.38l3.81 3.81h5.38l3.81-3.81V5.31L10.69 1.5ZM8 4a.75.75 0 0 1 .75.75v3.5a.75.75 0 0 1-1.5 0v-3.5A.75.75 0 0 1 8 4Zm0 8a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z'%3E%3C/path%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4.47.22A.749.749 0 0 1 5 0h6c.199 0 .389.079.53.22l4.25 4.25c.141.14.22.331.22.53v6a.749.749 0 0 1-.22.53l-4.25 4.25A.749.749 0 0 1 11 16H5a.749.749 0 0 1-.53-.22L.22 11.53A.749.749 0 0 1 0 11V5c0-.199.079-.389.22-.53Zm.84 1.28L1.5 5.31v5.38l3.81 3.81h5.38l3.81-3.81V5.31L10.69 1.5ZM8 4a.75.75 0 0 1 .75.75v3.5a.75.75 0 0 1-1.5 0v-3.5A.75.75 0 0 1 8 4Zm0 8a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z'%3E%3C/path%3E%3C/svg%3E")}.article-detail.markdown-body .post-content.heti details>summary{width:fit-content;margin-bottom:1rem;cursor:pointer;list-style:none}.article-detail.markdown-body .post-content.heti details>summary::-webkit-details-marker{display:none}.article-detail.markdown-body .post-content.heti details>summary:before{display:inline-block;margin-right:.5rem;border-top:6px solid transparent;border-bottom:6px solid transparent;border-left:10px solid currentColor;content:"";transform:translate(2px,.5px);transition:transform .15s ease-out}.article-detail.markdown-body .post-content.heti details[open]>summary:before{transform:rotate(90deg) translate(.5px,-2px)}.article-detail.markdown-body .post-content.heti .gallery-container{display:flex;gap:1rem;margin-top:1.5rem;margin-bottom:1.5rem;overflow-x:auto;scrollbar-width:none}.article-detail.markdown-body .post-content.heti .gallery-container::-webkit-scrollbar{display:none}.article-detail.markdown-body .post-content.heti .gallery-container .gallery-item{max-width:80%;margin-top:0;margin-bottom:0;flex-shrink:0}.article-detail.markdown-body .post-content.heti [data-code-block-container=true]{position:relative;margin:1.5rem 0;overflow:hidden;border:1px solid oklch(40% .005 298 / .05);border-radius:.25rem;background:#48474a0d}.article-detail.markdown-body .post-content.heti [data-code-block-header=true]{position:absolute;z-index:3;top:.55rem;right:.55rem;width:auto;min-height:0;padding:0;border:0;background:transparent}.article-detail.markdown-body .post-content.heti [data-code-block-header=true]>span{display:none}.article-detail.markdown-body .post-content.heti [data-code-block-header=true] button{display:inline-flex;width:2rem;height:2rem;align-items:center;justify-content:center;padding:0;border:1px solid oklch(40% .005 298 / .15);border-radius:.25rem;background:var(--page, #fff);color:#48474acc;opacity:0;cursor:pointer;transition:opacity .3s ease-out,border-color .15s ease-out,color .15s ease-out}.article-detail.markdown-body .post-content.heti [data-code-block-container=true]:hover [data-code-block-header=true] button,.article-detail.markdown-body .post-content.heti [data-code-block-header=true] button:focus-visible{opacity:1}.article-detail.markdown-body .post-content.heti [data-code-block-header=true] button[aria-label*=download i]{display:none}.article-detail.markdown-body .post-content.heti [data-code-block-header=true] button svg{width:1rem;height:1rem}.article-detail.markdown-body .post-content.heti [data-streamdown=code-block]{margin:0;padding:.75rem 1rem;border:0;border-radius:0;background:transparent!important;overflow:auto;scrollbar-width:thin;scrollbar-color:transparent transparent}.article-detail.markdown-body .post-content.heti [data-streamdown=code-block]:hover{scrollbar-color:oklch(40% .005 298 / .15) transparent}.article-detail.markdown-body .post-content.heti .katex-display{margin-top:1.5rem;margin-bottom:1.5rem;overflow-x:auto;overflow-y:hidden;scrollbar-width:none}.article-detail.markdown-body .post-content.heti .katex-display::-webkit-scrollbar{display:none}.article-detail.markdown-body .post-content.heti pre.mermaid svg,.article-detail.markdown-body .post-content.heti [data-streamdown=mermaid-block] svg{display:block;max-width:100%;height:auto;margin-right:auto;margin-left:auto}.article-detail.markdown-body .post-content.heti [data-streamdown=mermaid-block]{margin-top:1.5rem;margin-bottom:1.5rem}.article-detail.markdown-body .post-content.heti [data-streamdown=mermaid-block] button[aria-label*=download i],.article-detail.markdown-body .post-content.heti [data-streamdown=mermaid-block] button[aria-label*=fullscreen i]{display:none}.article-detail.markdown-body .post-content.heti .md-media-video>video{margin-top:0;margin-bottom:0}@media (min-width: 1024px){.article-detail.markdown-body .post-content.heti .gallery-container .gallery-item{max-width:70%}}@media (prefers-reduced-motion: reduce){.article-detail.markdown-body .post-content.heti details>summary:before,.article-detail.markdown-body .post-content.heti .heading-anchor-link svg,.article-detail.markdown-body .post-content.heti [data-code-block-header=true] button{transition:none}}.article-detail.markdown-body .post-content.heti [data-code-block-header=true]{display:none!important}.article-detail.markdown-body .post-content.heti .code-copy-button{position:absolute;z-index:4;top:.55rem;right:.55rem;display:inline-flex;width:2rem;height:2rem;align-items:center;justify-content:center;padding:0;border:1px solid oklch(40% .005 298 / .15);border-radius:.25rem;background:var(--page, #fff);color:#48474acc;opacity:0;cursor:pointer;transition:opacity .3s ease-out,border-color .15s ease-out,color .15s ease-out}.article-detail.markdown-body .post-content.heti [data-code-block-container=true]:hover>.code-copy-button,.article-detail.markdown-body .post-content.heti .code-copy-button:focus-visible,.article-detail.markdown-body .post-content.heti .code-copy-button.copy-success{opacity:1}.article-detail.markdown-body .post-content.heti .code-copy-button svg{width:1rem;height:1rem}.article-detail.markdown-body .post-content.heti .gc-container{display:block;margin:1.5rem 0;padding:1rem 1.25rem;overflow-x:auto;border:1px solid oklch(40% .005 298 / .08);border-radius:.5rem;background:#48474a0d;color:var(--heti-secondary);text-decoration:none;transition:background-color .15s ease-out,color .15s ease-out;scrollbar-width:thin;scrollbar-color:oklch(40% .005 298 / .15) transparent}.article-detail.markdown-body .post-content.heti .gc-container:hover{background:#48474a17;color:var(--heti-primary)}.article-detail.markdown-body .post-content.heti :is(h1,h2,h3,h4,h5,h6,.gc-container)+.gc-container{margin-top:1rem}.article-detail.markdown-body .post-content.heti .gc-container:has(+.gc-container){margin-bottom:1rem}.article-detail.markdown-body .post-content.heti .gc-title-bar{display:flex;align-items:center;gap:.625rem}.article-detail.markdown-body .post-content.heti .gc-owner-avatar{width:1.375rem;aspect-ratio:1;flex-shrink:0;border-radius:999px;background:#48474a33 center / cover no-repeat}.article-detail.markdown-body .post-content.heti .gc-repo-title{display:flex;align-items:center;line-height:1.5}.article-detail.markdown-body .post-content.heti .gc-slash{margin:0 .25rem;opacity:.4}.article-detail.markdown-body .post-content.heti .gc-github-icon{width:1.375rem;margin-left:auto;flex-shrink:0}.article-detail.markdown-body .post-content.heti .gc-repo-description{margin:.625rem 0 .875rem;text-align:left;font-size:.875rem}.article-detail.markdown-body .post-content.heti .gc-info-bar{display:flex;align-items:center;gap:.4375rem;font-size:.75rem}.article-detail.markdown-body .post-content.heti .gc-info-icon{flex-shrink:0}.article-detail.markdown-body .post-content.heti .gc-stars-count,.article-detail.markdown-body .post-content.heti .gc-forks-count{margin-right:.75rem}.article-detail.markdown-body .post-content.heti .gc-license-info{margin-left:.125rem;margin-right:1rem}.article-detail.markdown-body .post-content.heti .media-brand-frame{position:relative;display:block;width:fit-content;max-width:100%;margin-right:auto;margin-left:auto;line-height:0}.article-detail.markdown-body .post-content.heti .media-brand-frame--wide{width:100%}.article-detail.markdown-body .post-content.heti .media-brand-frame>img,.article-detail.markdown-body .post-content.heti .media-brand-frame>video,.article-detail.markdown-body .post-content.heti .media-brand-frame>iframe,.article-detail.markdown-body .post-content.heti .media-brand-frame>.lite-youtube-react{margin-top:0!important;margin-bottom:0!important}.article-detail.markdown-body .post-content.heti .media-brand-mark{position:absolute;z-index:4;bottom:clamp(.55rem,1.9vw,.78rem);left:clamp(.6rem,2vw,.82rem);color:#ffffff94;font-family:var(--font-family);font-size:clamp(.56rem,1.55vw,.68rem);font-weight:600;line-height:1;letter-spacing:.055em;text-shadow:none;pointer-events:none;-webkit-user-select:none;user-select:none}.article-detail.markdown-body .post-content.heti .legacy-embed-figure{margin:1.5rem 0}.article-detail.markdown-body .post-content.heti .lite-youtube-react,.article-detail.markdown-body .post-content.heti .legacy-youtube-player,.article-detail.markdown-body .post-content.heti .bilibili-player{display:block;width:100%;aspect-ratio:16 / 9;border:0}.article-detail.markdown-body .post-content.heti .lite-youtube-react{position:relative;padding:0;overflow:hidden;border-radius:inherit;background-color:#000;background-position:center;background-size:cover;cursor:pointer}.article-detail.markdown-body .post-content.heti .lite-youtube-play{position:absolute;top:50%;left:50%;width:4.25rem;height:3rem;border-radius:.75rem;background:#000000b8;transform:translate(-50%,-50%)}.article-detail.markdown-body .post-content.heti .lite-youtube-play:after{position:absolute;top:50%;left:52%;border-top:.625rem solid transparent;border-bottom:.625rem solid transparent;border-left:1rem solid #fff;content:"";transform:translate(-50%,-50%)}.article-detail.markdown-body .post-content.heti .twitter-tweet{margin-right:auto;margin-left:auto}.article-detail.markdown-body>.article-detail-header.legacy-meta-enhanced>time{display:none}.article-detail.markdown-body .legacy-post-meta{display:flex;flex-wrap:wrap;gap:0 .45rem;color:var(--muted);font-family:var(--font-family);font-size:12px;line-height:16px;letter-spacing:var(--body-letter-spacing)}.article-detail.markdown-body .legacy-post-meta time,.article-detail.markdown-body .legacy-post-meta span{display:inline;font-family:var(--font-family)}.article-detail.markdown-body .legacy-post-meta>*+*:before{margin-right:.45rem;color:#c2c7c7;content:"·"}.article-detail.markdown-body [data-writing-tags-host=true]{margin-top:3rem;padding-top:1.5rem;border-top:1px solid oklch(40% .005 298 / .12)}.article-detail.markdown-body .legacy-post-tags{display:flex;flex-wrap:wrap;gap:.75rem;font-family:var(--font-family)}.article-detail.markdown-body .legacy-post-tags span{display:inline-block;padding:.175rem .8rem;border:1px solid rgb(130 139 140 / 30%);border-radius:999px;color:var(--muted);font-family:var(--font-family);font-size:12px;line-height:20px}.article-detail.markdown-body [data-writing-toc-host=true]{margin-bottom:1.5rem}.article-detail.markdown-body #toc-container{overflow:hidden;border:1px solid oklch(40% .005 298 / .08);border-radius:.5rem;background:#48474a0d;color:var(--heti-secondary);font-family:var(--font-family)}.article-detail.markdown-body #toc-toggle{display:flex;width:100%;height:3rem;align-items:center;padding:0 1rem;border:0;background:transparent;color:inherit;font:inherit;font-weight:600;cursor:pointer}.article-detail.markdown-body #toc-desktop-icon{display:none;width:1.05rem;height:1.05rem;margin-left:auto;fill:none;stroke:currentColor;stroke-width:1.6}.article-detail.markdown-body #toc-accordion-wrapper{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s ease-in-out}.article-detail.markdown-body #toc-container.toc-open #toc-accordion-wrapper{grid-template-rows:1fr}.article-detail.markdown-body #toc-accordion-content{max-height:14.825rem;overflow:hidden;padding:0 1.5rem}.article-detail.markdown-body #toc-container.toc-open #toc-accordion-content{overflow-y:auto;padding-bottom:.625rem}.article-detail.markdown-body #toc-links-list{margin:.25rem 0 .625rem;padding:0;list-style:none}.article-detail.markdown-body #toc-links-list li[data-depth="3"]{margin-left:1rem}.article-detail.markdown-body #toc-links-list li[data-depth="4"]{margin-left:2rem}.article-detail.markdown-body #toc-links-list a{display:inline;color:var(--heti-secondary);font-size:.875rem;font-weight:400;text-decoration:none;transition:color .15s ease-out,font-weight .15s ease-out}.article-detail.markdown-body #toc-links-list a:hover,.article-detail.markdown-body #toc-links-list a.toc-link-active{color:var(--heti-primary);font-weight:500}.article-detail.markdown-body .legacy-raw-html{margin:1.5rem 0}@media (min-width: 1024px){.article-detail.markdown-body .post-content.heti .gc-container{padding:1.25rem 1.5rem}.article-detail.markdown-body .post-content.heti .gc-repo-description{font-size:1rem}.article-detail.markdown-body .post-content.heti .gc-info-bar{font-size:.875rem}}@media (min-width: 1536px){.article-detail.markdown-body [data-writing-toc-host=true]{margin:0}.article-detail.markdown-body #toc-container{position:fixed;top:11.125rem;left:0;width:min(calc(50vw - 38rem),13rem);min-width:9rem;overflow:visible;border:0;background:transparent}.article-detail.markdown-body #toc-toggle{width:auto;height:auto;padding:1rem;color:#828b8c66}.article-detail.markdown-body #toc-mobile-text{display:none}.article-detail.markdown-body #toc-desktop-icon{display:block;margin-left:0}.article-detail.markdown-body #toc-accordion-wrapper,.article-detail.markdown-body #toc-container.toc-open #toc-accordion-wrapper{grid-template-rows:1fr}.article-detail.markdown-body #toc-accordion-content,.article-detail.markdown-body #toc-container.toc-open #toc-accordion-content{max-height:calc(100vh - 26.75rem);overflow-y:auto;padding:0 1.5rem 0 1rem;scrollbar-width:none}.article-detail.markdown-body #toc-links-list a{color:#828b8c59;font-size:.8rem}.article-detail.markdown-body #toc-container:hover #toc-links-list a{color:#828b8ca6}.article-detail.markdown-body #toc-container:hover #toc-links-list a:hover,.article-detail.markdown-body #toc-links-list a.toc-link-active{color:var(--heti-primary)}}@media (prefers-reduced-motion: reduce){.article-detail.markdown-body .post-content.heti .code-copy-button,.article-detail.markdown-body #toc-accordion-wrapper,.article-detail.markdown-body #toc-links-list a{transition:none}}.article-detail.markdown-body .post-content.heti .heading-anchor-link svg{display:none}.article-detail.markdown-body .post-content.heti .heading-anchor-link:before{display:inline-block;width:.9em;aspect-ratio:1;margin-left:.4em;background:currentColor;content:"";opacity:0;vertical-align:-.1em;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M2.6 21.4c2 2 5.9 2.9 8.9 0l3.5-3.5-1-1-3.5 3.5c-1.4 1.4-4.2 1.9-6.4-.3s-1.8-5-.3-6.4l3.5-3.5-1-1-3.5 3.5c-3 3-2 6.9 0 8.9ZM21.4 2.6c2 2 2.9 5.9 0 8.9L17.9 15l-1-1 3.5-3.5c1.4-1.4 1.9-4.2-.3-6.4s-5-1.8-6.4-.3l-3.5 3.5-1-1 3.5-3.5c3-3 6.9-2 8.9 0Z'/%3E%3Cpath d='m8.01 14.97 6.93-6.93 1.061 1.06-6.93 6.93z'/%3E%3C/svg%3E") center / contain no-repeat;transition:opacity .15s ease-out,transform .1s ease-out}.article-detail.markdown-body .post-content.heti :is(h1,h2,h3,h4):hover .heading-anchor-link:before{opacity:.4}.article-detail.markdown-body .post-content.heti .heading-anchor-link:hover:before{opacity:.8}.article-detail.markdown-body .post-content.heti .heading-anchor-link:active:before{transform:scale(.9)}.article-detail.markdown-body .post-content.heti [data-code-block-container=true]{padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}.article-detail.markdown-body .post-content.heti .code-copy-button:hover{border-color:#22212426;color:#222124cc}.article-detail.markdown-body .post-content.heti .code-copy-button.copy-success{border-color:transparent;background:#059669;color:var(--page, #fff)}.article-detail.markdown-body .post-content.heti .code-copy-button svg,.article-detail.markdown-body .post-content.heti .code-copy-button svg path{pointer-events:none}.article-detail.markdown-body [data-writing-tags-host=true]{margin-top:3.15rem;padding-top:0;border-top:0}.article-detail.markdown-body [data-writing-tags-host=true]:before{display:block;width:2.5rem;height:1px;margin-bottom:1.125rem;background:#48474a40;content:""}.article-detail.markdown-body .legacy-post-tags{column-gap:.75rem;row-gap:.8rem}.article-detail.markdown-body .legacy-post-tags span{border-color:#48474a4d;color:var(--heti-secondary)}.article-detail.markdown-body #toc-links-list li+li{margin-top:.275rem}.article-detail.markdown-body #toc-links-list a:hover{color:var(--heti-secondary);font-weight:500}.article-detail.markdown-body #toc-links-list a.toc-link-active{color:#48474acc;font-weight:500}.article-detail.markdown-body #toc-toggle:active #toc-desktop-icon{transform:scale(.9)}.zoom-media-frame .media-brand-mark{position:absolute;z-index:4;bottom:clamp(.55rem,1.9vw,.78rem);left:clamp(.6rem,2vw,.82rem);color:#ffffff94;font-family:var(--font-family);font-size:clamp(.56rem,1.55vw,.68rem);font-weight:600;line-height:1;letter-spacing:.055em;text-shadow:none;pointer-events:none;-webkit-user-select:none;user-select:none}@media (min-width: 1024px){.article-detail.markdown-body [data-writing-tags-host=true]:before{width:2.75rem;margin-bottom:1.5rem}.article-detail.markdown-body .post-content.heti .gc-title-bar{gap:.75rem}.article-detail.markdown-body .post-content.heti .gc-repo-title{font-size:1.125rem}.article-detail.markdown-body .post-content.heti .gc-github-icon{width:1.5rem}.article-detail.markdown-body .post-content.heti .gc-repo-description{margin-top:.7rem;margin-bottom:1rem}.article-detail.markdown-body .post-content.heti .gc-info-bar{gap:.5rem}.article-detail.markdown-body .post-content.heti .gc-stars-count{margin-right:1rem}.article-detail.markdown-body .post-content.heti .gc-forks-count{margin-right:1.25rem}}@media (min-width: 1536px){.article-detail.markdown-body #toc-accordion-wrapper{grid-template-rows:1fr}.article-detail.markdown-body #toc-container.toc-open #toc-accordion-wrapper{grid-template-rows:0fr}.article-detail.markdown-body #toc-container.toc-open #toc-accordion-content{overflow:hidden}.article-detail.markdown-body #toc-links-list a{color:#48474a40}.article-detail.markdown-body #toc-container:hover #toc-links-list a{color:#48474a99}.article-detail.markdown-body #toc-links-list a.toc-link-active{color:#48474acc}.article-detail.markdown-body #toc-container:hover #toc-links-list a:hover,.article-detail.markdown-body #toc-container:hover #toc-links-list a.toc-link-active{color:var(--heti-primary)}}@media (prefers-reduced-motion: reduce){.article-detail.markdown-body .post-content.heti .heading-anchor-link:before{transition:none}}:is(.article-detail.markdown-body .post-content.heti,.markdown-body .post-content.heti,.article-copy.markdown-body){width:min(100%,var(--content-style-width));max-width:var(--content-style-width);margin-right:auto;margin-left:auto;font-size:var(--content-style-body-size);line-height:var(--content-style-line-height)}:is(.article-detail.markdown-body .post-content.heti,.markdown-body .post-content.heti,.article-copy.markdown-body) :is(h1,h2,h3,h4){margin-top:var(--content-style-heading-top-spacing);margin-bottom:var(--content-style-heading-bottom-spacing);font-weight:var(--content-style-heading-weight)}:is(.article-detail.markdown-body .post-content.heti,.markdown-body .post-content.heti,.article-copy.markdown-body) h1{font-size:var(--content-style-h1-size)}:is(.article-detail.markdown-body .post-content.heti,.markdown-body .post-content.heti,.article-copy.markdown-body) h2{font-size:var(--content-style-h2-size)}:is(.article-detail.markdown-body .post-content.heti,.markdown-body .post-content.heti,.article-copy.markdown-body) h3{font-size:var(--content-style-h3-size)}:is(.article-detail.markdown-body .post-content.heti,.markdown-body .post-content.heti,.article-copy.markdown-body) h4{font-size:var(--content-style-h4-size)}:is(.article-detail.markdown-body .post-content.heti,.markdown-body .post-content.heti,.article-copy.markdown-body) p{margin-bottom:var(--content-style-paragraph-spacing)}:is(.article-detail.markdown-body .post-content.heti,.markdown-body .post-content.heti,.article-copy.markdown-body) :is(figure,.md-media-video,.legacy-embed-figure){margin-top:var(--content-style-image-spacing);margin-bottom:var(--content-style-image-spacing)}:is(.article-detail.markdown-body .post-content.heti,.markdown-body .post-content.heti,.article-copy.markdown-body) :is(img,video,iframe,.lite-youtube-react){border-radius:var(--content-style-image-radius)}:is(.article-detail.markdown-body .post-content.heti,.markdown-body .post-content.heti,.article-copy.markdown-body) figcaption{font-size:var(--content-style-caption-size)}:is(.article-detail.markdown-body .post-content.heti,.markdown-body .post-content.heti,.article-copy.markdown-body) blockquote{border-left-width:var(--content-style-quote-border)}:is(.article-detail.markdown-body .post-content.heti,.markdown-body .post-content.heti,.article-copy.markdown-body){font-size:18px!important;line-height:1.65}:is(.article-detail.markdown-body .post-content.heti,.markdown-body .post-content.heti,.article-copy.markdown-body) :is(h1,h2,h3,h4){margin-top:3rem;margin-bottom:1.125rem;color:var(--ink);font-weight:600;line-height:1.3;letter-spacing:-.02em}:is(.article-detail.markdown-body .post-content.heti,.markdown-body .post-content.heti,.article-copy.markdown-body) h1{font-size:1.625rem}:is(.article-detail.markdown-body .post-content.heti,.markdown-body .post-content.heti,.article-copy.markdown-body) h2{font-size:1.375rem}:is(.article-detail.markdown-body .post-content.heti,.markdown-body .post-content.heti,.article-copy.markdown-body) h3{font-size:1.25rem}:is(.article-detail.markdown-body .post-content.heti,.markdown-body .post-content.heti,.article-copy.markdown-body) h4{font-size:1.125rem}:is(.article-detail.markdown-body .post-content.heti,.markdown-body .post-content.heti,.article-copy.markdown-body) p{margin-bottom:1.5rem}:is(.article-detail.markdown-body .post-content.heti,.markdown-body .post-content.heti,.article-copy.markdown-body) :is(img,video,iframe,.lite-youtube-react,.legacy-youtube-player,.bilibili-player,.media-brand-frame){border-radius:0!important}@media (max-width: 640px){:is(.article-detail.markdown-body .post-content.heti,.markdown-body .post-content.heti,.article-copy.markdown-body){font-size:17px!important;line-height:1.65}:is(.article-detail.markdown-body .post-content.heti,.markdown-body .post-content.heti,.article-copy.markdown-body) :is(h1,h2,h3,h4){margin-top:2.75rem;margin-bottom:1rem}:is(.article-detail.markdown-body .post-content.heti,.markdown-body .post-content.heti,.article-copy.markdown-body) h1{font-size:1.5rem}:is(.article-detail.markdown-body .post-content.heti,.markdown-body .post-content.heti,.article-copy.markdown-body) h2{font-size:1.25rem}:is(.article-detail.markdown-body .post-content.heti,.markdown-body .post-content.heti,.article-copy.markdown-body) h3{font-size:1.125rem}:is(.article-detail.markdown-body .post-content.heti,.markdown-body .post-content.heti,.article-copy.markdown-body) h4{font-size:1rem}}.markdown-body .heti{font-size:18px!important;line-height:1.5}.markdown-body .heti :is(h1,h2,h3,h4,h5,h6){margin-top:3rem!important;margin-bottom:1.25rem;color:var(--ink);font-size:18px!important;font-weight:600;line-height:1.4;letter-spacing:-.015em}.markdown-body .heti p{margin-top:0;margin-bottom:1.75rem;font-size:17px!important;line-height:1.5}.markdown-body .heti :is(img,video,iframe,.lite-youtube-react,.legacy-youtube-player,.bilibili-player,.media-brand-frame){width:100%;max-width:100%;border-radius:0!important}.markdown-body .heti :is(figure,.md-media-video,.legacy-embed-figure,.media-brand-frame){margin-top:2.5rem;margin-bottom:2.5rem;border-radius:0!important}.article-detail-header h1,.article-prose h2,.detail-page h1,.work-spec strong{font-size:18px!important;font-weight:600;line-height:1.4}.work-spec p{font-size:14px!important;line-height:1.6}@media (max-width: 640px){.markdown-body .heti{font-size:17px!important;line-height:1.5}.markdown-body .heti :is(h1,h2,h3,h4,h5,h6){margin-top:2.75rem;margin-bottom:1rem!important;font-size:17px!important;line-height:1.4}.markdown-body .heti p{margin-bottom:1.625rem;font-size:16px!important;line-height:1.5}.markdown-body .heti :is(figure,.md-media-video,.legacy-embed-figure,.media-brand-frame){margin-top:2.25rem;margin-bottom:2.25rem}.article-detail-header h1,.article-prose h2,.detail-page h1{font-size:17px!important;line-height:1.4}.work-spec strong{font-size:17px!important}.work-spec p{font-size:14px!important;line-height:1.6}}
