.practice-game .game-actions{flex-wrap:wrap;justify-content:flex-start;margin-block:12px;gap:8px}
.practice-game .status{min-height:48px}.practice-game .tiles{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}
.practice-game .tiles button{font:700 24px var(--font-mono);width:48px;height:48px;padding:0;background:var(--surface);color:var(--primary)}
.practice-game #board-title{font-size:20px;margin-block:8px 12px}.practice-game .input-row{grid-template-columns:1fr}
.practice-game #replace-check{border:1px solid var(--border);padding:12px;margin-top:16px;background:var(--surface)}
.practice-game #result{font-size:20px;border-top:2px solid var(--primary);padding-top:12px;overflow-wrap:anywhere}
.practice-game #storage-status{font-size:14px}.practice-game button[aria-pressed=true]{background:var(--highlight);color:var(--primary);border-width:2px}
.practice-page .section{max-width:760px;font-size:18px;line-height:1.7}.practice-page .section h2{font-size:24px;margin-top:24px}
.practice-game button:active:not(:disabled){transform:translateY(1px)}
.practice-game .game-actions button{font-size:16px}
.practice-game .groups-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.practice-game .groups-tiles button{width:100%;height:auto;min-height:52px;padding:8px 2px;font:600 16px var(--font-sans);overflow-wrap:anywhere}
.practice-game #found p{background:var(--surface);border-left:3px solid var(--primary);padding:10px;font-size:16px}
@media(max-width:500px){.practice-game .groups-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}
.path-board{position:relative;width:min(100%,320px);aspect-ratio:1;margin:16px auto;touch-action:none;user-select:none}
.path-board svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:0;overflow:visible}.path-board polyline{fill:none;stroke:var(--primary);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.path-board button{font:700 24px var(--font-mono);padding:0;min-width:52px;min-height:52px;color:var(--primary);background:var(--surface);z-index:1;touch-action:none}
.path-board.ring button{position:absolute;transform:translate(-50%,-50%);width:52px;height:52px;border-radius:50%}
.path-board.ring button:active:not(:disabled){transform:translate(-50%,-50%)}
.practice-game details{font-size:14px;margin-top:16px}.practice-game summary{cursor:pointer;min-height:44px;padding:10px 0}
.garden-letters{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:18px 0}.garden-letters button{font:700 24px var(--font-mono);padding:8px 0;min-height:52px;color:var(--primary);background:var(--surface)}
.garden-letters .required-letter{background:var(--highlight);border-width:2px}
@media(max-width:400px){.garden-letters{grid-template-columns:repeat(3,minmax(0,1fr))}}
.path-board.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(3,minmax(0,1fr));gap:8px}
.path-board.grid button{position:relative;width:100%;height:100%;border-radius:var(--radius)}
