.spot-tile{background:var(--t-spot);color:var(--graphite)}.off-grid{gap:6px}.off-cell{background:var(--paper);overflow:visible}.off-block{background:var(--graphite);width:62%;height:62%;display:block}.changed-cell{background:var(--paper)}.changed-cell .pip{background:var(--graphite);visibility:hidden;width:42%;height:42%;transform:rotate(45deg)}.changed-cell[data-on=true] .pip{visibility:visible}.game[data-phase=blink] .changed-cell .pip,[data-phase=blink] .changed-cell .pip{visibility:hidden}.piece-field{width:160px;height:160px}.piece-side{stroke:var(--graphite);stroke-width:4px;stroke-linecap:butt}.piece-gap{stroke:var(--line);stroke-width:4px;stroke-dasharray:3 3}.piece-opt{background:var(--t-spot);place-items:center;width:clamp(60px,18vw,88px);height:clamp(60px,18vw,88px);padding:0;display:grid;position:relative}.piece-opt svg{width:100%;height:100%}.trace-wrap{flex-wrap:wrap;justify-content:center;align-items:center;gap:16px;display:flex}.tboard{grid-template-columns:repeat(var(--w), var(--cell));grid-template-rows:repeat(var(--h), var(--cell));background:var(--paper);box-shadow:0 0 0 2px var(--graphite);touch-action:none;-webkit-user-select:none;user-select:none;display:grid;position:relative}.tcell{border:1px solid var(--line);position:relative}.tboard .token{width:calc(var(--cell) * .6);height:calc(var(--cell) * .6);left:calc(var(--x) * var(--cell) + var(--cell) * .2);top:calc(var(--y) * var(--cell) + var(--cell) * .2);background:var(--t-trace);border:3px solid var(--graphite);pointer-events:none;transition:left .14s ease-out,top .14s ease-out;position:absolute}.rm .tboard .token{transition:none}.dpad{grid-template-rows:repeat(3,48px);grid-template-columns:repeat(3,48px);gap:4px;display:grid}.dbtn{border:2px solid var(--graphite);border-radius:var(--r);background:var(--paper);font:700 22px var(--text);cursor:pointer;min-width:44px;min-height:44px}.d-up{grid-area:1/2}.d-left{grid-area:2/1}.d-right{grid-area:2/3}.d-down{grid-area:3/2}.dpad-vertical{grid-template-rows:repeat(2,52px);grid-template-columns:52px}.dpad-vertical .d-left,.dpad-vertical .d-right{display:none}.dpad-vertical .d-up{grid-area:1/1}.dpad-vertical .d-down{grid-area:2/1}.connect .tcell.blocked{background:repeating-linear-gradient(45deg, var(--line) 0 4px, transparent 4px 9px)}.connect .tcell.start{box-shadow:inset 0 0 0 3px var(--graphite)}.connect .tcell.on{background:var(--t-trace)}.connect .tcell.head:after{content:"";background:var(--graphite);position:absolute;inset:30%}.follow .tcell.start{background:var(--t-trace)}.follow[data-hidden=false] .tcell.path{background:color-mix(in srgb, var(--t-trace) 55%, var(--paper))}.follow[data-hidden=false] .tcell.path:before{content:attr(data-step);font:700 15px var(--mono);place-items:center;display:grid;position:absolute;inset:0}.follow .tcell.head:after{content:"";background:var(--graphite);position:absolute;inset:22%}.slide .tcell.rock{background:var(--graphite)}.slide .tcell.exit{background:var(--green)}.slide .tcell.exit:before{content:"EXIT";color:#fff;font:700 10px var(--mono);place-items:center;display:grid;position:absolute;inset:0}.steady-wrap{justify-content:center;align-items:center;gap:16px;display:flex}.steady{width:min(300px,70vw);height:calc(var(--lanes) * 46px);background:var(--paper);box-shadow:0 0 0 2px var(--graphite);grid-template-rows:repeat(var(--lanes), 1fr);touch-action:none;cursor:pointer;display:grid;position:relative}.steady .lane{border-bottom:1px dashed var(--line)}.steady .lane.target{background:color-mix(in srgb, var(--t-trace) 30%, var(--paper))}.steady-line{height:6px;left:0;right:0;top:calc((var(--lane) + .5) * 46px - 3px);background:var(--graphite);transition:top .12s ease-out;position:absolute}.steady-block{width:30px;height:30px;left:44%;top:calc((var(--lane) + .5) * 46px - 15px);background:var(--t-trace);border:3px solid var(--graphite);transition:top 80ms ease-out;position:absolute}.steady-block.on{background:var(--green)}.rm .steady-line,.rm .steady-block{transition:none}.hold-meter{border:2px solid var(--graphite);width:min(300px,70vw);height:12px}.hold-meter>span{background:var(--green);width:0;height:100%;display:block}.tracer{width:calc(var(--n) * 56px);height:calc(var(--n) * 56px);position:relative}.tracer .g-grid{grid-template-columns:repeat(var(--n), 56px);grid-auto-rows:56px;gap:0;position:absolute;inset:0}.tracer-lines{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.tr-seg{stroke:var(--line);stroke-width:.1px;stroke-linecap:round}.tr-seg.done{stroke:var(--graphite);stroke-width:.13px}.tr-arrow{fill:var(--graphite)}.dot{cursor:pointer;touch-action:none;background:0 0;border:0;place-items:center;width:56px;height:56px;padding:0;display:grid;position:relative}.dot:before{content:"";background:var(--steel);width:14px;height:14px;transform:rotate(45deg)}.dot.start:before,.dot[data-done=true]:before{background:var(--t-trace);outline:2px solid var(--graphite);width:18px;height:18px}.dot-n{font:700 12px var(--mono);position:absolute;top:2px;right:6px}.mol{box-sizing:border-box;grid-template-columns:1fr 1fr;gap:12px;width:100%;max-width:380px;display:grid}.mol-field{aspect-ratio:1;border:2px solid var(--graphite);background:var(--paper);width:100%}.opt-wide{min-width:120px;font-size:22px}.dice{gap:14px;display:flex}.dice.hidden>*{visibility:hidden}.die{width:84px;height:84px}.die-face{fill:var(--paper);stroke:var(--graphite);stroke-width:.12px}.die-pip{fill:var(--graphite)}.tally-lamp{clip-path:polygon(50% 0,93% 25%,93% 75%,50% 100%,7% 75%,7% 25%);background:var(--line);width:110px;height:110px}.tally-lamp.lit{background:var(--t-count);box-shadow:inset 0 0 0 6px var(--graphite);outline:0}.g-hex{fill:var(--t-count);stroke:var(--graphite);stroke-width:.05px}.g-sq{fill:var(--steel)}.g-tri{fill:var(--paper);stroke:var(--graphite);stroke-width:.07px}.opt-shape{font:700 16px var(--text);align-items:center;gap:6px;padding:0 12px;display:inline-flex}.opt-glyph{width:26px;height:26px}.frames{gap:10px;display:grid}.frames.hidden>*{visibility:hidden}.frame{width:min(300px,80vw)}.fr-cell{fill:var(--paper);stroke:var(--graphite);stroke-width:.06px}.fr-dot{fill:var(--t-count);stroke:var(--graphite);stroke-width:.06px}.game .count-opts{flex-wrap:wrap;justify-content:center;max-width:100%}.opt-shape{padding:0 10px}
