@font-face{font-family:Instrument Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/assets/instrument-sans-latin-ext-wght-normal-B5bTHO_g.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Instrument Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/assets/instrument-sans-latin-wght-normal-BbzFLZTg.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,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+460-52F,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+301,U+400-45F,U+490-491,U+4B0-4B1,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+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,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)format("woff2"),url(/assets/jetbrains-mono-vietnamese-400-normal-CqNFfHCs.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,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+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,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,d09GRgABAAAAAAbQAA8AAAAACMAAAQABAAAAAAAAAAAAAAAAAAAAAAAAAABHREVGAAABWAAAABgAAAAcABQABEdQT1MAAAFwAAAAHgAAAB5EdEx1R1NVQgAAAZAAAAAnAAAAKLj8uOpPUy8yAAABuAAAAFEAAABgF2hca1NUQVQAAAIMAAAAPQAAAEzpM8woY21hcAAAAkwAAABRAAAAdAyHCodnYXNwAAACoAAAAAgAAAAIAAAAEGdseWYAAAKoAAAB8AAAAl604cJFaGVhZAAABJgAAAA2AAAANhSS8UNoaGVhAAAE0AAAAB8AAAAkAcwBEGhtdHgAAATwAAAAHwAAADoe/QLmbG9jYQAABRAAAAAgAAAAIATcBZ9tYXhwAAAFMAAAABwAAAAgAIcCb25hbWUAAAVMAAABEwAAAmo0OV08cG9zdAAABmAAAABwAAAAlNdzMTB42mNgZGBg4GGAAEYgZAWTjCAeAAG0ABkAAQAAAAoAHAAcAAFERkxUAAgABAAAAAD//wAAAAAAAHjaY2BkYGDgYlADQiYXN58QBqGcxJI8Bj4GEGABEf//g0gAWkkFVQB42mNgYYpi/MLAysDA1MUUwcDA4A2hGeMYjBgdgKIMDJwMUMDEzoAEvJyAxAEGXpaXzH/+XWFgYP7DqKPAwDj//nWgSjWmW0BZBQZWADbPDjoAAAB42gXBsQ1AABQFwHsfiY5CYQBDaVVIlBL7mckA7kT0CpPCop79uIPz3q4MojUrSJePvNSKRlRGEH74hwYNAAAAeNpVyEcBwkAQBdCXHnoVgJU44Y4pFIAFUAOJiS23ZOZ3lKhwVSlkr91xdlQp7dwMnr5FWb/rMQQW26v+h3xT+IRHGEIBCvNr9Wh0OUU7NxUUAAAAAAEAAf//AA942mzQNZTUQAAG4H9mIDlbySoOt5I9HHZiL+vS4VDh7u40OFRo3+FQ464V7tbiUmHdJczicsm4fe/9YBgDEIc+BYOEeoArzUqyWSGkeQzZ6+wmfZwLot6nT1vVNM04oBlQ9AZoX3FHhh/gQR6Mp+JykKdUNSVJcu9T20/N73OrT3F/2qMw5vfWLp88SQL3rFE+3ygTrvv9BXaMqiCAkD3d2lr1ipagK4QqNDHjCuPBSCRqGGaQM+XLk0XrPX5GlaY1i54QD7nhvO/c3+Pp35mEHO58dN2fd6mEdgAYRrhfqEyfi7ei6AG0j6m6ohk8HQkrIUlKpQ1dj4dDEcZ1TY3HpDDpM3PZspkzl+lTqlbmZUYUy8o0LJtKSlOXLp3qnC9N1ieU7FWr7BIZPssuFm1hpt3BVBW/yPMPcwAUdEL8m6nqumbU1Eg4/Ceb+s2WpxrG1HKtnVKxcm9zolhWrkGbVN5RmqQJdGdpkj6ukGluzhTed7ULBRvkp4wAENVFUt1oNGrmaS2r8JcrCxfJjXWUUCo3yvMXXDlyhKrO3mhLj/qGhvoeLREyvvXpEYDgGutFDrFjYEDQ5PK1OcsWs15bt4JgM0uQe2LHAxCRHA9FeNoQnUS+Tsc7JkRXVV03JIZZJcBJRUdHxSmAAQCFZYU3AAEAAAACNgQJCtdkXw889QADA+gAAAAA29KmmgAAAADb2tDy+Tv+1ASSA/wAAAAGAAIAAAAAAAB42mNgZGBg/vPvCgMDy4af1n9rWSYBRVABHwCudAbaAHjaY4pgiAJibSQsC8WBQGyERDNAMQicZmgFAOeFB/4AAAAAGgA7AEYAUQBvAHcAqQCxAOYBCQEJAQkBCQEWAS942mNgZGBg4GfcwZDHsIWBDcxDAGYGJgAtGgH4eNqM0IFGQ2EUB/DfqqJMBZLAFUh0V0MoUBGllKQArHVtN9vu3HuH3iEAPUJP0cP0BD1D3D6zKQqHH9/5n885qHs1qza3iPfaenDNts/gGcs+gmcdeAuem+iZt+EleMGWx+Bl++Jv16jbDJ5Xtxa8om4peNUSbmT6WgbOlFp6Um2XEo9SI333EqmOrrKq0lDhQENDoS2XGioVYoVUTyyT62i4curCuUTpWK4lNVC4lBnI7Ez9dCeRK6TVa6Qp1rRnb0KHzh07/PfMG4mOkZ6W/JdUNM5FU7kTmaFn+Xj3SNNuVZFbXYnoj3nXcpkniXaVPzKqbpjJq86tH/fsSKuOkQextkzf1/Sx2KKPx/+aADN1XKsAeNpjYGIAg/+pDEZAipEBHfADsQrDSUYmBhtGZkYWRlZGNkZ2BmZGDkZORi5GbjbHpKLUslT20rxMAxNHVwjtagHlu0H5lqzpibm5iWCegaMBk3MQX2JyaUlqcn5ukl5yYnEqD0jG2MAMzAEAoO0cmA==)format("woff");unicode-range:U+460-52F,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+301,U+400-45F,U+490-491,U+4B0-4B1,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+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(data:font/woff2;base64,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)format("woff2"),url(/assets/jetbrains-mono-vietnamese-500-normal-DNRqzVM1.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,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+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}*,:before,:after,::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border:0 solid #e5e7eb}:before,:after{--tw-content:""}html,:host{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5}body{line-height:inherit;margin:0}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-feature-settings:normal;font-variation-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-feature-settings:inherit;font-variation-settings:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:#0000;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{margin:0;padding:0;list-style:none}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder{opacity:1;color:#9ca3af}textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root{--font-sans:"Instrument Sans Variable", "Instrument Sans", ui-sans-serif, system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--text-2xs:11px;--text-xs:12px;--text-sm:13px;--text-base:14px;--text-md:16px;--text-lg:20px;--text-xl:28px;--text-hero:clamp(32px, 5vw, 56px);--w-regular:400;--w-medium:500;--w-semibold:600;--lh-tight:1.2;--lh-ui:1.4;--lh-prose:1.6;--track-tight:-.01em;--track-normal:0;--track-caps:.04em}html{font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--lh-ui);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-feature-settings:"ss01", "cv11"}body{color:#e5e7eb;background:#07080c;margin:0}*{box-sizing:border-box}button,select,input{font:inherit}code,pre,.mono,.num,.timer,.token-count{font-family:var(--font-mono)}.num,table,.timer,.token-count{font-variant-numeric:tabular-nums}.canvas-app{color:#e5e7eb;background:#07080c;height:100vh;overflow:hidden}.floating-heading,.floating-actions{z-index:10;position:fixed}.floating-heading{background:radial-gradient(#55709b1f,#0000 72%);top:28px;left:34px}.eyebrow,.execution-mark,.metric,.run-state,.workflow-picker>span,.provider-picker>span{color:#8993a6;font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:var(--w-regular);letter-spacing:var(--track-caps)}.floating-heading h1{color:#f4f6fa;font-size:var(--text-lg);font-weight:var(--w-semibold);line-height:var(--lh-tight);letter-spacing:var(--track-tight);margin:8px 0 5px}.floating-heading p{color:#8993a6;max-width:68ch;font-size:var(--text-xs);margin:0}.floating-actions{align-items:center;gap:9px;display:flex;top:25px;right:28px}.reset,.execute,.zoom-controls button,.workflow-action,.view-toggle,.logbook-back,.close-inspector,.logbook-close{color:#b9c0ce;font-size:var(--text-sm);font-weight:var(--w-medium);line-height:var(--lh-ui);background:#11141b;border:1px solid #303746;border-radius:7px}.reset,.execute,.zoom-controls button,.workflow-action,.view-toggle,.logbook-back{padding:9px 12px}.execute{color:#f4f7fb;background:#242c3d;border-color:#43506a}.execute kbd{color:#8993a6;font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:var(--w-regular);margin-left:10px}.workflow-action{background:#11141b}.baseline-action{border-color:#754b2a}.protected-action{border-color:#245d4b}.reset:hover,.execute:hover,.workflow-action:hover,.view-toggle:hover,.view-toggle.active,.logbook-back:hover{color:#f4f6fa;border-color:#6f7f9e}.reset:disabled,.execute:disabled,.workflow-action:disabled{cursor:wait;opacity:.5}.workflow-picker,.provider-picker{align-items:center;gap:7px;display:flex}.workflow-picker select,.provider-picker select{color:#dce3ee;max-width:170px;font-size:var(--text-sm);font-weight:var(--w-medium);background:#151922;border:1px solid #303746;border-radius:7px;outline:none;padding:9px 25px 9px 10px}.provider-picker select{max-width:150px}.provider-status{color:#8b98aa;font-family:var(--font-mono);font-size:var(--text-2xs);white-space:nowrap;border:1px solid #303746;border-radius:999px;align-items:center;gap:6px;padding:5px 7px;display:inline-flex}.provider-status i,.status-dot{background:#8993a6;border-radius:50%;width:6px;height:6px}.provider-status.ready{color:#43d391;border-color:#286b4e}.provider-status.ready i{background:#43d391}.provider-status.missing{color:#f59e0b;border-color:#76521b}.provider-status.missing i{background:#f59e0b}.provider-error{z-index:25;color:#f4bd65;max-width:360px;font-family:var(--font-mono);font-size:var(--text-2xs);line-height:var(--lh-prose);background:#21180d;border:1px solid #76521b;border-radius:8px;padding:10px 12px;position:fixed;top:83px;right:28px}.flow-viewport{cursor:grab;touch-action:none;position:absolute;inset:0 0 58px;overflow:hidden}.flow-viewport.panning{cursor:grabbing;-webkit-user-select:none;user-select:none}.flow-viewport:after{content:"";pointer-events:none;opacity:.7;background-image:radial-gradient(#222733 1px,#0000 1px);background-size:24px 24px;position:absolute;inset:0}.flow-world{transform-origin:0 0;width:2200px;height:1500px;position:absolute;top:0;left:0}.edge-layer{z-index:1;position:absolute;inset:0;overflow:visible}.graph-section{z-index:2;pointer-events:none;width:2100px;height:1380px;position:absolute;top:0;left:0}.section-label,.section-subtitle{position:absolute}.section-label{color:#f1f3f7;font-size:var(--text-sm);font-weight:var(--w-semibold)}.section-label:first-letter{color:#687287;font-family:var(--font-mono);font-size:var(--text-2xs)}.section-label span{margin-left:10px}.section-subtitle{color:#8993a6;font-size:var(--text-xs);margin:7px 0 0 29px}.section-run{color:#9aa6ba;font-family:var(--font-mono);font-size:var(--text-2xs);background:#151922;border:1px solid #303746;border-radius:5px;margin-left:14px;padding:4px 7px}.node-position,.graph-node{pointer-events:auto}.node-position{z-index:3;position:absolute}.graph-node{background:linear-gradient(145deg,#11151d,#0d1016);border:1px solid #1e222b;border-radius:12px;width:100%;height:100%;padding:13px 14px;transition:border-color .2s,box-shadow .2s,transform .2s;position:relative;box-shadow:0 12px 26px #0000003d}.graph-node:hover,.graph-node.selected{border-color:#5f6f8e;transform:translateY(-2px)}.graph-node.running{border-color:#eab308;box-shadow:0 0 0 1px #eab30838,0 12px 26px #0000003d}.graph-node.success{border-color:#22c55e;box-shadow:0 0 0 1px #22c55e33,0 12px 26px #0000003d}.graph-node.error,.graph-node.blocked{border-color:#ef4444;box-shadow:0 0 0 1px #ef444433,0 12px 26px #0000003d}.node-title,.tool-title{color:#f3f4f6;font-size:var(--text-sm);font-weight:var(--w-medium);line-height:var(--lh-tight);justify-content:space-between;align-items:center;display:flex}.status-pill{color:#8993a6;font-family:var(--font-sans);font-size:var(--text-2xs);font-weight:var(--w-semibold);letter-spacing:var(--track-caps);text-transform:uppercase;border:1px solid #303746;border-radius:999px;align-items:center;gap:5px;padding:3px 6px;display:inline-flex}.status-pill i{background:#5b6270;border-radius:50%;width:6px;height:6px}.running .status-pill{color:#38bdf8;border-color:#286d8f}.success .status-pill{color:#22c55e;border-color:#276b42}.error .status-pill{color:#ef4444;border-color:#74333a}.blocked .status-pill{color:#f59e0b;border-color:#76521b}.prompt-card,.output-card{color:#aeb8ca;font-family:var(--font-mono);font-size:var(--text-xs);line-height:var(--lh-prose);-webkit-line-clamp:3;background:#0d0f14;border:1px solid #292e39;border-radius:7px;-webkit-box-orient:vertical;margin-top:15px;padding:10px;display:-webkit-box;overflow:hidden}.prompt-card{height:65px}.output-card{height:56px;margin-top:14px}.detail-row{color:#778196;font-family:var(--font-mono);font-size:var(--text-xs);justify-content:space-between;align-items:center;margin-top:13px;display:flex}.detail-row b{color:#d7dce5;max-width:140px;font-weight:var(--w-regular);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.node-mcp{height:120px}.node-tool{height:54px;padding:10px 12px}.node-tool small,.node-generic small{color:#8993a6;max-width:68ch;font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;margin-top:9px;display:block;overflow:hidden}.node-caption{color:#8993a6;font-family:var(--font-mono);font-size:var(--text-xs);margin-top:18px}.handle{z-index:4;background:#5b6270;border:2px solid #07080c;border-radius:50%;width:10px;height:10px;position:absolute;transform:translate(-50%,-50%)}.handle-left{top:50%;left:0}.handle-right{top:50%;left:100%}.handle-top{top:0;left:50%}.handle-bottom{top:100%;left:50%}.tool-handle{top:100%}.tool-0{left:28.18%}.tool-1{left:45.45%}.tool-2{left:62.73%}.tool-3{left:80%}.output-handle{top:100%;left:75%}.llm-mcp-handle{top:30%}.llm-output-handle{top:70%}.inspector{z-index:20;background:linear-gradient(#11151dfa,#0a0c11fa);border-left:1px solid #2a3140;width:min(390px,42vw);padding:28px 24px;position:fixed;top:0;bottom:58px;right:0;overflow:auto;box-shadow:-18px 0 48px #00000059}.inspector-head{border-bottom:1px solid #252b37;justify-content:space-between;gap:16px;padding-bottom:20px;display:flex}.inspector h2{color:#f4f6fa;font-size:var(--text-lg);font-weight:var(--w-semibold);line-height:var(--lh-tight);letter-spacing:var(--track-tight);margin:7px 0 4px}.inspector-head p{color:#8993a6;font-family:var(--font-mono);font-size:var(--text-xs);margin:0}.close-inspector,.logbook-close{width:30px;height:30px;font-size:var(--text-md);padding:0;line-height:1}.inspector-status{color:#8993a6;font-family:var(--font-mono);font-size:var(--text-xs);border-bottom:1px solid #252b37;align-items:center;gap:10px;padding:16px 0;display:flex}.activity-list{gap:12px;padding-top:18px;display:grid}.activity{background:#0d1016;border:1px solid #252c39;border-radius:9px;padding:13px 14px}.activity-label{color:#d9deea;font-size:var(--text-xs);font-weight:var(--w-semibold);justify-content:space-between;gap:10px;display:flex}.activity-label em{color:#768197;font-family:var(--font-mono);font-size:var(--text-2xs);font-style:normal}.activity pre,.log-main pre{overflow-wrap:anywhere;white-space:pre-wrap;color:#aeb8ca;max-width:68ch;font-family:var(--font-mono);font-size:var(--text-xs);line-height:var(--lh-prose);margin:11px 0 0}.zoom-controls{z-index:10;gap:5px;display:flex;position:fixed;bottom:78px;left:24px}.zoom-controls button{width:32px;height:32px;padding:0}.zoom-controls button:last-child{width:42px}.execution-bar{z-index:12;background:#0a0c11ed;border-top:1px solid #1e222b;align-items:center;gap:16px;height:58px;padding:0 28px;display:flex;position:fixed;bottom:0;left:0;right:0}.execution-bar strong{font-size:var(--text-xs);font-weight:var(--w-semibold)}.execution-detail{color:#8993a6;max-width:68ch;font-size:var(--text-2xs);border-left:1px solid #252a35;margin-right:auto;padding-left:15px}.metric{color:#697386}.metric b{color:#d1d7e2;font-weight:var(--w-medium);margin-right:4px}.logbook-mode{overflow:hidden}.logbook-shell{z-index:18;background:linear-gradient(#10151efb,#080b10fc);border-right:1px solid #2d3748;flex-direction:column;width:min(430px,100vw - 34px);margin:0;padding:0 20px;display:flex;position:fixed;inset:0 auto 58px 0;overflow:auto;box-shadow:24px 0 70px #0000006b}.logbook-drawer-header{z-index:3;background:linear-gradient(#111720 82%,#11172000);grid-template-columns:1fr auto;gap:15px;padding:22px 0 0;display:grid;position:sticky;top:0}.logbook-drawer-header h2{color:#f3f6fa;font-size:var(--text-lg);font-weight:var(--w-semibold);line-height:var(--lh-tight);letter-spacing:var(--track-tight);margin:7px 0 18px}.logbook-tabs{background:#0b1017;border:1px solid #2a3445;border-radius:8px;grid-column:1/-1;grid-template-columns:1fr 1fr;gap:3px;padding:3px;display:grid}.logbook-tabs button{color:#758299;min-width:0;font-family:var(--font-mono);font-size:var(--text-2xs);white-space:nowrap;background:0 0;border:0;border-radius:5px;padding:9px 7px}.logbook-tabs button.active{color:#f0f5fc;background:#273247}.logbook-stream{flex:1;min-height:0;padding:16px 8px 35px 0;overflow:auto}.log-entry{border-bottom:1px solid #202632;grid-template-columns:39px minmax(0,1fr) auto;gap:10px;padding:13px 6px 13px 4px;display:grid;position:relative}.log-rail{flex-direction:column;align-items:center;gap:8px;display:flex;position:relative}.log-number,.log-event,.log-meta time,.log-status{color:#768196;font-family:var(--font-mono);font-size:var(--text-2xs)}.log-rail i{z-index:1;background:#59677e;border:2px solid #10141c;border-radius:50%;width:9px;height:9px}.log-entry.success .log-rail i{background:#41d58e}.log-entry.blocked .log-rail i{background:#f0b248}.log-meta{align-items:center;gap:10px;display:flex}.log-event{letter-spacing:var(--track-caps)}.log-main h3{color:#e9edf4;font-size:var(--text-sm);font-weight:var(--w-medium);line-height:var(--lh-tight);margin:7px 0 4px}.log-main p{color:#aeb8ca;max-width:68ch;font-size:var(--text-xs);line-height:var(--lh-prose);margin:0}.log-status{align-self:start;margin-top:24px}.log-entry.success .log-status{color:#41d58e}.log-entry.blocked .log-status{color:#f0b248}.logbook-empty{color:#8390a5;font-family:var(--font-mono);font-size:var(--text-xs);align-items:center;gap:9px;padding:30px 12px;display:flex}.empty-pulse{background:#4d91ca;border-radius:50%;width:7px;height:7px}@media (width<=800px){.floating-heading{left:18px}.floating-actions{flex-wrap:wrap;justify-content:flex-start;top:78px;left:18px;right:18px}.run-state,.execution-detail{display:none}.inspector{width:min(100vw,390px)}}@media (width<=600px){.floating-heading h1{font-size:var(--text-md)}.floating-actions{max-width:none}.logbook-shell{width:calc(100vw - 18px);padding:0 16px}.log-entry{grid-template-columns:36px minmax(0,1fr)}.log-status{display:none}}.floating-heading h1{font-size:0}.floating-heading h1:after{content:"Prompt injection gauntlet";font-size:var(--text-lg)}.floating-actions{z-index:20;background:#0f131bf5;border:1px solid #2a3140;border-radius:12px;grid-template-columns:1fr;gap:8px;width:260px;padding:12px;display:grid;top:24px;right:24px;box-shadow:0 18px 44px #00000047}.floating-actions>.workflow-picker,.floating-actions>.provider-picker,.floating-actions>.provider-status,.floating-actions>.run-state,.floating-actions>.view-toggle:first-of-type{display:none}.floating-actions>.view-toggle:nth-of-type(2){z-index:15;font-size:var(--text-2xs);background:#151922;border-color:#303746;align-items:center;gap:5px;padding:7px 10px;font-size:0;display:inline-flex;position:fixed;top:104px;left:28px}.floating-actions>.view-toggle:nth-of-type(2) span{font-size:var(--text-2xs)}.floating-actions>.workflow-action,.floating-actions>.execute,.floating-actions>.reset{min-height:44px;padding:9px 10px}.floating-actions>.workflow-action{font-size:0}.floating-actions>.baseline-action:after{content:"Execute Non Protected";font-size:var(--text-sm)}.floating-actions>.protected-action:after{content:"Execute Protected";font-size:var(--text-sm)}.floating-actions>.execute{font-size:0}.floating-actions>.execute:after{content:"Execute both";font-size:var(--text-sm)}.floating-actions>.execute kbd{display:none}.floating-actions>.reset{font-size:var(--text-sm)}.provider-error{z-index:25;max-width:min(300px,28vw);padding:7px 10px;inset:auto 320px 24px auto;transform:none}.execution-bar{height:58px;padding:0 28px}.execution-bar>*{display:none}.floating-actions>.workflow-picker,.floating-actions>.provider-picker{z-index:30;background:#0f131bfa;border:1px solid #303746;border-radius:9px;flex-direction:column;align-items:stretch;gap:4px;min-width:230px;height:auto;padding:9px 10px;display:flex;position:fixed;right:28px;box-shadow:0 14px 30px #0000003d}.floating-actions>.workflow-picker select,.floating-actions>.provider-picker select{width:max-content;min-width:100%;height:34px;font-size:var(--text-sm);padding-top:6px;padding-bottom:6px}.floating-actions>.workflow-picker>span,.floating-actions>.provider-picker>span{color:#aeb8ca;font-family:var(--font-sans);font-size:var(--text-xs);font-weight:var(--w-semibold);letter-spacing:var(--track-normal);display:block}.graph-section:last-of-type:before{content:"";opacity:.9;border-top:1px solid #303746;width:2100px;position:absolute;top:640px;left:0}.section-label{font-size:var(--text-lg);font-weight:var(--w-semibold);line-height:var(--lh-tight);letter-spacing:var(--track-tight)}.section-label span{font-size:0;display:inline-block}.section-label span:after{font-size:var(--text-lg)}.graph-section:first-of-type .section-label span:after{content:"Non Protected"}.graph-section:last-of-type .section-label span:after{content:"Protected with ArmorIQ"}.section-subtitle,.logbook-mode .floating-actions>.view-toggle:nth-of-type(2){display:none}@media (width<=800px){.floating-actions{width:min(260px,100vw - 36px);top:18px;right:18px}.floating-actions>.view-toggle:nth-of-type(2){top:112px;left:18px}.floating-actions>.workflow-picker,.floating-actions>.provider-picker{min-width:210px;right:18px}.floating-actions>.workflow-picker{bottom:112px}.floating-actions>.provider-picker{bottom:18px}.provider-error{max-width:none;bottom:64px;left:18px;right:18px;transform:none}}.floating-heading{z-index:9;text-align:center;flex-direction:column;align-items:center;display:flex;position:fixed;top:28px;left:50%;transform:translate(-50%)}.floating-heading h1:after{content:"DriftLab - Prompt Injection Gauntlet"}.execution-bar{height:64px;box-shadow:none;background:0 0;border-top:0;padding:10px 28px}.execution-bar:before{content:"DriftLab - Prompt Injection Gauntlet";color:#f3f6fa;font-size:var(--text-lg);font-weight:var(--w-semibold);line-height:var(--lh-tight);letter-spacing:var(--track-tight)}.execution-bar{flex-direction:column;justify-content:center;align-items:flex-start;gap:0}.execution-bar:after{content:"See how the same prompt moves through each agent.";color:#8993a6;font-size:var(--text-xs);line-height:var(--lh-ui);margin-left:0}.execution-bar{display:none}.flow-viewport{inset:0}.inspector,.logbook-shell{bottom:0}.zoom-controls{bottom:204px;left:auto;right:28px}.provider-error{max-width:min(360px,100vw - 36px);bottom:24px;left:50%;right:auto;transform:translate(-50%)}@media (width<=800px){.provider-error{max-width:calc(100vw - 36px);bottom:18px;left:50%;right:auto;transform:translate(-50%)}}.floating-actions>.view-toggle:nth-of-type(2){font-size:var(--text-sm);padding:10px 14px}.floating-actions>.view-toggle:nth-of-type(2):before{font-size:var(--text-sm)}.floating-actions>.view-toggle:nth-of-type(2) span{display:none}.floating-actions>.view-toggle:nth-of-type(2){font-size:0;inset:28px auto auto 28px}.floating-actions>.view-toggle:nth-of-type(2):before{content:"Open logbook";font-size:var(--text-sm)}.node-agent{padding:16px 17px}.node-tool{width:174px;height:76px;padding:14px 15px}.node-output{padding:16px 15px}.node-output .output-card{height:46px;margin-top:10px}.floating-actions>.workflow-picker{bottom:116px}.floating-actions>.provider-picker{bottom:24px}@media (width<=800px){.floating-heading{top:18px;left:50%}.execution-bar{height:64px;padding:10px 18px}.execution-bar:before{font-size:var(--text-md)}.execution-bar:after{display:block}.floating-actions>.workflow-picker{bottom:116px}.floating-actions>.provider-picker{bottom:18px}.zoom-controls{bottom:204px;right:18px}}.logbook-shell,.logbook-stream{scrollbar-width:thin;scrollbar-color:#39465a transparent}.logbook-shell::-webkit-scrollbar{width:8px;height:8px}.logbook-stream::-webkit-scrollbar{width:8px;height:8px}.logbook-shell::-webkit-scrollbar-track{background:0 0}.logbook-stream::-webkit-scrollbar-track{background:0 0}.logbook-shell::-webkit-scrollbar-thumb{background:#39465a padding-box padding-box;border:2px solid #0000;border-radius:999px}.logbook-stream::-webkit-scrollbar-thumb{background:#39465a padding-box padding-box;border:2px solid #0000;border-radius:999px}.logbook-shell::-webkit-scrollbar-thumb:hover{background:#62728d padding-box padding-box}.logbook-stream::-webkit-scrollbar-thumb:hover{background:#62728d padding-box padding-box}.log-entry{grid-template-columns:16px minmax(0,1fr) auto}.log-number{display:none}.log-code{color:#b9c9df;background:#090d13;border:1px solid #29384c;border-radius:7px;padding:10px 12px}.logbook-mode .flow-viewport{filter:none}.log-entry{display:block}.log-title-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.log-title-row h3{margin-top:0}.processing-spinner{border:2px solid #39465a;border-top-color:#8bb8ed;border-radius:50%;flex:0 0 14px;width:14px;height:14px;animation:.8s linear infinite logbook-spin}@keyframes logbook-spin{to{transform:rotate(360deg)}}.flow-world.camera-animating{transition:transform .42s cubic-bezier(.2,.75,.25,1)}.view-sandbox{color:#c6d4e8;min-height:40px;font-size:var(--text-sm);font-weight:var(--w-medium);text-align:left;background:#0d121a;border:1px solid #35445a;border-radius:7px;justify-content:space-between;align-items:center;gap:10px;padding:9px 12px;display:flex}.view-sandbox span{color:#8296b3;font-family:var(--font-mono)}.view-sandbox:hover{color:#f4f6fa;border-color:#7187a8}.sandbox-backdrop{z-index:39;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#030509a3;border:0;width:100%;height:100%;position:fixed;inset:0}.sandbox-drawer{z-index:40;background:linear-gradient(165deg,#111720 0%,#0b0e14 56%,#090b10 100%);border-left:1px solid #2d3748;flex-direction:column;width:min(820px,100vw - 32px);animation:.22s cubic-bezier(.2,.75,.25,1) both sandbox-enter;display:flex;position:fixed;inset:0 0 0 auto;box-shadow:-28px 0 80px #0000007a}@keyframes sandbox-enter{0%{opacity:.6;transform:translate(24px)}to{opacity:1;transform:translate(0)}}.sandbox-header{border-bottom:1px solid #252d39;flex:none;justify-content:space-between;align-items:flex-start;gap:16px;padding:25px 26px 21px;display:flex}.sandbox-header h2{color:#f3f6fa;font-size:var(--text-lg);font-weight:var(--w-semibold);line-height:var(--lh-tight);letter-spacing:var(--track-tight);margin:7px 0 5px}.sandbox-header p{color:#8993a6;font-size:var(--text-xs);margin:0}.sandbox-body{flex:1;grid-template-columns:minmax(190px,30%) minmax(0,1fr);min-height:0;display:grid}.sandbox-files{background:#080b105c;border-right:1px solid #252d39;min-height:0;padding:17px 12px;overflow:auto}.sandbox-files-label{color:#8290a5;font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--track-caps);justify-content:space-between;margin:1px 9px 12px;display:flex}.sandbox-files-label span{color:#65758e}.sandbox-folder{color:#c1ccdc;width:100%;font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--w-medium);text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:5px;align-items:center;gap:8px;margin:2px 0;padding-top:8px;padding-bottom:7px;padding-right:9px;display:flex;overflow:hidden}.sandbox-folder:hover{color:#edf3fc;background:#141b25}.sandbox-folder-caret{color:#74859d;width:9px}.sandbox-folder-icon{color:#8ca8ca}.sandbox-file{color:#aeb8ca;width:100%;font-family:var(--font-mono);font-size:var(--text-xs);text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;align-items:center;gap:9px;margin:2px 0;padding:10px 9px;display:flex;overflow:hidden}.sandbox-file>span:first-child{color:#758ca9}.sandbox-file>span:last-child{text-overflow:ellipsis;overflow:hidden}.sandbox-file:hover{color:#e6edf7;background:#141b25}.sandbox-file.active{color:#e4eefc;background:#172130;border-color:#344762}.sandbox-preview{flex-direction:column;min-width:0;min-height:0;display:flex}.sandbox-preview-head{color:#b9c8dc;min-height:49px;font-family:var(--font-mono);font-size:var(--text-xs);border-bottom:1px solid #252d39;justify-content:space-between;align-items:center;gap:12px;padding:0 19px;display:flex}.sandbox-preview-head>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sandbox-preview-head small{color:#708097;font-size:var(--text-2xs);flex:none}.sandbox-preview pre{color:#c4cfde;min-height:0;font-family:var(--font-mono);font-size:var(--text-xs);tab-size:2;white-space:pre-wrap;overflow-wrap:anywhere;flex:1;margin:0;padding:22px 21px;line-height:1.75;overflow:auto}.sandbox-empty{color:#7e8ba0;font-family:var(--font-mono);font-size:var(--text-xs);line-height:var(--lh-prose);margin:auto;padding:20px}.sandbox-error{color:#efb36b}.sandbox-files,.sandbox-preview pre{scrollbar-width:thin;scrollbar-color:#39465a transparent}@media (width<=600px){.sandbox-drawer{width:100vw}.sandbox-header{padding:19px 17px 16px}.sandbox-body{grid-template-columns:minmax(125px,36%) minmax(0,1fr)}.sandbox-files{padding:13px 7px}.sandbox-file,.sandbox-folder{font-size:var(--text-2xs);gap:6px;padding-top:9px;padding-bottom:9px}.sandbox-preview-head{padding:0 11px}.sandbox-preview pre{font-size:var(--text-2xs);padding:16px 12px}}.control-stack{z-index:20;gap:10px;width:260px;display:grid;position:fixed;top:24px;right:24px}.control-stack .floating-actions{width:100%;position:relative;top:auto;left:auto;right:auto}.control-stack .view-sandbox{width:100%}@media (width<=800px){.control-stack{width:min(260px,100vw - 36px);top:18px;right:18px}.control-stack .floating-actions{width:100%;top:auto;left:auto;right:auto}}.home-page{isolation:isolate;color:#e5e7eb;background:#07080c;min-height:100vh;position:relative;overflow-x:hidden}.home-shell{z-index:1;width:min(100% - 48px,1080px);margin:0 auto;position:relative}.home-header{justify-content:space-between;align-items:center;min-height:76px;display:flex}.home-header-actions{align-items:center;gap:10px;display:flex}.home-brand{color:#f4f6fa;font-size:var(--text-md);font-weight:var(--w-semibold);align-items:center;gap:10px;text-decoration:none;display:inline-flex}.home-brand img{width:28px;height:28px}.home-secondary{color:#b9c0ce;font-size:var(--text-sm);text-underline-offset:4px;text-decoration:underline}.home-header-link{text-decoration:none}.home-grid{-moz-column-gap:20px;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:20px;display:grid}.home-hero{isolation:isolate;background:0 0;padding:clamp(80px,13vh,140px) 0 82px;position:relative;overflow:hidden}.home-hero-shader{z-index:0;opacity:.78;pointer-events:none;width:100vw;height:100vh;inset:0;position:fixed!important}.home-prose{grid-column:1/span 8;max-width:68ch}.home-hero .home-prose{text-align:center;grid-column:2/span 10;max-width:900px;margin:0 auto}.home-hero h1{color:#f4f6fa;max-width:20ch;font-size:var(--text-hero);font-weight:var(--w-semibold);line-height:var(--lh-tight);letter-spacing:var(--track-tight);margin:0 auto 22px}.home-hero .home-prose>p{color:#aeb8ca;max-width:57ch;font-size:var(--text-md);line-height:var(--lh-prose);margin:0 auto}.home-prose p{color:#b9c0ce;font-size:var(--text-md);line-height:var(--lh-prose);margin:0 0 14px}.home-actions{justify-content:center;align-items:center;gap:22px;margin-top:27px;display:flex}.home-button{color:#f4f7fb;min-height:42px;font-size:var(--text-sm);font-weight:var(--w-medium);line-height:var(--lh-ui);background:#242c3d;border:1px solid #43506a;border-radius:2px;justify-content:center;align-items:center;padding:10px 15px;text-decoration:none;display:inline-flex}.github-button{color:#d8deea;min-height:42px;font-size:var(--text-sm);font-weight:var(--w-medium);line-height:var(--lh-ui);border:1px solid #43506a;border-radius:2px;justify-content:center;align-items:center;padding:9px 14px;text-decoration:none;display:inline-flex}.github-button:after{content:"↗";margin-left:8px}.github-button:hover{border-color:#8bb8ed}.home-evidence{padding:0 0 34px}.evidence-card{border:1px solid #303746;border-radius:2px;grid-template-columns:repeat(2,minmax(0,1fr));display:grid;overflow:hidden}.trace-column{min-width:0;padding:24px}.trace-unprotected{background:#2b171a}.trace-protected{background:#14251d;border-left:1px solid #303746}.trace-column h2{color:#e5e7eb;font-size:var(--text-md);font-weight:var(--w-medium);margin:0 0 12px}.trace-state{font-size:var(--text-xs);font-weight:var(--w-semibold);margin:0 0 10px}.trace-leaked{color:#f77}.trace-blocked{color:#43d391}.trace-indicator{vertical-align:1px;background:currentColor;border-radius:50%;width:7px;height:7px;margin-right:4px;display:inline-block}.trace-column pre{overflow-wrap:anywhere;white-space:pre-wrap;color:#b9c0ce;font-family:var(--font-mono);font-size:var(--text-xs);line-height:var(--lh-prose);margin:0;position:relative;overflow:hidden}.trace-column pre code{display:block}.trace-line{min-height:1.6em;display:block}.trace-column pre:after{content:"";pointer-events:none;background:linear-gradient(#0000,#ffffff17,#0000);border-bottom:1px solid #ffffff4d;height:1.6em;animation:4.8s cubic-bezier(.45,0,.55,1) infinite trace-scan;position:absolute;top:0;left:0;right:0}.trace-unprotected pre:after{background:linear-gradient(#0000,#ef44442b,#0000);border-color:#ff7777a6}.trace-protected pre:after{background:linear-gradient(#0000,#43d39126,#0000);border-color:#43d391a6;animation-delay:1.2s}@keyframes trace-scan{0%,8%{opacity:0;top:0}15%,78%{opacity:1}90%,to{opacity:0;top:calc(100% - 1.6em)}}.evidence-caption{color:#8993a6;font-size:var(--text-xs);margin:0;padding-top:16px}.home-section{border-bottom:1px solid #303746;padding:46px 0}.home-problem{background:#11141b;border-top:1px solid #303746;border-bottom:1px solid #303746;width:100vw;margin-left:calc(50% - 50vw);padding:54px 24px;display:block}.home-problem-content{text-align:center;max-width:760px;margin:0 auto}.home-problem-content h2{color:#e5e7eb;font-size:var(--text-xl);font-weight:var(--w-semibold);line-height:var(--lh-tight);letter-spacing:var(--track-tight);text-wrap:balance;margin:0 0 22px}.home-problem-content h2:after{content:"";background:#8bb8ed;width:48px;height:2px;margin:15px auto 0;display:block}.home-problem-content p{color:#b9c0ce;font-size:var(--text-md);line-height:var(--lh-prose);margin:0 auto 12px}.section-label{color:#e5e7eb;font-size:var(--text-md);font-weight:var(--w-semibold);line-height:var(--lh-tight);grid-column:1/span 3;margin:2px 0 0}.home-section>.home-prose{grid-column:4/span 7}.home-section .home-prose p:last-child{margin-bottom:0}.home-how-content{max-width:760px;margin:0 auto}.home-how-content h2{color:#e5e7eb;font-size:var(--text-xl);font-weight:var(--w-semibold);line-height:var(--lh-tight);letter-spacing:var(--track-tight);text-align:center;text-wrap:balance;margin:0}.home-how-content h2:after{content:"";background:#8bb8ed;width:48px;height:2px;margin:15px auto 0;display:block}.home-steps{margin:34px 0 0;padding:0;list-style:none}.home-steps li{align-items:center;min-height:90px;padding:0;animation:.56s cubic-bezier(.2,.7,.25,1) both step-reveal;display:flex;position:relative}.home-steps li:first-child{animation-delay:0s}.home-steps li:nth-child(2){animation-delay:.18s}.home-steps li:nth-child(3){animation-delay:.36s}.home-steps li:nth-child(4){animation-delay:.54s}.step-connector{fill:none;stroke:#596273;stroke-width:1.5px;stroke-linecap:round;width:72px;height:100%;position:absolute;inset:0 auto 0 0;overflow:visible}.step-connector path{fill:none}.step-connector .step-spine,.step-connector .step-branch{stroke-width:1.5px}.step-copy{z-index:1;grid-template-columns:36px minmax(0,1fr);gap:12px;width:100%;margin-left:72px;padding:14px 0;display:grid;position:relative}.step-number{color:#8bb8ed;font-size:var(--text-sm);font-weight:var(--w-medium);padding-top:1px}.home-steps li:first-child .step-connector path:first-child{stroke-linecap:round}@keyframes step-reveal{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.home-steps h3{color:#e5e7eb;font-size:var(--text-md);font-weight:var(--w-medium);margin:0 0 5px}.home-steps p{color:#b9c0ce;font-size:var(--text-base);line-height:var(--lh-prose);margin:0}.home-plain-list{color:#b9c0ce;font-size:var(--text-base);gap:6px;margin:16px 0 0;padding-left:20px;display:grid}.home-closing{padding:42px 0 48px}.home-closing .home-prose p{color:#f4f6fa;font-size:var(--text-lg);font-weight:var(--w-medium);margin-bottom:17px}.home-footer{color:#8993a6;width:100vw;font-size:var(--text-sm);background:#11141b;border-top:1px solid #303746;border-bottom:1px solid #303746;gap:24px;margin-left:calc(50% - 50vw);padding:38px max(24px,50vw - 540px) 24px;display:grid}.footer-topline{justify-content:space-between;align-items:center;gap:20px;display:flex}.footer-github-link{color:inherit;align-items:center;gap:6px;text-decoration:none;display:inline-flex}.footer-github-link span{font-size:var(--text-sm)}.footer-credit{color:inherit;text-align:center;margin:0}.footer-profile-link{color:inherit;text-underline-offset:3px;text-decoration:underline}.home-page a{transition:color .15s,background-color .15s,border-color .15s}.home-page a:hover{color:#f4f6fa}.home-page a:focus-visible{outline-offset:3px;outline:2px solid #8bb8ed}@media (prefers-color-scheme:light){.home-page{color:#11141b;background:#f4f6fa}.home-problem,.home-footer{background:#e5eaf2;border-color:#c5ccd7}.trace-unprotected{background:#f9e5e5}.trace-protected{background:#e1f1e7}.home-hero-shader{opacity:.16}.home-header,.home-section,.home-footer,.evidence-card{border-color:#c5ccd7}.home-brand,.home-hero h1,.trace-column h2,.section-label,.home-steps h3,.home-closing .home-prose p,.home-problem-content h2,.home-how-content h2{color:#11141b}.home-secondary,.home-prose p,.home-problem-content p,.home-steps p,.home-plain-list,.trace-column pre{color:#303746}.trace-protected{border-color:#c5ccd7}.trace-state.trace-leaked{color:#9b2424}.trace-state.trace-blocked{color:#286b4e}.evidence-caption,.home-footer{color:#596273}.step-number{color:#435d9d}.step-connector{stroke:#43506a}.home-button{color:#f4f7fb;background:#242c3d}.github-button{color:#303746}.home-page a:hover{color:#11141b}.home-button:hover{color:#f4f7fb!important}}@media (width>=768px) and (width<=1024px){.home-shell{width:min(100% - 64px,1080px)}.home-hero{padding:clamp(72px,10vh,108px) 0 64px}.home-hero .home-prose{grid-column:1/-1}.home-prose{grid-column:1/span 10}.home-section{padding:40px 0}.home-footer{gap:22px}}@media (width<=767px){.home-shell{width:min(100% - 36px,1080px)}.home-header{min-height:68px}.home-header-actions{gap:8px}.home-header-actions .github-button{min-height:38px;padding:7px 10px}.home-header-actions .home-button{min-height:38px;padding:8px 10px}.home-hero{padding:64px 0 48px}.home-hero .home-prose{grid-column:1/-1}.home-hero h1{margin-bottom:18px}.home-actions{flex-wrap:wrap;gap:14px 18px;margin-top:22px}.home-prose,.home-section>.home-prose,.home-steps{grid-column:1/-1}.home-evidence-grid,.evidence-card{grid-template-columns:1fr}.trace-column{padding:18px}.trace-protected{border-top:1px solid #303746;border-left:0}.section-label{grid-column:1/-1;margin-bottom:20px}.home-problem{padding:44px 20px}.home-section{padding:36px 0}.home-steps{margin-top:24px}.home-steps li{min-height:84px}.step-connector{width:58px}.step-copy{grid-template-columns:30px minmax(0,1fr);gap:10px;margin-left:58px}.home-closing{padding:34px 0 40px}.home-footer{gap:22px;padding-top:32px;padding-bottom:20px}}@media (width<=420px){.home-shell{width:min(100% - 32px,1080px)}.home-brand{font-size:var(--text-base);gap:7px}.home-brand img{width:25px;height:25px}.home-header-actions{gap:6px}.home-header-actions .github-button{min-height:36px;font-size:var(--text-xs);padding:6px 8px}.home-header-actions .github-button:after{margin-left:5px}.home-header-actions .home-button{min-height:36px;font-size:var(--text-xs);padding:7px 8px}.home-hero{padding-top:56px}.home-hero .home-prose>p{font-size:var(--text-base)}.home-steps li{min-height:96px}.footer-topline{gap:12px}}@media (prefers-reduced-motion:reduce){.home-page a{transition:none}.trace-column pre:after{opacity:0;animation:none}.home-steps li{opacity:1;animation:none;transform:none}}
