:root{--background:oklch(8% .005 20);--foreground:oklch(95% 0 0);--muted-foreground:oklch(55% .02 20);--border:oklch(30% .08 25);--blood:oklch(58% .24 27);--blood-dim:oklch(30% .12 25);--font-mono:"VT323", "Share Tech Mono", "Cascadia Mono", "Lucida Console", monospace;--font-display:"Share Tech Mono", "Cascadia Mono", "Lucida Console", monospace;font-family:var(--font-display);color:var(--foreground);background:var(--background);font-synthesis:none;text-rendering:geometricprecision}*{box-sizing:border-box;border-color:var(--border)}html,body,#root{min-width:320px;min-height:100%;margin:0}body{background:var(--background);min-height:100vh;overflow:hidden}button,input{font:inherit}p,h1{margin:0}.crt{isolation:isolate;background:var(--background);width:100vw;height:100svh;position:relative;overflow:hidden}.crt:before{content:"";pointer-events:none;z-index:40;background:repeating-linear-gradient(0deg,oklch(0% 0 0/.35) 0 1px,#0000 1px 3px);position:absolute;inset:0}.crt:after{content:"";pointer-events:none;z-index:41;background:radial-gradient(#0000 50%,oklch(0% 0 0/.9) 100%);animation:4s step-end infinite flicker;position:absolute;inset:0}.noise{pointer-events:none;z-index:39;opacity:.08;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='200'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");animation:.6s steps(4,end) infinite grain;position:absolute;inset:-50%}.scan-bar{z-index:38;pointer-events:none;background:linear-gradient(#0000,oklch(58% .24 27/.08),#0000);height:120px;animation:6s linear infinite scan;position:absolute;left:0;right:0}.alert-wash{z-index:10;pointer-events:none;opacity:.6;background:radial-gradient(ellipse at center, var(--blood-dim), transparent 70%);position:absolute;inset:0}.hud{z-index:20;font-family:var(--font-mono);letter-spacing:.1em;color:var(--muted-foreground);font-size:clamp(1rem,1.25vw,1.5rem);position:absolute}.hud--tl{top:2rem;left:2.5rem}.hud--tr{text-align:right;top:2rem;right:2.5rem}.hud--bl{font-size:clamp(.85rem,1.05vw,1.25rem);bottom:2rem;left:2.5rem}.hud--br{color:var(--blood-dim);font-size:clamp(.85rem,1.05vw,1.25rem);bottom:2rem;right:2.5rem}.corner{z-index:20;border:0 solid var(--blood);width:2.5rem;height:2.5rem;position:absolute}.corner--tl{border-top-width:2px;border-left-width:2px;top:1.5rem;left:1.5rem}.corner--tr{border-top-width:2px;border-right-width:2px;top:1.5rem;right:1.5rem}.corner--bl{border-bottom-width:2px;border-left-width:2px;bottom:1.5rem;left:1.5rem}.corner--br{border-bottom-width:2px;border-right-width:2px;bottom:1.5rem;right:1.5rem}.stage{z-index:30;text-align:center;flex-direction:column;justify-content:center;align-items:center;height:100%;padding:0 clamp(1rem,4vw,5rem);display:flex;position:relative}.text-blood{color:var(--blood)}.text-blood-dim{color:var(--blood-dim)}.text-muted{color:var(--muted-foreground)}.glow-red{text-shadow:0 0 12px var(--blood), 0 0 40px var(--blood-dim)}.glow-white{text-shadow:0 0 10px oklch(100% 0 0/.4)}.blink{animation:1s step-end infinite blink}.shake{animation:.3s infinite shake}.mono{font-family:var(--font-mono)}.glitch{position:relative}.glitch:before,.glitch:after{content:attr(data-text);pointer-events:none;position:absolute;inset:0}.glitch:before{color:var(--blood);mix-blend-mode:screen;animation:2.2s step-end infinite glitch-a;transform:translate(-6px)}.glitch:after{color:oklch(80% .1 200);mix-blend-mode:screen;opacity:.6;animation:1.7s step-end infinite glitch-b;transform:translate(5px)}.kicker{text-transform:uppercase;font-family:var(--font-mono);letter-spacing:.6em;font-size:clamp(1.2rem,1.9vw,1.875rem)}.title{letter-spacing:.15em;margin-top:1.5rem;font-size:clamp(2.6rem,6vw,6rem);font-weight:700;line-height:1}.label{font-family:var(--font-mono);letter-spacing:.5em;margin-top:clamp(2rem,6vh,4rem);font-size:clamp(1.2rem,1.9vw,1.875rem)}.fine{font-family:var(--font-mono);letter-spacing:.1em;margin-top:2rem;font-size:clamp(.95rem,1.25vw,1.25rem)}.identity-form{width:min(1100px,100%);margin-top:1.5rem}.input-box{border:2px solid var(--blood);box-shadow:0 0 60px var(--blood-dim);cursor:text;background:oklch(8% .005 20/.6);align-items:center;padding:clamp(.8rem,1.6vw,1.5rem) clamp(1rem,2vw,2rem);display:flex}.input-box .prompt{font-family:var(--font-mono);font-size:clamp(2.4rem,3.9vw,3.75rem);line-height:1}.input-box input{min-width:1ch;max-width:100%;font-family:var(--font-mono);letter-spacing:.1em;color:var(--foreground);text-transform:uppercase;caret-color:#0000;background:0 0;border:0;outline:0;margin-left:1.5rem;padding:0;font-size:clamp(2.8rem,4.7vw,4.5rem);line-height:1}.input-box .cursor{background:var(--blood);width:.5em;height:1em;margin-left:.25rem;font-size:clamp(2.8rem,4.7vw,4.5rem);display:inline-block}.reveal-lead{font-family:var(--font-mono);letter-spacing:.5em;font-size:clamp(1.4rem,2.3vw,2.25rem)}.reveal-name{letter-spacing:-.02em;text-transform:uppercase;margin:1rem 0;font-size:clamp(5rem,13vw,16rem);font-weight:700;line-height:1}.reveal-bar{background:var(--blood);width:min(900px,80vw);height:4px;box-shadow:0 0 30px var(--blood)}.reveal-sub{font-family:var(--font-mono);letter-spacing:.35em;margin-top:2.5rem;font-size:clamp(1.3rem,2.3vw,2.25rem)}.threat-name{font-family:var(--font-mono);letter-spacing:.5em;text-transform:uppercase;font-size:clamp(1.4rem,2.3vw,2.25rem)}.threat-text{letter-spacing:.06em;margin-top:2rem;font-size:clamp(3rem,7.5vw,9rem);font-weight:700;line-height:1.05}.unknown-title{letter-spacing:.08em;font-size:clamp(3.4rem,7.5vw,9rem);font-weight:700;line-height:1}.unknown-sub{font-family:var(--font-mono);letter-spacing:.4em;margin-top:clamp(2rem,6vh,3.5rem);font-size:clamp(2.4rem,3.9vw,3.75rem)}.unknown-verdict{font-family:var(--font-mono);letter-spacing:.35em;margin-top:clamp(2rem,6vh,3.5rem);font-size:clamp(1.3rem,2.3vw,2.25rem)}.screen-in{animation:.26s steps(2,end) both reveal}.controls{z-index:50;opacity:.3;flex-wrap:wrap;justify-content:center;gap:.5rem;width:max-content;max-width:calc(100vw - 2rem);transition:opacity .2s;display:flex;position:fixed;bottom:4rem;left:50%;transform:translate(-50%)}.controls:hover,.controls:focus-within{opacity:1}.controls button{border:1px solid var(--border);font-family:var(--font-mono);letter-spacing:.08em;color:var(--muted-foreground);cursor:pointer;background:0 0;padding:.25rem .75rem;font-size:1.125rem}.controls button:disabled{opacity:.35;cursor:not-allowed}.controls button.is-primary{border-color:var(--blood);color:var(--blood)}.controls button:hover,.controls button:focus-visible{color:var(--foreground);border-color:var(--blood);outline:none}.variant{z-index:30;position:absolute;inset:0}.stage>.alert-wash{z-index:-1}.stage--glitching{animation:.42s step-end both screen-glitch}.stage--glitching .cursor{opacity:0;animation:none}.stage--blink{animation:.65s step-end both screen-blink}.stage--scare{animation:.9s step-end both scare-strobe}.scare-text{letter-spacing:-.02em;color:#000;text-shadow:0 0 2px #000;font-size:clamp(5rem,17vw,20rem);font-weight:700;line-height:.9;animation:.9s cubic-bezier(.2,1.6,.4,1) both scare-zoom}.countdown{font-family:var(--font-mono);letter-spacing:.08em;margin:clamp(1rem,4vh,2.5rem) 0 .5rem;font-size:clamp(5rem,14vw,13rem);line-height:1}.dev-message{width:min(1100px,100%);min-height:9em;font-family:var(--font-mono);text-align:left;white-space:pre-line;color:var(--foreground);margin-top:2rem;font-size:clamp(1.4rem,2.4vw,2.4rem);line-height:1.35}.progress{border:1px solid var(--blood);width:min(900px,100%);height:10px;margin:2.5rem 0 2rem}.progress-fill{background:var(--blood);height:100%;box-shadow:0 0 20px var(--blood);transition:width .4s steps(4,end)}.log{text-align:left;width:min(900px,100%);font-family:var(--font-mono);color:var(--muted-foreground);margin:0 0 2rem;padding:0;font-size:clamp(1.1rem,1.9vw,1.9rem);line-height:1.5;list-style:none}.reticle{aspect-ratio:3/4;border:2px solid var(--blood);width:clamp(180px,22vw,340px);box-shadow:0 0 40px var(--blood-dim), inset 0 0 40px var(--blood-dim);margin:2rem 0;position:relative;overflow:hidden}.reticle-line{background:var(--blood);height:3px;box-shadow:0 0 18px var(--blood);animation:1.6s ease-in-out infinite alternate reticle-sweep;position:absolute;left:0;right:0}.scan-text{font-family:var(--font-mono);letter-spacing:.3em;transition:font-size .3s}.office-img{object-fit:cover;width:100%;height:100%;display:block}img.office-img{filter:grayscale()contrast(1.25)brightness(.75)sepia(.5)hue-rotate(-30deg)saturate(2.5)}.captcha{border:2px solid var(--blood);width:min(540px,92vw,50vh);box-shadow:0 0 60px var(--blood-dim);text-align:left;background:oklch(8% .005 20/.85);margin-top:1rem;padding:.6rem}.captcha-head{background:var(--blood);color:var(--foreground);font-family:var(--font-mono);flex-direction:column;padding:.9rem 1rem;font-size:1.3rem;line-height:1.1;display:flex}.captcha-head strong{letter-spacing:.08em;font-size:2.2rem}.captcha-grid{grid-template-columns:repeat(3,1fr);gap:.35rem;margin:.5rem 0;display:grid}.captcha-tile{aspect-ratio:1;cursor:pointer;background:0 0;border:2px solid #0000;padding:0;position:relative;overflow:hidden}.captcha-tile:after{content:"";opacity:.55;background:repeating-linear-gradient(90deg,oklch(85% .17 95) 0 18px,#000 18px 30px);height:12%;position:absolute;top:58%;left:-20%;right:-20%;transform:rotate(-12deg)}.captcha-grid.is-video{gap:2px}.captcha-grid.is-video .captcha-tile{aspect-ratio:auto}.captcha-grid.is-video .captcha-tile:after{display:none}.captcha-canvas{height:auto}.captcha-tile.is-selected{border-color:var(--foreground)}.captcha-tile.is-selected .office-img{transform:scale(.88)}.captcha-tile.is-flagged .office-img{filter:grayscale()sepia()hue-rotate(-40deg)saturate(5)brightness(.6)}.captcha-tag{z-index:1;font-family:var(--font-mono);color:var(--foreground);text-shadow:0 0 4px #000;font-size:.8rem;position:absolute;top:.25rem;left:.3rem}.captcha-verdict{z-index:2;font-family:var(--font-mono);text-align:center;color:var(--foreground);background:var(--blood);font-size:.95rem;animation:.2s steps(2,end) both reveal;position:absolute;inset:auto 0 .3rem}.captcha-foot{font-family:var(--font-mono);justify-content:space-between;align-items:center;gap:1rem;padding:0 .3rem;font-size:1rem;display:flex}.captcha-verify{cursor:pointer;font-family:var(--font-mono);letter-spacing:.1em;color:var(--foreground);background:var(--blood);border:0;padding:.5rem 1.4rem;font-size:1.3rem}.captcha-verify:disabled{opacity:.6;cursor:default}.captcha-result.is-pending{visibility:hidden}.captcha-result{font-family:var(--font-mono);letter-spacing:.2em;margin-top:1.2rem;font-size:clamp(1.4rem,2.6vw,2.6rem)}.survivor-head{letter-spacing:.08em;margin-top:1.2rem;font-size:clamp(1.8rem,3.6vw,3.6rem);font-weight:700;line-height:1.1}.survivor-pair{gap:clamp(1rem,4vw,4rem);margin:clamp(1.5rem,4vh,3rem) 0 0;display:flex}.survivor-card{border:2px solid var(--border);cursor:pointer;width:clamp(140px,15vw,230px);color:var(--foreground);background:oklch(8% .005 20/.7);flex-direction:column;padding:.6rem;display:flex;position:relative}.survivor-card:not(:disabled):hover,.survivor-card:not(:disabled):focus-visible{border-color:var(--blood);box-shadow:0 0 40px var(--blood-dim);outline:none}.survivor-card:disabled{cursor:default}.survivor-card .office-img{aspect-ratio:4/5;height:auto}.survivor-card.is-saved{border-color:var(--foreground)}.survivor-card.is-gone{border-color:var(--blood)}.survivor-card.is-gone .office-img{filter:grayscale()sepia()hue-rotate(-40deg)saturate(5)brightness(.5)}.survivor-name{font-family:var(--font-mono);letter-spacing:.08em;margin-top:.6rem;font-size:clamp(1.1rem,1.8vw,1.8rem)}.survivor-skip{border:1px solid var(--border);cursor:pointer;font-family:var(--font-mono);letter-spacing:.12em;color:var(--muted-foreground);background:0 0;margin-top:.8rem;padding:.35rem 1.2rem;font-size:1.1rem}.survivor-skip:not(:disabled):hover,.survivor-skip:not(:disabled):focus-visible{color:var(--foreground);border-color:var(--blood);outline:none}.survivor-skip:disabled{visibility:hidden}.survivor-x{color:var(--blood);text-shadow:0 0 30px var(--blood);place-items:center;font-size:clamp(6rem,14vw,14rem);line-height:1;animation:.2s steps(2,end) both reveal;display:grid;position:absolute;inset:0}@keyframes flicker{0%,to{opacity:1}47%{opacity:.85}48%{opacity:1}92%{opacity:.7}93%{opacity:1}}@keyframes grain{0%{transform:translate(0)}25%{transform:translate(-5%,3%)}50%{transform:translate(4%,-4%)}75%{transform:translate(-3%,5%)}}@keyframes blink{50%{opacity:0}}@keyframes scan{0%{top:-120px}to{top:100%}}@keyframes glitch-a{0%{clip-path:inset(10% 0 70%)}20%{clip-path:inset(60% 0 10%)}40%{clip-path:inset(30% 0 50%);transform:translate(-12px)}60%{clip-path:inset(80% 0 5%)}80%{clip-path:inset(0);transform:translate(-4px)}}@keyframes glitch-b{0%{clip-path:inset(50% 0 30%)}30%{clip-path:inset(5% 0 80%);transform:translate(10px)}60%{clip-path:inset(70% 0 15%)}90%{clip-path:inset(20% 0 60%)}}@keyframes shake{0%{transform:translate(0)}25%{transform:translate(2px,-1px)}50%{transform:translate(-2px,1px)}75%{transform:translate(1px,2px)}}@keyframes reveal{0%{opacity:0;filter:blur(5px);transform:translate(-1rem)skew(3deg)}70%{opacity:.7;transform:translate(.4rem)}to{opacity:1;filter:none;transform:none}}@keyframes screen-glitch{0%{filter:none;transform:translate(0)}12%{filter:invert()contrast(2);transform:translate(-1.2rem,.3rem)skew(8deg)}24%{filter:hue-rotate(90deg)saturate(4);clip-path:inset(12% 0 40%);transform:translate(.9rem,-.2rem)}36%{opacity:.2;transform:translate(0)scaleY(1.06)}50%{filter:invert();clip-path:inset(48% 0 8%);transform:translate(1.4rem)skew(-10deg)}64%{opacity:1;filter:contrast(3)brightness(1.6);clip-path:none;transform:translate(-.6rem,.4rem)}78%{opacity:.1;transform:translate(.3rem)}90%{opacity:1;filter:invert();transform:translate(0)}to{opacity:0;filter:none}}@keyframes scare-strobe{0%,22%,44%,66%{background:var(--blood)}11%,33%,55%{background:oklch(97% 0 0)}77%,to{background:var(--blood)}}@keyframes scare-zoom{0%{transform:scale(.3)}to{transform:scale(1)}}@keyframes reticle-sweep{0%{top:0}to{top:calc(100% - 3px)}}@keyframes screen-blink{0%,30%,60%{opacity:0}15%,45%,75%{opacity:1;filter:brightness(2)}to{opacity:0}}@media (width<=700px){.hud--bl,.hud--br{display:none}.hud--tl,.hud--tr{font-size:.8rem}.kicker,.label,.reveal-lead,.threat-name{letter-spacing:.25em}.title{letter-spacing:.06em}.unknown-title{letter-spacing:.02em;font-size:2.6rem}.unknown-sub,.unknown-verdict,.reveal-sub{letter-spacing:.15em}.fine{letter-spacing:.04em}.controls{bottom:1.5rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{animation-duration:.001ms!important;animation-iteration-count:1!important}.noise,.scan-bar{display:none}}
