@font-face{font-family:Unbounded;font-style:normal;font-display:swap;font-weight:600;src:url(data:font/woff2;base64,d09GMgABAAAAAAQ8ABAAAAAACCQAAAPiAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhYbgQwcLgZgP1NUQVQqAFwRCAqDJIJvCxQAATYCJAMiBCAFhQwHZwwHG8IGIK4KbGN6UBdhJpEWQy2Toz3zeWyACp7/16Pu+8kA9BItK5ZERbPbbs7mr/3aQ1SS2Ik66n9PbO8r4o2hiSc6oaiHRCM0pkM0uXtOJNKIo7byH74wHw1xI27+L8f3js7WsN0WKNJE5uYx6Y5+gaS9M2xQuAYGMoW2Hl6WBhQIpVM3ecy+RsYKIJp/V4sA1gCAQhA0BAEsiaSQUVzqGYTKXabiUPlzTBIqZQIYBgLI5BEqCbmAAIKOBeYI5ggKMEfhLRNI1SYdDcB4PaJJKyagwoIpFKTnpRwqWo93bQ2gpFUAunql2skCtVRIoKof6UWUVuBhBijOVjs+gPP492Htk2EF+l/xBWT1vfugMtVfwF8G8nqO4CwNzpM+fyzMpOmAQgDEQrUDgAI0wFmG02dkUg6wxRyFKf6MLrggyv+wAUxmGJ+dN6KAvGskDVxIEAN2AFgA4AiwAsYAqwFvQIMoZUhpzildUPMEvc22z0q3nD+FSTZYK6BN7Og9y3KrCZaTB3afPpWFh+49a2v7eaSDTy2XPva2fIblVsuePGHB/sePm5vfru9mwRNb/Zmf1WNos8SBlcmuVrNlYe2NLeSWV8B19dPyP8f+HrP5c/Tv0QN/xreN75Q/xL1Va03XLm7t+LsRvikzbNPNzj9csZuwPqs5au1Y/vcdKZrkbi6+GBLZKPT0+6TslUlxR/g8czR0nN44b+y6zI9MtgwW9bt1vdszql3sHxoT3p8wKe2JXmTaObcMDkkNe63Nw5C//fbjnTtOI073vPYLCY27zbVtq7VnYruV9FDSADPMpAYw7DbnIcQDUKDt1m6rx7uHAHJors9L5/vssv+Za9p3gHd5K5cAvO8O6oN0Y/p0MEUBIPBXAdo+1H9TgiFfVDfX2nBesQfPOCynbSEU4KZMGmBBhkw8ZQTZTyGANavQEN0C2CvlS0UITrCisBVXRSPdb69OU0xotaOYEoxQbEnFU+yVa5QdlCp0Ex1rSMl97ELaIBEhYYwBSEKECRZHGJI0D2MlERBifD9GCk2Fj4+2gBKRwqDx0CLieDBKCJ+fjSeUcW86fRhChfipsKRWQjxyAkJqIUEMDIujTRDgUeIRUeAhIBypbiEIQURJTokwFWj0PkY+6oKg/vFCWHFzKCffrd1mWMoyqqHv3EpEQESk1aAwpDXYpAAKFoUsOJpvxGKEYRRaq47Gl0IiJI01jyclLLFhdQwLiUOCsCQGjY9N2+qUDvwaG0h0AAsg2LcoNNFEFxMxNS0YpBCHcuZOiwgEBQL1RZGgUFI8MMQy6GQboSNuFAvnMkri+NR155UY7ddXAA==) 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:Unbounded;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/unbounded-cyrillic-600-normal-DW6uzIMB.woff2) format("woff2"),url(/assets/unbounded-cyrillic-600-normal-B-s5c2Kn.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Unbounded;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/unbounded-vietnamese-600-normal-Cx2bTSHN.woff2) format("woff2"),url(/assets/unbounded-vietnamese-600-normal-BzfrgZ_C.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:Unbounded;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/unbounded-latin-ext-600-normal-0iZLtTDV.woff2) format("woff2"),url(/assets/unbounded-latin-ext-600-normal-ClMPf-bu.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:Unbounded;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/unbounded-latin-600-normal-oRSANpZr.woff2) format("woff2"),url(/assets/unbounded-latin-600-normal-BPdB_PEv.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:Unbounded;font-style:normal;font-display:swap;font-weight:800;src:url(data:font/woff2;base64,d09GMgABAAAAAAQoABAAAAAACCwAAAPNAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhYbgQwcLgZgP1NUQVQqAFwRCAqDJIJtCxQAATYCJAMiBCAFhRQHZwwHG8gGQJ4FzumLRiQ3N8nNEL+zT/z+pBPEk39Vve7vmbXOZgooSexoqfBA9N+vtXduQFLbW0x9xf+toaHZdPMuFhpDaWKJkCGa3P088Egjjtrq/0JvzhPX5EVZhVUK7EY4sSyOpIi0Mm+NxgHtXmBR+rQQmk5nU5fcYNO4EMMnYDV7zxYBwgCAQhA0ggABTVQw9RvQMwLhXVcECP+iJkGYGcBAAFk6X5HADgggWPh4CB6CAjwU6cxAB5mMaADzQ13TZYMEE6xCYbCs0g2pmXzpBA9ARxA2W+q1zsYCao+aBDAUDJlBUZpZwgUUgI2YPoB7ZPcl/cSEwHovmYCcLC0D1V29B7KZkLcThHgG+B2MGxcymsEMKARAQjobABSggXgmBIhnZhAgEg+FQ7ZGp9wXlX3JAAsY5ql75utNHozBAAASxCAKAB+AWEAIWAg4DqQD1oeOMkoBjSAWYb3WVlLkzJA52DgZSyIgrBImio8ZZ1gcYgJ+9lZNjWy+WFo7ceJLqZhYE+wpSg5qeXFob3U1m85VVY0bd593ik3VJm9tVqiKgmskwMYs2KyRYDO0d92DuZlWGuyp6fXu4fuHciUdevc89/ksHACPd9xQN+Ys6P/75dvVM3rXz74/CqOXnnWbLHVkUb/rM2e8cnpi88ycfml1A74XP3H6TefOuixhDztOIJpzt3o10VNmvUvpk24lPm1IRmNne8rNU2fgTP66S3rMHHqpLLYzFoOzboU6d/opHK09/fJldg4963TqzJ2p85Z2p2JsgAFwcWUs+naPKmgFMEBX6Appf7UIIBfXF5e+nzPTV/PN0/olwIOeB7YBPJxWd/DfmA/Rk8FBASDwS42sy43596YrPmfI0/No9GvudD7zdvo0dQFR+Ajg05mZVKYcRoVtYU6gEcsHzsgojSM0SBOOIlLSOZouPlqtKI7NBDschwYoTiQd4JxoQYn6GIK7JcQiDMaQ5z+aiMSiMTSt1mgUi5ogAsIoyRJEJyGQCAyNJkZVJSpKtUzBitGoMCqWAIMoaFH92vRk6lZQLzyGpORIRiTJCvH95XCFqtEoGgQRqKbhMJUwRSpgCKQVpfLQSIQilcpVIsyevdGnUZ/qjiBD49F0gkXKU7KS65shMeuUdf3kZEVwRYokG8EgJWfTDyAd4ZCWB/iNdBoGolAly159B42NCeqWYHAgov3dEYQmIFEQiUYVpVcN5DDCcs1oY0cfqOdVFFq0WGKL4/Ses6f/Epu+gsXx3rj0YBHep8Q7e66ukdvbUOxzw+7WAxzFrTqoqc9iOmftBwA=) 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:Unbounded;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/unbounded-cyrillic-800-normal--HlTIRd4.woff2) format("woff2"),url(/assets/unbounded-cyrillic-800-normal-DbsDaRyD.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Unbounded;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/unbounded-vietnamese-800-normal-CoK4UhqK.woff2) format("woff2"),url(/assets/unbounded-vietnamese-800-normal-BESasFH0.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:Unbounded;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/unbounded-latin-ext-800-normal-18_tL4n1.woff2) format("woff2"),url(/assets/unbounded-latin-ext-800-normal-qEXaCaVG.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:Unbounded;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/unbounded-latin-800-normal-CN2Hxyoo.woff2) format("woff2"),url(/assets/unbounded-latin-800-normal-Cjred_zf.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:Figtree;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/figtree-latin-ext-400-normal-CXAzuTZb.woff2) format("woff2"),url(/assets/figtree-latin-ext-400-normal-Gbh-3PTk.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:Figtree;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/figtree-latin-400-normal-g7Dtegnw.woff2) format("woff2"),url(/assets/figtree-latin-400-normal-BD4aNku5.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:Figtree;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/figtree-latin-ext-500-normal-Du0rIuHj.woff2) format("woff2"),url(/assets/figtree-latin-ext-500-normal-BOEJvrb_.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:Figtree;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/figtree-latin-500-normal-BWnGEVsr.woff2) format("woff2"),url(/assets/figtree-latin-500-normal-B_yy1phn.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:Figtree;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/figtree-latin-ext-600-normal-DJlfifZj.woff2) format("woff2"),url(/assets/figtree-latin-ext-600-normal-CQqsimlV.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:Figtree;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/figtree-latin-600-normal-Cv_xCTDl.woff2) format("woff2"),url(/assets/figtree-latin-600-normal-BM_oTo4n.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:Figtree;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/figtree-latin-ext-700-normal-CS4sQkGV.woff2) format("woff2"),url(/assets/figtree-latin-ext-700-normal-BoDi4KL2.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:Figtree;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/figtree-latin-700-normal-th6qEP7c.woff2) format("woff2"),url(/assets/figtree-latin-700-normal-BCCt2T1q.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: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(/assets/jetbrains-mono-cyrillic-400-normal-BEIGL1Tu.woff2) format("woff2"),url(/assets/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(/assets/jetbrains-mono-greek-400-normal-C190GLew.woff2) format("woff2"),url(/assets/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(/assets/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(/assets/jetbrains-mono-latin-ext-400-normal-Bc8Ftmh3.woff2) format("woff2"),url(/assets/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(/assets/jetbrains-mono-latin-400-normal-V6pRDFza.woff2) format("woff2"),url(/assets/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(/assets/jetbrains-mono-cyrillic-500-normal-DmUKJPL_.woff2) format("woff2"),url(/assets/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(/assets/jetbrains-mono-greek-500-normal-JpySY46c.woff2) format("woff2"),url(/assets/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,d09GMgABAAAAAA/IABAAAAAALMwAAA9mAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGnAbhXAcghYGYD9TVEFUTACDBBEICrA8p1ILgjgAATYCJAOEKAQgBYUeB4xODAcbFCYzA/aDkxp0RMXmTMH/IcEUkaXZhe7qAVQoRhtRmOhkzaUYXs3lyzTUlwptwwNGy28PLP/oZewn39g4Jjp8YusISWZ9eNpW788MNQMI7jZprgsqRiJ7imCBYlEWIBhgoWjj7uJGcddednnRIQ/fX77n7i8NtLf08UwEQl3jq59XJCShypU4lMyz3Hb3X0omkAkZCYVNhfN/c3Pmf1nJcDqnj2VE35fYAx+8WYIJhZj4znn1Qbjp9+f4Pab0wOi7JSECzG0o6DRWu/MBgfu/NdPu5O8cUssKSJ1wUyTjq6oWZic7nUsKuIEySsIkzXvdKzArVNkCwvP1lQCgK4yu0BVWFp6vrWVm/6Nt7H82JGhxDyAteCbHZLRdzTsxJqNEUxb+txHysoxjwQzz2p8tU5uFtC4RmcGouCRX3v1195cCAYgBAECRIWSIVNsQCiqEhh6RpxRRzogwaUTYdSCc3AivAcSQCcSkacSCBbQlcbQ9DqAddgyNAFiZilAX9c1OSB/6ZyYgxQCwDgGQoVQGIYAIRvVlRAiR7Ax+jsqKIDacjVExNGWA/MQLk8VzJshTmOztrVbySNyHVnaAiUVpcgdvmnh9FNeAYYXkMl4AqisEoDtIZK0zs6lsSM8yAboEhZ5CFVqD23kNfor49QgAGWwFBeRAIZRCLdigBbqPFSIF+ABeQAfotUU0g+rL1gCMOnSNn4S0PWEL5Nw2QBqyIVvBT2Fe9wCSYDa3QH3Vt4cSaWSAug+NT0JKDgAKQOMLa96EFIKf/gOUWDQiE3EFgAB4aACxikhFAAwKZZ8DgHeiRQixRghm5n4HrCOOSrQAtqJU3LzpFAr/6TAHnDo8QQgszNHZ77FXwgom85JfwQOqMC8Ae/gYkSsURQ1AgQgAQAutAAoAALCdA3gIkv619L//vwb0H8nVgjz+bwLUlFoDaPGQkfqBjQcpc4R8ODxDAPwurhVJMbRRa7ksFTJAUJERK+RXgDxDi8az0D39NBJmMjGZP5MWgyH5+mYXeZg0kZOdJEIu5k1OaIYW0Rnqv/S2DtQxKCIjOSRMLuKNDjpwIXDRE0Y407zODF3/W/ovnvbiAz6YIOC0nZKaVrpMADK9/g8sQDORaaLiVmpCNj+DsAUJUg1SNBKpxbESqyNRj2XB2IWvmkANITOe42zRZqt223RIZbdRi00cNmu1QTMlFwWnTH2y+Gh4pemWrkeGXlpddgjYKUgnRG9Ajn55huQbViCiyKhiY0qMKzSiwpRykyrFGE0jSCIFAJwLADkD0AtMDvBegHkHug0AoFGJVK2qhCXG61AIrWWr8aYYT2zhWkVVD6EX62dQyHJqVGLicdAyTQtFjJgVi1Olw0wdI6eouC1SZjvL3umikG5h3BSHrTOMQKpkUgQu/aGoVC5VKLOjXKBIrWSy2FqmlB+dTKAUcDwJE5TwBkbFnJ/rY92ss4dzXxKbV1/T9hAJvBUu+bwOaq/XWDeXTEKvBMv+HYDYtSMXHI8lErBlDv1FvCF2yDfJcie3f1oWe+wCtb9HCZdshHBIfLC9FrNf60J4HGMKYkfC5TJ+lSNHd3NdZ5dNZ96o6OG8lOvpt5IcR3r2z61suaFBNQmrT0wrCXkvwKkNWenURddyk4+u1FuSiQRtRvQxxhEfxFo411PBvfbTQ1aCPSbA0yIczRIJRXEEQyYS4ocX/of1WiiyaY7SI3Z54u6pUe8m+30ZXB4f13V23XbupYoeLhwa5QqcRIKRdhwtDjdHX7sj8SSWqhgd2s25/B7OuTu4WLdz9FgQLtG55HhMlbFN/J5rrmGPXQWwZOVVLnn31VevgnPrfKt+IsHWeS5ZYVnCJZ9HIqem3z+aeAsjx92cK+7hnPGyVcarN47i9QctdADS864Xl+f2cM6E6W7jwyDLmWTlDNfAWRtN3eLupy1VuUoXA0Y9nDMwDm0aWWy8vkY6yniPTKmax1mFMSPTY+OyNo5gvPrMaWh+d6Yocqzobrh2BM+xO665gj12WQPSixm3X325OHNpey4+FiI+ViG4n+0mtkeDT6J77bK1vsLcqur1aMyF/u63T4xFx/V3vXhzq+VXFL7ypKwjPz+l4w2I7O1b21+wrz3XGCkzhqwKi3EwUtbo7w+YrLVVCuM8U1MAvrXrA5YXtX7tt5YAgoHTtp8WWF0eGHqRNVhUEjBba0v8h+bWaAV+c525JPC7Y/GXH19hrUyWl51baa04D0cn7Sp5qsze1VrwV7OyZHfSiyJTsZB0TFoerSjfW97MUD0Yt59oL3Kd4SNndY35u+St5yYTG575P1cpvWf3hskypgS/yB30tjjC3t6zi/Om4l/vjtYRYdOcpyc4FXQtRAZTN5h66vUdRpsxv/FMnSRHdzIYUWcg6vcHAtFOq8NmDm+l9r49tjYS2RI2O2zqvuITK5wVJxaXLhudxmXyUWt/K/Qiy0BJqb/mZHOpb6DEYg2VlPrMQWf+rheNhpOjo1zdfIfKkm6qMhsrTeZd234B2oMPB68Kyh+7OQi90BoqLvWbT6wt9YWKrdEKfLUnmkv9J2fxld9XeaLx3vKyZ40nVj6HfU/YdfKw79i9rQU1lSWHXuzBSScKzcZC3WPdlRcUl9xQeTh2aC6G9md6xnorxgsKd1f0dvkr/e7KQtNT/YHYFK691fHqc7z5WGnoTXPhm6HR0mnubTCFnYEJf7bfP+G0Ouw1k4QvuOw/rPsO97uflSxXKCuWS0rjlcrKePHlrYZWnH9AY9VoL03tATMa+kB/IGO1LLqakbF6sqvQHJhOLowm8cyBSHJmMonogaPJATpOOOweE/o99p7WWmfms1k7ns101lZHxtRBTefZMzIJkSsaNIZ6PReT/ohVl1uGg2e7ml3474DkI8kGTVtDZOe2TO2ONujXMk7TagqPrtGehm2f5GksNUqWOMsAC1JpXVMB8a265dwCWrecb+qjmcuF3pKhX/qEodrl80v5RPPuq9xGdUu9x3B2pnqrdvnB6Pe2BBpN7ap0nS5d1W7yN56QiB0YXTzQIWMqsVit2E1IJJ65TsI+KzVZbHmN6dJzkiro99t7Gqscyl/8nbTSUVWdjOByTedCSCZdr0kNW3MHcrWWxWmp1cp+yE6c98d0jC0lz4gdGXjRaLO92ffUHysp8pF3giv+eOcGjvsbGa11hkiW+PB5hmPdht38S67pmA9my+IbNmXULvS3VG07Lq136q4xnKz01oPhuZGJueMWrK31JofKklae1qlqKba7vg5yWnz3hzAuBOeGe+aQ8ur03gWhSNxQ3a/htqUcWzqxZsgptuwTcY3NaGzZLlTUKP8UW4zHk6oxHFFf9+F9MrFUwq/n52j06vNeGlmS9eyJU7A8ejA8F5uYO2Oh2i5K+uDcaxPRubvf6vbTxu85m5WnWqo9WbdqJUcOf3tSoNvCbrn09HJ9io6MjZ4Xny5qb2puApUNggl8KLVU1ACQTpMomG2HoEriLLkaejrIM8gzIx90Is8iz8bnjGNjNLQADHJcM4VcEXqXkOUhG7nIA5BvNJ+N9MKmYbuN05Tq5ZrWhcjqhmQ1IzdINamW1V4WrBhk29RG6FoDqfIt9wjkbNfvcq4XYOw1PHUJmquCZ03r3q6PSYNswHBLUJbKWbcHWUaWQZUN89AnAsi+EPxQrrIlEJnJIlUJM7HMcyIb2WdiwCYYhdkKuBjZ5gUYSBu2TYSNZEBQZ/dsLMogZAlqcMnlTpcszNOWC7LHy0oMpAd7JmhjAL8NbmRdayAVvDU+WxL5XR70AowhbINbkc7/KgLwLmPqTfwNBEUHCMBxmUhdQj6WUlkZlKnxu6pO1d9/v//3Q7rw+///2fMjAAB6oDb0HaH0b6GUJU8Y0eR64ojqUqm14Od8duRDHPKhFfZpiGupUNnzetjxdgRbK/5+l4IJ5JeSir8t3R+1IaFaa9AZitANXTvqUxavQ2TYeNmrYwP4det2tGuWgFpDejL9euYAfQfK28gGGIvbgQRcpXesotZIABUK/LoCMgX5tBzoUFiWbADfCNfMu98PsCghbdyeq6jgel07qoCDJjjsyIFY7MAODSYL1alQ9phCIRt3Ri4tbQVgE5dpkfhjGAkZMAWRYzPLNioh68Amvwwd4zGzodCRGaTlUjZqVdaBTSBDfJ6vWzoqG6lZhQKbFK6EAKgz5unB00f9KabfIE1/CcA764pzcPbvSz+DTdl+/xcAHwUACHwM3JK6lBL+d88HxAVfFHh3m1b6a8TWqK9qwVrRVjPaq6WqFSbUXqOOqrXXCkfN6KhWPgnndsCsD3CdZzHpoEPOX6wjz67FHso9aAqWW+ynpyeAc+VhtGMQgKDhk7pBGKUsAnBflEhlCV2wnFLxv2VpRo+QTFme7a4qy5cjUVaqjK2sjFJ+GTmx9FYE4M2hvDRKwSyXLSegQ9S4fhOazOT8YyJCPAaHHhY2o8XyD4iYNc7mNKNWTL+ICdO0Go+aiFqsGZM3ZyMDg2khMRGTZqrMfNN8LD/nqJhhBq3qNXN2r8LzGkBuHpMgYmkV2dpFChUKu08Vm1pVR9TBh+FjevSxMYZr7aNbRE1aFJsrvS1RcG1pOS9ocBJ8rTYx4yMuQj6W2WwW4VnSDJFz5tU/LKK0ZgWXCD2/qRmKRWuYh+47US6adX1FAOIfwbmATE+T2t4wLVab3eF0uT1eXz6MQKLQGCyuGE8gVpLIFCqNzmCy2Bwur54vEIrEEqlM3qxQqtTdSrU6vcFoMlusNjsz0q+WhVWdeg0aNfUmG7vmOrRwaNWmXYdOTi5uHl5deXXr0auPj19Av2C9QgYMGor2C4sYMWrMuAlRk6bETJsxa868BYuWxC3bbY+9EjhBUjTDcrwgSih88/y+eq/C13kHnXKhbTUDgISUCgNDoABXKLCL+2X27E/c2jAAQEKsFigx1qgLEbSeu+NyhcJGIECQNm9L567c3l7uZ5Wo3pkx4tYOhJANKw9dEonovRqVDb5dMKz515Ng+hci23hm4UQEs8eChwPB0BZYOBINbH3Erw0HECzUaokWa42eyGD3PIBIMBSOrfryBQ3G4oHQKi+/kEA0tuaDV40GP3h0+wuAAgXTKy0v5428xUDwksfm538juY9ni9fz2Ggy4iWLMz4qLklle7kcZvOLwy5bXp7fdYrRJlP4l5NDdZPiKVeLnJV7Ohg2VAs/aQwZNVtodX2jki6RU1e/j6GkgZbgAmmogZafuF4mZlb1t+COUyrcnF/CCZzS4MO/dX1T6QQAAAA=) format("woff2"),url(/assets/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(/assets/jetbrains-mono-latin-ext-500-normal-Cut-4mMH.woff2) format("woff2"),url(/assets/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(/assets/jetbrains-mono-latin-500-normal-BWZEU5yA.woff2) format("woff2"),url(/assets/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}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:700;src:url(data:font/woff2;base64,d09GMgABAAAAAASAABAAAAAACNgAAAQlAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbHhwoBmA/U1RBVEwAdBEICoRkg3gLIAABNgIkAzoEIAWEaAeBFAwHGzgHSJ4DbjN9OmtkIy0becnT/RjJ4uGfw99974/GXrhoTCqLok66NY3jTloEUdrmwCevn/Ls30xSpFlZ6UJMrW+fTNwAEdSuvSzCRANvEgnjUmw8swT+87+w7I/7qb8XlIB7NpGBjXiUjRX0b7ZpJ8+orRLzvGhWYCMdAU3BbRdPuqOeKAXuRKAWEEJJCIEQqNbLD9osq2kBviL8A4Fq4yLgAa+6DNaiAwcYOrqYHfgQcMgL3AFgG4fHHqREEUBSxUtmBfzNWxXADfviy8Kff7dA4QfFBQG6fnoX5Dh+gEEcIVRKtMIYhc/kCgsCDiarQY4QWpEKQoYTAAIJUcaHAHIXIN9BooBWhEAr0j7QzAkh1RnEWOY4wuRW8uX/f5o5W8gXcjriOUb9z/wjACRuWaWrpKIyLMQ/DUDN/TT+ErgHRpPBIRQrKCcZCvxBBCBEkSD4lKMjRblQlCvpQHPsSZE9R6K2o/vpXkGboKWbbltxx2feLT+a6KJb5293n7vTt53uwOzUO4gYc5eedhvS+a1bbdNuIiSA89cuGo25IZh6DXrJJIIUUibFUG0zt+ijO+cvnj8fjVm4cKlvN90DwzrdMmy8H9GjDyv90Xz2W10PVj3oTY7LLfwfmxMHoef+8n33R0duOxF3LPCYFXtymWNdcLBD3VF4S91+GWf8c9k7sZC6fPpnbENnCmayerBNki0ZbFUXiHV/wkxWklGmydCkaR5o0oZnlj3oSVdnZKjTITaXStOyWGYakzUgTSt1gvSs/otJL1FkzE/3e+aXvj7n+TOv9HkZ6evS4e3OXafCx8iqJfNGpQLM7rkt0ppRJ8N3gd1IjHLaROM0cLkhdf2NQjZ4bmjo2mBWKJ4CPA4IZXX9hFlPBnhxWhXzgBGQ88QeRD3j1/AD5a/JxMnL5gK5deaC2H7HvK98gngBbzfWLKD0g2ufeA7nMsQepBwDgpdhy90BzC+8DSCers8O6KKloYn0RCtKo9EM9LsAd7AgNBhFGEAsvl4K1LpCiCIF3IZHFUKvX5AqfUPBgkO+ovHpUNJtOJSN6hDWWxAigkCt9hbEXdaOHLvI6lM5gQA79LRYOpUsWBpKYu2klOQULGlGCwOzHIkSmYmZKBlQrlmCQ0mDv5SeiVyiemVqVJGyEDJhKemY1dLT0YsnpKch0UbKxExJTydIigQpkiUvYA3SVFDqFH2uNggh343VmPs2ycX0DIYwPYTigMak5AjS0ohI8zmoo4EJwypS4iVcDOuDuvRMgytHPa5LTjnoc1YiCcT0tBI3qjXxqqFomJf2PylAOHMDRp1HGBaDQCTiIC7iQSH4iEICRHMZkUlqk/KsOmVSGlOK7NIseRNZFp3NkbNaLateTmKScHGTAyu2WqQf6lD8rMNg1+lKTcpwkfvQ/7eRMwAA) format("woff2"),url(data:font/woff;base64,d09GRgABAAAAAAbAAA8AAAAACLwAAQABAAAAAAAAAAAAAAAAAAAAAAAAAABHREVGAAABWAAAABgAAAAcABQABEdQT1MAAAFwAAAAHgAAAB5EdEx1R1NVQgAAAZAAAAAnAAAAKLj8uOpPUy8yAAABuAAAAFEAAABgGDBcS1NUQVQAAAIMAAAAPgAAAEzrJ8wpY21hcAAAAkwAAABRAAAAdAyHCodnYXNwAAACoAAAAAgAAAAIAAAAEGdseWYAAAKoAAAB6wAAAmCgFyn6aGVhZAAABJQAAAA2AAAANhSU8UNoaGVhAAAEzAAAAB8AAAAkAc0A/2htdHgAAATsAAAAHwAAADoe9gKVbG9jYQAABQwAAAAgAAAAIATdBZ9tYXhwAAAFLAAAABwAAAAgAIcCb25hbWUAAAVIAAABBwAAAmg1nlsfcG9zdAAABlAAAABwAAAAlNdzMTB42mNgZGBg4GGAAEYgZAWTjCAeAAG0ABkAAQAAAAoAHAAcAAFERkxUAAgABAAAAAD//wAAAAAAAHjaY2BkYGDgYlADQiYXN58QBqGcxJI8Bj4GEGABEf//g0gAWkkFVQB42mNgYYpi2sPAysDA1MUUwcDA4A2hGeMYjBgdgKIMDJwMUMDEzoAEvJyAxAIGXpaXzH/+XWFgYP7DqKPAwDj//nWgSjWmW0BZBQZWAB8jDeMAAAB42gXBsQ1AABQFwHufiI5CYQBDaVVIlBLLmckM7kT0CpPCop79uIPz3q4MojUrSFcvtVIfGlEZQfgB9IwGBAAAeNpVyEcBwkAQBdCXHnoVgJU44Y4pFIAFUAOJiS23ZOZ3lKhwVSlkr91xdlQp7dwMnr5FWb/rMQQW26v+h3xT+IRHGEIBCvNr9Wh0OUU7NxUUAAAAAAEAAf//AA942m0QNZQUMfQn2Zt1Gcdhd2Dt/DLJrOLu0OHu7u4uJf3D+odLhUOLu0MLJVQ7S3C4u+S7/w8EJgIgFz8XkgR+ACrH5V5xGaH4RHTSPY7q3KsCH+LnlWQLLrqAi4DBAsBM5HghBkBVqlopy6vSVDKZkiSvdenY5e3p6+k+R+qCMUKioe/Jp08j82bzGEUZ0wTV6s8K5AJOAgIQncPd2rNGBEVgCms/0U1oVCbUNAyTc8ehRP70eNfKsEI8cnjZzsfIj+5VuhVisUK3itvofhX1fmViCTwAQGBo9QuO4Y8QEZ4eADWJJJNtTlsMXdYkKdXCGbN0zSCU2UkrIemobtGGDYsWbcjNGcKd57ncc0c0DqybjfKz166d7d7pP9NZUrYXL7bLaMhkViox0TNTHYkbcVL09P/Tswlk6ATWj55Jxmz+vauh6/+2Tf1tO2huPj930E/KC2+LxbcFzooBNrPfoX4zGJ/+nfEFBdalCyu878DyeQbod2dQAUxGqNoNm6bDHQEqJfrnWzvmeQM+LJ7HXyPN3Xbz3DmcdM/pmR4B8WI9NR2Nqjw/B4DgOsmiM+QCEADVod7rC/euJNnDh4VnK0mgF8ITBkDielQzaAsXTEJ1o6fPyFpW7YzpJDG+fzydjvcfD98ArHSFeAAAAQAAAAI2BCpkDTZfDzz1AAMD6AAAAADb0qaaAAAAANva0PL5PP7UBJID/AABAAYAAgAAAAAAAHjaY2BkYGD+8+8KAwPLhp82f3NYJgFFUAEfAK0mBsoAeNpjimCIAmJlJCwOxR5ArIlEM0AxCBxiqAMA3bsHpgAAAAAaADsARgBRAG4AdgCoALAA5QEKAQoBCgEKARcBMHjaY2BkYGDgZ9zBkMewhYENzEMAZgYmAC0aAfh42oyQA25FUQBET20EtW27DWrbcfVtcx1dzV9V40adpLdmXiZzMnfmCSjlnhyycouATFa14SwaeTScTSEPhnOYJmM4l+7XbR71pA3n08ml4XL12585C0qpNpz/ds+sCuXFhitFcIwPD9d42SIsd+Pglgsscht2ZZIuPyHmGWFEfksQh5KweFhy4Jb7lNp0fsA6u2xjIcyysmsceNXaU8MrDSn14eaOc3WCaI9OaGWcYWlM19d16+u+9XX/1l9gW+nCv55q/NdnrEh+EgRf/4LejlEk0akSi/z3tzwkKHeqc4v2LBGR25UFUZPeL3/WhgM11LthmKclg2NGH4st+nj8qQkARipb8wB42mNgYgCD/6kMRkCKkQEd8AOxCsNJRiYGG0ZmRhZGVkY2RnYGZkYORk5GLkZuNsekotSyVPbSvEwDE0dXCO1qAeW7QfmWrOmJubmJYJ6BowGTcxBfYnJpSWpyfm6SXnJicSoPSMbYwAzMAQCg7RyY) 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:700;src:url(/assets/jetbrains-mono-cyrillic-700-normal-BWTpRfYl.woff2) format("woff2"),url(/assets/jetbrains-mono-cyrillic-700-normal-CEoEElIJ.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:700;src:url(/assets/jetbrains-mono-greek-700-normal-C6CZE3T8.woff2) format("woff2"),url(/assets/jetbrains-mono-greek-700-normal-DEigVDxa.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:700;src:url(data:font/woff2;base64,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) format("woff2"),url(/assets/jetbrains-mono-vietnamese-700-normal-BDLVIk2r.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:700;src:url(/assets/jetbrains-mono-latin-ext-700-normal-CZipNAKV.woff2) format("woff2"),url(/assets/jetbrains-mono-latin-ext-700-normal-CxPITLHs.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:700;src:url(/assets/jetbrains-mono-latin-700-normal-BYuf6tUa.woff2) format("woff2"),url(/assets/jetbrains-mono-latin-700-normal-D3wTyLJW.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}:root{--perspective: 800px;--block-radius: 6px;--grid-gap: 1.5rem;--elevation-step: 4px;--tilt-blur: 3px;--brand: #00CCC5;--brand-deep: #00A39D;--sky: #42A5F5;--sand: #FFCC80;--sand-deep: #E9A956;--brick: #E57373;--brick-deep: #C95454;--water: #29B6F6;--water-deep: #0288D1;--wood: #8D6E63;--wood-deep: #6D5047;--stone: #9E9E9E;--stone-deep: #7C7F82;--soft-white: #FAFAFA;--bg: #E3F1FA;--panel: #FAFAFA;--panel-2: #EEF4F7;--panel-3: #E1EAEF;--line: #CFDAE1;--line-soft: #E3EAEE;--edge: #D3DDE3;--edge-2: #BFCBD3;--text: #233038;--text-2: #4E5D67;--text-3: #75848E;--accent: #00837E;--accent-ink: #00201F;--accent-soft: rgba(0, 204, 197, .16);--ok: #4E8F25;--warn: #B9781E;--bad: #C95454;--info: #0288D1;--drop: rgba(35, 48, 56, .2);--grid-line: rgba(66, 165, 245, .12);--canvas: #FBFAF6;--canvas-grid: #EEEBE2;--canvas-grid-major: #DEDACD;--canvas-ink: #2E2A26;--canvas-label: var(--text);--canvas-label-2: var(--text-2);--c-sel: #0288D1;--c-sel-soft: rgba(41, 182, 246, .22);--c-hover: #29B6F6;--c-measure: #C95454;--c-wall-ext: #8D6E63;--c-wall-int: #B5A79C;--c-wall-review: #FFCC80;--c-wall-line: #3E3029;--c-hatch: rgba(40,30,24,.6);--c-floor-fill: rgba(255, 204, 128, .26);--c-floor-line: #E9A956;--c-ceiling-line: #42A5F5;--c-column: #5A4A43;--c-column-x: #B5A79C;--c-opening-fill: rgba(255, 255, 255, .92);--c-shade: #d9822b;--c-shade-fill: rgba(217, 130, 43, .14);--c-dim: #8C857B;--c-dim-text: #6B645B;--c-label: #FFFFFF;--c-anno: #4A433C;--c-space: #7A4FB8;--c-roof: #B5654A;--c-parking: #6BAF5C;--c-parking-in: #E0A43A;--c-parking-line: #4E8F42;--c-pin: #D84315;--c-handle: #FFFFFF;--c-ent-used: #C9C2B8;--c-ent-free: #6E665E;--c-ent-flag: #E3DED5;--c-ent-anno: #5C8DB8;--c-mask: rgba(35, 48, 56, .45);--sky-top: #9ED3F7;--sky-bottom: #E8F5FD;--ground: #7CB342;--ground-grid: #5E8F2E;--ground-side: #6D5047;--hemi-sky: #FFF6E5;--hemi-ground: #7A8F5A;--mono: "JetBrains Mono", ui-monospace, Consolas, monospace;--sans: "Figtree", "Segoe UI", system-ui, sans-serif;--display: "Unbounded", "Arial Black", system-ui, sans-serif;--depth-shadow: 0 var(--elevation-step) 0 var(--edge), 0 calc(var(--elevation-step) * 2) 0 var(--edge-2), 0 calc(var(--elevation-step) * 2 + 2px) 0 var(--edge-2), 0 18px 28px -14px var(--drop);color-scheme:light}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--brand: #00CCC5;--brand-deep: #008E89;--sand: #F2BC6B;--sand-deep: #C98F43;--brick: #DC6A6A;--brick-deep: #B04B4B;--wood: #7E6056;--wood-deep: #5C443C;--bg: #0C151E;--panel: #172532;--panel-2: #1D2E3C;--panel-3: #253848;--line: #2B3E4E;--line-soft: #223342;--edge: #0A121A;--edge-2: #060C12;--text: #E9F0F4;--text-2: #B4C2CC;--text-3: #8697A3;--accent: #00CCC5;--accent-ink: #001F1E;--accent-soft: rgba(0, 204, 197, .18);--ok: #8FCB52;--warn: #F2BC6B;--bad: #EE8A8A;--info: #5CC3F7;--drop: rgba(0, 0, 0, .55);--grid-line: rgba(66, 165, 245, .07);--canvas: #13202B;--canvas-grid: #1A2A37;--canvas-grid-major: #223646;--canvas-ink: #E9F0F4;--c-sel: #4FC3F7;--c-sel-soft: rgba(79, 195, 247, .22);--c-hover: #81D4FA;--c-measure: #EE8A8A;--c-wall-ext: #A8887C;--c-wall-int: #6F6560;--c-wall-review: #C98F43;--c-wall-line: #E8DED6;--c-hatch: rgba(245,238,228,.55);--c-floor-fill: rgba(242, 188, 107, .12);--c-floor-line: #C98F43;--c-ceiling-line: #5CC3F7;--c-column: #D8CBC3;--c-column-x: #6F6560;--c-opening-fill: rgba(19, 32, 43, .9);--c-shade: #f0a24a;--c-shade-fill: rgba(240, 162, 74, .16);--c-dim: #6F7C86;--c-dim-text: #94A3AE;--c-label: #13202B;--c-anno: #C9D4DB;--c-handle: #13202B;--c-space: #C3A6F0;--c-roof: #E39A7E;--c-parking: #7FCB6E;--c-parking-in: #F2B94F;--c-parking-line: #9BD98C;--c-pin: #FF8A65;--c-ent-used: #34495A;--c-ent-free: #9FB0BC;--c-ent-flag: #26384A;--c-ent-anno: #6FA8D6;--c-mask: rgba(0, 0, 0, .55);--sky-top: #0B1622;--sky-bottom: #1B3044;--ground: #5E8F2E;--ground-grid: #4F7D25;--ground-side: #4A342D;--hemi-sky: #9DB8D6;--hemi-ground: #2A3320;color-scheme:dark}}:root[data-theme=dark]{--brand: #00CCC5;--brand-deep: #008E89;--sand: #F2BC6B;--sand-deep: #C98F43;--brick: #DC6A6A;--brick-deep: #B04B4B;--wood: #7E6056;--wood-deep: #5C443C;--bg: #0C151E;--panel: #172532;--panel-2: #1D2E3C;--panel-3: #253848;--line: #2B3E4E;--line-soft: #223342;--edge: #0A121A;--edge-2: #060C12;--text: #E9F0F4;--text-2: #B4C2CC;--text-3: #8697A3;--accent: #00CCC5;--accent-ink: #001F1E;--accent-soft: rgba(0, 204, 197, .18);--ok: #8FCB52;--warn: #F2BC6B;--bad: #EE8A8A;--info: #5CC3F7;--drop: rgba(0, 0, 0, .55);--grid-line: rgba(66, 165, 245, .07);--canvas: #13202B;--canvas-grid: #1A2A37;--canvas-grid-major: #223646;--canvas-ink: #E9F0F4;--c-sel: #4FC3F7;--c-sel-soft: rgba(79, 195, 247, .22);--c-hover: #81D4FA;--c-measure: #EE8A8A;--c-wall-ext: #A8887C;--c-wall-int: #6F6560;--c-wall-review: #C98F43;--c-wall-line: #E8DED6;--c-hatch: rgba(245,238,228,.55);--c-floor-fill: rgba(242, 188, 107, .12);--c-floor-line: #C98F43;--c-ceiling-line: #5CC3F7;--c-column: #D8CBC3;--c-column-x: #6F6560;--c-opening-fill: rgba(19, 32, 43, .9);--c-shade: #f0a24a;--c-shade-fill: rgba(240, 162, 74, .16);--c-dim: #6F7C86;--c-dim-text: #94A3AE;--c-label: #13202B;--c-anno: #C9D4DB;--c-handle: #13202B;--c-space: #C3A6F0;--c-roof: #E39A7E;--c-parking: #7FCB6E;--c-parking-in: #F2B94F;--c-parking-line: #9BD98C;--c-pin: #FF8A65;--c-ent-used: #34495A;--c-ent-free: #9FB0BC;--c-ent-flag: #26384A;--c-ent-anno: #6FA8D6;--c-mask: rgba(0, 0, 0, .55);--sky-top: #0B1622;--sky-bottom: #1B3044;--ground: #5E8F2E;--ground-grid: #4F7D25;--ground-side: #4A342D;--hemi-sky: #9DB8D6;--hemi-ground: #2A3320;color-scheme:dark}:root[data-theme=contrast]{--brand: #00FFF5;--brand-deep: #00BDB6;--sand: #FFD27A;--sand-deep: #E0A43E;--brick: #FF7A7A;--brick-deep: #D94C4C;--wood: #A07A6C;--wood-deep: #7A5A4E;--bg: #000000;--panel: #000000;--panel-2: #0D0D0D;--panel-3: #1A1A1A;--line: #FFFFFF;--line-soft: #9A9A9A;--edge: #FFFFFF;--edge-2: #BFBFBF;--text: #FFFFFF;--text-2: #F2F2F2;--text-3: #D0D0D0;--accent: #00FFF5;--accent-ink: #000000;--accent-soft: rgba(0, 255, 245, .28);--ok: #7CFF6B;--warn: #FFD000;--bad: #FF6B6B;--info: #66D9FF;--drop: rgba(0, 0, 0, 0);--grid-line: rgba(255, 255, 255, 0);--canvas: #000000;--canvas-grid: #262626;--canvas-grid-major: #4D4D4D;--canvas-ink: #FFFFFF;--c-sel: #FFE600;--c-sel-soft: rgba(255, 230, 0, .3);--c-hover: #FFF27A;--c-measure: #FF6B6B;--c-wall-ext: #FFFFFF;--c-wall-int: #BDBDBD;--c-wall-review: #FFB000;--c-wall-line: #FFFFFF;--c-hatch: rgba(255,255,255,.75);--c-floor-fill: rgba(255, 210, 122, .16);--c-floor-line: #FFD27A;--c-ceiling-line: #66D9FF;--c-column: #FFFFFF;--c-column-x: #000000;--c-opening-fill: rgba(0, 0, 0, .95);--c-shade: #FFB347;--c-shade-fill: rgba(255, 179, 71, .22);--c-dim: #D0D0D0;--c-dim-text: #FFFFFF;--c-label: #000000;--c-anno: #FFFFFF;--c-handle: #000000;--c-space: #E0C8FF;--c-roof: #FFB49A;--c-parking: #9CFF8C;--c-parking-in: #FFD34D;--c-parking-line: #C8FFBE;--c-pin: #FF9E80;--c-ent-used: #5A5A5A;--c-ent-free: #FFFFFF;--c-ent-flag: #333333;--c-ent-anno: #9CD0FF;--c-mask: rgba(0, 0, 0, .7);--sky-top: #000000;--sky-bottom: #111111;--ground: #5E8F2E;--ground-grid: #8FCB52;--ground-side: #4A342D;--hemi-sky: #FFFFFF;--hemi-ground: #333333;color-scheme:dark}:root[data-theme=contrast] .btn,:root[data-theme=contrast] .tab,:root[data-theme=contrast] .input{outline:1px solid var(--line-soft)}:root[data-cvd=on]{--ok: #0072B2;--warn: #E69F00;--bad: #D55E00;--info: #56B4E9;--c-measure: #D55E00;--c-wall-review: #E69F00;--c-pin: #CC79A7;--c-parking: #56B4E9;--c-parking-in: #E69F00}:root[data-cvd=on][data-theme=contrast],:root[data-cvd=on][data-theme=dark]{--ok: #56B4E9;--bad: #FF8A3D}@media(prefers-color-scheme:dark){:root[data-cvd=on]:not([data-theme]){--ok: #56B4E9;--bad: #FF8A3D}}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background-color:var(--bg);background-image:repeating-linear-gradient(30deg,var(--grid-line) 0 1px,transparent 1px 34px),repeating-linear-gradient(150deg,var(--grid-line) 0 1px,transparent 1px 34px);color:var(--text);font:13px/1.4 var(--sans);overflow:hidden;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--water);outline-offset:2px}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--panel-3);border-radius:6px;border:2px solid var(--panel)}::-webkit-scrollbar-track{background:transparent}.app{display:grid;grid-template-rows:auto 1fr auto;height:100%;gap:10px;padding:10px 12px 0}.workspace{display:grid;grid-template-columns:1fr 350px;gap:12px;min-height:0}.workspace.no-right{grid-template-columns:1fr}.center{display:grid;grid-template-rows:auto 1fr;gap:10px;min-width:0;min-height:0;padding-bottom:10px}.viewports{display:grid;gap:12px;min-height:0}.viewports.split{grid-template-columns:1fr 1fr}.viewports>*{min-width:0;min-height:0;position:relative;overflow:hidden;border-radius:var(--block-radius);box-shadow:var(--depth-shadow);background:var(--canvas)}.block{background:var(--panel);border-radius:var(--block-radius);box-shadow:var(--depth-shadow)}.toolbar{display:flex;align-items:center;gap:6px;padding:7px 10px;min-height:52px;flex-wrap:wrap;background:var(--panel);border-radius:var(--block-radius);box-shadow:var(--depth-shadow)}.brand{display:flex;align-items:center;gap:10px;padding-right:12px;margin-right:2px;border-right:2px solid var(--line-soft)}.brand-mark{display:block;width:40px;height:33px;flex:none}.brand-mark svg{display:block;width:100%;height:100%;filter:drop-shadow(2px 2px 0 color-mix(in srgb,var(--logo-ink, #1F2D3A) 18%,transparent))}[data-theme=dark],[data-theme=contrast]{--logo-ink: #FFFFFF}@media(prefers-color-scheme:dark){:root:not([data-theme]){--logo-ink: #FFFFFF}}.brand-name{font:800 13px var(--display);letter-spacing:-.02em}.brand-name em{font-style:normal;color:var(--brand-deep)}.brand-sub{color:var(--text-3);font:600 10px var(--mono);letter-spacing:.1em;text-transform:uppercase}.project-name{background:transparent;border:2px solid transparent;border-radius:var(--block-radius);padding:3px 7px;min-width:120px;max-width:260px;font-weight:700;font-size:14px;transition:all .22s ease}.project-name:hover,.project-name:focus{border-color:var(--line);background:var(--panel-2);outline:none}.tb-group{display:flex;align-items:center;gap:4px;padding:0 6px}.spacer{flex:1}.btn{--b: transparent;--b-edge: transparent;display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 10px;border-radius:var(--block-radius);border:0;background:var(--b);color:var(--text-2);cursor:pointer;white-space:nowrap;font-weight:600;box-shadow:0 3px 0 var(--b-edge);transform:translateY(0);transition:all .22s ease}.btn:hover:not(:disabled){--b: var(--panel-2);--b-edge: var(--edge-2);color:var(--text);transform:translateY(-2px);box-shadow:0 5px 0 var(--b-edge)}.btn:active:not(:disabled){transform:translateY(2px);box-shadow:0 1px 0 var(--b-edge)}.btn:disabled{opacity:.38;cursor:default}.btn.active{--b: var(--accent-soft);--b-edge: var(--brand);color:var(--accent)}.btn.active:hover:not(:disabled){--b: var(--accent-soft);--b-edge: var(--brand);color:var(--accent)}.btn.primary{--b: var(--brand);--b-edge: var(--brand-deep);color:var(--accent-ink);font-weight:700;box-shadow:0 3px 0 var(--b-edge),0 6px 0 var(--b-edge)}.btn.primary:hover:not(:disabled){--b: var(--brand);--b-edge: var(--brand-deep);color:var(--accent-ink);box-shadow:0 3px 0 var(--b-edge),0 8px 0 var(--b-edge),0 12px 16px -8px var(--drop)}.btn.outline{--b: var(--panel);--b-edge: var(--edge-2);box-shadow:inset 0 0 0 1.5px var(--line),0 3px 0 var(--b-edge)}.btn.outline:hover:not(:disabled){box-shadow:inset 0 0 0 1.5px var(--line),0 5px 0 var(--b-edge)}.btn.sm{height:26px;padding:0 8px;font-size:12px}.btn.danger:hover:not(:disabled){color:var(--bad)}.btn svg{width:15px;height:15px;flex:none}.seg{display:inline-flex;gap:3px;background:var(--panel-2);border-radius:8px;padding:3px 3px 5px;box-shadow:inset 0 2px 0 var(--edge)}.seg .btn{height:26px}.status-pill{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:600;color:var(--text-2);padding:0 10px;height:28px;border-radius:var(--block-radius);background:var(--panel-2);max-width:380px;box-shadow:0 3px 0 var(--edge)}.status-pill span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dot{width:9px;height:9px;border-radius:2px;background:var(--brand);flex:none;box-shadow:0 2px 0 var(--brand-deep)}.dot.processing{background:var(--water);box-shadow:0 2px 0 var(--water-deep);animation:pulse 1s infinite}.dot.error{background:var(--brick);box-shadow:0 2px 0 var(--brick-deep)}@keyframes pulse{50%{opacity:.35}}.dd{position:relative}.dd-menu{position:absolute;top:calc(100% + 8px);right:0;z-index:50;background:var(--panel);border-radius:var(--block-radius);padding:6px;min-width:220px;box-shadow:0 0 0 1px var(--line),0 4px 0 var(--edge),0 8px 0 var(--edge-2),0 24px 40px -12px var(--drop)}.dd-menu.dd-left{left:0;right:auto}.dd-item{display:flex;align-items:center;gap:8px;width:100%;padding:7px 8px;border-radius:5px;border:none;background:none;cursor:pointer;text-align:left;color:var(--text);transition:all .18s ease}.dd-item:hover{background:var(--panel-2)}.dd-item input{accent-color:var(--brand);cursor:pointer}.dd-sep{height:2px;background:var(--line-soft);margin:5px 2px;border-radius:1px}.dd-label{font:700 10.5px var(--mono);text-transform:uppercase;letter-spacing:.1em;color:var(--text-3);padding:7px 8px 3px}.swatch{width:11px;height:11px;border-radius:3px;flex:none;box-shadow:0 2px #0000002e}.vp-label{position:absolute;top:10px;left:10px;z-index:5;pointer-events:none;font:700 10.5px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-2);background:var(--panel);padding:4px 8px;border-radius:5px;box-shadow:0 3px 0 var(--edge)}.vp-tools{position:absolute;top:10px;right:10px;z-index:5;display:flex;gap:6px}.vp-tools .btn{--b: var(--panel);--b-edge: var(--edge-2);--b-ring: var(--line);color:var(--text-2);box-shadow:inset 0 0 0 1.5px var(--b-ring),0 3px 0 var(--b-edge),0 4px 10px -4px #00000059}.vp-tools .btn:hover:not(:disabled){box-shadow:inset 0 0 0 1.5px var(--b-ring),0 5px 0 var(--b-edge),0 6px 12px -4px #00000059}.vp-tools .btn.active,.vp-tools .btn.active:hover:not(:disabled){--b: color-mix(in srgb, var(--brand) 16%, var(--panel));--b-edge: var(--brand);--b-ring: var(--brand);color:var(--accent)}.canvas-2d{width:100%;height:100%;display:block;background:var(--canvas);cursor:default;-webkit-user-select:none;user-select:none;touch-action:none}.canvas-2d.panning{cursor:grabbing}.canvas-2d.tool-pan{cursor:grab}.canvas-2d.tool-measure,.canvas-2d.tool-north{cursor:crosshair}.scalebar{position:absolute;left:12px;bottom:12px;z-index:5;font:600 11px var(--mono);color:var(--text-2);pointer-events:none}.scalebar .bar{height:7px;border:2px solid var(--text-2);border-top:none;margin-bottom:3px;border-radius:0 0 2px 2px}.cursor-readout{position:absolute;right:12px;bottom:10px;z-index:5;font:500 11px var(--mono);color:var(--text-3);pointer-events:none}.vp-3d{background:linear-gradient(var(--sky-top),var(--sky-bottom))}.tilt{position:absolute;left:0;right:0;z-index:4;pointer-events:none;backdrop-filter:blur(var(--tilt-blur));-webkit-backdrop-filter:blur(var(--tilt-blur))}.tilt.top{top:0;height:22%;-webkit-mask-image:linear-gradient(#000,transparent);mask-image:linear-gradient(#000,transparent)}.tilt.bottom{bottom:0;height:20%;-webkit-mask-image:linear-gradient(transparent,#000);mask-image:linear-gradient(transparent,#000)}.right{position:relative}.panel-resizer{position:absolute;left:0;top:0;bottom:0;width:7px;cursor:col-resize;z-index:5}.panel-resizer:hover,.panel-resizer:active{background:linear-gradient(90deg,var(--accent) 0 2px,transparent 2px)}.tabs-spacer{flex:1 1 auto}.tabs .panel-toggle{flex:none;align-self:center;margin:0 2px 4px}.right.collapsed{grid-template-rows:auto 1fr;justify-items:center;padding-top:8px;gap:8px}.rail-tabs{display:flex;flex-direction:column;gap:4px;align-items:center}.rail-tabs .tab{writing-mode:vertical-rl;transform:rotate(180deg);padding:10px 6px;font-size:11.5px;border-radius:6px}.rail-tabs .tab .count{display:none}.right{background:var(--panel);border-radius:var(--block-radius);box-shadow:var(--depth-shadow);display:grid;grid-template-rows:auto 1fr;grid-template-columns:minmax(0,1fr);min-width:0;min-height:0;margin-bottom:10px;overflow:hidden}.tabs{display:flex;gap:2px;padding:8px 6px 0;background:var(--panel-2);box-shadow:inset 0 -2px 0 var(--line-soft);min-width:0;overflow-x:auto;scrollbar-width:none}.tabs .tab{flex:0 1 auto;min-width:0;white-space:nowrap;padding:8px 9px 9px}.tab{padding:8px 12px 9px;border:none;background:transparent;color:var(--text-3);cursor:pointer;border-radius:6px 6px 0 0;font:700 12.5px var(--sans);display:flex;gap:6px;align-items:center;transition:all .2s ease}.tab:hover{color:var(--text)}.tab.active{color:var(--text);background:var(--panel);box-shadow:inset 0 3px 0 var(--brand)}.tab .count{font:700 11px var(--mono);background:var(--panel-3);border-radius:4px;padding:0 6px;color:var(--text-2)}.tab .count.warn{background:var(--sand);color:#3b2608;box-shadow:0 2px 0 var(--sand-deep)}.panel-body{overflow:auto;min-height:0}.empty{color:var(--text-3);padding:28px 18px;text-align:center;line-height:1.6}.empty strong{color:var(--text);display:block;margin-bottom:4px;font:700 14px var(--display);letter-spacing:-.01em}.insp-head{padding:14px 14px 12px;border-bottom:2px solid var(--line-soft);display:flex;gap:10px;align-items:flex-start}.type-chip{font:700 10px var(--mono);letter-spacing:.06em;text-transform:uppercase;padding:3px 7px;border-radius:4px;color:#fff;flex:none;margin-top:2px;text-shadow:0 1px 0 rgba(0,0,0,.25);box-shadow:0 2px #00000040}.insp-title{font:800 15px var(--display);letter-spacing:-.02em}.insp-sub{color:var(--text-3);font-size:12px;margin-top:3px}.section{border-bottom:2px solid var(--line-soft)}.section-h{display:flex;align-items:center;gap:6px;width:100%;padding:10px 14px;border:none;background:none;cursor:pointer;font:700 10.5px var(--mono);text-transform:uppercase;letter-spacing:.1em;color:var(--text-2);transition:color .2s ease}.section-h:hover{color:var(--text)}.section-h .chev{transition:transform .2s;color:var(--text-3);display:inline-flex}.section-h.closed .chev{transform:rotate(-90deg)}.section-b{padding:0 14px 14px;display:grid;gap:7px}.field{display:grid;grid-template-columns:112px 1fr;align-items:center;gap:8px;min-height:28px}.field>label{color:var(--text-3);font-size:12px;font-weight:500}.field .val{font:12px var(--mono);color:var(--text);display:flex;align-items:center;gap:6px;justify-content:space-between;font-variant-numeric:tabular-nums}.input,.select{width:100%;height:28px;padding:0 8px;background:var(--panel-2);border:0;border-radius:5px;font:12px var(--mono);box-shadow:inset 0 2px 0 var(--edge),inset 0 0 0 1px var(--line);transition:box-shadow .2s ease}.input:hover,.select:hover{box-shadow:inset 0 2px 0 var(--edge),inset 0 0 0 1px var(--edge-2)}.input:focus,.select:focus{outline:none;box-shadow:inset 0 2px 0 var(--edge),inset 0 0 0 2px var(--brand)}.input.invalid{box-shadow:inset 0 0 0 2px var(--brick)}.input-wrap{position:relative;display:flex;align-items:center}.input-wrap .unit{position:absolute;right:8px;color:var(--text-3);font:11px var(--mono);pointer-events:none}.input-wrap .input{padding-right:36px}.select{font-family:var(--sans);cursor:pointer}.basis{font:700 9.5px var(--mono);padding:2px 5px;border-radius:3px;text-transform:uppercase;letter-spacing:.04em}.basis.measured{background:#7cb3422e;color:var(--ok)}.basis.calculated{background:#29b6f629;color:var(--info)}.basis.estimated{background:#ffcc8059;color:var(--warn)}.conf{display:flex;align-items:center;gap:7px}.conf-bar{width:60px;height:8px;background:var(--panel-3);border-radius:2px;overflow:hidden;box-shadow:inset 0 1px 0 var(--edge)}.conf-bar i{display:block;height:100%;border-radius:2px}.flags{display:grid;gap:5px;margin-top:2px}.flag{font-size:12px;color:var(--text);background:#ffcc8047;border-radius:5px;padding:6px 8px;line-height:1.4;box-shadow:inset 3px 0 0 var(--sand-deep)}.flag.info{color:var(--text-2);background:var(--panel-2);box-shadow:inset 3px 0 0 var(--line)}.layers-table{width:100%;border-collapse:collapse;font-size:12px}.layers-table td{padding:3px 4px;border-bottom:1px solid var(--line-soft);vertical-align:middle}.layers-table td.num{font-family:var(--mono);text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.layers-table .input,.layers-table .select{height:24px;font-size:11px}.row-actions{display:flex;gap:6px;flex-wrap:wrap}.review-badge{font:700 9.5px var(--mono);padding:2px 6px;border-radius:3px;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.review-badge.verified{background:var(--brand);color:var(--accent-ink);box-shadow:0 2px 0 var(--brand-deep)}.review-badge.unverified{background:var(--panel-3);color:var(--text-2);box-shadow:0 2px 0 var(--edge-2)}.review-badge.needs-review{background:var(--sand);color:#3b2608;box-shadow:0 2px 0 var(--sand-deep)}.schedule{background:var(--panel);height:240px;display:grid;grid-template-rows:auto 1fr;min-height:0;border-radius:var(--block-radius);box-shadow:var(--depth-shadow);overflow:hidden}.schedule.collapsed{height:44px}.qty-float{position:fixed;top:58px;right:12px;z-index:45;width:min(1240px,calc(100vw - 24px));height:min(52vh,560px);resize:both;overflow:hidden;min-width:520px;min-height:180px;border-radius:var(--block-radius);box-shadow:0 18px 48px #00000073}.qty-float .schedule{height:100%}.qty-float .sched-head{cursor:move}.sched-head{display:flex;align-items:center;gap:10px;padding:6px 10px;border-bottom:2px solid var(--line-soft);min-height:44px;flex-wrap:wrap}.sched-title{font:800 12px var(--display);letter-spacing:-.01em;color:var(--text)}.totals{display:flex;gap:16px;font:12px var(--mono);color:var(--text-3);margin-left:8px;flex-wrap:wrap;font-variant-numeric:tabular-nums}.totals b{color:var(--text);font-weight:700}.table-wrap{overflow:auto;min-height:0}table.grid{width:100%;border-collapse:collapse;font-size:12px}table.grid th{position:sticky;top:0;background:var(--panel-2);text-align:left;font:700 10.5px var(--mono);color:var(--text-3);padding:7px 10px;box-shadow:inset 0 -2px 0 var(--line-soft);white-space:nowrap;text-transform:uppercase;letter-spacing:.06em;z-index:1}table.grid th.num,table.grid td.num{text-align:right;font-family:var(--mono);font-variant-numeric:tabular-nums}table.grid td{padding:6px 10px;border-bottom:1px solid var(--line-soft);white-space:nowrap}table.grid tr.clickable{cursor:pointer;transition:background .2s ease}table.grid tr.clickable:hover td{background:var(--panel-2)}table.grid tr.selected td{background:var(--c-sel-soft)}table.grid tr.sub td{color:var(--text-2);font-size:11.5px}table.grid tr.sub td:first-child{padding-left:30px}.est{color:var(--warn);font-size:10px;margin-left:3px;font-weight:700}.rv-filters{display:flex;gap:4px;padding:10px 12px;flex-wrap:wrap;border-bottom:2px solid var(--line-soft)}.rv-item{display:grid;grid-template-columns:auto 1fr auto;gap:9px;align-items:center;padding:8px 12px;border-bottom:1px solid var(--line-soft);cursor:pointer;transition:background .2s ease}.rv-item:hover{background:var(--panel-2)}.rv-item.selected{background:var(--c-sel-soft)}.rv-name{font-weight:700;font-size:12.5px}.rv-flag{color:var(--text-3);font-size:11.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:210px}.rv-box{padding:12px;border-bottom:2px solid var(--line-soft);display:grid;gap:8px}.rv-box h4{margin:0;font:700 10.5px var(--mono);text-transform:uppercase;letter-spacing:.1em;color:var(--text-2)}.hint{color:var(--text-3);font-size:12px;line-height:1.5}.statusbar{display:flex;gap:16px;align-items:center;padding:0 14px;height:26px;margin:0 -12px;background:var(--panel);box-shadow:inset 0 2px 0 var(--line-soft);font:500 11px var(--mono);color:var(--text-3)}.statusbar .sep{flex:1}.statusbar .warn{color:var(--warn);font-weight:700}.viewports>.import-view{position:absolute;inset:0;display:grid;grid-template-columns:1fr 360px;gap:12px;background:transparent;box-shadow:none;overflow:visible;border-radius:0;z-index:20}.import-view>div:first-child{position:relative;overflow:hidden;border-radius:var(--block-radius);box-shadow:var(--depth-shadow);background:var(--canvas)}.import-side{background:var(--panel);border-radius:var(--block-radius);box-shadow:var(--depth-shadow);overflow:auto;padding:16px;display:grid;gap:14px;align-content:start}.import-side h3{margin:0;font:800 16px var(--display);letter-spacing:-.02em}.import-side h4{margin:0 0 6px;font:700 10.5px var(--mono);text-transform:uppercase;letter-spacing:.1em;color:var(--text-2);display:flex;align-items:center}.step{display:grid;gap:8px;padding:12px;background:var(--panel-2);border-radius:var(--block-radius);box-shadow:0 3px 0 var(--edge)}.step-n{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:4px;background:var(--panel-3);font:700 11px var(--mono);margin-right:8px;box-shadow:0 2px 0 var(--edge-2)}.step.done .step-n{background:var(--brand);color:var(--accent-ink);box-shadow:0 2px 0 var(--brand-deep)}.notes{font-size:12px;color:var(--text-2);display:grid;gap:4px}.notes .w{color:var(--warn);font-weight:600}.overlay-modal{position:fixed;inset:0;background:var(--c-mask);display:grid;place-items:center;z-index:100;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal{width:min(580px,92vw);background:var(--panel);border-radius:8px;box-shadow:0 5px 0 var(--edge),0 10px 0 var(--edge-2),0 40px 80px -20px var(--drop)}.modal-h{padding:14px 16px;border-bottom:2px solid var(--line-soft);font:800 15px var(--display);letter-spacing:-.02em;display:flex;justify-content:space-between;align-items:center}.modal-b{padding:16px;display:grid;gap:14px}.modal-f{padding:12px 16px 16px;border-top:2px solid var(--line-soft);display:flex;justify-content:flex-end;gap:8px}.readonly-banner{display:flex;align-items:center;gap:10px;padding:6px 14px;margin:0 -12px;background:color-mix(in srgb,var(--warn) 18%,var(--panel));color:var(--text);font:500 12px var(--body, inherit)}.readonly-banner span{flex:1}.cloud-hint{display:flex;align-items:center;gap:10px;padding:4px 14px;margin:0 -12px;font:500 12px var(--body, inherit);color:var(--text-2)}.cloud-hint .bad{color:var(--bad)}.adopt-list{display:grid;gap:2px;max-height:300px;overflow:auto;border:2px solid var(--line-soft);border-radius:6px;padding:4px}.adopt-row{display:grid;grid-template-columns:auto 1fr auto auto;gap:10px;align-items:center;padding:6px 8px;border-radius:4px;cursor:pointer}.adopt-row:hover{background:var(--line-soft)}.adopt-row small{color:var(--text-3, var(--text-2));font-variant-numeric:tabular-nums}.signout-warn{display:grid;gap:8px;width:100%}.dropzone{border-radius:8px;padding:30px;text-align:center;color:var(--text-2);cursor:pointer;transition:all .22s ease;background:repeating-linear-gradient(30deg,var(--grid-line) 0 1px,transparent 1px 22px),repeating-linear-gradient(150deg,var(--grid-line) 0 1px,transparent 1px 22px),var(--panel-2);box-shadow:inset 0 0 0 2px var(--line),0 4px 0 var(--edge)}.dropzone:hover,.dropzone.over{box-shadow:inset 0 0 0 2px var(--brand),0 6px 0 var(--brand-deep);transform:translateY(-2px);color:var(--text)}.format-list{display:grid;grid-template-columns:auto 1fr;gap:7px 12px;font-size:12px;color:var(--text-2)}.format-list b{font-family:var(--mono);color:var(--text);font-weight:700}.error-box{background:#e5737324;border-radius:6px;padding:10px 12px;color:var(--text);font-size:12.5px;display:grid;gap:6px;box-shadow:inset 3px 0 0 var(--brick)}.error-box b{color:var(--bad)}kbd{font:600 10.5px var(--mono);background:var(--panel);border-radius:3px;padding:0 5px;box-shadow:0 0 0 1px var(--line),0 2px 0 var(--edge-2)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.tool-palette{position:absolute;left:10px;top:44px;z-index:6;display:flex;flex-direction:column;gap:4px;background:var(--panel);padding:6px;border-radius:var(--block-radius);box-shadow:var(--depth-shadow)}.tool-palette .btn{width:34px;height:32px;padding:0;justify-content:center}.tool-options{position:absolute;left:60px;top:44px;z-index:6;display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:var(--panel);padding:6px 10px;border-radius:var(--block-radius);box-shadow:0 0 0 2px var(--brand),var(--depth-shadow);width:fit-content;max-width:calc(100% - 180px)}.tool-options .opt-title{font:800 11px var(--display);color:var(--accent);letter-spacing:-.01em;white-space:nowrap}.tool-options .opt{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--text-2);white-space:nowrap}.tool-options .opt input[type=checkbox]{accent-color:var(--brand);cursor:pointer}.tool-options .opt.num .input-wrap{width:96px}.tool-options .opt.wide .select{width:220px}.tool-options .hint-inline{color:var(--text-3);font-weight:500}.tool-hint{position:absolute;left:50%;bottom:12px;transform:translate(-50%);z-index:6;max-width:calc(100% - 260px);font:600 12px var(--sans);color:var(--text);background:var(--panel);padding:7px 12px;border-radius:var(--block-radius);box-shadow:0 3px 0 var(--edge),0 10px 20px -10px var(--drop);text-align:center;pointer-events:none}.canvas-2d.tool-draw{cursor:crosshair}.zone-tag{display:grid;justify-items:center;gap:1px;padding:3px 8px;white-space:nowrap;background:var(--panel);border:2px solid;border-radius:5px;box-shadow:0 3px 0 var(--edge),0 8px 14px -8px var(--drop);font:600 10.5px var(--mono);color:var(--text-2)}.zone-tag b{font:800 11px var(--display);color:var(--text);letter-spacing:-.01em}.ctx-menu{outline:none;position:fixed;z-index:1000;padding:6px;display:grid;gap:1px;background:var(--panel);border:2px solid var(--edge);border-radius:10px;box-shadow:0 4px 0 var(--edge),0 18px 32px -12px var(--drop);font:600 12.5px var(--sans);color:var(--text)}.ctx-menu .ctx-head{padding:4px 8px 6px;font:800 11px var(--mono);color:var(--text-3);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ctx-menu>button{display:flex;align-items:center;gap:8px;padding:6px 8px;border:0;border-radius:6px;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.ctx-menu>button:hover:not(:disabled){background:var(--c-sel-soft)}.ctx-menu>button:disabled{opacity:.45;cursor:default}.ctx-menu>button.danger{color:var(--bad)}.ctx-menu .kbd{margin-left:auto;font:600 10.5px var(--mono);color:var(--text-3)}.ctx-menu hr{border:0;border-top:1px solid var(--edge);margin:4px 2px}.ctx-menu .ctx-label{padding:2px 8px;font:700 11px var(--sans);color:var(--text-3)}.ctx-menu .ctx-swatches{display:flex;flex-wrap:wrap;gap:5px;padding:4px 8px 6px}.ctx-menu .ctx-swatches>button{width:18px;height:18px;border-radius:5px;border:2px solid var(--edge);cursor:pointer;padding:0}.ctx-menu .ctx-swatches>button:hover{transform:translateY(-1px);border-color:var(--text)}.ctx-menu .ctx-custom{width:18px;height:18px;border-radius:5px;border:2px dashed var(--edge);overflow:hidden;cursor:pointer;position:relative}.ctx-menu .ctx-custom input{position:absolute;inset:-6px;width:30px;height:30px;border:0;padding:0;cursor:pointer}.props-pop{position:fixed;z-index:999;display:grid;background:var(--panel);border:2px solid var(--edge);border-radius:10px;box-shadow:0 4px 0 var(--edge),0 18px 32px -12px var(--drop);font:600 12px var(--sans);color:var(--text)}.props-pop-head{display:flex;align-items:center;gap:8px;padding:8px 8px 8px 10px;border-bottom:1px solid var(--edge);cursor:move;-webkit-user-select:none;user-select:none}.props-pop-title{font:800 13px var(--display);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.props-pop-sub{font:600 11px var(--sans);color:var(--text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.props-pop-rows{margin:0;padding:6px 10px;display:grid;gap:3px;max-height:50vh;overflow:auto}.props-pop-rows>div{display:grid;grid-template-columns:92px 1fr;gap:8px;align-items:baseline}.props-pop-rows dt{color:var(--text-3);font-weight:700}.props-pop-rows dd{margin:0;font:600 11.5px var(--mono);overflow-wrap:anywhere}.props-pop-foot{display:flex;justify-content:flex-end;padding:6px 8px 8px;border-top:1px solid var(--edge)}.sun-panel{position:absolute;left:10px;bottom:34px;z-index:6;width:300px;padding:10px 12px;display:grid;gap:8px;background:var(--panel);border:2px solid var(--edge);border-radius:10px;box-shadow:0 4px 0 var(--edge);font:600 12px var(--sans);color:var(--text)}.sun-panel .sun-row{display:flex;align-items:center;gap:8px}.sun-panel .sun-time{font:800 18px var(--mono);min-width:58px}.sun-panel input[type=range]{flex:1;accent-color:#f5a623}.sun-panel input[type=date]{font:600 12px var(--sans);color:var(--text);background:var(--canvas);border:1px solid var(--edge);border-radius:6px;padding:3px 6px}.sun-panel .sun-read{font:600 11px var(--mono);color:var(--text-2)}.sun-panel .sun-presets{display:flex;gap:4px;flex-wrap:wrap}.vp-tools .btn.sun-on{--b: #fff3d6;--b-edge: #f5a623;--b-ring: #f5a623;color:#b26a00}.north-hud{position:absolute;top:44px;right:10px;z-index:5;display:flex;flex-direction:column;align-items:flex-end}.north-glyph{display:grid;justify-items:center;cursor:pointer;-webkit-user-select:none;user-select:none}.north-glyph svg{display:block;filter:drop-shadow(0 2px 3px var(--drop))}.north-val{margin-top:-8px;font:700 11px var(--mono);color:var(--text-2);background:var(--panel);border-radius:4px;padding:0 4px}.north-menu{margin-top:6px;width:250px;padding:10px;display:grid;gap:8px;background:var(--panel);border:2px solid var(--edge);border-radius:10px;box-shadow:0 4px 0 var(--edge),0 18px 32px -12px var(--drop);font:600 12px var(--sans);color:var(--text)}.north-menu-head{font:800 12px var(--display)}.north-menu-head span{font:600 11px var(--sans);color:var(--text-3);margin-left:4px}.north-menu-row{display:flex;align-items:center;gap:8px}.north-menu-row input[type=range]{flex:1;min-width:0;accent-color:var(--brand)}.north-menu-row .input-wrap{width:84px}.north-menu-check{display:flex;align-items:center;gap:6px;color:var(--text-2);cursor:pointer}.north-menu-check input{accent-color:var(--brand)}.site-modal{width:min(760px,94vw)}.site-search{display:flex;gap:8px}.site-search .input{flex:1;min-width:0}.site-results{display:grid;gap:4px;max-height:190px;overflow:auto}.site-results button{display:grid;gap:1px;text-align:left;padding:7px 10px;border:1px solid var(--edge);border-radius:6px;background:var(--canvas);color:var(--text);font:inherit;cursor:pointer}.site-results button:hover{border-color:var(--brand)}.site-results button.chosen{border-color:var(--brand);box-shadow:inset 3px 0 0 var(--brand)}.site-results b{font:700 12.5px var(--sans)}.site-results span{font-size:11.5px;color:var(--text-3)}.site-now{display:grid;grid-template-columns:1fr 260px;gap:12px}.site-now iframe{width:100%;height:250px;border:2px solid var(--edge);border-radius:8px;background:var(--canvas)}.site-fields{display:grid;gap:8px;align-content:start}.site-current{display:grid;gap:2px}.site-current b{font:800 14px var(--display)}.site-current span{font-size:11.5px;color:var(--text-3)}.field-inline{display:grid;grid-template-columns:82px 1fr;align-items:center;gap:8px;font:600 12px var(--sans);color:var(--text-2)}@media(max-width:640px){.site-now{grid-template-columns:1fr}}.proj-modal{width:min(860px,95vw)}.proj-bar{display:flex;gap:8px;flex-wrap:wrap}.proj-bar .input{flex:1;min-width:200px}.proj-list{display:grid;gap:6px;max-height:min(60vh,560px);overflow:auto;padding:2px}.proj-row{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center;padding:8px 10px;border:1px solid var(--edge);border-radius:8px;background:var(--canvas)}.proj-row:hover{border-color:var(--edge-2)}.proj-row.current{border-color:var(--brand);box-shadow:inset 3px 0 0 var(--brand)}.proj-row.flash{animation:proj-flash 1.6s ease-out}@keyframes proj-flash{0%{background:var(--accent-soft)}to{background:var(--canvas)}}.proj-main{min-width:0;display:grid;gap:2px}.proj-name{display:flex;align-items:center;gap:8px}.proj-name .input{font:700 13px var(--sans);background:transparent;box-shadow:none;padding-left:4px}.proj-name .input:hover,.proj-name .input:focus{background:var(--panel)}.proj-badge{font:700 10px var(--mono);text-transform:uppercase;color:var(--accent);background:var(--accent-soft);padding:1px 6px;border-radius:4px}.proj-sub{font-size:11.5px;color:var(--text-3);padding-left:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.proj-stats{display:grid;justify-items:end;gap:2px;font:600 11px var(--mono);color:var(--text-3);white-space:nowrap}.proj-actions{display:flex;gap:4px;align-items:center}.proj-confirm{font:700 12px var(--sans);color:var(--bad);margin-right:4px}.btn.danger-solid{--b: var(--bad);--b-edge: var(--edge);color:#fff}.save-ind{border:0;background:none;color:inherit;font:inherit;padding:0;cursor:pointer}.save-ind.error{color:var(--bad)}.save-ind:hover{text-decoration:underline}@media(max-width:640px){.proj-row{grid-template-columns:1fr}.proj-stats{justify-items:start}}.drop-veil{position:fixed;inset:0;z-index:200;display:grid;place-items:center;pointer-events:none;background:color-mix(in srgb,var(--brand) 16%,transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);outline:3px dashed var(--brand);outline-offset:-14px}.drop-veil>div{display:grid;gap:4px;text-align:center;padding:18px 26px;background:var(--panel);border-radius:10px;box-shadow:0 4px 0 var(--edge),0 18px 32px -12px var(--drop)}.drop-veil b{font:800 16px var(--display)}.drop-veil span{font-size:12.5px;color:var(--text-3)}.rvt-modal{width:min(980px,96vw)}.rvt-file{font:600 11.5px var(--mono);color:var(--text-3);margin-left:8px;letter-spacing:0}.rvt-summary{display:flex;flex-wrap:wrap;gap:8px 16px;font-size:12.5px;color:var(--text-2)}.rvt-summary b{color:var(--text);font-variant-numeric:tabular-nums}.rvt-changed{color:var(--accent)}.rvt-ifc{font:700 10.5px var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--accent);background:var(--accent-soft);border-radius:4px;padding:2px 6px}.rvt-table{max-height:min(58vh,560px);overflow:auto;border:1px solid var(--edge);border-radius:8px}.rvt-group{position:sticky;top:0;z-index:1;padding:6px 10px;background:var(--panel);border-bottom:1px solid var(--edge);font:800 11px var(--display);text-transform:uppercase;letter-spacing:.06em;color:var(--text-3)}.rvt-row{display:grid;grid-template-columns:minmax(0,1fr) 44px 250px 190px;gap:10px;align-items:center;padding:6px 10px;border-bottom:1px solid var(--line-soft)}.rvt-row.off{opacity:.55}.rvt-row.changed{box-shadow:inset 3px 0 0 var(--accent)}.rvt-name{min-width:0;display:grid}.rvt-name b{font:700 12.5px var(--sans);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rvt-name span{font-size:11px;color:var(--text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rvt-count{font:700 12px var(--mono);text-align:right;color:var(--text-2);font-variant-numeric:tabular-nums}.rvt-row .select{width:100%}.rvt-glz{display:flex;gap:6px}.rvt-glz label{display:flex;align-items:center;gap:4px;font:700 10.5px var(--mono);color:var(--text-3)}.rvt-glz .input{width:62px;padding:4px 6px}.rvt-foot{align-items:center}.rvt-remember{margin-right:auto;display:flex;align-items:center;gap:6px;font-size:12.5px;color:var(--text-2)}@media(max-width:760px){.rvt-row{grid-template-columns:minmax(0,1fr) 36px}.rvt-row .select,.rvt-glz{grid-column:1 / -1}}.shade-body{padding:8px 10px 10px;max-height:72vh;overflow:auto}.shade-fields{display:grid;gap:6px}.shade-empty{display:grid;gap:8px;font:600 12px var(--sans);color:var(--text-2)}.shade-empty p{margin:0}.shade-row{display:flex;gap:6px;align-items:center}.shade-sketches{display:grid;grid-template-columns:130fr 170fr;gap:6px}.shade-pop .shade-sketch{height:210px}.shade-pop .shade-sketches{gap:8px}.shade-sketch .sk-fin{fill:var(--c-shade);opacity:.35}.shade-sketch .sk-fin-front{fill:var(--c-shade)}.shade-sketch .sk-shadow{fill:#23384a;opacity:.55}.shade-sketch .sk-frame{fill:none;stroke:var(--text-3);stroke-width:.8}.shade-group{display:grid;gap:6px;padding:6px 8px;border:1px solid var(--edge);border-radius:8px}.shade-check{display:flex;gap:6px;align-items:center;font:700 11.5px var(--sans);color:var(--text-1, inherit);cursor:pointer}.shade-fin-grid{display:grid;grid-template-columns:92px 1fr 1fr;gap:5px 6px;align-items:center}.shade-fin-h{font:700 11.5px var(--sans)}.shade-fin-l{color:var(--text-3);font:700 11px var(--sans)}.shade-off{color:var(--text-3);text-align:center}.shade-sketch{width:100%;height:120px;background:var(--panel-2, rgba(127,127,127,.06));border:1px solid var(--edge);border-radius:8px}.shade-sketch .sk-wall{fill:var(--c-wall-line, #888);opacity:.55}.shade-sketch .sk-glass{fill:#7cc4e0}.shade-sketch .sk-awning{fill:var(--c-shade)}.shade-sketch .sk-dim{stroke:var(--text-3);stroke-width:.8;stroke-dasharray:2 2}.shade-sketch .sk-t{fill:var(--text-2);font:700 9px var(--mono)}.shade-results{margin:2px 0 0;display:grid;gap:3px;padding:6px 8px;border:1px solid var(--edge);border-radius:8px}.shade-results>div{display:grid;grid-template-columns:104px 1fr;gap:8px;align-items:center}.shade-results dt{color:var(--text-3);font:700 11px var(--sans)}.shade-results dd{margin:0;font:600 11.5px var(--mono);display:flex;gap:6px;align-items:center;flex-wrap:wrap}.shade-results dd span{color:var(--text-3);font-family:var(--sans)}.shade-results dd.good{color:var(--ok)}.ctx-menu>button:focus-visible,.ctx-menu .ctx-chips>button:focus-visible,.ctx-menu .ctx-seg>button:focus-visible,.ctx-menu .ctx-toggles>button:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;background:var(--c-sel-soft)}.ctx-menu .ctx-trunc{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ctx-menu .ctx-seg{display:grid;grid-template-columns:repeat(3,1fr);gap:3px;margin:4px 6px 2px;padding:2px;border:1px solid var(--edge);border-radius:7px}.ctx-menu .ctx-seg>button{border:0;border-radius:5px;padding:4px 0;background:none;color:var(--text-2);font:700 11.5px var(--sans);cursor:pointer}.ctx-menu .ctx-seg>button.on{background:var(--accent);color:var(--accent-ink, #fff)}.ctx-menu .ctx-toggles{display:grid;grid-template-columns:1fr 1fr;gap:3px;margin:3px 6px 2px}.ctx-menu .ctx-toggles>button{display:flex;align-items:center;gap:5px;border:1px solid var(--edge);border-radius:6px;padding:3px 6px;background:none;color:var(--text-3);font:600 11.5px var(--sans);cursor:pointer}.ctx-menu .ctx-toggles>button.on{color:var(--text);border-color:var(--accent)}.ctx-menu .ctx-chips{display:flex;flex-wrap:wrap;gap:4px;padding:2px 6px 4px}.ctx-menu .ctx-chips>button{display:inline-flex;align-items:center;gap:4px;border:1px solid var(--edge);border-radius:999px;padding:2px 8px 2px 6px;background:none;color:var(--text);font:600 11px var(--sans);cursor:pointer}.ctx-menu .ctx-chips>button:hover:not(:disabled){background:var(--c-sel-soft)}.ctx-menu .ctx-chips>button:disabled{opacity:.4;cursor:default}.ctx-menu .ctx-chips i{width:8px;height:8px;border-radius:50%}.ctx-menu .ctx-chips b{font:700 10.5px var(--mono);color:var(--text-3)}.site-tabs{display:flex;gap:4px}.site-tabs>button{display:inline-flex;align-items:center;gap:6px;border:2px solid transparent;border-radius:7px;padding:4px 10px;background:none;color:var(--text-2);font:800 13px var(--display);cursor:pointer}.site-tabs>button.on{border-color:var(--edge);background:var(--panel-2, rgba(127,127,127,.08));color:var(--text)}.clim{display:grid;gap:12px;max-height:68vh;overflow:auto;padding-right:4px}.clim-top{display:grid;gap:8px}.clim-top .field-inline{grid-template-columns:70px 1fr}.clim-basis{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.clim-basis>button{border:2px solid var(--edge);border-radius:7px;padding:3px 12px;background:none;color:var(--text-2);font:700 12px var(--sans);cursor:pointer}.clim-basis>button.on{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.clim section{display:grid;gap:4px}.clim h4{margin:4px 0 2px;font:800 12px var(--display);text-transform:uppercase;letter-spacing:.04em;color:var(--text-3)}.clim-row{display:grid;grid-template-columns:150px 150px 26px 1fr;align-items:center;gap:8px;padding:2px 4px;border-radius:6px;font:600 12px var(--sans);color:var(--text-2)}.clim-row.set{background:var(--accent-soft, rgba(124,179,66,.15))}.clim-row.set label{color:var(--text)}.clim-reset{grid-column:3;padding:2px 4px}.clim-row>.clim-src{grid-column:4}.clim-src{font:500 11px var(--sans);color:var(--text-3);line-height:1.3}.clim-pair{display:grid;grid-template-columns:1fr 64px;gap:4px}@media(max-width:700px){.clim-row{grid-template-columns:1fr 130px 26px}.clim-row>.clim-src{grid-column:1 / -1}}.site-panel{display:grid;gap:10px;padding:10px}.site-card{display:grid;gap:8px;padding:10px;border:2px solid var(--edge);border-radius:8px}.site-card-main{display:grid;gap:2px;font:600 12px var(--sans);color:var(--text-2)}.site-card-main b{font:800 14px var(--display);color:var(--text)}.site-card-main .mono{font:600 11px var(--mono);color:var(--text-3)}.site-card-actions{display:flex;gap:6px;flex-wrap:wrap}.site-h{margin:4px 0 0;font:800 13px var(--display)}.site-panel .clim{max-height:none;overflow:visible;padding-right:0}.site-panel .clim-top .field-inline{grid-template-columns:1fr;gap:4px}.site-panel .clim-row{grid-template-columns:1fr 112px 24px;row-gap:1px}.site-panel .clim-row>.clim-src{grid-column:1 / -1;padding-bottom:3px}.site-panel .clim-pair{grid-template-columns:1fr}.sug-list{display:grid;gap:6px}.sug{border:1px solid var(--edge);border-left:3px solid var(--warn);border-radius:7px;padding:6px 8px;display:grid;gap:4px}.sug-h{display:flex;align-items:center;gap:6px;font:600 12px var(--sans)}.sug-r{font:500 11.5px var(--sans);color:var(--text-2);line-height:1.35}.zone-check{display:flex;align-items:center;gap:6px;font:600 12px var(--sans);color:var(--text-2);cursor:pointer}.cz-list{display:grid;gap:6px;margin-top:6px}.cz{border:1px solid var(--edge);border-radius:7px;padding:6px;display:grid;gap:4px}.cz.on{border-color:var(--accent)}.cz-h{display:grid;grid-template-columns:12px 1fr auto auto;align-items:center;gap:4px}.cz-h .swatch{width:10px;height:10px;border-radius:3px}.cz-b{display:grid;grid-template-columns:1fr 1fr;gap:4px}.cz-f{font:600 11px var(--mono);color:var(--text-3)}.level-bar{position:relative;display:flex;align-items:center;gap:8px;min-width:0;padding:4px 6px;border:2px solid var(--edge);border-radius:9px;background:var(--panel)}.level-bar-title{display:inline-flex;align-items:center;gap:5px;font:800 12px var(--display);color:var(--text-2);white-space:nowrap}.level-chips{display:flex;gap:4px;min-width:0;overflow-x:auto;scrollbar-width:thin}.level-chip{display:inline-flex;align-items:stretch;border:1px solid var(--edge);border-radius:7px;overflow:hidden;flex:none}.level-chip.on{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.level-chip.off .level-name{opacity:.45}.level-name{display:grid;justify-items:start;gap:0;padding:2px 8px;border:0;background:none;color:var(--text);cursor:pointer;text-align:left}.level-name b{font:700 11.5px var(--sans);white-space:nowrap}.level-name span{font:600 10px var(--mono);color:var(--text-3)}.level-chip.on .level-name{background:var(--accent-soft, rgba(124,179,66,.18))}.level-eye{border:0;border-left:1px solid var(--edge);background:none;color:var(--text-2);padding:0 6px;cursor:pointer}.level-chip.off .level-eye{color:var(--text-3);text-decoration:line-through}.level-chip.off .level-eye svg{opacity:.35}.level-eye:disabled{opacity:.35;cursor:default}.level-actions{display:flex;gap:4px;margin-left:auto;flex:none}.level-pop{position:absolute;z-index:50;top:calc(100% + 4px);right:6px;width:300px;padding:6px;display:grid;gap:2px;background:var(--panel);border:2px solid var(--edge);border-radius:9px;box-shadow:0 4px 0 var(--edge),0 18px 32px -12px var(--drop)}.level-pop>button{display:flex;align-items:center;gap:8px;padding:6px 8px;border:0;border-radius:6px;background:none;color:var(--text);font:600 12.5px var(--sans);text-align:left;cursor:pointer}.level-pop>button:hover{background:var(--c-sel-soft)}.level-pop .kbd{margin-left:auto;font:600 10.5px var(--mono);color:var(--text-3)}.level-edit{gap:6px;padding:10px}.level-edit .field-inline{grid-template-columns:104px 1fr}.level-reflow{display:grid;gap:5px;padding:6px 0 2px;border-top:1px solid var(--border, rgba(255,255,255,.08))}.level-reflow .check{display:flex;align-items:center;gap:6px;font-size:12px}.rv-step{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:8px}.rv-step>span{font:600 11.5px var(--mono);color:var(--text-3);min-width:70px;text-align:center}.rv-step .btn.primary{margin-left:auto}.focus-flash polygon{stroke:var(--accent);stroke-width:6px;stroke-linejoin:round;animation:focus-flash .65s ease-in-out 4}@keyframes focus-flash{0%,to{stroke-opacity:.15;stroke-width:3px}50%{stroke-opacity:1;stroke-width:9px}}@media(prefers-reduced-motion:reduce){.focus-flash polygon{animation:none;stroke-opacity:.9}}.gains-panel{display:grid;gap:8px;padding:10px}.gains-total{font:800 14px var(--mono);color:var(--accent);margin-left:6px}.gains-level{border:2px solid var(--edge);border-radius:8px}.gains-level.off{opacity:.6}.gains-level-head{display:flex;align-items:center;gap:6px;padding:6px 8px}.gains-level-name{flex:1;min-width:0;display:flex;align-items:flex-start;gap:6px;text-align:left;background:none;border:0;color:var(--text);cursor:pointer;padding:0}.gains-chev{display:inline-flex;margin-top:2px;transition:transform .15s}.gains-level-text{display:grid;min-width:0}.gains-level-name b{font:800 13px var(--display);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gains-level-text>span{font:600 11px var(--mono);color:var(--text-3)}.gains-level-head .check{display:flex;align-items:center;gap:4px;font-size:12px;font-weight:700}.gains-level-body{display:grid;gap:6px;padding:4px 8px 10px;border-top:1px solid var(--edge)}.gains-fixture{display:grid;grid-template-columns:1fr 84px;gap:4px}.gains-result{display:grid;gap:2px;padding:6px 8px;border-radius:6px;background:var(--panel-2, rgba(255,255,255,.03))}.gains-result>div{display:flex;flex-wrap:wrap;justify-content:space-between;column-gap:8px;font-size:12px}.gains-result>div>:last-child{margin-left:auto;text-align:right}.gains-level-body .field-inline,.gains-level-body .field{min-width:0}.gains-result>div>span{color:var(--text-3)}.gains-result .hint{margin:4px 0 0}.totals-link{background:none;border:0;padding:0;font:inherit;color:inherit;cursor:pointer}.totals-link:hover b{text-decoration:underline}.gains-panel{min-width:0;overflow-x:hidden}.gains-panel>*,.gains-level-body>*,.gains-panel .site-card-main>*{min-width:0;overflow-wrap:anywhere}.gains-level-body .field>div{min-width:0}.gains-level-body .select,.gains-level-body select{width:100%;min-width:0;max-width:100%}.day-chart{margin:0;display:grid;gap:2px}.day-chart figcaption{display:flex;justify-content:space-between;gap:6px;flex-wrap:wrap;font:600 11px var(--mono);color:var(--text-3)}.day-chart figcaption b{color:var(--text)}.day-chart svg{width:100%;height:64px;display:block}.day-bar{fill:var(--accent)}.day-bar.peak{fill:var(--sand, #e2b04a)}.day-bar.plenum{fill:var(--accent);opacity:.35}.day-now{stroke:var(--sun, #ffb300);stroke-width:1.5;vector-effect:non-scaling-stroke}.day-tick{font:600 8px var(--mono);fill:var(--text-3)}:root{--sun-day: rgba(255, 196, 77, .55);--sun-night: rgba(70, 90, 140, .45)}.sun-slider{appearance:none;-webkit-appearance:none;height:6px;border-radius:3px;background:var(--sun-night)}.sun-slider::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;border-radius:50%;background:var(--sun, #ffb300);border:2px solid var(--panel);box-shadow:0 0 0 1px #0000004d;cursor:pointer}.sun-slider::-moz-range-thumb{width:12px;height:12px;border-radius:50%;background:var(--sun, #ffb300);border:2px solid var(--panel);cursor:pointer}.sun-gain{display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px;width:100%;text-align:left;padding:4px 6px;border-radius:6px;border:1px solid var(--edge);background:transparent;color:var(--text-2);font:600 11px var(--mono);cursor:pointer}.sun-gain b{color:var(--text)}.sun-gain span{flex-basis:100%;color:var(--text-3)}.sun-gain.night{border-color:#ffc97799;background:#ffc9771a;color:#ffd99a}.sun-gain.night b{color:#ffe3b3}.level-bar-title{background:none;border:0;padding:0;cursor:pointer}.level-bar-title:hover{color:var(--text)}.level-manage{width:min(560px,calc(100vw - 32px));max-height:min(70vh,640px);overflow:auto;gap:8px;padding:10px}.level-manage-head{display:grid;gap:2px}.level-manage-head b{font:800 14px var(--display)}.level-table{width:100%;border-collapse:collapse;font-size:12px}.level-table th{text-align:left;font:700 11px var(--sans);color:var(--text-3);padding:2px 4px}.level-table th.num,.level-table td.num{text-align:right}.level-table td{padding:2px 4px;vertical-align:middle}.level-table td:first-child{width:40%}.level-table td.num .input-wrap{width:118px;margin-left:auto}.level-table tr.on td{background:var(--c-sel-soft)}.level-table tr.on td:first-child{border-radius:6px 0 0 6px}.level-table tr.on td:last-child{border-radius:0 6px 6px 0}.level-table .mono{font-family:var(--mono);color:var(--text-3)}.level-manage .level-reflow{border-top:1px solid var(--edge);padding-top:8px}.equip-level{display:grid;gap:2px}.equip-level-head{display:flex;justify-content:space-between;font:700 12px var(--sans);color:var(--text-2);padding-top:4px}.equip-level-head span{font:700 12px var(--mono);color:var(--text)}.equip-row{display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:6px;padding:4px 6px;border:0;border-radius:6px;background:none;color:var(--text);text-align:left;cursor:pointer;font-size:12px}.equip-row:hover{background:var(--c-sel-soft)}.equip-tag{font:800 10px var(--mono);color:#e5533d;border:1px solid rgba(229,83,61,.6);border-radius:4px;text-align:center;padding:1px 0}.equip-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.equip-kw{font:700 11px var(--mono)}.zone-people{display:grid;gap:6px;padding-top:6px;border-top:1px solid var(--edge)}.zone-people-w{display:grid;grid-template-columns:1fr 1fr;gap:4px}.sel-toolbar{position:absolute;z-index:6;transform:translate(-50%);display:flex;align-items:center;gap:1px;padding:3px;background:var(--panel);border:2px solid var(--edge);border-radius:9px;box-shadow:0 3px 0 var(--edge),0 12px 24px -10px var(--drop);pointer-events:auto}.sel-toolbar .btn{width:30px;height:28px;padding:0;justify-content:center}.sel-toolbar .btn.danger:hover{color:var(--danger, #e5533d)}.sel-sep{width:1px;height:18px;background:var(--edge);margin:0 3px}.sel-count{font:700 11px var(--mono);color:var(--text-3);padding:0 4px 0 2px}.sel-count:empty{display:none}.sel-align{position:relative;display:inline-flex}.sel-align .btn:first-child{width:38px;gap:1px}.sel-align-pop{position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%);display:flex;gap:1px;padding:3px;background:var(--panel);border:2px solid var(--edge);border-radius:8px;box-shadow:0 3px 0 var(--edge)}.settings-btn{gap:6px}.settings-av{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--brand);color:var(--accent-ink);font:800 9.5px var(--display);letter-spacing:0}.settings-modal{width:min(1120px,96vw);height:min(820px,92vh);display:flex;flex-direction:column}.settings-modal .modal-h{gap:12px}.set-saved{margin-left:auto;display:inline-flex;align-items:center;gap:5px;font:600 11.5px var(--sans);color:var(--text-3);letter-spacing:0}.set-body{flex:1;min-height:0;display:grid;grid-template-columns:240px 1fr}.set-nav{padding:12px;border-right:2px solid var(--line-soft);display:flex;flex-direction:column;gap:4px;background:var(--panel-2);border-bottom-left-radius:8px}.set-tab{display:flex;gap:10px;align-items:flex-start;text-align:left;padding:10px 12px;border:0;border-radius:6px;background:transparent;color:var(--text-2, var(--text));cursor:pointer;font:inherit}.set-tab svg{margin-top:2px;flex:none;color:var(--text-3)}.set-tab b{display:block;font:700 13px var(--sans);color:var(--text)}.set-tab small{display:block;font-size:11px;color:var(--text-3);margin-top:2px;line-height:1.3}.set-tab:hover{background:var(--panel-3)}.set-tab.active{background:var(--panel);box-shadow:inset 3px 0 0 var(--brand),0 2px 0 var(--line-soft)}.set-tab.active svg{color:var(--accent)}.set-main{overflow:auto;padding:18px 22px 28px}.set-stack{display:grid;gap:14px;max-width:760px}.set-card{background:var(--panel);border:1.5px solid var(--line-soft);border-radius:8px;padding:14px 16px;display:grid;gap:2px}.set-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:8px}.set-card h3{margin:0;font:800 14px var(--display);letter-spacing:-.01em}.set-card header p{margin:3px 0 0;font-size:12px;color:var(--text-3);line-height:1.4}.set-row{display:grid;grid-template-columns:minmax(170px,40%) 1fr;gap:12px;align-items:center;padding:7px 0;border-top:1px solid var(--line-soft)}.set-row:first-of-type{border-top:0}.set-row>span:first-child b{font:600 12.5px var(--sans);color:var(--text);display:block}.set-row>span:first-child small{display:block;font-size:11px;color:var(--text-3);line-height:1.35;margin-top:2px}.set-ctl{min-width:0}.set-ctl .select,.set-ctl .input,.set-ctl .input-wrap{width:100%}.set-pair,.set-opt{display:grid;grid-template-columns:1fr 1fr;gap:8px}.set-opt:has(>:only-child){grid-template-columns:1fr}.set-check{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;cursor:pointer}.set-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:6px}.set-note{margin:6px 0 0;font-size:12px;padding:8px 10px;border-radius:6px}.set-note.ok{background:var(--accent-soft);color:var(--text)}.set-note.bad{background:#d656401f;color:var(--text)}.set-hint{font-size:11.5px;color:var(--text-3);margin:8px 0 0}.set-hint .link{background:none;border:0;padding:0;color:var(--accent);font:inherit;font-weight:700;cursor:pointer;text-decoration:underline}.set-banner{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:8px;background:var(--accent-soft);font-size:12.5px;line-height:1.4}.set-banner>span{flex:1}.set-avatar-row{display:flex;align-items:center;gap:12px;padding:4px 0 10px}.set-avatar{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--brand);color:var(--accent-ink);font:800 17px var(--display);box-shadow:0 3px 0 var(--brand-deep)}.set-avatar-row b{display:block;font:700 14px var(--sans)}.set-avatar-row small{color:var(--text-3);font-size:12px}.set-lib{display:grid;grid-template-columns:280px 1fr;gap:18px;align-items:start}.set-lib-list{position:sticky;top:0;display:grid;gap:8px;background:var(--panel);border:1.5px solid var(--line-soft);border-radius:8px;padding:10px;max-height:calc(92vh - 140px);overflow:auto}.set-seg{display:grid;grid-template-columns:1fr 1fr;gap:3px;padding:3px;border-radius:6px;background:var(--panel-2)}.set-seg button{border:0;background:transparent;padding:6px;border-radius:5px;font:700 12px var(--sans);color:var(--text-3);cursor:pointer}.set-seg button.on{background:var(--panel);color:var(--text);box-shadow:0 1px 0 var(--line)}.set-lib-new{display:grid;grid-template-columns:1fr auto;gap:6px}.set-lib-new:has(>:only-child){grid-template-columns:1fr}.set-lib-groups{display:grid;gap:2px}.set-lib-h{font:700 10.5px var(--sans);text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);padding:8px 4px 3px}.set-lib-item{display:flex;justify-content:space-between;align-items:center;gap:8px;width:100%;text-align:left;padding:7px 8px;border:0;border-radius:5px;background:transparent;color:var(--text);font:12.5px var(--sans);cursor:pointer}.set-lib-item:hover{background:var(--panel-2)}.set-lib-item.on{background:var(--accent-soft);box-shadow:inset 3px 0 0 var(--brand)}.set-lib-item.static{cursor:default}.set-lib-item em{margin-left:6px;font:700 9.5px var(--sans);font-style:normal;text-transform:uppercase;color:var(--accent)}.set-lib-item small{color:var(--text-3);font:11px var(--mono, monospace);white-space:nowrap}.set-lib-item .swatch{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:7px;vertical-align:-1px}.set-lib-empty{font-size:11.5px;color:var(--text-3);padding:2px 8px 6px}.set-lib-edit{min-width:0}.set-empty{display:grid;justify-items:center;gap:10px;text-align:center;padding:60px 30px;border:2px dashed var(--line-soft);border-radius:10px;color:var(--text-3)}.set-empty h3{margin:0;color:var(--text);font:800 16px var(--display)}.set-empty p{margin:0;max-width:420px;font-size:13px;line-height:1.5}.set-layers{width:100%;border-collapse:collapse;font-size:12px}.set-layers th{text-align:left;font:700 10.5px var(--sans);text-transform:uppercase;letter-spacing:.05em;color:var(--text-3);padding:4px 4px 6px}.set-layers td{padding:3px 4px;vertical-align:middle}.set-layers td .select,.set-layers td .input,.set-layers td .input-wrap{width:100%}.set-layers td.num{font-family:var(--mono, monospace);color:var(--text-3);text-align:right;width:44px}.set-layer-btns{white-space:nowrap;display:flex;gap:3px}.set-color{width:34px;height:26px;border:0;padding:0;background:none;cursor:pointer}.set-thermal{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:8px}.set-thermal>div{border:1.5px solid var(--line-soft);border-radius:8px;padding:10px 12px;display:grid;gap:2px}.set-thermal>div.on{border-color:var(--brand);background:var(--accent-soft)}.set-thermal small{font-size:11px;color:var(--text-3)}.set-thermal b{font:800 20px var(--display);letter-spacing:-.02em}.set-thermal span{font:12px var(--mono, monospace);color:var(--text-3)}@media(max-width:900px){.set-body{grid-template-columns:1fr}.set-nav{flex-direction:row;overflow-x:auto;border-right:0;border-bottom:2px solid var(--line-soft);border-radius:0}.set-tab small{display:none}.set-lib{grid-template-columns:1fr}.set-lib-list{position:static;max-height:none}.set-row{grid-template-columns:1fr;gap:4px}}.set-layers{table-layout:fixed}.set-layers th:nth-child(1){width:40%}.set-layers th:nth-child(2){width:22%}.set-layers th:nth-child(3){width:17%}.set-layers th:nth-child(4){width:7%}.set-layers th:nth-child(5){width:7%}.set-layers th:nth-child(6){width:92px}.set-lib-edit .set-stack{max-width:none}.sel-totals{display:inline-flex;flex-direction:column;align-items:flex-end;line-height:1.05;padding:0 8px 0 6px;white-space:nowrap}.sel-totals b{font:800 12.5px var(--mono);color:var(--text)}.sel-totals span{font:600 10.5px var(--mono);color:var(--text-3)}.sel-toolbar .btn.sel-combine{width:auto;padding:0 10px;gap:5px;font-weight:700;--b: var(--brand);--b-edge: var(--brand-deep);color:var(--accent-ink);box-shadow:0 2px 0 var(--brand-deep);animation:sel-combine-pulse 1.4s ease-in-out infinite}.sel-toolbar .btn.sel-combine:disabled{animation:none;--b: var(--panel-2);color:var(--text-3);box-shadow:none}@keyframes sel-combine-pulse{0%,to{box-shadow:0 2px 0 var(--brand-deep),0 0 #00ccc58c}50%{box-shadow:0 2px 0 var(--brand-deep),0 0 0 6px #7cb34200;filter:brightness(1.08)}}@media(prefers-reduced-motion:reduce){.sel-toolbar .btn.sel-combine{animation:none}}.psy-modal{width:min(1320px,97vw);height:min(860px,94vh);display:flex;flex-direction:column}.psy-modal .modal-h{gap:14px}.psy-sub{font:600 11.5px var(--mono);color:var(--text-3);margin-left:8px;letter-spacing:0}.psy-layers{margin-left:auto;display:flex;gap:12px;font:600 12px var(--sans);color:var(--text-2, var(--text));letter-spacing:0}.psy-layers label{display:inline-flex;gap:5px;align-items:center;cursor:pointer}.psy-body{flex:1;min-height:0;display:grid;grid-template-columns:1fr 380px}.psy-chart{display:flex;flex-direction:column;min-width:0;padding:10px 6px 8px 12px}.psy-chart svg{flex:1;min-height:0;width:100%;cursor:crosshair;-webkit-user-select:none;user-select:none;touch-action:none}.psy-air{fill:var(--panel)}.psy-grid{stroke:var(--line-soft);stroke-width:.6}.psy-grid.major{stroke:var(--line);stroke-width:.9}.psy-sat{fill:none;stroke:var(--text);stroke-width:2}.psy-rh{fill:none;stroke:#2f8fdd;stroke-width:.9;opacity:.75}.psy-h{fill:none;stroke:#d9a21b;stroke-width:.8;opacity:.75}.psy-wb{fill:none;stroke:#5e9e2e;stroke-width:.8;stroke-dasharray:4 3;opacity:.8}.psy-v{fill:none;stroke:#8a5cd6;stroke-width:.8;opacity:.6}.psy-frame{stroke:var(--text-3);stroke-width:1}.psy-lbl{font:600 9.5px var(--mono);pointer-events:none}.psy-lbl.rh{fill:#2f8fdd}.psy-lbl.h{fill:#b9850c}.psy-lbl.wb{fill:#4b8424}.psy-lbl.v{fill:#8a5cd6}.psy-lbl.line{fill:var(--text);font-size:10.5px;font-weight:700;paint-order:stroke;stroke:var(--panel);stroke-width:3px}.psy-axis{font:600 10px var(--mono);fill:var(--text-3)}.psy-axis-t{font:700 11px var(--sans);fill:var(--text-2, var(--text))}.psy-line{color:var(--text)}.psy-line line{stroke:var(--text);stroke-width:2.2}.psy-mixline{stroke:var(--text-3);stroke-width:1.2;stroke-dasharray:5 4}.psy-pt{stroke:var(--panel);stroke-width:2;cursor:grab}.psy-pt.mix{cursor:pointer}.psy-pt.sel{stroke:var(--text);stroke-width:2.5}.psy-pt-lbl{font:800 12px var(--display);fill:var(--text);paint-order:stroke;stroke:var(--panel);stroke-width:3px;pointer-events:none}.psy-cross{stroke:var(--text-3);stroke-width:.8;stroke-dasharray:3 3}.psy-hover{fill:var(--text)}.psy-readout{display:flex;flex-wrap:wrap;gap:4px 14px;padding:8px 6px 0;font:12px var(--mono);color:var(--text-3);min-height:26px}.psy-readout b{color:var(--text);font-weight:800}.psy-hint{font-family:var(--sans)}.psy-side{border-left:2px solid var(--line-soft);overflow:auto;padding:12px 14px 16px;display:grid;gap:14px;align-content:start;background:var(--panel-2);border-bottom-right-radius:8px}.psy-side h4{margin:0 0 6px;font:800 12px var(--display);text-transform:uppercase;letter-spacing:.06em;color:var(--text-3)}.psy-side small{font-size:11px;color:var(--text-3)}.psy-row{display:flex;gap:6px;align-items:center;margin-bottom:4px}.psy-presets{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:8px}.psy-point{background:var(--panel);border:1.5px solid var(--line-soft);border-radius:7px;padding:8px;margin-bottom:6px;display:grid;gap:6px}.psy-point.sel{border-color:var(--brand);box-shadow:0 0 0 2px var(--accent-soft)}.psy-point-h{display:grid;grid-template-columns:auto 1fr auto;gap:6px;align-items:center}.psy-point-h:not(:has(.psy-chip)){grid-template-columns:1fr auto}.psy-chip{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 4px;border-radius:6px;color:#fff;font:800 11px var(--display)}.psy-inputs{display:grid;grid-template-columns:1fr 1fr;gap:6px}.psy-inputs:has(>:nth-child(3)){grid-template-columns:1fr 1fr 1fr}.psy-inputs label{display:grid;gap:3px;font:600 10.5px var(--sans);color:var(--text-3)}.psy-inputs .select,.psy-inputs .input-wrap,.psy-inputs .input{width:100%}.psy-props{display:grid;grid-template-columns:repeat(4,auto);gap:2px 10px;font:11px var(--mono);color:var(--text-3)}.psy-props b{color:var(--text)}.psy-loads{grid-template-columns:repeat(3,auto)}.psy-foot{display:flex;justify-content:flex-end}@media(max-width:1000px){.psy-body{grid-template-columns:1fr}.psy-side{border-left:0;border-top:2px solid var(--line-soft);max-height:45vh}}.psy-menu{z-index:120}.ctx-menu>button.psy-menu-sub{padding-left:22px;font-size:12px}.psy-menu .psy-chip{min-width:18px;height:18px;font-size:10px}.sel-toolbar .btn.sel-uncombine{width:auto;padding:0 10px;gap:5px;font-weight:700}.unzoned-input{width:100%;resize:vertical;font:12px var(--sans);line-height:1.4;min-height:54px}.elev-modal{width:min(1380px,97vw);height:min(880px,94vh);display:flex;flex-direction:column}.elev-body{flex:1;min-height:0;display:grid;grid-template-columns:1fr 330px}.elev-main{display:flex;flex-direction:column;min-width:0;padding:12px;gap:10px}.elev-svg{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;border:1.5px solid var(--line-soft);border-radius:8px;overflow:hidden;background:#f4f6f8}.elev-svg svg{width:100%;height:100%}.elev-empty{flex:1;display:grid;place-items:center;color:var(--text-3);border:2px dashed var(--line-soft);border-radius:8px;padding:30px;text-align:center}.elev-thumbs{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.elev-thumb{display:grid;grid-template-columns:1fr auto;grid-template-rows:70px auto;gap:2px 6px;padding:6px;border:1.5px solid var(--line-soft);border-radius:7px;background:var(--panel);cursor:pointer;text-align:left;font:inherit;color:var(--text)}.elev-thumb>span{grid-column:1 / -1;display:block;overflow:hidden;border-radius:4px}.elev-thumb>span svg{width:100%;height:100%}.elev-thumb b{font:700 12px var(--sans)}.elev-thumb small{font:600 10.5px var(--sans);color:var(--text-3);align-self:center}.elev-thumb small.lit{color:#b9850c}.elev-thumb.on{border-color:var(--brand);box-shadow:0 0 0 2px var(--accent-soft)}.elev-side{border-left:2px solid var(--line-soft);padding:12px 14px 16px;overflow:auto;display:grid;gap:16px;align-content:start;background:var(--panel-2);border-bottom-right-radius:8px}.elev-side h4{margin:0 0 6px;font:800 12px var(--display);text-transform:uppercase;letter-spacing:.06em;color:var(--text-3)}.elev-presets{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:6px}.elev-date{display:flex;gap:8px;align-items:center;font:600 11.5px var(--sans);color:var(--text-3)}.elev-date .input{flex:1}.elev-time{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center}.elev-time input[type=range]{width:100%;accent-color:var(--brand)}.elev-time b{font:800 13px var(--mono)}.elev-sunread{margin-top:6px;font-size:12.5px;display:grid;gap:2px}.elev-sunread small{color:var(--text-3);font-size:11px}.elev-strip{display:grid;gap:3px;width:100%;padding:6px 8px;margin-bottom:4px;border:1.5px solid var(--line-soft);border-radius:6px;background:var(--panel);cursor:pointer;font:inherit;color:var(--text);text-align:left}.elev-strip.on{border-color:var(--brand)}.elev-strip-h{display:flex;justify-content:space-between;gap:8px}.elev-strip-h b{font:700 12px var(--sans)}.elev-strip-h small{font:11px var(--mono);color:var(--text-3)}.elev-strip svg{width:100%;height:16px;background:var(--panel-2);border-radius:3px}.elev-note{display:block;color:var(--text-3);font-size:10.5px;line-height:1.4;margin-top:4px}.elev-key{display:grid;grid-template-columns:1fr 1fr;gap:4px 10px;font-size:11.5px}.elev-key h4{grid-column:1 / -1}.elev-key span{display:flex;align-items:center;gap:6px}.elev-key i{width:14px;height:10px;border-radius:2px;border:1px solid rgba(0,0,0,.15);display:inline-block}@media(max-width:1000px){.elev-body{grid-template-columns:1fr}.elev-side{border-left:0;border-top:2px solid var(--line-soft);max-height:40vh}}.elev-svg-vp{width:100%;height:100%;display:block;touch-action:none;-webkit-user-select:none;user-select:none}.elev-svg-vp.aligning,.elev-svg-vp.drawing{cursor:crosshair}.elev-svg-vp.moving{cursor:move}.elev-svg-vp.panning{cursor:grabbing}.elev-tools{position:absolute;top:48px;left:10px;z-index:5;display:flex;flex-direction:column;gap:4px;padding:4px;background:var(--panel);border-radius:8px;box-shadow:0 3px 0 var(--edge)}.elev-tools .btn{width:32px;height:30px;padding:0;justify-content:center}.elev-vp-tools{align-items:center;flex-wrap:wrap;justify-content:flex-end;max-width:calc(100% - 200px)}.elev-vp-tools input[type=range]{width:80px;accent-color:var(--brand)}.elev-tabs{display:inline-flex;gap:3px}.elev-tabs .btn{min-width:30px;justify-content:center;font-weight:800}.elev-h{fill:var(--c-handle, #fff);stroke:var(--c-sel);stroke-width:2px;vector-effect:non-scaling-stroke}.elev-h.ew{cursor:ew-resize}.elev-h.ns{cursor:ns-resize}.elev-hint{position:absolute;bottom:12px;left:50%;transform:translate(-50%);z-index:5;padding:6px 12px;border-radius:6px;background:var(--panel);box-shadow:0 3px 0 var(--edge);font:600 12px var(--sans);color:var(--text-2, var(--text));pointer-events:none;white-space:nowrap}.zone-design{display:grid;gap:6px;margin-top:8px;padding-top:8px;border-top:2px solid var(--line-soft)}.zd-h{display:flex;justify-content:space-between;align-items:center;gap:8px}.zd-h b{font:800 11.5px var(--display);text-transform:uppercase;letter-spacing:.05em;color:var(--text-3)}.zd-pair{display:flex;gap:4px;align-items:center}.zd-pair .input-wrap,.zd-pair .select{flex:1;min-width:0}.zd-pair.own .input{color:var(--accent);font-weight:700}.zd-note{font:10.5px var(--mono);color:var(--text-3);white-space:nowrap}.zd-summary{display:flex;flex-wrap:wrap;gap:4px 10px;padding:8px;border-radius:6px;background:var(--panel-2);font-size:11.5px;color:var(--text-3)}.zd-summary b{color:var(--text)}.zd-total{flex-basis:100%;font-size:12.5px}.zd-warn{list-style:none;margin:0;padding:0;display:grid;gap:3px}.zd-warn li{display:flex;gap:6px;align-items:flex-start;font-size:11.5px;padding:5px 7px;border-radius:5px;line-height:1.35}.zd-warn li.warn{background:#f0b42929}.zd-warn li.error{background:#e5533d26}.zd-warn li.info{background:var(--accent-soft)}.zl-modal{width:min(1680px,98vw);height:min(900px,95vh);display:flex;flex-direction:column}.zl-modal .modal-h{gap:14px}.zl-filter{margin-left:auto;min-width:160px}.zl-defaults{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:8px 14px;border-bottom:2px solid var(--line-soft);background:var(--panel-2)}.zl-dlabel{font:800 11px var(--display);text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);margin-right:4px}.zl-chip{display:inline-flex;gap:5px;align-items:center;padding:4px 8px;border-radius:7px;font:700 11.5px var(--sans);border-left:4px solid;background:var(--panel)}.zl-chip .input-wrap{width:76px}.zl-chip .select{width:104px}.zl-chip.cool{border-color:#2f8fdd}.zl-chip.heat{border-color:#e5533d}.zl-chip.air{border-color:#1fa39a}.zl-chip.load{border-color:#d9a21b}.zl-table-wrap{flex:1;min-height:0;overflow:auto}.zl-table{border-collapse:separate;border-spacing:0;width:100%;font-size:12px}.zl-table th{position:sticky;top:0;z-index:2;background:var(--panel);text-align:left;font:700 10px var(--sans);color:var(--text-3);padding:5px 2px;border-bottom:1.5px solid var(--line);white-space:nowrap}.zl-table tr.zl-groups th{top:0;font:800 10.5px var(--display);text-transform:uppercase;letter-spacing:.05em;color:#fff;text-align:center;padding:4px}.zl-table thead tr:nth-child(2) th{top:23px}.zl-groups .g-zone{background:#5e6e7a}.zl-groups .g-indoor{background:#3b82c4}.zl-groups .g-air{background:#1d968d}.zl-groups .g-load{background:#c08f10}.zl-groups .g-res{background:#4d8a25}.zl-table td{padding:2px;border-bottom:1px solid var(--line-soft);white-space:nowrap}.zl-table td.num,.zl-table th.num{text-align:right;font-family:var(--mono)}.zl-table td .input-wrap{width:52px}.zl-table td .input{padding:3px 5px;font-size:12px}.zl-table td.g-indoor{background:#3b82c412}.zl-table td.g-air{background:#1d968d12}.zl-table td.g-load{background:#c08f1012}.zl-table td.g-res{background:#4d8a2512}.zl-table td.def .input{color:var(--text-3);font-style:italic}.zl-table td.own .input{color:var(--text);font-weight:700}.zl-table td.bad{box-shadow:inset 0 0 0 2px #e5533da6;background:#e5533d1a}.zl-name{cursor:pointer;display:flex;gap:6px;align-items:center;min-width:140px;max-width:190px}.zl-name i{width:10px;height:10px;border-radius:3px;flex:none}.zl-name span{overflow:hidden;text-overflow:ellipsis}.zl-name svg{color:#d98a00;flex:none}.zl-table tr.sel td{background:var(--accent-soft)!important}.zl-oa{display:inline-flex;gap:3px}.zl-oa .select{width:60px;padding:2px;font-size:10.5px}.zl-big{font-weight:800}.zl-table tfoot td{position:sticky;bottom:0;background:var(--panel-3);font-weight:700;border-top:2px solid var(--line);padding:7px 4px}.zl-warnbar{display:flex;align-items:center;gap:12px;padding:6px 12px;border-top:2px solid var(--line-soft)}.zl-warnbar.has .btn{color:#b26a00;font-weight:700}.zl-legend{margin-left:auto;display:flex;gap:10px;align-items:center;font-size:11px;color:var(--text-3)}.zl-legend i{width:14px;height:10px;border-radius:2px;display:inline-block;margin-right:2px}.zl-legend i.own{background:var(--text)}.zl-legend i.def{background:var(--line)}.zl-legend i.bad{box-shadow:inset 0 0 0 2px #e5533dcc}.zl-warnlist{list-style:none;margin:0;padding:4px 12px 10px;max-height:150px;overflow:auto;display:grid;gap:3px}.zl-warnlist li{display:flex;gap:6px;align-items:center;font-size:12px;padding:4px 8px;border-radius:5px;cursor:pointer}.zl-warnlist li.warn{background:#f0b42924}.zl-warnlist li.error{background:#e5533d21}.zl-table td .input{padding:3px 4px;font-size:11.5px}.zl-table td.num{font-size:11.5px}.lr-scroll{flex:1;min-height:0;overflow:auto;padding:10px 14px}.lr-detail{flex:0 0 auto;max-height:46%;overflow:auto;border-top:2px solid var(--line);padding:10px 14px;background:var(--panel)}.lr-pick{padding:6px 14px 10px}.lr-head{display:flex;flex-wrap:wrap;gap:4px 16px;align-items:baseline;font-size:12.5px;color:var(--text-2);margin-bottom:8px}.lr-head>b{font:800 14px var(--display);color:var(--text)}.lr-cols{display:grid;grid-template-columns:minmax(300px,1fr) minmax(360px,1.3fr);gap:16px;align-items:start}.lr-sub{font:800 11px var(--display);text-transform:uppercase;letter-spacing:.05em;color:var(--text-3);margin:10px 0 4px;display:flex;gap:8px;align-items:center}.lr-sub small{text-transform:none;letter-spacing:0;font:600 11px var(--sans)}.lr-dayh{justify-content:space-between}.lr-table{border-collapse:collapse;width:100%;font-size:12px}.lr-table th{text-align:left;font:700 10.5px var(--sans);color:var(--text-3);padding:3px 5px;border-bottom:1.5px solid var(--line);white-space:nowrap}.lr-table td{padding:3px 5px;border-bottom:1px solid var(--line-soft)}.lr-table .num{text-align:right;font-family:var(--mono);white-space:nowrap}.lr-table tr.lr-sum td{font-weight:700;border-top:1.5px solid var(--line)}.lr-surf td{white-space:nowrap}.lr-sw{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:6px;vertical-align:-1px}.lr-opk{background:#4d8a252e;border:1px solid rgba(77,138,37,.5)}.lr-max{list-style:none;margin:0;padding:0;display:grid;gap:2px;font-size:12px}.lr-max small{color:var(--text-3);margin-left:4px}.lr-chart{width:100%;height:auto;display:block}.lr-chart .lr-op{fill:#4d8a2517}.lr-chart .lr-grid{stroke:var(--line-soft);stroke-width:1}.lr-chart .lr-ax{font:10px var(--mono);fill:var(--text-3)}.lr-chart .lr-total{fill:none;stroke:var(--text);stroke-width:1.5}.lr-chart .lr-peak{fill:var(--accent);stroke:var(--panel);stroke-width:1.5}.lr-legend{display:flex;flex-wrap:wrap;gap:4px 10px;font-size:11px;color:var(--text-3);margin-top:4px}.lr-inputs{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:12px}.lr-prov{font:700 10px var(--sans);padding:1px 5px;border-radius:4px;margin-left:3px;background:var(--panel-2);color:var(--text-3);white-space:nowrap}.lr-prov.verified{background:#4d8a2526;color:#3f6f1f}.lr-prov.provisional{background:#f0b42933;color:#8a5a00}.lr-prov.estimated{background:#f0b4291f;color:#8a5a00}.lr-prov.missing,.lr-prov.invalid{background:#e5533d26;color:#a3311f}.lr-prov.overridden,.lr-prov.configured{background:var(--accent-soft);color:var(--accent)}.lr-note{font-size:11.5px;color:var(--text-3);margin:6px 0}.lr-systable td .select{width:132px;padding:2px 4px;font-size:11.5px}.lr-systable tr{cursor:pointer}.lr-sysd{margin-top:10px}.lr-sets{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:6px 14px;margin:8px 0}.lr-set{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:12px}.lr-set .select,.lr-set .input-wrap{width:170px}.lr-alist{list-style:none;margin:0;padding:0;display:grid;gap:3px;font-size:12px}.zl-name small.zl-room{color:var(--text-3);font-weight:600;margin-left:4px}.rp-modal{width:min(860px,96vw);max-height:90vh;display:flex;flex-direction:column}.rp-body{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:12px 16px;min-height:0;flex:1;overflow:hidden}.rp-col{display:flex;flex-direction:column;min-height:0}.rp-h{display:flex;gap:8px;align-items:center;margin-bottom:6px;font-size:12px;color:var(--text-3)}.rp-h b{font:800 11.5px var(--display);text-transform:uppercase;letter-spacing:.05em;color:var(--text-2);margin-right:auto}.rp-list{overflow:auto;max-height:56vh;display:grid;gap:2px;align-content:start;padding-right:4px}.rp-level{display:grid;gap:1px;margin-bottom:6px}.rp-lv,.rp-zone,.rp-sec{display:flex;gap:7px;align-items:center;font-size:12.5px;padding:4px 6px;border-radius:5px;cursor:pointer}.rp-lv:hover,.rp-zone:hover,.rp-sec:hover{background:var(--panel-2)}.rp-lv small,.rp-zone small{color:var(--text-3);margin-left:auto;font-size:11px}.rp-zone{padding-left:24px}.rp-zone i{width:10px;height:10px;border-radius:3px;flex:none}.rp-sec{align-items:flex-start}.rp-sec span{display:grid;gap:1px}.rp-sec small{color:var(--text-3);font-size:11px}.rp-modal.rp-wide{width:min(1560px,98vw)}.rp-wide .rp-body{grid-template-columns:minmax(220px,.8fr) minmax(240px,.9fr) 2.3fr}.rp-preview{min-width:0}.rp-frame{width:100%;height:66vh;border:1px solid var(--line);border-radius:8px;background:#f2f3f5}.rp-frame.stale{opacity:.55}.rp-wait{display:grid;place-items:center;color:var(--text-3);font-size:12.5px}.rp-stale{color:var(--warn);font-weight:700}.rp-foot{display:flex;justify-content:flex-end;gap:8px;padding:10px 16px;border-top:2px solid var(--line-soft)}.ws-scale{flex-wrap:wrap}.ws-note{margin:0 0 8px;font-size:12px;color:var(--accent)}.ws-keys{display:grid;gap:2px;margin-bottom:10px}.ws-keys h4{margin:6px 0 2px;font:800 11px var(--display);text-transform:uppercase;letter-spacing:.05em;color:var(--text-3)}.ws-key{display:grid;grid-template-columns:1fr 150px 30px;gap:8px;align-items:center;padding:3px 4px;border-radius:5px;font-size:12.5px}.ws-key:hover{background:var(--panel-2)}.ws-key-pad{width:30px}.kbd-btn{font:700 12px var(--mono);padding:4px 8px;border-radius:5px;border:1px solid var(--line);background:var(--panel-2);color:var(--text);cursor:pointer;text-align:center;box-shadow:0 2px 0 var(--edge)}.kbd-btn.own{border-color:var(--accent);color:var(--accent)}.kbd-btn.dupe{border-color:var(--warn);color:var(--warn)}.kbd-btn.capturing{border-color:var(--accent);background:var(--accent-soft);animation:proj-flash 1s ease-in-out infinite alternate}.set-actions{display:flex;justify-content:flex-end;padding-top:6px}.ws-colour{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}.ws-colour input[type=color]{width:34px;height:26px;padding:0;border:1px solid var(--line);border-radius:5px;background:none;cursor:pointer}.ws-swatch{width:22px;height:22px;border-radius:5px;border:1px solid var(--line);cursor:pointer;padding:0}.ws-swatch.on{outline:2px solid var(--accent);outline-offset:1px}.ws-angle{display:inline-flex;align-items:center;gap:8px}.ws-angle .num-input,.ws-angle input[type=number]{width:80px}.vp-backdrop{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:0;display:block}.vp-3d>div:has(>canvas:not(.vp-backdrop)){position:relative;z-index:1}.vp-backdrop-pick{display:inline-flex;gap:4px;align-items:center}.vp-backdrop-pick select{height:26px;font-size:12px;padding:0 6px;border-radius:var(--block-radius);border:1.5px solid var(--line);background:var(--panel);color:var(--text);box-shadow:0 3px 0 var(--edge-2),0 4px 10px -4px #00000059}.ws-colour-in,.ws-colour input[type=color]{width:34px;height:26px;padding:0;border:1px solid var(--line);border-radius:5px;background:none;cursor:pointer}.ws-grad{width:90px;height:14px;border-radius:4px;border:1px solid var(--line)}.vp-sky-credit{position:absolute;left:8px;bottom:30px;z-index:6;font:600 10px var(--sans);color:#ffffffeb;text-shadow:0 1px 2px rgba(0,0,0,.6);text-decoration:none;max-width:60%}.vp-sky-credit:hover{text-decoration:underline}.vp-sky-note{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:6;font:600 12px var(--sans);color:var(--text-2)}.viewports>.split-divider{position:absolute;top:0;bottom:0;width:12px;z-index:8;cursor:col-resize;overflow:visible;background:none;box-shadow:none;border-radius:0;touch-action:none;display:grid;place-items:center}.split-divider span{width:4px;height:44px;border-radius:3px;background:var(--edge-2);box-shadow:0 0 0 1.5px var(--panel);transition:background .15s ease,height .15s ease}.split-divider:hover span,.split-divider:focus-visible span,.dragging-split .split-divider span{background:var(--brand);height:72px}.split-divider:focus-visible{outline:none}.dragging-split,.dragging-split *{cursor:col-resize!important;-webkit-user-select:none!important;user-select:none!important}.dragging-split canvas,.dragging-split svg{pointer-events:none}.vp-night{position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(180deg,#050a18,#0b1630 60%,#142240);transition:opacity .4s ease}.cov-card{display:grid;gap:8px;padding:10px;border:1.5px solid var(--line);border-radius:8px;background:var(--panel-2)}.cov-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.cov-head b{font:700 10.5px var(--mono);text-transform:uppercase;letter-spacing:.1em;color:var(--text-2)}.cov-chip{display:inline-flex;align-items:center;gap:4px;font:700 10px var(--mono);padding:2px 7px;border-radius:10px;text-transform:uppercase;letter-spacing:.04em}.cov-chip.ok,.cov-chip.info{background:#7cb3422e;color:var(--ok)}.cov-chip.warn{background:#ffcc8059;color:var(--warn)}.cov-chip.error{background:#e5533d29;color:var(--bad)}.cov-grid{display:grid;grid-template-columns:112px 1fr;gap:4px 8px;margin:0;font-size:12px}.cov-grid dt{color:var(--text-3)}.cov-grid dd{margin:0}.cov-issues{margin:0;padding:0;list-style:none;display:grid;gap:4px;font-size:12px}.cov-issues li{display:flex;gap:6px;align-items:flex-start}.cov-issues li.error{color:var(--bad)}.cov-issues li.warn{color:var(--warn)}.cov-items{margin:0;padding:0;list-style:none;display:grid;gap:2px;font-size:12px}.cov-items li{display:grid;grid-template-columns:auto 1fr;gap:6px;align-items:center}.cov-items li>span{color:var(--text-2)}.cov-sub{font:700 10.5px var(--mono);text-transform:uppercase;letter-spacing:.06em;margin-top:4px}.cov-sub.error{color:var(--bad)}.cov-sub.warn{color:var(--warn)}.cov-toggle{display:flex;gap:6px;align-items:center;font-size:12px}.login{min-height:100%;display:grid;place-items:center;padding:24px 16px;box-sizing:border-box;background:var(--bg)}.login-card{width:100%;max-width:380px;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:28px 24px;box-sizing:border-box}.login-logo{height:28px;margin-bottom:20px}.login h1{font-size:20px;margin:0 0 16px;color:var(--text)}.login form{display:flex;flex-direction:column;gap:12px}.login label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;color:var(--text-2)}.login .input{font-size:16px}.login .btn.primary{justify-content:center;margin-top:4px;text-decoration:none}.login-note{font-size:13px;color:var(--text-3);margin:0}.login-error{font-size:13px;color:var(--bad);margin:0}.login-link{background:none;border:0;padding:4px 0;color:var(--accent);font:inherit;font-size:13px;cursor:pointer;align-self:flex-start}.login-link:hover{text-decoration:underline}
