@font-face{font-family:Libre Franklin Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/libre-franklin-cyrillic-ext-wght-normal-BbRulJFC.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Libre Franklin Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/libre-franklin-cyrillic-wght-normal-se3OnFSl.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Libre Franklin Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/libre-franklin-vietnamese-wght-normal-DTJpi3oK.woff2)format("woff2-variations");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:Libre Franklin Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/libre-franklin-latin-ext-wght-normal-CeZZaleV.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:Libre Franklin Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/libre-franklin-latin-wght-normal-CLTz0ja0.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}:root{--void:#050505;--slab:#141517;--bone:#e8e4da;--ash:#8c8b86;--signal:#ff3b1f;--cold:#a8bcff;--body:"Libre Franklin Variable", ui-sans-serif, system-ui, sans-serif;--t-big:clamp(2.6rem, 1.8rem + 2.4vw, 4rem);--t-line:clamp(1.05rem, .9rem + .6vw, 1.5rem);--t-md:.9375rem;--t-sm:.8125rem;--t-xs:.75rem;--edge:clamp(16px, 2.4vw, 36px);--ease:cubic-bezier(.2, .7, .2, 1);--glass:color-mix(in oklab, var(--void) 62%, transparent);--line:color-mix(in oklab, var(--bone) 16%, transparent);--soft:color-mix(in oklab, var(--bone) 64%, transparent)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;background:var(--void)}body{background:var(--void);min-height:100svh;color:var(--bone);font-family:var(--body);font-size:var(--t-md);-webkit-font-smoothing:antialiased;margin:0;line-height:1.4;overflow:hidden}button,input{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}a{color:inherit}h1,p,ol,ul{margin:0;padding:0;list-style:none}.sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}:focus-visible{outline:2px solid var(--signal);outline-offset:3px}.top{z-index:20;left:var(--edge);top:calc(var(--edge) - 6px);animation:fade 1.6s var(--ease) both;position:fixed}.top img{width:30px;height:30px;display:block}@keyframes fade{0%{opacity:0}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.room{--pull:0;--core-x:50vw;--core-y:45vh;isolation:isolate;background:var(--void);height:100svh;min-height:560px;position:relative;overflow:hidden}.room__gl{width:100%;height:100%;display:block;position:absolute;inset:0}.room__poster{background:url(/poster.jpg) 50%/cover no-repeat;position:absolute;inset:0}.room__wait{background:var(--signal);width:10px;height:10px;box-shadow:0 0 34px 8px color-mix(in oklab, var(--signal) 60%, transparent);border-radius:50%;margin:-5px;animation:.9s ease-in-out infinite alternate wait;position:absolute;top:44%;left:50%}@keyframes wait{to{opacity:.25;transform:scale(.7)}}.reticle{--to:translate3d(-80px, -80px, 0);z-index:6;border:1px solid color-mix(in oklab, var(--signal) 70%, transparent);width:34px;height:34px;transform:var(--to);transition:transform .42s var(--ease), border-color .3s var(--ease);pointer-events:none;border-radius:50%;position:absolute;top:-17px;left:-17px}.reticle:before,.reticle:after{content:"";background:var(--signal);position:absolute}.reticle:before{clip-path:polygon(0 0,100% 0,100% 16%,0 16%,0 84%,100% 84%,100% 100%,0 100%);width:1px;top:-7px;bottom:-7px;left:50%}.reticle:after{clip-path:polygon(0 0,16% 0,16% 100%,0 100%,100% 0,100% 100%,84% 100%,84% 0);height:1px;top:50%;left:-7px;right:-7px}@media (hover:none){.reticle{display:none}}.strip{z-index:7;left:50%;top:calc(var(--edge) - 8px);width:max-content;max-width:calc(100vw - 110px);font-size:var(--t-sm);color:var(--soft);background:var(--glass);border:1px solid var(--line);-webkit-backdrop-filter:blur(12px);animation:strip-in 1.4s .3s var(--ease) both;flex-wrap:wrap;justify-content:center;align-items:center;gap:4px 12px;padding:9px 18px;display:flex;position:absolute;translate:-50%}@keyframes strip-in{0%{opacity:0;clip-path:inset(0 50%)}to{clip-path:inset(0)}}.strip b{letter-spacing:.01em;color:var(--bone);font-weight:700}.strip>i{background:var(--signal);width:6px;height:6px}.strip.is-live>i{background:var(--bone)}.strip code{font:500 var(--t-xs) / 1.3 var(--body);overflow-wrap:anywhere;color:var(--bone)}.strip button,.strip a{color:var(--bone);text-decoration:underline;-webkit-text-decoration-color:var(--line);text-decoration-color:var(--line);text-underline-offset:3px;font-size:var(--t-xs)}.strip ul{gap:10px;display:flex}.read{z-index:5;font-variant-numeric:tabular-nums;transition:transform .8s var(--ease), filter .5s var(--ease);transform-origin:50%;gap:2px;display:grid;position:absolute;top:63%;translate:0 -50%}.read--left{left:var(--edge);transform:translate(calc((var(--core-x) - 100% - var(--edge) - 110px) * var(--pull) * .62), calc(var(--pull) * 34px)) rotate(calc(var(--pull) * 9deg))}.read--right{right:var(--edge);text-align:right;transform:translate(calc((var(--core-x) - 100vw + 100% + var(--edge) + 110px) * var(--pull) * .62), calc(var(--pull) * -28px)) rotate(calc(var(--pull) * -11deg))}.motion .read[data-reveal]:not(.is-in){opacity:0;filter:blur(10px)}.read[data-reveal]{transition:opacity 1.4s var(--ease), filter 1.4s var(--ease), transform .8s var(--ease)}.read>span{font-size:var(--t-sm);color:var(--soft)}.read strong{font-size:var(--t-big);letter-spacing:-.035em;align-items:baseline;gap:8px;line-height:1.05;display:flex}.read--right strong{justify-content:flex-end}.read strong b{transition:color .4s var(--ease);font-weight:650}.read small{letter-spacing:0;color:var(--soft);font-size:1rem;font-weight:500}.read ol{gap:4px;margin-top:6px;display:flex}.read li{background:var(--line);width:22px;height:3px;transition:background .3s var(--ease)}.read li.is-on{background:var(--bone)}.room[data-danger] .read strong b{color:var(--signal)}.room[data-danger] .read li.is-on{background:var(--signal)}.read__sub{margin-top:6px;font-size:var(--t-xs)!important}.lower{z-index:5;left:var(--edge);right:var(--edge);bottom:calc(var(--edge) - 6px);pointer-events:none;justify-items:center;gap:16px;display:grid;position:absolute}.lower>*{pointer-events:auto}.line{text-align:center;max-width:34em;min-height:1.4em;font-size:var(--t-line);letter-spacing:-.012em;text-shadow:0 1px 14px var(--void);pointer-events:none;font-weight:560}.line.is-alert{color:var(--signal)}.controls{animation:rise 1.4s .7s var(--ease) both;align-items:stretch;gap:8px;display:flex}@keyframes rise{0%{opacity:0;transform:translateY(18px)}}.hold,.poke{height:48px;font-size:var(--t-sm);white-space:nowrap;border:1px solid var(--line);background:var(--glass);-webkit-backdrop-filter:blur(14px);transition:color .2s var(--ease), background .2s var(--ease), border-color .2s var(--ease);-webkit-user-select:none;user-select:none;touch-action:none;padding:0 22px;font-weight:620;position:relative}.hold{min-width:170px;color:var(--void);background:var(--bone);border-color:var(--bone);overflow:hidden}.hold i{background:var(--cold);transform-origin:0;z-index:-1;transition:transform 1.4s linear;position:absolute;inset:0;transform:scaleX(0)}.is-holding .hold i{transform:scaleX(1)}.is-holding .hold{background:var(--cold);border-color:var(--cold)}.hold:disabled,.poke:disabled{cursor:not-allowed;background:var(--glass);border-color:color-mix(in oklab, var(--signal) 60%, transparent);color:var(--signal)}.poke:hover:not(:disabled){border-color:var(--signal);color:var(--signal)}.speak{border:1px solid var(--line);background:var(--glass);-webkit-backdrop-filter:blur(14px);width:280px;height:48px;transition:border-color .2s var(--ease);align-items:center;padding:0 4px 0 16px;display:flex}.speak:focus-within{border-color:var(--bone)}.speak.is-no{animation:no .4s var(--ease)}@keyframes no{20%,60%{transform:translate(-5px)}40%,80%{transform:translate(5px)}}.speak input{min-width:0;height:100%;font-size:var(--t-sm);background:0 0;border:0;outline:0;flex:1}.speak input::placeholder{color:var(--soft)}.speak button{width:38px;height:38px;color:var(--bone);place-items:center;display:grid}.gauge{width:100%;font-size:var(--t-xs);color:var(--soft);animation:fade 1.8s .9s var(--ease) both;grid-template-columns:auto 1fr 36px auto 120px;align-items:center;gap:14px;display:grid}.gauge__bar{background:var(--line);height:3px;position:relative;overflow:hidden}.gauge__bar i{transform-origin:0;background:var(--bone);transition:background .4s var(--ease);position:absolute;inset:0;transform:scaleX(.14)}.room[data-danger] .gauge__bar i{background:var(--signal)}.gauge b{font-weight:650;font-size:var(--t-sm);text-align:right;color:var(--bone);font-variant-numeric:tabular-nums}.gauge canvas{width:120px;height:18px;display:block}.is-breach .read,.is-breach .gauge,.is-breach .strip{animation:.62s steps(2,end) infinite seize}.is-breach .line{font-size:calc(var(--t-line) * 1.5);font-weight:700}@keyframes seize{0%,to{clip-path:inset(0);translate:0 -50%}25%{clip-path:inset(12% 0 40%);translate:-6px -50%}50%{clip-path:inset(46% 0 8%);translate:8px -50%}75%{clip-path:inset(0 0 66%);translate:-3px -50%}}.is-breach .gauge,.is-breach .strip{animation-name:seize-flat}@keyframes seize-flat{0%,to{clip-path:inset(0)}30%{clip-path:inset(0 22% 0 0)}60%{clip-path:inset(0 0 0 34%)}}@media (width<=860px){.strip{left:58px;right:var(--edge);width:auto;max-width:none;font-size:var(--t-xs);justify-content:flex-start;padding:7px 12px;translate:0}.strip.is-live{left:var(--edge);top:58px}.read{top:74px;translate:0}.strip.is-live~.read{background:var(--glass);-webkit-backdrop-filter:blur(10px);padding:6px 10px;top:142px}.read strong{font-size:2.1rem}.is-breach .read{animation-name:seize-flat}.lower{gap:12px}.line{padding:0 6px}.controls{flex-wrap:wrap;width:100%}.hold{flex:58%;min-width:0}.poke{flex:30%}.speak{width:100%}.gauge{grid-template-columns:auto 1fr 32px}.gauge__sig,.gauge canvas{display:none}}
