/* maze */
.maze-wrap{container-type:inline-size;margin:.4em 0}
/* 10x7 cells draw as 41 columns by 15 rows. */
.maze-g{width:fit-content;font-size:min(1.4em,calc(100cqw / 41 / .62),2.6vh);line-height:1;white-space:pre;user-select:none;-webkit-user-select:none}
.maze-v{color:var(--dim)}
.maze-s{text-shadow:0 0 2px var(--fg),0 0 9px var(--glow)}
.maze-at{background:var(--fg);color:var(--bg);text-shadow:none;box-shadow:0 0 8px var(--glow)}
.maze-x{animation:maze-blink 1s steps(1) infinite}
.maze-bar{display:flex;align-items:flex-start;gap:1em;margin:.2em 0}
.maze-side{min-width:0}
.maze-pad{display:grid;flex:none;grid-template-columns:repeat(3,max(44px,2.4em));grid-template-rows:repeat(2,max(44px,2.4em));grid-template-areas:". u ." "l d r";gap:4px;user-select:none;-webkit-user-select:none}
.maze-b{margin:0;padding:0;border:1px solid var(--dim);background:none;color:var(--fg);font:inherit;text-shadow:inherit;cursor:pointer;touch-action:manipulation}
.maze-b:hover{border-color:var(--fg)}
.maze-b:active{border-color:var(--fg);background:rgba(77,255,124,.16)}
.maze-u{grid-area:u}
.maze-l{grid-area:l}
.maze-d{grid-area:d}
.maze-r{grid-area:r}
@media (pointer:fine){.maze-ht{display:none}}
@keyframes maze-blink{50%{opacity:.3}}
@media (prefers-reduced-motion:reduce){.maze-x{animation:none}}
