*{box-sizing:border-box}html,body,#root{overscroll-behavior:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;background:#2a1e2e;width:100%;height:100%;margin:0;padding:0;font-family:ui-monospace,Menlo,Consolas,Courier New,monospace;overflow:hidden}#root{position:fixed;inset:0}.stage{position:absolute;inset:0}.stage canvas{image-rendering:pixelated;image-rendering:crisp-edges;touch-action:none;display:block}.fx{pointer-events:none;position:fixed;inset:0}.fx.grain{opacity:.075;mix-blend-mode:overlay;will-change:transform;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix type='saturate' values='0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");background-size:220px 220px;width:220%;height:220%;animation:.7s steps(7,end) infinite grain;inset:-60%}.fx.dither{opacity:.035;mix-blend-mode:multiply;background-image:repeating-conic-gradient(#000 0 25%, transparent 0 50%);background-size:2px 2px}.fx.vignette{background:radial-gradient(#28162800 52%,#2816286b 100%)}@keyframes grain{0%{transform:translate(0)}15%{transform:translate(-3%,-4%)}30%{transform:translate(2%,-2%)}45%{transform:translate(-1%,3%)}60%{transform:translate(3%,1%)}75%{transform:translate(-2%,4%)}90%{transform:translate(1%,-3%)}to{transform:translate(0)}}.hint{left:0;right:0;bottom:calc(26px + env(safe-area-inset-bottom));text-align:center;letter-spacing:.26em;text-transform:uppercase;color:#ffeedcc7;text-shadow:0 1px 2px #3c1e3280;pointer-events:none;opacity:0;font-size:11px;transition:opacity 1.4s;position:fixed}.hint.shown{opacity:1}.hint.gone{opacity:0;transition:opacity .9s}.xlink{top:calc(14px + env(safe-area-inset-top));right:calc(14px + env(safe-area-inset-right));z-index:5;color:#ffeedcb8;opacity:0;-webkit-tap-highlight-color:transparent;background:#3c203438;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;text-decoration:none;transition:opacity 1.6s .6s,color .25s,background .25s;display:flex;position:fixed}.xlink.shown{opacity:1}.xlink:hover,.xlink:focus-visible{color:#fff3e6;background:#3c20346b;outline:none}.veil{z-index:10;opacity:1;background:#2a1e2e;justify-content:center;align-items:center;transition:opacity 1.8s,visibility 0s linear 1.8s;display:flex;position:fixed;inset:0}.veil.done{opacity:0;visibility:hidden;pointer-events:none}.veil-dot{background:#f2b07a;border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:.25;transform:scale(.8)}50%{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.fx.grain{animation:none}.veil-dot{opacity:.8;animation:none}}
