:root{--void:#04060c}*{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--void);height:100%;overflow:hidden}body{-webkit-font-smoothing:antialiased;overscroll-behavior:none;touch-action:none;font-family:ui-sans-serif,-apple-system,Helvetica Neue,sans-serif}#stage{width:100%;height:100%;display:block;position:fixed;top:0;bottom:0;left:0;right:0}#threshold{background:var(--void);pointer-events:none;z-index:2;place-items:center;transition:opacity 2.6s cubic-bezier(.33,0,.15,1);display:grid;position:fixed;top:0;bottom:0;left:0;right:0}#threshold.dissolved{opacity:0}.ember{background:#fffaf0e6;border-radius:50%;width:3px;height:3px;animation:5.5s ease-in-out infinite breathe;box-shadow:0 0 12px 3px #fff8eb47,0 0 48px 16px #becdff24,0 0 140px 60px #8ca5ff0f}@keyframes breathe{0%,to{opacity:.35;transform:scale(.85)}50%{opacity:1;transform:scale(1.25)}}@media (prefers-reduced-motion:reduce){.ember{animation-duration:11s}}#fallback{z-index:3;background:radial-gradient(120% 90% at 50% 55%,#0b1122 0%,#05070f 55%,#03040a 100%);place-items:center;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}#fallback[hidden]{display:none}.fallback-glow{pointer-events:none;background:radial-gradient(circle,#fffcf680 0%,#d6e0ff33 12%,#96afff17 28%,#6e8cf008 44%,#0000 66%);width:min(150vw,150vh);height:min(150vw,150vh);animation:14s ease-in-out infinite dawn;position:absolute;top:52%;left:50%;transform:translate(-50%,-50%)}.fallback-name,.fallback-static{z-index:2;color:#ffffffe6;letter-spacing:.32em;text-indent:.32em;text-align:center;text-shadow:0 0 30px #fffaf073,0 0 90px #a0b9ff4d;margin:0;font-size:clamp(15px,3.4vw,34px);font-weight:200;position:relative}.fallback-static{z-index:4;background:#04060c;place-items:center;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}@keyframes dawn{0%,to{opacity:.72;transform:translate(-50%,-50%)scale(.94)}50%{opacity:1;transform:translate(-50%,-50%)scale(1.06)}}@media (prefers-reduced-motion:reduce){.fallback-glow{animation:none}}.unseen{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}
