:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ivory:#e8dfca;--wine:#4a131b;background:#050505;font-family:Georgia,Times New Roman,serif}*{box-sizing:border-box}html,body,#game{overscroll-behavior:none;background:#050505;width:100%;height:100%;margin:0;overflow:hidden}body{touch-action:none;-webkit-user-select:none;user-select:none}#scene{outline:none;width:100%;height:100%;display:block}#grade,#grain,#curtain{pointer-events:none;position:fixed;inset:0}#grade{mix-blend-mode:multiply;z-index:3;background:radial-gradient(circle at 50% 44%,#0000 38%,#05000226 76%,#00000075 118%),linear-gradient(#0c14190a,#28040214)}#grain{opacity:.075;z-index:4;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.92' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.76'/%3E%3C/svg%3E");animation:.23s steps(2,end) infinite grain}@keyframes grain{0%{transform:translate(0)}25%{transform:translate(-2%,1%)}50%{transform:translate(1%,-2%)}75%{transform:translate(2%,2%)}}#reticle{z-index:8;opacity:.62;pointer-events:none;width:18px;height:18px;transition:opacity .15s,transform .15s;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}#reticle:before,#reticle:after,#reticle i:before,#reticle i:after{content:"";background:#f4ead5e6;position:absolute;box-shadow:0 0 7px #ffe1b857}#reticle:before{width:1px;height:5px;top:0;left:8px}#reticle:after{width:1px;height:5px;bottom:0;left:8px}#reticle i:before{width:5px;height:1px;top:8px;left:0}#reticle i:after{width:5px;height:1px;top:8px;right:0}#reticle.active{opacity:1;transform:translate(-50%,-50%)scale(1.26)}#hand{z-index:8;color:#f2e8d3eb;letter-spacing:.15em;text-transform:uppercase;text-shadow:0 1px 7px #000,0 0 16px #000;white-space:nowrap;min-height:1.2em;font:500 11px/1.2 ui-sans-serif,system-ui,sans-serif;position:fixed;top:calc(50% + 29px);left:50%;transform:translate(-50%)}#room-name{z-index:8;color:#e8ddc6c7;letter-spacing:.22em;text-transform:uppercase;opacity:0;text-shadow:0 2px 8px #000;font-size:11px;transition:opacity 1s;position:fixed;bottom:26px;left:28px}#room-name.show{opacity:1}#marrow-counter{right:max(24px, env(safe-area-inset-right));top:max(22px, env(safe-area-inset-top));z-index:8;color:#e6dbc16b;letter-spacing:.2em;text-shadow:0 1px 8px #000,0 0 18px #000;opacity:.56;pointer-events:none;align-items:center;gap:10px;font:10px/1 ui-monospace,Cascadia Mono,monospace;transition:color .5s,opacity .5s,transform .5s;display:flex;position:fixed}#marrow-counter i{background:#e6dbc17a;border-radius:4px;width:18px;height:5px;position:relative;transform:rotate(-17deg);box-shadow:0 0 8px #e6dbc11f}#marrow-counter i:before,#marrow-counter i:after{content:"";background:#e6dbc17a;border-radius:55% 45% 52% 48%;width:8px;height:9px;position:absolute;top:-2px}#marrow-counter i:before{left:-4px;transform:rotate(28deg)}#marrow-counter i:after{right:-4px;transform:rotate(-28deg)}#marrow-counter.changed{color:#ffecc0f0;opacity:1;animation:1.2s ease-out marrow-pulse;transform:translateY(2px)scale(1.07)}@keyframes marrow-pulse{0%{filter:blur(4px);letter-spacing:.5em}22%{filter:blur()}48%{text-shadow:0 0 14px #ffe7afd1,0 2px 10px #000}to{letter-spacing:.2em}}#veil,#pause{z-index:20;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:radial-gradient(circle at 50% 46%,#5a1a152e,#0000 37%),linear-gradient(120deg,#080809db,#000000f5);place-items:center;display:grid;position:fixed;inset:0}#veil.hidden{opacity:0;visibility:hidden;transition:opacity 1.5s,visibility 0s 1.5s}.title-lockup{text-align:center;width:min(88vw,600px);padding:28px}.eyebrow,.invitation,.controls{text-transform:uppercase;letter-spacing:.28em}.eyebrow{color:#9e8066;margin:0 0 20px;font-size:10px}h1{color:var(--ivory);letter-spacing:-.055em;text-shadow:0 10px 60px #000;margin:0;font-size:clamp(52px,10vw,114px);font-weight:400;line-height:.78}.invitation{color:#e8dfcdbd;margin:32px 0 22px;font-size:10px}.controls{color:#e8dfcd5c;margin-top:20px;font:9px ui-sans-serif,system-ui}button{min-width:140px;color:var(--ivory);letter-spacing:.24em;cursor:pointer;background:#260b0e61;border:1px solid #e0cfb147;padding:12px 22px;font:11px Georgia,serif;transition:background .2s,border-color .2s,transform .2s}button:hover,button:focus-visible{background:#5c181f85;border-color:#e0cfb1a8;outline:none;transform:translateY(-1px)}#pause{align-content:center;gap:16px}#pause p{letter-spacing:.24em;color:#cdbfa9}#pause[hidden]{display:none}#curtain{z-index:14;opacity:0;background:#020203;transition:opacity .4s}#curtain.closed{opacity:1}#announce{z-index:12;text-align:center;color:#ede1cce0;letter-spacing:.24em;text-transform:uppercase;opacity:0;text-shadow:0 2px 12px #000;max-width:70vw;font-size:10px;transition:opacity .8s;position:fixed;top:17%;left:50%;transform:translate(-50%)}#announce.show{opacity:1}#touch-ui{z-index:10;pointer-events:none;display:none;position:fixed;inset:0}.touch-zone{opacity:.55;background:radial-gradient(circle,#e0d3be08,#0000 66%);border:1px solid #eee5d214;border-radius:50%;width:42vw;max-width:180px;height:42vw;max-height:180px;position:absolute;bottom:22px}.touch-zone b{border:1px solid #eee5d240;border-radius:50%;width:48px;height:48px;position:absolute;top:calc(50% - 24px);left:calc(50% - 24px);box-shadow:inset 0 0 16px #ffffff0a}#move-zone{left:18px}#look-zone{right:18px}.touch-action{pointer-events:auto;color:#eee5d2d1;letter-spacing:.12em;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);touch-action:manipulation;background:#0908087a;border:1px solid #eee5d238;border-radius:50%;width:64px;min-width:0;height:42px;font:9px/1 Georgia,serif;position:absolute;right:28px}.touch-action:active,.touch-action.active{color:#f0d9ad;background:#482b1da8;border-color:#e2bc79b8}#touch-crouch{bottom:210px}#touch-throw{bottom:158px;right:96px}#touch-jump{bottom:210px;right:98px}#touch-pause{opacity:.62;width:58px;height:34px;top:14px;left:14px;right:auto}@media (pointer:coarse),(max-width:700px){#touch-ui{display:block}.controls{display:none}#room-name{bottom:12px;left:18px}#marrow-counter{transform-origin:100% 0;top:15px;right:16px;transform:scale(.9)}}@media (prefers-reduced-motion:reduce){#grain{animation:none}*,:before,:after{scroll-behavior:auto!important}}
