/* Mechanic: an editable word path. The vertical trace records every edit. */
:root { --t-accent:#b7c6a5; }
.game-intro h1 { font-family:var(--cab-sans); font-size:1.375rem; line-height:1.3; font-weight:500; letter-spacing:-.02em; }
.game-intro h1 strong { font:600 1.5rem var(--cab-mono); letter-spacing:.02em; }
.game-intro h1 strong:last-child { text-decoration:none; color:var(--t-success); }
.ladder { margin:20px 0; padding-left:8px; max-height:440px; background-position:17px 0; }
.ladder-row,.route-row { border-radius:0; box-shadow:none; }
.word-form { padding:0; border:0; }
.input-wrap { border-radius:0; background:var(--t-panel); }
#word-input { font:500 22px var(--cab-mono); letter-spacing:.09em; }
#submit-word { border-radius:0; }
.solution { margin-inline:0; border-radius:0; }
/* The h1 states the puzzle (start → goal), not a decorative title: keep it visible on phones. */
@media(max-width:720px){.game-intro>div:first-child{position:static;width:auto;height:auto;overflow:visible;clip-path:none;white-space:normal}.game-intro h1 strong{display:inline;font-size:24px}.ladder{max-height:42vh}.form-heading label{white-space:nowrap}.form-meta{min-width:0}}
