.page{--rv-felt: #2EAD52;--rv-felt-hover: #35BA5A;--rv-line: #111111;--rv-black: #161616;--rv-white: #FFFFFF;--rv-dot: rgba(17, 17, 17, .35);--piece-dark-fill: var(--rv-black)}.rv-wrap{display:flex;justify-content:center}.rv{display:grid;grid-template-columns:repeat(8,1fr);gap:2px;background:var(--rv-line);padding:2px;border:6px solid var(--rv-line);border-radius:var(--radius-md);box-shadow:var(--shadow-card);width:100%;max-width:clamp(300px,calc(100vh - 230px),520px);user-select:none;-webkit-user-select:none}.rv--locked .rv-cell{cursor:default}.rv-cell{aspect-ratio:1;border:0;padding:0;position:relative;display:flex;align-items:center;justify-content:center;background:var(--rv-felt);touch-action:manipulation}.rv:not(.rv--locked) .rv-cell.target:hover{background:var(--rv-felt-hover)}.rv-cell.last{box-shadow:inset 0 0 0 3px var(--color-accent)}.rv-cell.pulse{z-index:1;animation:rv-pulse .5s var(--ease) 1}.rv-cell:focus-visible{outline:3px solid var(--color-surface);outline-offset:-3px;z-index:1}.rv-disc{width:80%;height:80%;border-radius:50%;box-sizing:border-box;box-shadow:0 2px 3px #1116}.rv-disc--light{background:var(--rv-white);border:3px solid var(--piece-light-ring)}.rv-disc--dark{background:var(--rv-black);border:3px solid var(--piece-dark-ring)}.rv-disc.flip{animation:rv-flip .32s var(--ease) both}.rv-disc.pop{animation:rh-pop .24s var(--ease) both}.rv-dot{width:28%;height:28%;border-radius:50%;background:var(--rv-dot);box-sizing:border-box}@keyframes rv-pulse{0%,to{box-shadow:inset 0 0 0 3px var(--color-accent)}50%{box-shadow:inset 0 0 0 3px var(--color-accent),0 0 0 4px var(--color-accent)}}@keyframes rv-flip{0%{transform:scaleX(-1)}50%{transform:scaleX(0)}to{transform:scaleX(1)}}@media (max-width: 420px){.rv{border-width:4px;border-radius:var(--radius-sm)}}
