:root{color-scheme:dark;background:#000;color:#fff;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0;overflow:hidden;background:#000}.stage,.slide,.slide-layer{position:fixed;inset:0;width:100vw;height:100vh}.slide-layer{opacity:0;transform:translateZ(0);transition:opacity .8s linear}.slide-layer.active{opacity:1;animation:fade-in .8s linear}.slide-image{width:100%;height:100%;object-fit:contain;background:#000}.slide-placeholder{width:100%;height:100%;background:radial-gradient(circle at 20% 20%,#315a9f,transparent 30%),linear-gradient(135deg,#111827,#050914)}.youtube-slide{background:#000}.youtube-slide iframe{width:100%;height:100%;border:0}.slide-overlay-root{position:absolute;inset:0;z-index:2;pointer-events:none;opacity:0;animation:overlay-reveal 15s linear 3s forwards}.overlay-surface{border:1px solid rgba(255,255,255,.16);background:#0f1c3094;box-shadow:0 8px 24px #00000047,0 0 0 1px #00000038,inset 0 1px #ffffff14;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.overlay-surface-brand{background:#0a122073;border-color:#ffffff1f;box-shadow:0 2px 16px #0000004d,0 0 0 1px #0003,inset 0 1px #ffffff0f;opacity:.78}.slide-brand{position:absolute;top:1.25rem;right:1.25rem;z-index:3;border-radius:999px;padding:.6rem 1.1rem .6rem .65rem;pointer-events:none}.brand-lockup{display:flex;align-items:center;gap:.6rem}.brand-mark{width:1.9rem;height:1.9rem;flex-shrink:0;filter:drop-shadow(0 1px 2px rgba(0,0,0,.35))}.brand-word{color:#f8fafc;font-size:1.35rem;font-weight:600;letter-spacing:-.02em;text-shadow:0 1px 2px rgba(0,0,0,.45)}.chyron{position:absolute;left:1.25rem;bottom:1.25rem;max-width:min(44vw,620px);border-radius:1rem;padding:1rem 1.35rem;color:#f8fafc}.chyron h1{margin:0;font-size:clamp(1.35rem,2.2vw,2rem);font-weight:600;line-height:1.2;letter-spacing:-.02em;text-shadow:0 1px 2px rgba(0,0,0,.45)}.chyron p{margin:.35rem 0 0;max-width:100%;color:#f8fafcd1;font-size:clamp(1rem,1.45vw,1.35rem);line-height:1.35;text-shadow:0 1px 2px rgba(0,0,0,.4)}@keyframes overlay-reveal{0%,to{opacity:0}2%,89%{opacity:1}90%{opacity:0}}.beer-list{display:grid;gap:5vh;min-height:100vh;padding:8vh 8vw;background:radial-gradient(circle at top right,rgba(255,255,255,.12),transparent 35%),linear-gradient(135deg,#0b1d17,#020806)}.beer-list h1{margin:0;font-size:7vw}.eyebrow{margin:0;color:#ffd36a;font-size:2vw;letter-spacing:.18em;text-transform:uppercase}.beer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2vw}.beer-grid article{border:2px solid rgba(255,255,255,.18);border-radius:2vw;padding:2vw;background:#ffffff0f}.beer-grid h2{margin:0 0 1vh;font-size:3vw}.beer-grid p,.beer-grid strong{font-size:2vw}.status{display:grid;height:100vh;place-content:center;text-align:center}.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2.5rem;height:100vh;background:radial-gradient(900px 600px at 50% 120%,rgba(120,170,240,.18),transparent 60%),#04070d}.snowball-track{position:relative;width:min(42vw,320px);height:min(42vw,320px);display:grid;place-items:center}.snowball-track:after{content:"";position:absolute;bottom:4%;left:50%;width:70%;height:14px;transform:translate(-50%);background:radial-gradient(ellipse at center,rgba(150,190,245,.35),transparent 70%);filter:blur(2px)}.snowball-roll{width:34%;transform-origin:center bottom;animation:snowball-grow 6s ease-out infinite}.snowball{width:100%;height:auto;display:block;filter:drop-shadow(0 10px 18px rgba(0,0,0,.45));animation:snowball-spin 1.6s linear infinite}.loading-word{margin:0;font-size:clamp(1.1rem,2.4vw,1.6rem);font-weight:600;letter-spacing:.32em;text-transform:uppercase;color:#e2eefbd1;animation:loading-pulse 2.4s ease-in-out infinite}@keyframes snowball-spin{to{transform:rotate(360deg)}}@keyframes snowball-grow{0%{width:26%;opacity:.85}80%{width:64%;opacity:1}to{width:26%;opacity:.85}}@keyframes loading-pulse{0%,to{opacity:.5}50%{opacity:1}}.offline{position:fixed;right:16px;bottom:16px;border-radius:999px;background:#000000a6;padding:8px 12px;color:#ffd36a;font-size:14px}@keyframes fade-in{0%{opacity:0}to{opacity:1}}
