:root{--wall:#26402f;--carpet:#5e5347;--ink:#ece7da;--dim:#9fae9f;--red-led:#ff3b2a;--green-led:#6bff7a;--glow:0 0 0;--glow-a:0;--night:.32;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{height:100%;color:var(--ink);background:#0b120e;margin:0;font:500 15px/1.4 Barlow,system-ui,sans-serif;overflow:hidden}.den{background:linear-gradient(var(--wall) 0 50%, var(--carpet) 50%);position:fixed;inset:0;overflow:hidden}.stage{--w:min(max(100vw, 160svh), 250vw);width:var(--w);height:calc(var(--w) * .625);margin:calc(var(--w) * -.3125) 0 0 calc(var(--w) * -.5);transform-origin:50%;transition:transform .9s cubic-bezier(.6,0,.2,1);position:absolute;top:50%;left:50%;container-type:inline-size}.room{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.night{opacity:var(--night);pointer-events:none;background:#040712;transition:opacity .5s;position:absolute;inset:-100%}.lamplight{mix-blend-mode:screen;pointer-events:none;background:radial-gradient(4.5% 5% at 23.5% 49%,#ffecbe80,#0000 70%),radial-gradient(9% 2.2% at 23.5% 59%,#ffd28c59,#0000 70%),radial-gradient(26% 36% at 23.5% 52%,#ffbe6e33,#0000 72%);transition:opacity .4s;position:absolute;inset:0}.stage.is-dark .lamplight{opacity:0}.stage.is-dark{--night:.8}.tvlight{background:radial-gradient(ellipse 22% 26% at 47.5% 41%, rgb(var(--glow) / calc(var(--glow-a) * 1.1)), transparent 75%), radial-gradient(ellipse 62% 75% at 47.5% 52%, rgb(var(--glow) / var(--glow-a)), transparent 70%);mix-blend-mode:screen;pointer-events:none;position:absolute;inset:0}.screen{cursor:zoom-in;background:#070b09;border:0;border-radius:6%/8%;width:25%;height:30%;padding:0;position:absolute;top:25.9%;left:35%;overflow:hidden}.stage.is-close .screen{cursor:zoom-out}.tube{opacity:0;transform-origin:50%;position:absolute;inset:0}.stage.tv-on .tube{opacity:1;animation:.7s ease-out crt-on}.stage.tv-going .tube{opacity:1;animation:.45s ease-in forwards crt-off}@keyframes crt-on{0%{filter:brightness(8);transform:scale(.02,.004)}30%{filter:brightness(5);transform:scaleY(.006)}65%{filter:brightness(1.7);transform:scaleY(1.02)}to{filter:none;transform:none}}@keyframes crt-off{0%{filter:none;transform:none}45%{filter:brightness(4);transform:scaleY(.006)}80%{filter:brightness(8);transform:scale(.004,.006)}to{filter:brightness(8);opacity:0;transform:scale(0)}}.tube canvas{width:100%;height:100%;display:block;position:absolute;inset:0}#snow{image-rendering:auto;filter:contrast(1.3)brightness(.9)}.stage.is-playing #snow{display:none}.osd{color:#7dff7a;text-shadow:0 0 .4cqw #50ff5ae6;letter-spacing:.05em;white-space:pre;text-align:right;font:400 2.1cqw/1 VT323,ui-monospace,monospace;position:absolute;top:7%;right:8%}.glass{pointer-events:none;border-radius:inherit;background:radial-gradient(60% 38% at 30% 18%,#ffffff12,#0000 70%),radial-gradient(80% 80%,#0000 78%,#00000047 100%);position:absolute;inset:0;box-shadow:inset 0 0 .5cqw #0009}.clock{width:4.25%;height:2.8%;color:var(--red-led);text-shadow:0 0 .5cqw #ff321ed9;letter-spacing:.04em;pointer-events:none;place-items:center;font:900 1.45cqw/1 Doto,ui-monospace,monospace;display:grid;position:absolute;top:56%;left:27.5%}.led{pointer-events:none;border-radius:50%;width:.4cqw;height:.4cqw;transition:background .2s,box-shadow .2s;position:absolute;transform:translate(-50%,-50%)}.tv-led{background:#b3241c;top:57.9%;left:57%;box-shadow:0 0 .4cqw #ff2814b3}.stage.tv-on .tv-led{background:var(--green-led);box-shadow:0 0 .5cqw #64ff78e6}.snes-led{background:#3a1412;top:57.9%;left:71%}.stage.is-on .snes-led{background:var(--red-led);box-shadow:0 0 .6cqw #ff3c28f2}.power-knob,.reset-knob{transition:transform .15s}.stage.is-on .power-knob{transform:translateY(-7px)}.stage.resetting .reset-knob{transform:translateY(5px)}.cart-in{opacity:0;transition:transform .5s cubic-bezier(.3,1.4,.6,1),opacity .2s;transform:translateY(-40px)}.stage.has-cart .cart-in{opacity:1;transform:none}.stage.has-cart .cart-out{display:none}.note{aspect-ratio:1;color:#3a3320;pointer-events:none;background:linear-gradient(#fff38a,#f7e468);width:7.1%;margin:0;padding:.7cqw .6cqw;font:600 1.15cqw/1.15 Caveat,cursive;position:absolute;top:31%;left:63.9%;transform:rotate(-4deg);box-shadow:0 .4cqw .6cqw #00000059}.note span{color:#8a2a1f;margin-top:.4cqw;display:block}.spot{cursor:pointer;background:0 0;border:0;border-radius:8px;padding:0;position:absolute}.spot:focus-visible,.screen:focus-visible{outline-offset:3px;outline:2px solid #ffd36b}.spot-power{width:2.7%;height:3.6%;top:52.6%;left:65.75%}.spot-reset{width:2.7%;height:3.6%;top:52.6%;left:76%}.spot-tv{width:2.5%;height:2.4%;top:56.7%;left:57.6%}.spot-lamp{width:6.8%;height:9.2%;top:44.6%;left:20.1%}.spot-cart{width:7%;height:8%;top:91.5%;left:53%}.spot-pad{width:15%;height:9.5%;top:90.5%;left:37.5%}.stage.has-cart .spot-cart{display:none}.stage:not(.has-cart) .spot-cart{animation:2.4s ease-in-out infinite hint}@keyframes hint{50%{box-shadow:0 0 0 .3cqw #ffd36b8c}}.den-back{top:max(14px, env(safe-area-inset-top));left:max(16px, env(safe-area-inset-left));z-index:2;color:var(--ink);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;background:#080c0a99;border:1px solid #ece7da40;border-radius:3px;padding:7px 12px;font:700 .75rem/1 Barlow,sans-serif;text-decoration:none;position:fixed}.den-back:hover{border-color:var(--ink)}.den-closer{left:auto;right:max(16px, env(safe-area-inset-right))}.den-closer[hidden]{display:none}.den-status,.den-keys{z-index:2;text-align:center;pointer-events:none;width:max-content;max-width:calc(100vw - 32px);margin:0;position:fixed;left:50%;transform:translate(-50%)}.den-status{top:calc(54px + env(safe-area-inset-top));background:#080c0ac7;border-radius:3px;padding:8px 14px;font-size:.9rem}.den-status:empty{display:none}.den-status[data-tone=error]{color:#ffb3a6}.den-keys{top:max(18px, env(safe-area-inset-top));max-width:min(100vw - 340px,62em);color:var(--dim);text-shadow:0 1px 2px #000;font:500 .72rem/1.5 IBM Plex Mono,ui-monospace,monospace;transition:opacity .4s}.den-keys kbd{font:inherit;color:var(--ink)}.stage.is-close~.den-keys,body.is-close .den-keys{opacity:0}@media (pointer:coarse){.den-keys{display:none}}@media (prefers-reduced-motion:reduce){.stage,.cart-in{transition:none}.stage.tv-on .tube,.stage.tv-going .tube{animation-duration:10ms}.stage:not(.has-cart) .spot-cart{animation:none}}
