:root{color-scheme:dark;--background:#030202;--foreground:#dc5a49;--primary:#8b201b;--primary-foreground:#ffe1d5;--border:#34100c;--ring:#dc5a49}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:#030202}
body{font-family:"Courier New",Courier,monospace}
::selection{background:#70211b;color:#ffe1d5}
.void{position:relative;isolation:isolate;min-height:100svh;display:flex;align-items:flex-end;justify-content:center;padding:24px 18px max(7svh,calc(26px + env(safe-area-inset-bottom)));overflow:hidden}
.apparition{width:min(100%,800px);display:flex;flex-direction:column;align-items:center}
.fire-stage{position:fixed;inset:0;width:100%;height:100%;isolation:isolate;overflow:hidden;background:#030202;z-index:0}
.fire-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;display:block;filter:saturate(1.1) contrast(1.04)}
.fire-vignette{position:absolute;inset:0;pointer-events:none;background:linear-gradient(to bottom,#1002020d 0%,transparent 55%,#07020266 100%),radial-gradient(ellipse at center,transparent 50%,#10020233 100%);z-index:3}
.countdown{width:min(100%,760px);position:relative;z-index:5;margin:0;padding:25px 28px;background:radial-gradient(ellipse at center,#090202c9 0%,#09020280 46%,transparent 74%)}
.timer{display:grid;grid-template-columns:1.35fr repeat(3,1fr) 1.35fr;gap:14px;align-items:baseline;text-align:center}
.timer-unit{position:relative;min-width:0}
.digits{font:400 clamp(28px,4.6vw,60px)/1.25 "Courier New",Courier,monospace;font-variant-numeric:tabular-nums;letter-spacing:-.065em;color:#ffd0ac;text-shadow:0 2px 5px #000,0 0 22px #4c0606}
.timer-unit+.timer-unit::before{content:":";position:absolute;left:-10px;top:1px;color:#d98461;font:400 clamp(23px,3.5vw,44px)/1.4 "Courier New",Courier,monospace;text-shadow:0 2px 6px #000}
.timer-unit:last-child::before{content:"."}
.milliseconds .digits{color:#eda17b;text-shadow:0 2px 5px #000,0 0 18px #690b06}
.face-apparition{position:absolute;z-index:2;top:44%;left:50%;transform:translate(-50%,-50%);width:min(62vw,360px,48svh);aspect-ratio:.88;background-image:url('./infernal-portrait-realistic-v2.png');background-size:330% auto;background-position:50% 4.5%;mask-image:radial-gradient(ellipse at center,#000 26%,#000b 43%,transparent 69%);mix-blend-mode:normal;pointer-events:none;animation:face-glimpse 250ms linear forwards}
@keyframes face-glimpse{0%{opacity:0;visibility:visible}18%{opacity:.58}65%{opacity:.66}99%{opacity:0;visibility:visible}100%{opacity:0;visibility:hidden}}
.motion-control{position:absolute;z-index:4;right:max(20px,env(safe-area-inset-right));top:max(20px,env(safe-area-inset-top));border:1px solid #91584466;background:#130706c9;color:#f4c9ad;font:12px Arial,sans-serif;padding:8px 12px;opacity:0;transition:opacity .2s;cursor:pointer}
.fire-stage:hover .motion-control,.motion-control:focus-visible,.motion-control.needs-play{opacity:1}
.motion-control:focus-visible{outline:2px solid #e7a486;outline-offset:4px}
@media(max-width:600px){
.void{padding:16px 10px max(7svh,calc(22px + env(safe-area-inset-bottom)))}
.countdown{padding:22px 6px}.timer{gap:8px}.digits{font-size:clamp(25px,6.9vw,40px)}
.timer-unit+.timer-unit::before{left:-7px;top:0;font-size:clamp(20px,5.4vw,30px)}
}
@media(hover:none){.motion-control{opacity:.65}}
.privacy-link{position:absolute;z-index:8;bottom:max(12px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);border:0;background:#160805c4;padding:6px 9px;color:#e8c3a7;font:12px Arial,sans-serif;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.privacy-dialog{position:fixed;z-index:50;border:1px solid #714630;border-radius:3px;background:#140e0b;color:#e9d5c4;max-width:580px;width:calc(100% - 32px);max-height:85svh;margin:auto;overflow-y:auto;padding:0;font:16px/1.7 Arial,sans-serif}
.privacy-dialog::backdrop{background:#000c}
.privacy-content{position:relative;padding:28px}
.privacy-content h2{font:28px/1.2 Georgia,serif;margin:0 35px 24px 0}
.privacy-content p{margin:0 0 16px}.privacy-content a{text-decoration:underline;text-underline-offset:3px}
.privacy-close{position:absolute;top:14px;right:14px;border:0;background:none;color:#f6dac4;font-size:27px;cursor:pointer}
.privacy-action{border:1px solid #ba8461;background:#392016;padding:11px 16px;color:#ffe1c7;font:13px Arial,sans-serif;cursor:pointer}
.privacy-action:disabled{opacity:.5;cursor:wait}.privacy-error{color:#ffb0a1}
button:focus-visible,a:focus-visible{outline:2px solid #f0b486;outline-offset:4px}

.face-apparition[hidden]{display:none}
.privacy-dialog:not([open]){display:none}
.privacy-noscript{position:relative;z-index:10;background:#140e0b;color:#e9d5c4;padding:20px;font:16px/1.6 Arial,sans-serif}
.privacy-dialog a{color:inherit}
@media(max-width:620px){.privacy-content{padding:23px}}
