/* V0.274 Sudoku — game-first solve ergonomics */
.sudoku-page{max-width:1060px}
.sudoku-page .gameheader{margin-bottom:10px;align-items:end}
.sudoku-page .gameheader h1{margin-bottom:.3rem}
.sudoku-page .gameheader p{max-width:760px;margin-bottom:0}
.sudoku-panel{position:relative}
.v274-quickbar{order:0}.sudoku-page .sudoku-meta{order:1}.sudoku-page .sudoku-board{order:2}.sudoku-page .sudoku-pad{order:3}.sudoku-page .sudoku-actions{order:4}.v274-hint-row{order:5}.sudoku-page #status{order:6}.sudoku-page .cta.compact{order:7}.v274-more{order:8}.sudoku-print-heading{order:9}
.v274-quickbar{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 10px}.v274-quickbar .tool-btn{min-width:150px;flex:0 1 190px}
.sudoku-page .sudoku-meta{margin:8px 0 12px;gap:7px}.sudoku-page .sudoku-meta>span{padding:7px 9px}
.sudoku-page .sudoku-board{width:min(100%,540px);margin-inline:auto}
.sudoku-page .sudoku-pad{width:min(100%,540px);margin:10px auto 0;gap:6px}
.sudoku-page .sudoku-actions{width:min(100%,680px);margin:10px auto 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}
.sudoku-page .sudoku-actions .tool-btn{min-width:0;padding:8px 6px;min-height:52px}.sudoku-page .sudoku-actions .tool-btn strong{font-size:.87rem}.sudoku-page .sudoku-actions .tool-btn small{font-size:.7rem}
.sudoku-page .tool-btn.active{outline:2px solid var(--accent);outline-offset:-2px;background:color-mix(in srgb,var(--accent) 10%,var(--card))}
.v274-hint-row{width:min(100%,680px);margin:8px auto 0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:stretch}.v274-hint-preview{border:1px solid color-mix(in srgb,var(--accent) 35%,var(--line));border-radius:12px;background:color-mix(in srgb,var(--accent) 7%,var(--card));padding:9px 11px}.v274-hint-preview strong,.v274-hint-preview span{display:block}.v274-hint-preview span{margin-top:3px;color:var(--muted);line-height:1.4;font-size:.86rem}.v274-hint-row .btn{min-width:112px}
.v274-more{width:min(100%,860px);margin:12px auto 0;border-top:1px solid var(--line);padding-top:8px}.v274-more>summary{cursor:pointer;font-weight:850;padding:8px 2px;color:var(--ink)}.v274-more-inner{padding:6px 0 0}.v274-more-tools{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.v274-more-tools .tool-btn{min-width:0}
.v274-more .v190-coach{margin-top:10px}.v274-more .v190-coach-head p{font-size:.88rem}.v274-more .v190-coach-actions{margin-top:8px}
#sudokuGame.v274-paused #grid{visibility:hidden}#sudokuGame.v274-paused::after{content:'Paused';position:absolute;left:50%;top:42%;transform:translate(-50%,-50%);font-size:1.2rem;font-weight:900;border:1px solid var(--line);background:var(--card);border-radius:999px;padding:10px 18px;box-shadow:0 8px 28px rgba(0,0,0,.12)}
.sudoku-page .s-cell.mistake:not(.given){background:color-mix(in srgb,#dc2626 12%,var(--card));box-shadow:inset 0 0 0 2px color-mix(in srgb,#dc2626 55%,transparent)}
.sudoku-page .cta.compact{width:min(100%,680px);margin:9px auto 0}.sudoku-page .cta.compact .btn{width:100%}
@media(max-width:760px){
 body:has(.sudoku-page) .mobile-dock,
 body:has(.sudoku-page) .preview-note,
 body:has(.sudoku-page) .topbar,
 body:has(.sudoku-page) .game-guide{display:none!important}
 body:has(.sudoku-page){padding-bottom:12px}
 .sudoku-page{padding-inline:4px;margin-top:0}
 .sudoku-page .mode-switch{margin-top:4px;margin-bottom:4px}
 .sudoku-page .gameheader{margin:2px 0 5px;min-height:0;align-items:center}
 .sudoku-page .gameheader .scorebox,.sudoku-page .gameheader .eyebrow,.sudoku-page .gameheader p{display:none!important}
 .sudoku-page .gameheader h1{font-size:1.3rem;line-height:1.15;margin:0}
 .sudoku-page .practice-options{margin:3px 0 5px;gap:4px;min-height:0}
 .sudoku-page .practice-options .subtle{display:none}
 .sudoku-page .practice-options a{padding:5px 8px;font-size:.78rem;line-height:1.1}
 .sudoku-panel{padding:6px!important}
 .v274-quickbar{margin:0 0 5px;gap:5px}
 .v274-quickbar .tool-btn{flex:1 1 0;min-width:0;min-height:36px;padding:5px 6px}
 .v274-quickbar .tool-btn small{display:none}
 .sudoku-page .sudoku-meta{display:flex;flex-wrap:nowrap;margin:2px 0 5px;gap:5px;justify-content:center}
 .sudoku-page .sudoku-meta>span{display:none!important}
 .sudoku-page .sudoku-meta>span:nth-child(2),.sudoku-page .sudoku-meta>span:nth-child(8){display:inline-flex!important;min-width:0;padding:4px 7px;font-size:.76rem;align-items:center;gap:4px}
 .sudoku-page .sudoku-meta>span small{margin:0}
 .sudoku-print-heading{display:none}
 .sudoku-page .sudoku-board{width:min(100%,356px)}
 .sudoku-page .sudoku-pad{width:min(100%,356px);margin-top:7px}
 .sudoku-page .sudoku-pad .numkey{min-height:41px;padding:3px 1px}
 .sudoku-page .sudoku-pad .numkey small{display:none}
 .sudoku-page .sudoku-actions{width:min(100%,356px);grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin-top:6px}
 .sudoku-page .sudoku-actions .tool-btn{min-height:43px;padding:4px 2px}
 .sudoku-page .sudoku-actions .tool-btn small{display:none}
 .v274-hint-row{width:min(100%,356px);grid-template-columns:1fr;margin-top:6px}
 .v274-hint-row .btn{width:100%;min-height:40px}
 .v274-hint-preview{font-size:.82rem;padding:7px}
 .sudoku-page #status{width:min(100%,356px);margin:6px auto 0;padding:7px 9px;font-size:.8rem}
 .sudoku-page .cta.compact{width:min(100%,356px);margin-top:5px}
 .sudoku-page .cta.compact .btn{min-height:40px}
 .v274-more{width:min(100%,356px);margin-top:6px}
 .v274-more-tools{grid-template-columns:1fr 1fr}
 .v274-more .v190-coach{padding:8px}
 .v274-more .v190-coach-head p,.v274-more .v190-candidate-summary{display:none}
}
@media(max-width:400px){.sudoku-page .sudoku-board,.sudoku-page .sudoku-pad,.sudoku-page .sudoku-actions,.v274-hint-row,.sudoku-page #status,.sudoku-page .cta.compact,.v274-more{width:100%}}
