.puzzle-hud{display:flex;justify-content:space-between;gap:10px;width:100%;font:12px/1.5 'Courier New',monospace;color:var(--cyan);margin-bottom:16px}
#puzzle-board{width:100%;border:3px ridge #6c80c7;outline-offset:5px;display:grid;background:#0a1020}
#puzzle-board[data-puzzle=sokoban]{grid-template-columns:repeat(var(--cols),1fr);padding:12px;gap:3px}
.soko-tile{position:relative;aspect-ratio:1;background:#18243a;border:1px solid #27354b}
.soko-tile.wall{background:linear-gradient(135deg,#435a7b,#253d5c);border:3px outset #617c9f}
.soko-tile.goal::before{content:'';position:absolute;inset:28%;border:3px solid #70e5e7;border-radius:50%;box-shadow:0 0 12px #70e5e744}
.soko-tile.crate::after{content:'';position:absolute;inset:7%;background:linear-gradient(45deg,transparent 46%,#956228 47%,#956228 53%,transparent 54%),linear-gradient(-45deg,#e8b75c 46%,#956228 47%,#956228 53%,#e8b75c 54%);border:3px outset #f4d98a}
.soko-tile.crate.goal::after{background:linear-gradient(45deg,transparent 46%,#34786a 47%,#34786a 53%,transparent 54%),#70c8a4;border-color:#a4f0c7}
.soko-tile.player::after{content:'';position:absolute;inset:17%;border-radius:50%;background:radial-gradient(circle at 35% 35%,#fff0f8 2px,#ffacd9 3px);box-shadow:2px 3px #9d5275}
#soko-touch{display:block}.puzzle-legend{font:13px 'Courier New',monospace;display:flex;align-items:center;gap:8px;margin:20px 0}.legend-crate{color:#e8b75c}.legend-goal{color:#70e5e7}.legend-player{color:#ffacd9}
#puzzle-room select{display:block;width:100%;padding:12px;margin:8px 0 20px;background:#0a1225;color:#eee8cd;border:1px solid #617c9f;font:inherit;min-height:44px}
#puzzle-room label{font:12px 'Courier New',monospace;color:var(--cyan)}#puzzle-message{color:var(--yellow);font-size:14px;min-height:44px}
#puzzle-board[data-puzzle=sudoku]{grid-template-columns:repeat(9,minmax(0,1fr));background:#e9e5d3;border:3px solid #7894b2;gap:0}
.sudoku-cell{aspect-ratio:1;min-width:0;padding:0;position:relative;background:#e9e5d3;color:#176374;border:0;border-right:1px solid #b7bdbe;border-bottom:1px solid #b7bdbe;font:clamp(18px,3vw,28px)/1 'Courier New',monospace}
.sudoku-cell.given{color:#172b46;font-weight:bold}.sudoku-cell.related{background:#d8e5df}.sudoku-cell.selected{background:#a7d9d3;box-shadow:inset 0 0 0 3px #276779}.sudoku-cell.mistake{color:#a31839;background:#f3ccd2}.sudoku-cell:focus-visible{outline:3px solid #154b69;outline-offset:-4px;z-index:1}.sudoku-cell.box-right{border-right:3px solid #6b7d8d}.sudoku-cell.box-bottom{border-bottom:3px solid #6b7d8d}
.pencil-notes{display:grid;grid-template-columns:repeat(3,1fr);position:absolute;inset:2px;font:clamp(8px,1.2vw,11px)/1 'Courier New',monospace;color:#375c62}.pencil-notes span{display:flex;align-items:center;justify-content:center}
#number-pad{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;margin-top:18px;width:100%}#number-pad button{background:#24334d;border:2px outset #78909c;min-height:44px;font:18px 'Courier New',monospace}#number-pad button:last-child{font-size:12px}
@media(max-width:760px){.puzzle-hud{font-size:10px}.sudoku-cell{font-size:23px}.pencil-notes{font-size:10px}}
