@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAASIABAAAAAACQQAAAQuAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbHhwoBmA/U1RBVF4AdBEICoRkhAALIAABNgIkAzoEIAWFAAeBFAwHG2oHKJ6DceNW4lJEFHn9tEOE37LNsvkjHr7f739rn3u+OSrSxLQytE91Dw2PYtNVq3Qaw/vJ7fUBMdOj/u2ImB98cT5WUx9F13ZKt06mU7tG1sAYcM26yCRX4f/0904bmwq8hwkUUMTRX61pa9C3xlpAGYw1vOu8C2SBZZFlld7DAW82RJWmwYMI1AJCKBNCIASqdZGFmtPSNQRhMpR0EKjWTwm6z6sJ+4jqhxjovTinVdRpZaQjaQzAYjI8NgAKDJCokgunCn9oUQE8VZd/F//+v6P4F1U9gLr58yNI/dJX9BAshEoJbTDogz7ocKoUsPvES8UK/aQIUQgpGgECBVLkOEV6iASTYgNAPKdNXayhDPL7IJuAZnEYSZ0eOLc9i5Rv5/+lEi3sW/kfnCf/+fTe0sxS7CKLx5erRJkKOixEqQaoqrvx5HN4iz4VhX0gS6DjFIWUzn/fIXJRVFY1NFRVNVeFt+SYmrK6vCU6eJsnKnJj5HTESMTQZOTI3Y/tzr3rUcOsiRy/ciP50s3Mycgxmhz9GMXhjzVH30ut796NHP0UUa31/Zoa6vCH6iPvdIM0IRANaT60FablmZlZd+UKNFy9NrvnFGxb5NC2CRxR0/rIyF/WNn+35sv9r+tHVhkseuWGKkCPPh96+GXt8Lc/Sh24ujfjf+tNw1lZWreiPuHb/PSpyjdv2rf/++ZE5TSKjFdZxYsBvr1sEHl5STuHZqYR7jGYGvGBBdjcaB5bODY1GAxMjsd0wDMIzXAXODRd74DxNMtO4YuYHclgLQRzp9KlUmxptCwv9bYgvWGD2xBW7r9413fdJu+mxzvzAUYeeONQvZP4kgfqZle4jhH/MWh+UbxgtJdrLdXLymNL53PRU0D3Q6FcXTfGqGcul6vrqhgLGAVSv+IVIfZOHpu+mlLqSlnj903j8mazXDsba/wbxhS/4Oubh1c5/uXDgt4j5KtnGEy5BIJHo0ur+jD+r2qCkuP1aRVM8EpUoRYSJyqNRA38uwDvHBNo0AejO2Z+ZYLLal1QiFyFh1EDQOgSCSCpjwwKU8yDbIjroEwne0G5Qca49cYp4AlqtQNZfWTQoFb1tRpFYAmRD+HXTkV4uQhG2bg4OKmyoypAsUGtWgQXyFxYrkpODeUxvGqIZA61erXo0sFG1UBGuPgpuon8RNUG2DhovAjZCBuZwtXrU3mQGki9+pm0eVZAXoWxLWTQoYHBPrJR4WunNxIFbCHfkTyPK+sqxjxDmGArZvf79JGJ3GwEqjwc7a7NIrl/7bJ7Nzu4+n1Ow6shEPnUrtVo7cnd5Wi5qCUbBIQbNKCP95FMCSZylEV5VCiiMqqiOmrKZ/I/C0gI1fyuulVcM2E1r4MhtcV/fbCD+HwEvVzH1dGNAzFE0FTbKzyQz3gootrNbN2a4PuG0j0JOgE=) format("woff2"),url(data:font/woff;base64,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) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/jetbrains-mono-cyrillic-400-normal.BEIGL1Tu.woff2) format("woff2"),url(/_astro/jetbrains-mono-cyrillic-400-normal.ugxPyKxw.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/jetbrains-mono-greek-400-normal.C190GLew.woff2) format("woff2"),url(/_astro/jetbrains-mono-greek-400-normal.B9oWc5Lo.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAA9UABAAAAAALMAAAA7zAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGnAbhWocghYGYD9TVEFUXgCDBBEICrBAp3ILgjgAATYCJAOEKAQgBYUAB4xODAcbIiYzo8LGAQCKfn4o/usELQ4rdj22ABHwitFYjZPqB3XSqAbV3C5dFkHYtTehxpeGbU+3+QexdERCkxARw9oNxAyetvXzdhdjl/7aiBiHgcqBjZywaGPSh4mNFccpF3DHlfyO8Jc/OiSe/kb7/iQYRAE23iScpHngiRRBFETNiZzQwc2HOllJ0fqXIjTY8RTYbDsklKc81hGPQcOJojhD/w80ll1aG/qiQErbzqOXjmvOVKd14tuv+Hxrlbarq/5xH7CiMPjaZXlrfNSp7uqaroZXvYAzc8A0kH2zs3MvHQBUORcJ2GG2cdFRgArh+Sgb7yOsjImpmgM0kq1FwhQCQzQ1Mt+j7at5GSAAIQAAKFLk6uMul4pIl4HIpEEUK0dUMiCMmhFWNoSDC+Exghgzi5i3hNhtN9qaINo+EbQj1tEIgJVLj5oebQ6I1/fyLMQYALYgALKS0yEOQCJG89uIiEPKyeRDVCmC0HgZ203jIg7kk6cHxfEKeBSDXtxd6n5yJzqpfSgXs9xMri1fPezlKMAVcCGEIhmwHiDRtJOyKfXkGsAVqI7ohIZs0rsDM/IU4fuQgkppCk2n+VRHy6mFttJ26t16mBjQPyIeYhvZnyXaiDSeaAYYXLiKPIm4uKh1zIq6gSRVU7WNPIV5v1PwBOy07RrrT6skwoEAtYyZeYgpBUABaDEmtPWRGP/UGABFgUUjchFXAghAgAYQpyPkCIBBoRwQgU/g3kQcyqTY9KSDItmjjmmkP+qJHG3C66hjXhtlhzwglI+1+4Be+T77hYQxxeNkCIDaKU+ANXhkMqePOVAQr7uwCjoBlCdtHQE8TNRd17//A/evkhSpkOMDA9VTmwAVAbLNlwMkoAG5qG2bWCYA/h3uEYgEhFqSmJJPpCIFbJHg1Aw5GaAujjqMzIHc8NrIHBEJJjGZP3cuFQZD9PvzLvZIaCIjBcTvEnIzTWiGjqdzlD+VAO2TUERK8smEi8lNNOguiAM9P6Gfo6bX8bD0v7V/cPwA/fDBi0BaGgUllWy5AATy6X9gAZqRVIsMLuVmqQ3QmrBbiFgTiWbxLDj1hBqINGLVYewQwySWWRyeQK1kXVJ0S2UjZ5WgXaIOSTodp42CUzqHXH226ZfJI4tXth45eqnslGdQgSGFhmmMyOdTbEyJcdv56U0pNa3MDJ1JVRZUmldtkcESglQkAOA8AMgAoBeYLQi+wDxAtwAAGlXJUdVLPLmo/TLRystE3SsqO29LUY0hsrtvBoXUw1Fy+XjIhqbj4rEZISsUysW1L68PlGRwyWImjWXjS9LFyUzjC7v7Z5hYsYKRhIH49EyxTJxutwOy2PRxp1R63SVViB+eNFYRywlEzJBIMDIl5Aa4PtbFOno416WTTkfVQwSPgIve66BCbLAuLmpCh59ln5uFECODSuUIJ2CJCCzDwbf+DV2/3yTtan5J1gEVuilcVASHULO9Bt+nWkIEHMMit5gOxaO4JpWjvdzOcySeFek9q4dy3jxi2BxHwsuuo2CzbQ+KJWxyqPUJljVCU3WT8JwlhZyLkKODRhZkQByHu8ERJIcGBexSmdwGPfMPbjnC0SwRUTyCAIwY4Mdr9zxJTKE5yp0mcEe9s3Umm/TZp2s4X/27cQUmhrd4Ow4ibPOTOxxT6w+S8ENc9AGE7meFOlNbuzjngJtzjFKcrMsxtf4G4UIPcNGXbvwNaeDea6+1L7kaYG+M13a455pruOh5Ww0HlhllPy/PsqS9Zr7ZV9cSLODAoItzBt2cI5i1brCxQRIcH6yr9wV5+XjhtlxuziH7LiqGTXVnkfCZntd1doJ5liyIno6X3GqH56fcnGNwE2IXvYhw5a/MJGsMns/TOawd+2HX5kOXxQZFsYkwmMetzGtqKDKSe+h9h7jX77z2Snb98vyL7rjmil1N3B/cCBfsC5rymA/ExpPlni/DL9i7eflmn66oxrSlMRRB/8Dbq/e/3aN95L3BG+dFd1d+uCVzKhQy5/+I77CmWJ/o2Hygaay8yleXU1c1NH2IpqHOYUtriyWHf3iZwxjZvNxm/Ti/O5+22uC3nVFxhu1wvQc08ZZ+nb5/9oBF38ehJXaKPt7K6/v34Ltqai21rbXDXI3BRDa+9XDSGp8gzZZarV2ag9v3RBzSNfFjU/M+uVduNDTsMNY0GCOHDU3O4dazeb3zFXjg0rlPuiV75+m+kzV3v5qc/PHdJ2j6pI+wDP+U7mFPW/uw23ltZemTVTo+3+KNa1yyuwdmfI41j1/yvbG3oaLR3G3Sd1xdrNOUfAou3jYw0z860D9jr+9sqU1IIHve9W56/fIEU2fztvaqHQ213trhKauqjXVmr/kFxP1m7bdCE88Plpb1m840l/VNQz72QvvMPlc5z9fvKPt1xBtXv9yVZ9nGmxscXiDfwGcI4LQ9duBaG7Nxjw2aWMuArp7In2qxObTwKfr40/iy/j34zhqeN59qHuZqDBaysQWiL/PZsk4cyV13mvbwWw7phfEDC/O+fm9/ram+sspcXxs5hm9pHjufSujGRbKXaTPmBAPPfMm45bau15+jR/bbBx80mR7sCth94rfB6Q6sngJcuO1v4a7Lu157ad9GKIlypuEea9GDnXs0IytDmZ2Rka2cVv4jrIHmaFZ3O9OWlWX7gLuRH1mMjsxE8VrEH/XNRrErsh61R6PD3e2d7dDsb3Z38k15W/kFkrwmHk+PhWNKx3nLMhHkSl5ZLMvHWPGPfwRB9AKr2QoSUb4qSlB18X715zkqwRI0G3lvUOptugtcID+tsKQForrC+pqxS4X1dcof21bf4OQcbZ2Le6y53kKao3rxNWE9f1a+S3t2tiIu5yej2d/W12RozBwrLh7LbDT0NkUDi+HBQPj0xIlAoKHFFxAMPB8Vce+KKo28Rq0SHV3LUk6MNLv35DMrCzVNmbxBeCGCKzMtu20y8f+SVD4h31Sosky03Upl9YJxzh+L0ZFANLR4LOpYj452tne145E/wok2e6JX/xBX/vH8WaFQojdWlrhzuOXjs1Zn3cCkT4qWSmZeqX/B4tciE4HBmUBZwGxtMDaqnCpdllPVaIzdNw9ZqfDU30ppYDgw2B+A5JP5L8bj4tgWoy/t6WRRcO2P8uFDakiP2fMWaviyaOYFr94gE0nEsXysWligOuHRC2TiH0XSJ/4WqQcjE4GxmUAocKlG+jECgZHFwGX8vabVzf8f4KQSi8Gp6laIdgV0q8OzbmjyaWdnW1MQXZoJDb7ZaEdzVzMoNQiAGESUwszDAIzTDIqSxGFoxoRZ/vTKM8CfyZ9V/ZAPfzZ/Ds4tMHm0dSxCkOPaNpKlK8/KwGQVCdzqbPDn1HKuiT8WHUnStEQYZB2TC6WJ6spymNIjBV7JK5lSs1C5qDoRSYBUSlgH31LlM7X5O4o8eBxrX3MDwtOG1iZdZ/NjXsu0gBJohRVmlQNfwVfQmsReAdZEAahljqkMaxLHg/gT+BONkwxcgT0CH/5k/pQrcCpMUYiGtPqbDGvVgALfitYyTHyI7iP25WqsSqAlstCbcmZ3k0PcRZlgbs0KCrwb7lImBTqQCCawVEpMWHur0DRm3+9sVAOK6UQiqESr8NaEtY8Vu86AIjK3KRZhXNwqD34Oc38umLZM7/33+38/uOj7///Z9yMAAHqAUtN3Bsa/l9rSiKVxlONqqbKozYWfYMRMRkicEE2FhIs4TuWQJL0RDNwCPy0hP1CbGAVY9Mb6W+DZ2p14CIQoIBjqGKpe6lOONhDJTUFBXMgZYOPct8C7Ffmf2jR2ksQ72U7f6SBu5gywoW8x2Qhy1APl1CZGAQ4ksGGD8loGsjY0UQKXmhdvpBboCNglmiU2XUCieL2dF1bDaTacoykaTjgFAhquyoFkiSk0LZyooeM7gQDVIlmNOwCPlICNKQpatkhBhUQJpdLCVwFqWj3FQ8sWeajTWbJiLeRJQlRmsyh1YLRZtAzVNr0dAoCqYN6wXLhzQGL8LY6mvwSAd1698ly88s2Xfwa7FbVA/wsgBhQAgABfG3dQHs2o/066DhB0wWo68NIlpR8Rtqkj9flbwtMc3oZyWoIn3n+L86o5vA1V8ng6L4C9+Ax3YgMBHN8Er4rV97ZRXgdo2vF244hH35wAzlOM0Y1BABGNnNCZ4UFNPID7U9KeSCgiP5EiDnMizejpExlFzj9RIM2BE2MU8pwgViH7TAQQSqpgnDuJJAk2kHIaYDNnhs+sFsvBuaf5DXMbXT9uwvLIbk49b4mBNm3JsEV+85YtKUHWb5rT5ywap9WpUZtWo6q5Fot8W89a0m4OaXOK2Ywat2KaD3NdRi1S/+eloldCT0fn1K5q61Mpa6eaNrKMB6WMQqn83IfXmTNv1eIRiaKj7aOsikMmoxej+EfqsmjOpFHDLnneylGLQxT66vnHnh/n12VXDN1Hw6/bcNpctWo3vrwApZvfrdEDiP8IzgPkeiYUoQlzDvYWB0cnZ6uLq5t7+aRk5I6TIFGS5IqkSJWWXjqFDEqZVLJky5FrG7W8quQrUEijSLESWtsz0tErVVa9chUqValmUMNoh1omZjxSM4s69Ro0atKspTe1smrLpl2HTl262dg5OLm4eezMw6tHrz79BgzyGarXsBGjxqJtJvhNmjJtxqw58xYsWrJsxS4Bu61aE7THXvvsFxJ2wEERhxx2xFHHrIs6fuE/r+1vm6/8jhhtDCwnASDGR1h4SGhYwEGU1Y/Xffk5G4u9XgIAYtxyGpZ5y9sDdNbyP142W5DgAhoE7i3q0c5x2vm9v24aZuNohdcxqSEAz8up00My03HSwmqPa8bMecG3Tjzb+f9EelEtg2vpzPeiIEEBwSA8IEDBwAE9F5Z6vQIQjAnLGTgWLO+uZTL/qwGEAYOAQpg3TefgwBCQgBDzqukKDBAOoU3KVtqIbBXK9XpEAAujuudkZN724kIGmrtVaS38ZZLrS9/4fsKMQhN3yXK5gvSBvJ2Y9/Nydbcvb0bm58+e3FhmGfGLJ9u7axl1F1LQTbaCeyrbu7wFCsorFgV4qnh+GUrWtaczqkSBB96AEeKRB94k2SyLuyw3qwrxeg3P5FNR1Av1Gsq2/ds6dPPkBAAA) format("woff2"),url(/_astro/jetbrains-mono-vietnamese-400-normal.CqNFfHCs.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/jetbrains-mono-latin-ext-400-normal.Bc8Ftmh3.woff2) format("woff2"),url(/_astro/jetbrains-mono-latin-ext-400-normal.fXTG6kC5.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/jetbrains-mono-latin-400-normal.V6pRDFza.woff2) format("woff2"),url(/_astro/jetbrains-mono-latin-400-normal.6-qcROiO.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(data:font/woff2;base64,d09GMgABAAAAAASUABAAAAAACRAAAAQ3AAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbHhwoBmA/U1RBVEwAdBEICoRkg3oLIAABNgIkAzoEIAWFHgeBFAwHG3AHKB4HzukrRjyF5Gb4kQ/B873d17mv8TWkoqUUGaHodJCtoqntw7m8tiPWyGkfWDU/IMpzVk4zAs9Czv3c7Os5NvKFG1Ht9vBVXySRZpJc4tTrbM3sTRFcLa3zVboKWRIoAksKSKgqUQWEwlSoqjp44V5J9/kjd0+Fi5xaFjwJArgBAIJgIAgCCAI4CdNMqGuYXYUKdADLAkAAJwl6iX0+bZqEm1AH0Hu9rvrJHwxQG1Q/gFYwWYbgTRWgwEESVzbmtjQAt3DXO7Tu/+9Q/KNKWhTCgZ8fQSWoL0CUUgTBjgL8iEAcce7YHBeA8ZvogieCnxI0BCVeACCAAhBD/oDcAdUPABSgAX4kBPBTwjCAjwYSCneiqF65LUo/qXdYFrRwTujtMrKm07plTbSqLQFAiHBN7E4DG5wkiGXhCYBNETh3K/AciHN69iFfQjFOr9EXQQAAQXRNszs8PR0OH4fDV/dwGe76CHdj1MQa11DXYGcfZ6+B1X0OfwjY+i7KpQ1w9d+1z3/HydCB1f3U8A0fRFv+0bXxPWrZu3d9Nn4UcbLs/QCXLH/j3PCKblKOiZxLOR78W9brPo7eGTLz/F27ZPmePQdCB1YP4nJU91o4gU9cy64L3c3SPu8GfDn6ZXD2cGmllVqSxtD5vCXHm5xaeHlnpffx7DcPvXog5NnjA//cPz2btsz3yf+0MI8ri33tuv7upNbYmW5STbosW8bYItV/SPzxvXC0KnpWnFdC91oojit5Lyo6WcJQ1YzwBYbi52ohJVpcxfcHBqsv0nFz8U74rzS6M7r0RVlXZ3jJC4G92O//7Lm78VOtnUx+aQxAzsqPnrRr1t9zDrezKePvZ027x+fGte4s4NXu7/jEp3G9cM1bICYgACbuETUUD5wmenGXA/IBpAKVrl0AEJ5cqr6Q89tGq+SpqkDfX2DtG+pZ9teuae0AX98c301CX179InyErnSG8WCiABB4HFbVrw/lpTdBIOk82nXbpHKoQGyBpUovAAD4XQA8ZTUCeBJHIpI0v0FRrgcnckV3ANckrwYJKXEihQfdSKPER6XeExmEeEMmSe6QBwWmkZdmSOSthhibgIkBlUYreBKd/0NeVAE9WAyEaQpH6KikDWlUVg43Jy2FOmaYlsZhDEGZXO3mWEyWHI6zuaJkMlcSQ9k4F+KidIiFyZItGDc7r1pUj6wP6zrWB0/fbeeFeHl4YOvETMNiM8Ny+7OO6Qh2wur20YVxFts5dlORdl5Kwd5utR7SRcxqX8RA5Ehacha76hg7c6yzNm/Xf6vOLNrv544lIEkWg7xWo/ItBAeIJEmt0XgBwgM8gTifoiiLJroYYooNTeziEKe4zOoR/wvIKp89hSr+6jFAqw/LaonjmZHSscMNg4iPlWpFrO1RN3zkMU+/xUP+JQ99TbvTl1Vg0gtirT6lbwYAAAA=) format("woff2"),url(data:font/woff;base64,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) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/jetbrains-mono-cyrillic-500-normal.DmUKJPL_.woff2) format("woff2"),url(/_astro/jetbrains-mono-cyrillic-500-normal.DJqRU3vO.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/jetbrains-mono-greek-500-normal.JpySY46c.woff2) format("woff2"),url(/_astro/jetbrains-mono-greek-500-normal.D7SFKleX.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(data:font/woff2;base64,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) format("woff2"),url(/_astro/jetbrains-mono-vietnamese-500-normal.DNRqzVM1.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/jetbrains-mono-latin-ext-500-normal.Cut-4mMH.woff2) format("woff2"),url(/_astro/jetbrains-mono-latin-ext-500-normal.ckzbgY84.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/jetbrains-mono-latin-500-normal.BWZEU5yA.woff2) format("woff2"),url(/_astro/jetbrains-mono-latin-500-normal.CJOVTJB7.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@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-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0}}}@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-500:oklch(63.7% .237 25.331);--spacing:.25rem;--container-6xl:72rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--text-9xl:8rem;--text-9xl--line-height:1;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--font-weight-black:900;--tracking-tighter:-.05em;--tracking-tight:-.025em;--tracking-wider:.05em;--tracking-widest:.1em;--leading-snug:1.375;--radius-lg:.5rem;--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);--color-background:var(--background);--color-foreground:var(--foreground);--color-accent:var(--accent);--color-border:var(--border);--color-text-muted:var(--text-muted)}}@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{.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.top-0{top:calc(var(--spacing) * 0)}.left-0{left: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-2{margin-inline:calc(var(--spacing) * 2)}.mx-auto{margin-inline:auto}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-20{margin-top:calc(var(--spacing) * 20)}.mt-24{margin-top:calc(var(--spacing) * 24)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.mb-12{margin-bottom:calc(var(--spacing) * 12)}.mb-16{margin-bottom:calc(var(--spacing) * 16)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.h-3{height:calc(var(--spacing) * 3)}.h-32{height:calc(var(--spacing) * 32)}.h-64{height:calc(var(--spacing) * 64)}.h-full{height:100%}.min-h-\[50vh\]{min-height:50vh}.min-h-screen{min-height:100vh}.w-3{width:calc(var(--spacing) * 3)}.w-10{width:calc(var(--spacing) * 10)}.w-32{width:calc(var(--spacing) * 32)}.w-full{width:100%}.max-w-6xl{max-width:var(--container-6xl)}.max-w-\[45\%\]{max-width:45%}.max-w-\[1600px\]{max-width:1600px}.max-w-none{max-width:none}.flex-1{flex:1}.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,)}.cursor-pointer{cursor:pointer}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-end{align-items:flex-end}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-8{gap:calc(var(--spacing) * 8)}.gap-12{gap:calc(var(--spacing) * 12)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}.overflow-hidden{overflow:hidden}.rounded-lg{border-radius:var(--radius-lg)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-none{--tw-border-style:none;border-style:none}.border-border{border-color:var(--color-border)}.bg-background{background-color:var(--color-background)}.bg-transparent{background-color:#0000}.p-0{padding:calc(var(--spacing) * 0)}.p-10{padding:calc(var(--spacing) * 10)}.px-1{padding-inline:calc(var(--spacing) * 1)}.px-4{padding-inline:calc(var(--spacing) * 4)}.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-left{text-align:left}.text-right{text-align:right}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-9xl{font-size:var(--text-9xl);line-height:var(--tw-leading,var(--text-9xl--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0\.8rem\]{font-size:.8rem}.leading-none{--tw-leading:1;line-height:1}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.font-black{--tw-font-weight:var(--font-weight-black);font-weight:var(--font-weight-black)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-extrabold{--tw-font-weight:var(--font-weight-extrabold);font-weight:var(--font-weight-extrabold)}.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-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-tighter{--tw-tracking:var(--tracking-tighter);letter-spacing:var(--tracking-tighter)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.text-accent{color:var(--color-accent)}.text-foreground{color:var(--color-foreground)}.text-red-500{color:var(--color-red-500)}.text-text-muted{color:var(--color-text-muted)}.capitalize{text-transform:capitalize}.uppercase{text-transform:uppercase}.no-underline{text-decoration-line:none}.underline{text-decoration-line:underline}.decoration-2{text-decoration-thickness:2px}.underline-offset-8{text-underline-offset:8px}.opacity-30{opacity:.3}.opacity-40{opacity:.4}.opacity-60{opacity:.6}.opacity-75{opacity:.75}.opacity-80{opacity:.8}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.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))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;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}.duration-300{--tw-duration:.3s;transition-duration:.3s}@media(hover:hover){.group-hover\:text-accent:is(:where(.group):hover *){color:var(--color-accent)}.hover\:-translate-y-1:hover{--tw-translate-y:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.hover\:text-accent:hover{color:var(--color-accent)}.hover\:underline:hover{text-decoration-line:underline}}@media(min-width:40rem){.sm\:text-\[12rem\]{font-size:12rem}}@media(min-width:48rem){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:64rem){.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}.dark\:block:where([data-theme=dark],[data-theme=dark] *){display:block}.dark\:hidden:where([data-theme=dark],[data-theme=dark] *){display:none}}:root,html[data-theme=light],html[data-theme=dark],html.dark{--sidebar-bg:var(--background)}html{scroll-behavior:smooth;font-family:IBM Plex Sans,Segoe UI,Helvetica Neue,Arial,sans-serif;font-size:16px}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0}h1,.title-xl{letter-spacing:-.02em;color:var(--foreground);font-size:1.75rem;font-weight:600;line-height:1.25}h2,.title-lg{letter-spacing:-.015em;color:var(--foreground);font-size:1.15rem;font-weight:600;line-height:1.35}h3,.title-md{color:var(--foreground);font-size:1.05rem;font-weight:600;line-height:1.4}p,.body{color:var(--foreground);font-size:.95rem;line-height:1.65}.body-sm{color:var(--foreground);opacity:.85;font-size:.85rem;line-height:1.5}.body-xs{color:var(--foreground);opacity:.75;font-size:.75rem;line-height:1.4}code,.mono{font-family:JetBrains Mono,monospace;font-size:.85rem;font-weight:500;line-height:1.5}.link{color:var(--accent);text-underline-offset:3px;font-weight:500;text-decoration:underline;text-decoration-thickness:1px}.link:hover{color:var(--foreground)}ul{margin-bottom:1rem;padding-left:1.5rem;list-style-type:disc}ol{margin-bottom:1rem;padding-left:1.5rem;list-style-type:decimal}li{margin-bottom:.5rem}ul li::marker{color:var(--text-muted)}.link:hover{color:var(--accent);opacity:1}.container-narrow{max-width:800px;margin:0}.container-full{max-width:none}.space-y-1{margin-bottom:.5rem}.space-y-2{margin-bottom:1rem}.space-y-3{margin-bottom:1.5rem}.space-y-4{margin-bottom:2rem}.mt-4{margin-top:1rem}.mt-8{margin-top:2rem}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mb-8{margin-bottom:2rem}.pt-4{padding-top:1rem}.pt-8{padding-top:2rem}.pb-4{padding-bottom:1rem}.pb-8{padding-bottom:2rem}.gap-1{gap:.5rem}.gap-2{gap:1rem}.gap-3{gap:1.5rem}.gap-4{gap:2rem}.card{border-bottom:1px solid var(--border);justify-content:space-between;align-items:baseline;gap:1rem;padding:.9rem 0;display:flex}.card-title{color:var(--foreground);margin-bottom:.2rem;font-size:1.02rem;font-weight:600;line-height:1.4;text-decoration:none;display:inline-block}.card-title:hover{color:var(--accent)}.card-meta{color:var(--foreground);opacity:.75;flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:.75rem;font-size:.85rem;font-weight:500;display:flex}.card-desc{color:var(--foreground);opacity:.8;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.9rem;line-height:1.5;display:-webkit-box;overflow:hidden}.card-link{color:var(--accent);white-space:nowrap;font-size:.85rem;font-weight:500;transition:color .2s}.card-link:hover{color:var(--accent);text-decoration:underline}.tag{color:var(--accent);align-items:center;font-size:.8rem;font-weight:700;line-height:1;text-decoration:none;transition:opacity .2s;display:inline-flex}.tag:hover{opacity:1;text-decoration:underline}.btn{border:1px solid var(--border);color:var(--foreground);background:0 0;border-radius:.25rem;justify-content:center;align-items:center;padding:.5rem 1rem;font-size:.9rem;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.btn:hover{border-color:var(--accent);color:var(--accent)}.btn-sm{padding:.25rem .75rem;font-size:.8rem}.btn-icon{width:32px;height:32px;color:var(--foreground);background:0 0;border:none;border-radius:2px;justify-content:center;align-items:center;display:flex}.btn-icon:hover{background:var(--surface);color:var(--accent)}.icon-btn{width:32px;height:32px;color:var(--foreground);background:0 0;border:none;border-radius:2px;justify-content:center;align-items:center;display:inline-flex}.icon-btn:hover{background:var(--surface);color:var(--accent)}.icon-btn svg{stroke-width:1.5px;width:24px;height:24px}.social-link{opacity:.7;padding:.2rem;display:inline-flex}.social-link:hover{opacity:1;color:var(--accent)}.social-link svg{stroke-width:1.5px;width:20px;height:20px}.social-link:hover svg{stroke:var(--accent)}.page-shell{flex-direction:column;max-width:72rem;min-height:100vh;margin-left:auto;margin-right:auto;display:flex}.masthead{background:var(--background);justify-content:space-between;align-items:center;gap:1.5rem;padding:1.6rem 2rem 1.3rem;display:flex}.masthead-identity{align-items:center;gap:1.15rem;min-width:0;display:flex}.masthead-avatar{object-fit:cover;border:1px solid var(--border);border-radius:2px;flex-shrink:0;width:92px;height:92px}.masthead-name{letter-spacing:-.02em;color:var(--foreground);margin:0;font-size:1.18rem;font-weight:600;line-height:1.25}.masthead-role{color:var(--foreground);margin:.18rem 0 0;font-size:.86rem;line-height:1.4}.masthead-info{color:var(--text-muted);margin:.12rem 0 0;font-size:.82rem;line-height:1.45}.masthead-meta{flex-wrap:wrap;gap:.1rem 1.1rem;margin:.45rem 0 0;padding:0;list-style:none;display:flex}.masthead-meta li{margin:0;padding:0;font-size:.82rem;line-height:1.45}.masthead-meta a{color:var(--accent);text-decoration:none}.masthead-meta a:hover{text-underline-offset:3px;text-decoration:underline}.masthead-note{color:var(--text-muted)}.masthead-socials{flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;align-items:center;gap:.1rem;display:flex}.navbar{border-bottom:1px solid var(--border);background:var(--background);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:.95rem 2rem;display:flex}.nav-actions{align-items:center;gap:.5rem;display:flex}.nav-icon{width:32px;height:32px;color:var(--text-muted);background:0 0;border:none;border-radius:0;justify-content:center;align-items:center;display:inline-flex}.nav-icon:hover{color:var(--foreground);background:0 0}@media(min-width:1024px){.navbar{z-index:10;position:sticky;top:0}}.nav-links{flex-wrap:wrap;align-items:center;gap:1.35rem;margin:0;padding:0;list-style:none;display:flex}.nav-links li{align-items:center;margin:0;display:flex}.nav-link{color:var(--text-muted);align-items:center;font-size:.92rem;font-weight:500;text-decoration:none;display:inline-flex;position:relative}.nav-link.active{color:var(--foreground);border-bottom:1px solid var(--foreground);padding-bottom:.12rem}.nav-link.inactive{opacity:1}.nav-link:hover{color:var(--foreground)}.nav-link-line{display:none}.main-content{background:var(--background);flex-direction:column;flex:1;min-width:0;transition:background .3s;display:flex}.main-body{flex:1;padding:1.75rem 2rem 3rem}.main-body-sm{padding:1rem 1.5rem 1.5rem}.footer{color:var(--text-muted);border-top:1px solid var(--border);justify-content:space-between;align-items:center;padding:1.15rem 2rem;font-size:.8rem;display:flex}.page-header{margin-bottom:2rem}.page-title{letter-spacing:-.02em;color:var(--foreground);margin:0;font-size:1.55rem;font-weight:600;line-height:1.25}.page-subtitle{color:var(--foreground);opacity:.75;margin-top:.5rem;margin-bottom:0;font-size:1rem}.section{margin-bottom:2rem}.section-title{letter-spacing:-.01em;color:var(--foreground);margin-bottom:1rem;font-size:1.2rem;font-weight:700}.prose{color:var(--foreground);font-size:1rem;line-height:1.7}.prose h1{letter-spacing:-.02em;margin:2rem 0 1rem;font-size:1.5rem;font-weight:600;line-height:1.2}.prose h2{letter-spacing:-.01em;margin:1.5rem 0 .75rem;font-size:1.15rem;font-weight:600}.prose h3{margin:1.25rem 0 .5rem;font-size:1.1rem;font-style:italic;font-weight:700}.prose p{margin-bottom:1rem}.prose ul,.prose ol{margin-bottom:1rem;padding-left:1.5rem}.prose li{margin-bottom:.5rem}.prose ul li::marker{color:var(--text-muted);font-weight:400}.prose ol li::marker{color:var(--text-muted);font-weight:400}.prose a{color:inherit;text-underline-offset:4px;font-weight:600;-webkit-text-decoration:underline dashed;text-decoration:underline dashed;transition:color .2s}.prose a:hover{color:var(--accent);text-decoration-style:solid}.prose img{border:1px solid var(--border)}.prose code{background:var(--surface);color:var(--accent);border-radius:.2rem;padding:.15rem .3rem;font-family:JetBrains Mono,monospace;font-size:.85em;font-weight:500}.prose pre{background:var(--surface);border:1px solid var(--border);border-radius:.25rem;margin-bottom:1rem;padding:1rem;overflow-x:auto}.prose pre code{color:var(--foreground);background:0 0;padding:0}.prose img{border-radius:.25rem;max-width:100%;height:auto;margin:1rem 0}.prose blockquote{border-left:4px solid var(--accent);opacity:.85;margin:1rem 0;padding-left:1rem;font-style:italic}.prose hr{border:none;border-top:1px solid var(--border);margin:2rem 0}.back-link{color:var(--foreground);opacity:.7;font-size:.85rem;font-weight:600;text-decoration:none;transition:opacity .2s}.back-link:hover{opacity:1}.item-list{flex-direction:column;gap:0;display:flex}.pagination{justify-content:center;align-items:center;gap:1.5rem;margin-top:2rem;padding-top:1.5rem;display:flex}.pagination-link{color:var(--foreground);font-size:1rem;font-weight:600;text-decoration:none;transition:color .2s}.pagination-link:hover{color:var(--accent)}.pagination-inactive{color:var(--foreground);opacity:.4;font-size:1rem;font-weight:600}.pagination-info{color:var(--foreground);opacity:.6;font-size:1rem}.reading-progress-container{z-index:60;background:0 0;width:100%;height:3px;position:fixed;top:0;left:0}.reading-progress-bar{background:var(--accent-2);width:0;height:3px;transition:width 50ms linear}.divider{border:none;border-top:1px dashed var(--border)}.divider-solid{border:none;border-top:1px solid var(--border)}.icon{justify-content:center;align-items:center;display:inline-flex}.icon-sm{width:14px;height:14px}.icon-md{width:18px;height:18px}.icon-lg{width:24px;height:24px}.icon-muted{opacity:.7}:focus-visible{outline:1px solid var(--accent);outline-offset:2px}@media(prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.animate-in{animation:.5s ease-out forwards fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.viewport-frame{border:1px solid var(--border);background:var(--surface);border-radius:.5rem;flex-direction:column;display:flex;overflow:hidden}.viewport-header{border-bottom:1px solid var(--border);background:var(--background);justify-content:space-between;align-items:center;padding:.75rem 1rem;display:flex}.iframe-container{border:1px solid var(--border);background:var(--background);border-radius:.5rem;width:100%;padding-top:56.25%;position:relative;overflow:hidden}.iframe-container iframe{transform-origin:0 0;border:none;width:200%;height:200%;position:absolute;top:0;left:0;transform:scale(.5)}@media(max-width:1024px){.masthead{flex-wrap:wrap;align-items:flex-start;gap:.85rem;padding:1.1rem 1.25rem 1rem}.masthead-avatar{width:72px;height:72px}.masthead-socials{justify-content:flex-start;width:100%}.main-body{padding:1.15rem 1.25rem 2rem}.navbar{padding:.85rem 1.25rem}.footer{padding:1rem 1.25rem}.main-content{flex:none;width:100%}}@media(max-width:768px){.masthead{padding:.9rem 1rem .85rem}.masthead-avatar{width:64px;height:64px}.masthead-name{font-size:1.05rem}.main-body{padding:.9rem 1rem 2rem}.nav-links{gap:.9rem}.nav-link{font-size:.85rem}}.news-section{margin-top:2.5rem}.section-heading{letter-spacing:-.01em;text-transform:none;border-bottom:1px solid var(--border);color:var(--foreground);margin:0 0 .2rem;padding-bottom:.45rem;font-size:.95rem;font-weight:600}.section-emoji{filter:none;margin-right:.5rem;font-size:.95em;display:inline-block}.footer-copyright{opacity:.85;flex-wrap:wrap;justify-content:center;align-items:center;display:flex}.footer-sep{display:none}@media(min-width:640px){.footer-sep{display:inline}}.news-list{margin:0;padding:0;list-style:none}.news-list .card{border-bottom:1px solid var(--border)}.news-list .card:last-child{border-bottom:none}.card-title-text{color:var(--foreground);margin:.15rem 0 .4rem;display:block}.news-list .card-desc{-webkit-line-clamp:3;margin-bottom:.4rem}.news-feed{margin:.25rem -.6rem 0;padding:0;list-style:none}.news-feed-item{border-radius:.55rem;grid-template-columns:1.1rem 1fr auto;align-items:baseline;gap:.75rem;padding:.55rem .6rem;transition:background .2s;display:grid}.news-feed-item:hover{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.news-feed-item:hover{background:color-mix(in srgb,var(--accent) 7%,transparent)}}.news-feed-marker{justify-content:center;align-self:stretch;display:flex;position:relative}.news-feed-marker:before{content:"";background:var(--border);width:2px;position:absolute;top:0;bottom:0}.news-feed-item:first-child .news-feed-marker:before{top:.7rem}.news-feed-item:last-child .news-feed-marker:before{bottom:calc(100% - .7rem)}.news-feed-dot{z-index:1;background:var(--accent);width:9px;height:9px;box-shadow:0 0 0 3px var(--background);border-radius:50%;margin-top:.42rem;transition:transform .2s;position:relative}.news-feed-item:hover .news-feed-dot{transform:scale(1.3)}.news-feed-body{min-width:0;line-height:1.5}.news-feed-badge{color:var(--accent);background:var(--accent);display:inline-block}@supports (color:color-mix(in lab,red,red)){.news-feed-badge{background:color-mix(in srgb,var(--accent) 11%,transparent)}}.news-feed-badge{letter-spacing:.03em;text-transform:uppercase;vertical-align:.08em;white-space:nowrap;border-radius:999px;margin-right:.55rem;padding:.12rem .45rem;font-size:.66rem;font-weight:700}.news-feed-title{color:var(--foreground);font-size:.95rem;font-weight:500;text-decoration:none;transition:color .2s}a.news-feed-title:hover{color:var(--accent)}.news-feed-arrow{color:var(--accent);opacity:0;margin-left:.2rem;font-size:.8rem;transition:opacity .2s}.news-feed-item:hover .news-feed-arrow{opacity:.8}.news-feed-date{color:var(--foreground);opacity:.5;white-space:nowrap;align-self:baseline;font-size:.74rem}@media(max-width:480px){.news-feed-item{grid-template-columns:1.1rem 1fr;row-gap:.15rem}.news-feed-date{order:3;grid-column:2}}.sidebar-extra{border-top:1px solid var(--border);flex-direction:column;gap:1.1rem;width:100%;margin-top:1.5rem;padding-top:1.25rem;display:flex}.sidebar-section-title{text-transform:uppercase;letter-spacing:.08em;opacity:.6;margin:0 0 .5rem;font-size:.7rem;font-weight:700}.sidebar-contact{flex-direction:column;gap:.4rem;display:flex}.sidebar-contact-item{color:var(--foreground);opacity:.85;word-break:break-all;align-items:center;gap:.45rem;font-size:.8rem;text-decoration:none;transition:color .2s,opacity .2s;display:flex}a.sidebar-contact-item:hover{color:var(--accent);opacity:1}.sidebar-contact-item svg{opacity:.7;flex-shrink:0}.sidebar-cv{border:1px solid var(--border);color:var(--foreground);border-radius:.25rem;justify-content:center;align-items:center;gap:.45rem;padding:.5rem .75rem;font-size:.85rem;font-weight:600;text-decoration:none;transition:color .2s,border-color .2s,background .2s;display:flex}.sidebar-cv:hover{color:var(--accent);border-color:var(--accent);background:var(--surface)}.sidebar-status{opacity:.85;align-items:center;gap:.45rem;margin:0;font-size:.78rem;display:flex}.status-dot{background:#2ea043;border-radius:50%;flex-shrink:0;width:8px;height:8px;box-shadow:0 0 0 3px #2ea04340}.sidebar-scholar{color:var(--foreground);opacity:.85;align-items:center;gap:.45rem;font-size:.78rem;text-decoration:none;transition:color .2s,opacity .2s;display:flex}.sidebar-scholar:hover{color:var(--accent);opacity:1}.sidebar-scholar svg{opacity:.75;flex-shrink:0}.sidebar-affil-logo{opacity:.9;max-width:120px;height:auto;margin-top:.25rem}.sidebar-keyword-list{flex-wrap:wrap;gap:.4rem;display:flex}.sidebar-keyword{border:1px solid var(--border);opacity:.85;white-space:nowrap;border-radius:.25rem;padding:.15rem .5rem;font-size:.72rem;line-height:1.3}.cv-talks{margin:0 0 1.5rem;padding:0;list-style:none}.cv-talk{border-bottom:1px solid var(--border);justify-content:space-between;align-items:baseline;gap:1rem;padding:.55rem 0;display:flex}.cv-talk:last-child{border-bottom:none}.cv-talk-title{font-weight:600}.cv-talk-event{opacity:.75;margin-left:.4rem}.cv-talk-date{opacity:.6;flex-shrink:0}.cv-body h2{border-bottom:1px solid var(--border);padding-bottom:.5rem}.timeline-logo{object-fit:contain;border:1px solid var(--border);background:#fff;border-radius:.5rem;flex-shrink:0;width:84px;height:84px;padding:5px}.skill-groups{flex-direction:column;gap:.9rem;display:flex}.skill-group{flex-wrap:wrap;align-items:baseline;gap:.5rem;display:flex}.skill-cat{min-width:9rem;color:var(--accent);flex-shrink:0;font-size:.8rem;font-weight:700}.skill-tags{flex-wrap:wrap;gap:.4rem;display:flex}.section-caption{margin:-.25rem 0 .85rem}.stats-strip{border-top:1px solid var(--border);border-bottom:1px solid var(--border);grid-template-columns:repeat(3,1fr);gap:.75rem;margin-top:2rem;padding:1.1rem 0;display:grid}@media(min-width:640px){.stats-strip{grid-template-columns:repeat(6,1fr)}}.stat-cell{text-align:center}.stat-value{color:var(--accent);letter-spacing:-.02em;font-size:1.35rem;font-weight:800;line-height:1.1}.stat-label{opacity:.7;margin-top:.25rem;font-size:.68rem;line-height:1.3}.pub-badges{flex-wrap:wrap;gap:.4rem;margin-bottom:.6rem;display:flex}.pub-badge{border:1px solid var(--border);color:var(--text-muted);white-space:nowrap;border-radius:.25rem;padding:.1rem .45rem;font-size:.72rem;font-weight:600;line-height:1.4}.pub-badge-role{color:var(--accent);border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.pub-badge-role{border-color:color-mix(in srgb,var(--accent) 40%,var(--border))}}.pub-badge-role{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.pub-badge-role{background:color-mix(in srgb,var(--accent) 8%,transparent)}}.pub-badge-cite{color:var(--accent-2);border-color:var(--accent-2)}@supports (color:color-mix(in lab,red,red)){.pub-badge-cite{border-color:color-mix(in srgb,var(--accent-2) 40%,var(--border))}}.pub-badge-cite{background:var(--accent-2)}@supports (color:color-mix(in lab,red,red)){.pub-badge-cite{background:color-mix(in srgb,var(--accent-2) 8%,transparent)}}.tag-link{color:var(--accent);line-height:1.6;text-decoration:none;display:inline}.tag-link:hover{text-underline-offset:3px;text-decoration:underline}.tag-sm{font-size:.85rem}.tag-md{font-size:.95rem}.tag-lg{font-size:1.05rem}.body-muted{opacity:.8}.platform-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;display:grid}.platform-card{border:1px solid var(--border);color:var(--foreground);border-radius:.25rem;align-items:center;gap:.9rem;padding:.9rem;text-decoration:none;transition:border-color .2s;display:flex}.platform-card:hover{border-color:var(--accent)}.platform-card-static{cursor:default}.platform-card-static:hover{border-color:var(--border)}.platform-has-qr{cursor:help;position:relative}.platform-qr-popover{background:var(--background);border:1px solid var(--border);opacity:0;visibility:hidden;z-index:60;pointer-events:none;border-radius:.5rem;flex-direction:column;align-items:center;gap:.35rem;padding:.5rem;transition:opacity .2s,transform .2s,visibility .2s;display:flex;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)translateY(4px);box-shadow:0 10px 28px #0003}.platform-has-qr:hover .platform-qr-popover,.platform-has-qr:focus-visible .platform-qr-popover{opacity:1;visibility:visible;transform:translate(-50%)translateY(0)}.platform-qr-popover img{border-radius:.25rem;width:160px;height:160px;display:block}.platform-qr-cap{opacity:.8;white-space:nowrap;font-size:.72rem}.platform-logo{object-fit:contain;border-radius:.25rem;flex-shrink:0;width:48px;height:48px}.archive-year{margin-bottom:1.75rem}.archive-list{margin:0;padding:0;list-style:none}.archive-item{align-items:baseline;gap:.85rem;padding:.35rem 0;display:flex}.archive-date{opacity:.6;flex-shrink:0;width:4.5rem}.btt-container{z-index:50;opacity:0;pointer-events:none;transition:opacity .5s,transform .5s;position:fixed;bottom:2rem;right:1rem;transform:translateY(3.5rem)}.btt-container.show{opacity:1;pointer-events:auto;transform:translateY(0)}.btt-btn{background:var(--background);width:3.25rem;height:3.25rem;color:var(--foreground);border:none;border-radius:50%;justify-content:center;align-items:center;gap:.4rem;transition:color .2s;display:inline-flex;position:relative;box-shadow:0 8px 24px #0000002e}.btt-progress{z-index:-1;background-image:conic-gradient(var(--accent),var(--accent) 0%,transparent 0%);border-radius:50%;display:block;position:absolute;inset:0;transform:scale(1.12)}.btt-text{display:none}.btt-btn:hover{color:var(--accent)}@media(min-width:768px){.btt-btn{background:var(--background);border-radius:.375rem;width:auto;height:2rem;padding:.25rem .7rem}@supports (color:color-mix(in lab,red,red)){.btt-btn{background:color-mix(in srgb,var(--background) 60%,transparent)}}.btt-btn{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:none;border:1px solid var(--border)}.btt-progress{display:none}.btt-text{font-size:.85rem;font-weight:500;display:inline}}@media(prefers-reduced-motion:reduce){.btt-container{transition:opacity .3s;transform:none}}.lang-switch{opacity:.85;align-items:center;gap:.35rem;margin-left:.5rem;font-size:.8rem;display:flex}.lang-switch a{color:var(--foreground);opacity:.6;text-decoration:none;transition:opacity .2s,color .2s}.lang-switch a:hover{opacity:1;color:var(--accent)}.lang-switch a.active{opacity:1;color:var(--accent);font-weight:700}#pagefind-search{--pagefind-ui-font:inherit;--pagefind-ui-text:var(--foreground);--pagefind-ui-background:var(--background);--pagefind-ui-border:var(--border);--pagefind-ui-primary:var(--accent);--pagefind-ui-tag:var(--surface);--pagefind-ui-border-radius:2px;--pagefind-ui-border-width:1px}.home-hero{margin-bottom:0}.home-kicker{color:var(--text-muted);margin:0 0 .55rem;font-size:.86rem}.home-identity{letter-spacing:-.02em;text-wrap:pretty;margin:0 0 1rem;font-size:1.42rem;font-weight:600;line-height:1.35}.home-intro,.home-bio{max-width:none;color:var(--foreground);margin:0;font-size:1rem;line-height:1.7}.home-bio p{margin:0 0 .9rem;font-size:1rem;line-height:1.7}.home-bio p:last-child{margin-bottom:.9rem}.home-proof{color:var(--text-muted);margin:0;font-size:.88rem}.home-section{margin-top:2rem}.section-heading-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:.15rem;display:flex}.section-heading-row .section-heading{border-bottom:none;margin-bottom:0;padding-bottom:.45rem}.section-more{color:var(--accent);white-space:nowrap;font-size:.85rem;text-decoration:none}.section-more:hover{text-underline-offset:3px;text-decoration:underline}.bib-group+.bib-group{margin-top:1.75rem}.bib-year-heading{letter-spacing:.04em;color:var(--text-muted);margin:0 0 .35rem;font-size:.92rem;font-weight:600}.bib-list{margin:0;padding:0;list-style:none}.bib-item{border-bottom:1px solid var(--border);grid-template-columns:3.1rem minmax(0,1fr) auto;align-items:baseline;gap:.35rem 1rem;padding:.8rem 0;display:grid}.bib-group-year .bib-item{grid-template-columns:minmax(0,1fr) auto}.bib-year{font-variant-numeric:tabular-nums;color:var(--text-muted);font-size:.88rem}.bib-title{color:var(--foreground);font-size:.98rem;font-weight:600;line-height:1.4;text-decoration:none}.bib-title:hover{color:var(--accent)}.bib-authors,.bib-venue-inline{color:var(--text-muted);margin:.2rem 0 0;font-size:.86rem;line-height:1.45}.bib-authors strong{color:var(--foreground);font-weight:600}.bib-role{font-weight:400}.bib-aside{text-align:right;flex-direction:column;align-items:flex-end;gap:.2rem;display:flex}.bib-venue{color:var(--text-muted);max-width:11rem;font-size:.84rem;font-style:italic}.bib-link{color:var(--accent);letter-spacing:.02em;font-size:.82rem;font-weight:500;text-decoration:none}.bib-link:hover{text-underline-offset:3px;text-decoration:underline}.news-list,.plain-list{margin:0;padding:0;list-style:none}.news-row,.plain-row{border-bottom:1px solid var(--border);grid-template-columns:5.6rem minmax(0,1fr);align-items:baseline;gap:1rem;padding:.62rem 0;display:grid}.plain-row{grid-template-columns:16.5rem minmax(0,1fr)}.news-date{font-variant-numeric:tabular-nums;color:var(--text-muted);font-size:.86rem}.news-title,.plain-name{color:var(--foreground);font-size:.95rem;line-height:1.45;text-decoration:none}a.news-title:hover,a.plain-name:hover{color:var(--accent)}.plain-name{font-weight:600}.plain-desc{color:var(--text-muted);font-size:.92rem;line-height:1.5}.card-authors{color:var(--text-muted);margin:.2rem 0 0;font-size:.86rem}@media(max-width:720px){.home-identity{font-size:1.22rem}.bib-item,.bib-group-year .bib-item,.news-row,.plain-row,.cv-row{grid-template-columns:1fr;gap:.2rem}.bib-aside{text-align:left;flex-direction:row;align-items:flex-start;gap:.75rem}.bib-venue{max-width:none}}.detail-meta{color:var(--text-muted);margin:0 0 1.25rem;font-size:.9rem;line-height:1.55}.tag-index{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.tag-index li{border-bottom:1px solid var(--border);margin:0;padding:.45rem 0}.cv-list{margin:0 0 1.75rem;padding:0;list-style:none}.cv-row{border-bottom:1px solid var(--border);grid-template-columns:10.5rem minmax(0,1fr);align-items:baseline;gap:1rem;padding:.85rem 0;display:grid}.cv-period{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:.86rem}.cv-role{margin:0;font-size:.98rem;font-weight:600;line-height:1.4}.cv-place{color:var(--foreground);margin:.15rem 0 0;font-size:.9rem}.cv-desc{color:var(--text-muted);margin:.3rem 0 0;font-size:.88rem;line-height:1.55}@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-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}
