.crosswind-shell{--accent:#5d8791}.crossword-card{padding:15px}.crossword{display:grid;grid-template-columns:repeat(4,1fr);aspect-ratio:1;border:2px solid #314846;background:#314846;gap:2px}.square{position:relative;background:#fff}.square input{width:100%;height:100%;padding:0;border:0;background:transparent;text-align:center;text-transform:uppercase;font:800 clamp(22px,8vw,30px) var(--font-display);caret-color:#5d8791}.square span{position:absolute;z-index:1;left:3px;top:2px;font-size:7px;font-weight:800}.square.active{background:#dcebed}.square.related{background:#edf4f4}.square.wrong input{color:#ce6c58}.current-clue{min-height:53px;margin-top:12px;padding:10px 12px;border-radius:12px;background:#e7eff0;text-align:left}.current-clue span,.current-clue b{display:block}.current-clue span{color:#537c86;font-size:7px;font-weight:800;letter-spacing:1px}.current-clue b{margin-top:3px;font-size:11px}.clues{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:18px}.clues p{margin:0;color:#5d8791;font-size:8px;font-weight:800;letter-spacing:1.3px}.clues ol{margin:8px 0 0;padding-left:22px}.clues li{margin-bottom:8px;padding-left:2px;color:var(--muted);font-size:9px;line-height:1.3;cursor:pointer}.clues li.active{color:var(--ink);font-weight:800}.cross-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:10px}.home-link{display:grid;place-items:center;margin-top:15px;text-decoration:none;font-size:11px}

/* Keep the crossword and its active clue together on phones. */
.crosswind-shell .game-main{padding-top:8px}
.crosswind-shell .quill-game-intro{display:block;margin-bottom:8px}
.crosswind-shell .quill-game-mascot,.crosswind-shell .quill-game-intro h1,.crosswind-shell .quill-game-intro .subtitle{display:none}
.crosswind-shell .status-line{margin-top:8px;font-size:12px}
.crosswind-shell .crossword-card{margin-top:10px;padding:10px}
.crossword{width:min(100%,280px);margin:auto;grid-template-rows:repeat(4,minmax(0,1fr));grid-template-columns:repeat(4,minmax(0,1fr));border-radius:12px;overflow:hidden}
.square{min-width:0;min-height:0}.square input{min-width:0;border-radius:0;font-size:30px}.square span{font-size:12px;pointer-events:none}
.square.related{background:#edf4f4}.square.active{background:#c6e1e5;box-shadow:inset 0 0 0 2px #416d78}
.wind-center{grid-area:2 / 2 / 4 / 4;display:grid;place-items:center;background:#e7f0f1;color:#5d8791}.wind-center svg{width:80%;height:80%}
.clue-navigation{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:stretch;gap:5px;margin-top:8px}
.clue-navigation button{border:0;border-radius:10px;background:#e7eff0;font-size:28px;min-height:52px}
.current-clue{margin:0;padding:8px;min-height:58px}.current-clue span{font-size:12px}.current-clue b{font-size:1rem;line-height:1.25}
.clues{margin-top:12px;gap:12px}.clues p{font-size:12px}.clues ol{margin-top:4px}.clues li{font-size:.875rem;line-height:1.35;margin:0;min-height:44px;padding:7px 2px}
.cross-actions{margin-top:4px}.cross-actions button{font-size:.875rem}
@media(max-height:700px){.crossword{width:min(100%,224px)}}
@media(max-width:430px){.crosswind-shell .game-main{padding-inline:14px}}

.crosswind-shell .quill-game-copy .eyebrow{margin:0;font-size:12px}

.crosswind-shell.keyboard-open .crossword{width:192px}
.crosswind-shell.keyboard-open .clues,.crosswind-shell.keyboard-open .site-taskbar,.crosswind-shell.keyboard-open .quill-game-intro{display:none}
.crosswind-shell.keyboard-open .game-topbar{height:44px;padding-top:4px;padding-bottom:4px}
.crosswind-shell.keyboard-open .crossword-card{margin-top:6px;padding:6px}
.crosswind-shell.keyboard-open .status-line{margin-top:0}
.crosswind-shell.keyboard-open .game-main{padding-top:0}

/* The square itself marks focus; a letter never needs a text-selection highlight. */
.square input{caret-color:transparent;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
.square input:focus-visible{outline:none}
.square.active{background:#dcebed;box-shadow:inset 0 0 0 2px #73979f}
