:root{--rv-accent:var(--world-accent,#b9f36b);--rv-ink:var(--world-bg,#0d0d0f);--rv-panel:var(--world-panel,rgba(32,18,6,.72));--rv-line:var(--world-line,rgba(185,243,107,.18));--rv-text:#f5f5f5;--rv-muted:#a6a6ad;--rv-ease:cubic-bezier(.23,1,.32,1)}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--rv-ink);color:var(--rv-text);font-family:Heebo,system-ui,sans-serif}body{min-height:100vh;overflow-x:hidden}.rv-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px clamp(16px,4vw,42px);background:color-mix(in srgb,var(--rv-panel) 86%,transparent);border-bottom:1px solid var(--rv-line);backdrop-filter:blur(18px) saturate(1.18)}.rv-back{color:var(--rv-muted);text-decoration:none;font-size:.85rem;padding:8px 14px;border:1px solid var(--rv-line);border-radius:999px;transition:all .18s var(--rv-ease)}.rv-back:hover{color:var(--rv-text);border-color:var(--rv-accent);transform:translateY(-1px)}.rv-brand{display:grid;justify-items:center;font-weight:800;letter-spacing:.08em}.rv-brand small{font-size:.58rem;color:var(--rv-accent);letter-spacing:.28em;margin-top:2px}.rv-tools{display:flex;align-items:center;gap:9px}.rv-tools .tw-world-picker{position:static}.rv-lang{width:34px;height:34px;border:1px solid var(--rv-line);border-radius:10px;background:transparent;color:var(--rv-accent);font-size:1.1rem;cursor:pointer}.rv-shell{width:min(620px,calc(100% - 28px));margin:0 auto;padding:clamp(44px,9vh,96px) 0 56px}.rv-screen{display:none;animation:rvIn .32s var(--rv-ease) both}.rv-screen.active{display:block}.rv-kicker{margin:0 0 10px;color:var(--rv-accent);font-size:.68rem;letter-spacing:.26em;font-weight:800}.rv-screen h1{font-size:clamp(2.2rem,8vw,4.2rem);line-height:1.02;letter-spacing:-.04em;margin:0 0 16px}.rv-lede{max-width:460px;color:var(--rv-muted);font-size:1rem;line-height:1.7}.rv-menu-preview{height:150px;margin:34px 0;display:grid;grid-template-columns:repeat(6,1fr);gap:8px;padding:22px;border:1px solid var(--rv-line);border-radius:24px;background:linear-gradient(135deg,rgba(141,168,255,.12),rgba(255,255,255,.03));box-shadow:0 22px 70px -32px rgba(0,0,0,.85)}.rv-menu-preview span{border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff,#b8c7ff 55%,#5664b0);box-shadow:0 5px 12px rgba(0,0,0,.3);align-self:center}.rv-menu-preview span:nth-child(even){background:radial-gradient(circle at 35% 30%,#697bff,#202769 62%,#08091a)}.rv-actions{display:flex;flex-wrap:wrap;gap:12px}.rv-btn{min-width:156px;padding:14px 18px;border:1px solid var(--rv-line);border-radius:14px;background:rgba(255,255,255,.04);color:var(--rv-text);font:700 .92rem Heebo,system-ui,sans-serif;cursor:pointer;text-align:start;transition:transform .16s var(--rv-ease),border-color .18s,background .18s}.rv-btn span{display:block}.rv-btn small{display:block;color:var(--rv-muted);font-size:.62rem;letter-spacing:.12em;margin-top:4px}.rv-btn:hover{transform:translateY(-2px);border-color:var(--rv-accent);background:rgba(255,255,255,.08)}.rv-btn:active{transform:scale(.97)}.rv-btn.primary{background:linear-gradient(135deg,var(--rv-accent),#5d66d6);color:#08091a;border-color:transparent}.rv-home-link{display:inline-block;margin-top:24px;color:var(--rv-muted);font-size:.83rem}.rv-game-top{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.rv-game-top h1{font-size:clamp(2rem,6vw,3.5rem)}.rv-score{display:flex;gap:10px}.rv-score>div{min-width:58px;padding:8px 9px;border:1px solid var(--rv-line);border-radius:12px;background:var(--rv-panel);text-align:center}.rv-score i{display:block;width:15px;height:15px;margin:0 auto 5px;border-radius:50%}.rv-score b{display:block;font-size:1.25rem;line-height:1}.rv-score small{font-size:.55rem;color:var(--rv-muted);letter-spacing:.12em}.dark-dot{background:#15152a;box-shadow:inset 0 1px 2px #8c98ff}.light-dot{background:#f4f1e9;box-shadow:inset 0 -1px 2px #9da8d4}.rv-status{display:flex;justify-content:space-between;gap:10px;margin:6px 0 16px;color:var(--rv-muted);font-size:.83rem}.rv-status strong{color:var(--rv-accent)}.rv-board{display:grid;grid-template-columns:repeat(8,1fr);gap:5px;padding:8px;border:1px solid var(--rv-line);border-radius:18px;background:linear-gradient(145deg,var(--world-bg-2,#17171a),var(--world-bg,#0d0d0f));box-shadow:0 28px 70px -32px rgba(0,0,0,.92),inset 0 1px 0 rgba(255,255,255,.14)}.rv-cell{position:relative;aspect-ratio:1;border:0;border-radius:7px;background:color-mix(in srgb,var(--rv-accent) 28%,var(--world-bg-2,#17171a));cursor:pointer;display:grid;place-items:center;transition:background .16s,transform .16s var(--rv-ease)}.rv-cell:hover,.rv-cell.legal:focus-visible{background:color-mix(in srgb,var(--rv-accent) 52%,var(--world-bg-2,#17171a));transform:translateY(-2px)}.rv-cell.legal::after{content:"";width:23%;aspect-ratio:1;border-radius:50%;background:var(--rv-accent);opacity:.72;box-shadow:0 0 13px var(--rv-accent)}.rv-disc{width:78%;aspect-ratio:1;border-radius:50%;animation:rvDisc .22s var(--rv-ease) both}.rv-disc.dark{background:radial-gradient(circle at 33% 27%,#8192ff,#272958 58%,#0b0c1e);box-shadow:0 5px 8px rgba(0,0,0,.38),inset 0 1px 2px rgba(255,255,255,.45)}.rv-disc.light{background:radial-gradient(circle at 33% 27%,#fff,#d8e1ff 60%,#a4b0dd);box-shadow:0 5px 8px rgba(0,0,0,.3),inset 0 -1px 2px rgba(70,80,140,.4)}.rv-rule{margin:16px 2px 0;color:var(--rv-muted);font-size:.78rem;line-height:1.6}.rv-result{font-size:1.3rem;color:var(--rv-accent);font-weight:700}.rv-scoreline{color:var(--rv-muted);margin:8px 0 26px}.tw-post-game-review{margin-top:20px!important}@keyframes rvIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes rvDisc{from{opacity:0;transform:scale(.65)}to{opacity:1;transform:none}}@media(max-width:520px){.rv-header{padding-inline:14px}.rv-brand{font-size:.87rem}.rv-shell{width:min(100% - 20px,620px)}.rv-board{gap:3px;padding:5px}.rv-game-top{align-items:flex-start;flex-direction:column}.rv-score{align-self:stretch;justify-content:flex-end}.rv-status{font-size:.75rem}.rv-btn{flex:1;min-width:0}}@media(prefers-reduced-motion:reduce){.rv-screen,.rv-disc{animation:none}.rv-btn,.rv-cell{transition:none}}
