/* Runner: the stairwell. Scene colours are concrete (identical in light and dark). */
.stage .rn { cursor: ew-resize; }
.stage .rn.is-grabbing { cursor: grabbing; }
.stage .rn.is-done { cursor: default; }
.stage .rn .rn-sec.is-held { filter: brightness(1.05); }
.stage .rn .rn-rod.is-held { filter: brightness(1.12); }
.stage .rn .rn-rod { cursor: pointer; }
.stage .rn .rn-sec.is-locked { cursor: default; }

.stage .rn .rn-centre-line { stroke: #f0d27a; stroke-width: 1.4; stroke-linecap: round; }
.stage .rn .rn-centre-under { stroke: #2a2420; stroke-width: 3.2; opacity: .4; stroke-linecap: round; }
.stage .rn .rn-ghost-under { fill: none; stroke: #2a2420; stroke-width: 2.2; opacity: .25; }
.stage .rn .rn-centre-glow { stroke: #f0d27a; stroke-width: 5; opacity: .3; stroke-linecap: round; }
.stage .rn .rn-ghost-line { fill: none; stroke: #f0d27a; stroke-width: 1; stroke-dasharray: 3 2.5; }
.stage .rn .rn-drift { stroke: #d4a640; stroke-width: 1.1; stroke-linecap: round; }
.stage .rn .rn-pill { fill: #f7f3ec; stroke: #c9bda9; stroke-width: .8; }
.stage .rn .rn-pill.is-ok { stroke: #d4a640; stroke-width: 1.1; }
.stage .rn .rn-label { font-family: var(--mono); font-weight: 500; fill: #2a2420; font-variant-numeric: tabular-nums; letter-spacing: -.02em; }
.stage .rn .rn-check { fill: none; stroke: #b8872a; stroke-linecap: round; stroke-linejoin: round; }
.stage .rn .rn-rodtick { stroke: #f0d27a; stroke-width: 1.6; stroke-linecap: round; }
.stage .rn .rn-pill.is-warn { fill: #fbeee6; stroke: #c0714f; stroke-width: 1.1; }

.stage .rn .rn-centre.is-anim .rn-centre-line { stroke-dasharray: 1; animation: rn-draw .7s ease-out both; }
.stage .rn .rn-centre.is-anim .rn-centre-glow, .stage .rn .rn-ghost.is-anim { animation: rn-in .7s ease-out both; }
.stage .rn .rn-tag.is-anim, .stage .rn .rn-rodtag.is-anim { animation: rn-in .35s ease-out both; }
@keyframes rn-draw { from { stroke-dashoffset: 1; } to { stroke-dashoffset: 0; } }
@keyframes rn-in { from { opacity: 0; } to { opacity: 1; } }
