:root{--bg:#0B0B0C;--fg:#FFFFFF;--fg-dim:rgba(255,255,255,0.64);--panel:#141416;--chip:rgba(11,11,12,0.72);--line:rgba(255,255,255,0.12);--line-hover:rgba(255,255,255,0.28);color-scheme:dark}*{box-sizing:border-box}body,html{margin:0;height:100%;background:var(--bg);color:var(--fg);font:14px/1.45 -apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;-webkit-font-smoothing:antialiased}.stage{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;overflow:hidden}.stage canvas{display:block;background:var(--bg)}.loader{position:absolute;width:120px;height:2px;background:rgba(255,255,255,.14);overflow:hidden}.loader:after{content:"";position:absolute;inset:0;background:var(--fg);transform:translateX(-100%);animation:slide 1.1s ease-in-out infinite}@keyframes slide{to{transform:translateX(100%)}}.notice{position:absolute;padding:12px 18px;color:var(--fg-dim)}.btn,.notice,.skip{border-radius:999px;background:var(--chip);border:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.btn,.skip{height:40px;padding:0 16px;color:var(--fg);font:500 14px/1 inherit;cursor:pointer;transition:border-color .2s ease-out,background .2s ease-out;display:inline-flex;align-items:center;gap:8px;text-decoration:none}.btn:hover,.skip:hover{border-color:var(--line-hover)}.skip{position:absolute;right:20px;bottom:20px;opacity:.7}.skip:hover{opacity:1}.topbar{position:absolute;top:20px;right:20px;display:flex;gap:10px}.card{position:fixed;right:20px;top:50%;transform:translateY(-50%);width:320px;background:var(--panel);border-radius:16px;padding:20px;box-shadow:0 24px 60px rgba(0,0,0,.5);z-index:20}.card img{width:100%;height:auto;aspect-ratio:1;border-radius:10px;display:block;object-fit:cover}.card h2{margin:14px 0 4px;font:600 20px/1.25 inherit}.card .meta{color:var(--fg-dim);margin:0 0 2px}.card .close{position:absolute;top:12px;right:12px;width:32px;height:32px;border-radius:999px;background:rgba(0,0,0,.5);border:0;color:var(--fg);cursor:pointer;font-size:16px;line-height:1}.card .actions{display:flex;gap:8px;margin-top:14px}@media (max-width:720px){.card{right:0;left:0;top:auto;bottom:0;width:auto;transform:none;border-radius:16px 16px 0 0}}.teaser{position:fixed;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;padding:24px;text-align:center}.teaser svg{width:min(420px,72vw);height:auto}.teaser p{color:var(--fg-dim);margin:0;max-width:30rem;font-size:15px}.teaser .count{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--fg)}