:root{--paper:#f5f7f8;--surface:#fff;--surface-hover:#eef3f4;--ink:#172d34;--muted:#6a7b80;--line:#dfe7e9;--accent:#3168b9;--accent-dark:#263e6d;--primary:#263e6d;--primary-hover:#1d3158;--disabled-surface:#e4e9ea;--disabled-ink:#596b80;--danger-ink:#b33444;--tint:#eaf1ff;--red:#b33444;--red-tint:#fff0f1;--radius:18px;--hint-region:#d3d9dc;--hint-digit:#ffe274;--hint-overlap:#edc440;--hint-ring:#208522;--hint-remove:#cf1b2f}*{box-sizing:border-box}html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;min-height:100%}body{background:var(--paper);min-height:100svh;color:var(--ink);-webkit-font-smoothing:antialiased;flex-direction:column;margin:0;font-family:Segoe UI,Malgun Gothic,Arial,sans-serif;font-size:16px;line-height:1.6;display:flex}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline-offset:4px;outline:3px solid #eaa640}button{color:inherit}h1,h2,h3,p{margin:0}button{border:0}::selection{color:#132c40;background:#bde6df}.app-shell{flex-direction:column;flex:1;display:flex}.site-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;width:100%;max-width:1200px;height:104px;margin:auto;padding:0 40px;display:flex}.brand{letter-spacing:2px;align-items:center;gap:12px;font-size:18px;font-weight:800;line-height:1.3;display:flex}.brand-mark{background:var(--primary);color:#fff;letter-spacing:0;border-radius:12px;place-items:center;width:43px;height:43px;font-size:26px;font-weight:500;display:grid}.brand-sub{letter-spacing:2px;color:var(--muted);margin-top:4px;font-size:11px;font-weight:500;display:block}.local-label{color:var(--muted);align-items:center;gap:8px;font-size:12px;display:flex}.local-label i{background:var(--accent);border-radius:50%;width:6px;height:6px}.header-actions{align-items:center;gap:20px;display:flex}.language-toggle{border:1px solid var(--line);background:#edf3f2;border-radius:9px;flex-shrink:0;gap:2px;padding:3px;display:inline-flex}.language-toggle button{min-height:34px;color:var(--muted);background:0 0;border-radius:6px;padding:5px 10px;font-size:12px;line-height:1.3}.language-toggle button[aria-pressed=true]{color:var(--accent-dark);background:#fff;font-weight:650;box-shadow:0 1px 4px #173d3214}.home-main{flex:1;width:100%;max-width:1200px;margin:0 auto;padding:66px 40px 48px}.page-heading{justify-content:flex-end;align-items:center;gap:20px;margin-bottom:48px;display:flex}.eyebrow{letter-spacing:2.3px;color:var(--accent);margin-bottom:12px;font-size:11px;font-weight:700}h1{letter-spacing:-1.9px;margin-bottom:12px;font-size:38px;line-height:1.35}h1>span{color:var(--accent)}.muted{color:var(--muted);font-size:14px}.button{border-radius:10px;justify-content:center;align-items:center;gap:9px;min-height:46px;padding:13px 21px;font-size:14px;font-weight:650;line-height:1.5;transition:background .15s,transform .15s;display:inline-flex}.button:active:not(:disabled){transform:translateY(1px)}.primary{background:var(--primary);color:#fff}.primary:hover:not(:disabled){background:var(--primary-hover)}.button:disabled{background:var(--disabled-surface);color:var(--disabled-ink)}.secondary{background:var(--surface);color:var(--ink);border:1px solid var(--line)}.secondary:hover:not(:disabled){background:var(--surface-hover)}.section-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.section-heading h2{font-size:16px;font-weight:650}.counter{border:1px solid var(--line);border-radius:6px;margin-left:9px;padding:4px 9px;font-family:monospace;font-size:12px;font-weight:400}.empty-collection{border-radius:var(--radius);text-align:center;background:linear-gradient(145deg,#fff,#edf6f4);border:1px dashed #b4c7c8;flex-direction:column;justify-content:center;align-items:center;min-height:316px;padding:35px 20px;transition:border-color .2s;display:flex}.empty-collection:hover{border-color:var(--accent)}.empty-symbol{width:48px;height:48px;color:var(--accent);background:#dfeeea;border-radius:50%;place-items:center;margin-bottom:18px;font-size:28px;display:grid}.empty-collection h2{letter-spacing:-.5px;margin-bottom:10px;font-size:19px}.empty-collection p{color:var(--muted);font-size:14px;line-height:1.85}.text-action{color:var(--accent);margin-top:22px;font-size:13px;font-weight:700}.home-note{color:var(--muted);align-items:center;gap:23px;padding:30px 0;display:flex}.home-note>span{letter-spacing:-1px;color:#95aaa9;font-size:26px;font-weight:300}.home-note p{border-left:1px solid #cddcda;padding-left:23px;font-size:12px}.home-note strong{color:var(--ink);font-weight:400}.site-footer{border-top:1px solid var(--line);justify-content:center;width:calc(100% - 80px);max-width:1120px;margin:0 auto;padding:24px 0;display:flex}.site-footer.ad-slot{flex-shrink:0;width:min(1120px,max(300px,100% - 80px));max-width:100%}.ad-frame{flex-shrink:0;width:300px;min-height:250px}.icon-button{width:36px;height:36px;color:var(--muted);background:0 0;border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.icon-button:hover{background:var(--red-tint);color:var(--red)}.loading-panel{min-height:300px;color:var(--muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:20px;padding:24px;display:flex}.loading-panel h2{color:var(--ink);font-size:20px}.spinner{border:2px solid #c6dad6;border-top-color:var(--accent);border-radius:50%;flex-shrink:0;width:17px;height:17px;animation:.9s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.game-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;display:grid}.game-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:16px 22px 23px;transition:box-shadow .2s,border-color .2s}.game-card:hover{border-color:#a9c6c1;box-shadow:0 10px 24px #153b3610}.card-top{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.card-actions{align-items:center;gap:4px;display:flex}.edit-game-button{min-height:44px;color:var(--accent);background:0 0;border-radius:8px;justify-content:center;align-items:center;gap:5px;padding:0 10px;font-size:12px;font-weight:600;display:inline-flex}.edit-game-button:hover:not(:disabled){background:var(--tint)}.edit-game-button:disabled{color:var(--muted);opacity:.45}.card-actions .delete-button{width:44px;height:44px}.status-pill{color:#65787e;background:#f0f3f4;border-radius:6px;align-items:center;gap:6px;padding:4px 9px;font-size:11px;font-weight:600;display:inline-flex}.status-pill:before{content:"";background:currentColor;border-radius:50%;width:5px;height:5px}.status-pill.complete{background:var(--tint);color:var(--accent)}.mini-board{aspect-ratio:1;background:#fff;border:1.5px solid #627d80;grid-template-columns:repeat(9,1fr);max-width:246px;margin:0 auto 23px;display:grid}.mini-board>span{color:#3f565b;border-bottom:1px solid #e0e6e8;border-right:1px solid #e0e6e8;place-items:center;min-width:0;font-family:Segoe UI,Arial,sans-serif;font-size:clamp(10px,1.2vw,14px);line-height:1;display:grid}.mini-board>span:nth-child(9n){border-right:0}.mini-board>span:nth-child(n+73){border-bottom:0}.mini-board>.box-right{border-right-color:#82999d}.mini-board>.box-bottom{border-bottom-color:#82999d}.mini-board>.mini-entered{color:var(--accent);background:#f3faf7}.game-card-title{align-items:center;gap:10px;margin-bottom:18px;display:flex}.game-card-title h2{text-overflow:ellipsis;white-space:nowrap;letter-spacing:-.4px;flex:1;min-width:0;font-size:17px;overflow:hidden}.game-card-title>svg{color:var(--accent)}.game-index{color:#839b9f;font-family:monospace;font-size:11px}.progress-track{background:#eaf0ef;border-radius:2px;height:3px;overflow:hidden}.progress-track>span{background:var(--accent);border-radius:2px;height:100%;display:block}.card-meta{color:var(--muted);justify-content:space-between;gap:8px;margin-top:10px;font-size:11px;display:flex}.add-card{border-radius:var(--radius);border:1px dashed #bdcdce;flex-direction:column;justify-content:center;align-items:center;gap:7px;min-height:340px;font-size:14px;font-weight:600;transition:background .2s;display:flex}.add-card:hover{background:var(--tint)}.add-card .empty-symbol{margin-bottom:7px}.add-card .muted{font-size:12px;font-weight:400}.capacity-note{color:var(--muted);margin-top:20px;font-size:13px}.storage-footnote{color:var(--muted);font-size:12px}.error-notice{color:var(--red);background:var(--red-tint);border:1px solid #f0ccd0;border-radius:10px;margin-bottom:18px;padding:14px 18px;font-size:14px}.confirm-dialog{border:1px solid var(--line);width:min(420px,100vw - 40px);color:var(--ink);border-radius:20px;padding:32px;box-shadow:0 30px 100px #10262940}.confirm-dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#102b3560}.dialog-icon{background:var(--red-tint);width:46px;height:46px;color:var(--red);border-radius:50%;place-items:center;margin-bottom:20px;display:grid}.confirm-dialog h2{letter-spacing:-.8px;margin-bottom:12px;font-size:22px}.confirm-dialog p{color:var(--muted);overflow-wrap:anywhere;font-size:14px}.dialog-actions{justify-content:flex-end;gap:9px;margin-top:28px;display:flex}.danger{background:var(--red);color:#fff}.editor-main{flex:1;width:100%;max-width:1080px;margin:0 auto;padding:27px 40px 50px}.back-link{color:var(--muted);align-items:center;gap:7px;margin-bottom:27px;font-size:13px;display:inline-flex}.back-link:hover{color:var(--accent)}.editor-navigation{justify-content:space-between;align-items:center;gap:12px;margin-bottom:27px;display:flex}.editor-navigation .back-link{margin-bottom:0}.clue-input-toggle{min-height:40px;color:var(--accent-dark);background:0 0;padding:0 8px;font-size:13px;font-weight:650}.clue-entry-section .clue-input-toggle{border:1px solid var(--line);border-radius:8px;width:100%}.clue-entry-actions{gap:8px;display:flex}.clue-entry-actions>button{flex:1;width:auto;min-width:0;min-height:44px}.clear-clues-button{border:1px solid var(--line);color:var(--red);background:0 0;border-radius:8px;padding:6px 8px;font-size:13px}.clear-clues-button:disabled{color:var(--muted);opacity:.5}.clue-entry-section .clue-input-panel{border:0;margin:14px 0 0;padding:0}.clue-input-panel{border:1px solid var(--line);background:var(--surface);border-radius:12px;margin-bottom:14px;padding:14px}.clue-input-heading{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 12px;display:flex}.clue-input-heading>span,.clue-input-panel p{color:var(--muted);font-size:12px}.clue-input-panel p{margin-top:6px}.clue-input-panel textarea{border:1px solid var(--line);background:var(--paper);width:100%;min-width:0;color:var(--ink);resize:vertical;overflow-wrap:anywhere;border-radius:8px;margin-top:10px;padding:10px 12px;font-family:ui-monospace,Consolas,monospace;font-size:16px;line-height:1.6;display:block}.clue-input-panel textarea[aria-invalid=true]{border-color:var(--red)}.clue-input-panel .clue-input-status.invalid{color:var(--red)}.clue-input-panel .clue-input-status.ready{color:var(--accent-dark)}.editor-heading{justify-content:space-between;align-items:center;gap:24px;margin-bottom:31px;display:flex}.editor-heading.status-only{justify-content:flex-end;margin-bottom:24px}.editor-heading h1{letter-spacing:-1.1px;overflow-wrap:anywhere;margin-bottom:9px;font-size:30px}.editor-heading .eyebrow{margin-bottom:8px;font-size:10px}.step-label{color:var(--muted);white-space:nowrap;background:#eaf0f0;border-radius:6px;padding:7px 12px;font-size:11px}.workspace{grid-template-columns:minmax(0,1fr) 310px;align-items:start;gap:46px;display:grid}.board-section{min-width:0}.board-toolbar{justify-content:space-between;align-items:center;margin-bottom:12px;padding-left:23px;font-size:13px;font-weight:600;display:flex}.board-toolbar>span:first-child{align-items:center;gap:7px;display:flex}.tiny-dot{background:var(--accent);border-radius:50%;width:5px;height:5px}.board-toolbar small{color:var(--muted);font-size:11px;font-weight:400}.board-frame{width:100%}.column-labels{text-align:center;color:#8ba0a6;grid-template-columns:repeat(9,1fr);margin-bottom:6px;padding-left:23px;font-family:monospace;font-size:10px;display:grid}.board-with-labels{align-items:stretch;display:flex}.row-labels{text-align:left;color:#8ba0a6;flex-shrink:0;grid-template-rows:repeat(9,1fr);align-items:center;width:23px;font-family:monospace;font-size:10px;display:grid}.sudoku-board{--ink:#172d34;--muted:#536680;--accent:#2464bd;--accent-dark:#263e6d;--tint:#eaf1ff;aspect-ratio:1;background:#fff;border:2px solid #3a595e;border-radius:3px;grid-template-rows:repeat(9,1fr);width:100%;display:grid;position:relative;overflow:hidden;box-shadow:0 5px 17px #193f3b08}.board-row{grid-template-columns:repeat(9,minmax(0,1fr));min-height:0;display:grid}.cell{background:#fff;border-bottom:1px solid #dce4e6;border-right:1px solid #dce4e6;justify-content:center;align-items:center;min-width:0;min-height:0;padding:0;font-family:Segoe UI,Arial,sans-serif;font-size:clamp(22px,2.7vw,32px);font-weight:450;line-height:1;transition:background .1s;display:flex;position:relative}.cell:nth-child(9){border-right:0}.board-row:last-child>.cell{border-bottom:0}.cell.box-right{border-right:2px solid #6b8589}.cell.box-bottom{border-bottom:2px solid #6b8589}.cell.given{color:#263f48;font-weight:600}.cell.entered{color:var(--accent)}.cell.peer{background:#f0f5f6}.cell.same{background:#e0efe9}.cell.selected{box-shadow:inset 0 0 0 2px var(--accent);z-index:1;background:#d5eee6}.cell:focus-visible{box-shadow:inset 0 0 0 3px var(--accent);outline:0}.cell.conflict{color:var(--red);background:#fde9eb}.cell.conflict:after{content:"";background:var(--red);border-radius:50%;width:4px;height:4px;position:absolute;bottom:3px;right:3px}.cell.conflict.selected{box-shadow:inset 0 0 0 2px var(--red)}.cell-notes{color:#35435b;grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(3,1fr);width:100%;height:100%;padding:3px;font-size:clamp(10px,1.04vw,12px);font-weight:400;line-height:1;display:grid}.cell-notes>span{justify-content:center;align-items:center;display:flex}.cell.selected .cell-notes{color:#247969}.cell-notes>.matching-note{color:var(--accent-dark);background:#b9e1d3;border-radius:2px;font-weight:750}.board-legend{color:var(--muted);justify-content:center;align-items:center;gap:22px;margin:18px 0 22px 23px;font-size:11px;display:flex}.board-legend>span{align-items:center;gap:6px;display:flex}.board-legend i{border-radius:2px;width:8px;height:8px;display:block}.legend-given{background:#304d53}.legend-selected{background:#b5dfd1;border:1px solid #6fac9c}.legend-note{background:#a7bdc1}.solution-status{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:12px;align-items:flex-start;gap:13px;min-height:85px;margin-left:23px;padding:18px;display:flex}.status-icon{width:24px;height:24px;color:var(--muted);flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.solution-status strong{margin-bottom:4px;font-size:14px;font-weight:650;display:block}.solution-status p{color:var(--muted);font-size:12px;line-height:1.7}.solution-status.valid{background:var(--tint);border-color:#c8e7dc}.solution-status.valid .status-icon,.solution-status.valid strong{color:var(--accent-dark)}.solution-status.invalid{--muted:#7a3b46;background:var(--red-tint);color:var(--red);border-color:#f1d2d6}.solution-status.invalid .status-icon,.solution-status.invalid strong{color:var(--red)}.control-panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin-top:0;overflow:hidden;box-shadow:0 6px 25px #203f3d04}.panel-section{border-bottom:1px solid #e8eded;padding:23px}.panel-section:last-child{border-bottom:0}.field-label{font-size:13px;font-weight:650;display:block}.title-section input{width:100%;color:var(--ink);background:#f6f8f9;border:1px solid #dce5e7;border-radius:8px;margin-top:10px;padding:11px 12px;font-size:14px}.count-section{background:#fcfdfd;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.generator-section{background:#fcfdfd}.difficulty-toggle{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin-top:12px;display:grid}.difficulty-toggle button{border:1px solid var(--line);background:var(--surface);border-radius:8px;min-height:44px;padding:6px;font-size:13px}.difficulty-toggle button[aria-pressed=true]{border-color:var(--accent);background:var(--tint);color:var(--accent-dark);font-weight:650}.difficulty-toggle button:disabled{opacity:.6}.generator-help,.generator-status,.generator-error{color:var(--muted);margin-top:10px;font-size:12px;line-height:1.6}.generator-error{color:var(--red)}.generate-button{width:100%;min-height:44px;margin-top:12px}.generator-restore{min-height:44px;padding:8px 0;font-size:12px}.share-options,.share-replace-list{gap:8px;margin-top:14px;display:grid}.share-options button,.share-replace-option{border:1px solid var(--line);background:var(--surface);text-align:left;border-radius:8px;min-height:44px;padding:10px 12px;font-size:13px}.share-options button[aria-pressed=true]{border-color:var(--accent);background:var(--tint);color:var(--accent-dark);font-weight:650}.share-options button:disabled,.share-copy:disabled{opacity:.5}.share-help,.share-status{color:var(--muted);margin-top:10px;font-size:12px;line-height:1.7}.share-status:empty{display:none}.share-error{color:var(--danger-ink)}.share-copy,.share-cancel{width:100%;min-height:44px;margin-top:14px}.share-link{margin-top:14px;display:block}.share-link input{border:1px solid var(--line);background:var(--paper);width:100%;min-height:44px;color:var(--ink);border-radius:8px;margin-top:6px;padding:8px;font-size:12px;display:block}.share-title{margin-bottom:24px;font-size:24px}.share-layout{grid-template-columns:minmax(0,1fr) 310px;align-items:start;gap:32px;display:grid}.share-preview{min-width:0}.share-preview h2{overflow-wrap:anywhere;font-size:18px}.share-preview .board-frame{margin-top:16px}.share-preview .cell{cursor:default}.share-import-panel{border:1px solid var(--line);background:var(--surface);border-radius:12px;padding:20px}.share-import-panel h2{font-size:16px}.share-replace-option{gap:6px;display:grid}.share-replace-option strong{overflow-wrap:anywhere}.share-replace-option span{color:var(--muted);font-size:12px}.share-replace-option span:last-child{color:var(--accent-dark)}.share-replace-option:hover:not(:disabled){border-color:var(--accent);background:var(--tint)}.share-loading{align-items:center;gap:10px;font-size:13px;display:flex}@media (max-width:800px){.share-layout{grid-template-columns:minmax(0,1fr);gap:20px}.share-main{max-width:560px;padding:20px 12px}.share-preview .sudoku-board{container-type:inline-size}.share-preview .cell-notes{padding:2px;font-size:clamp(8px,2.5cqw,13px)}}.count-description{color:var(--muted);flex-basis:100%;margin:0;font-size:11px;line-height:1.7}.count-caption{color:var(--muted);margin-top:4px;font-size:11px;display:block}.count-section>strong{letter-spacing:-1px;color:var(--accent);overflow-wrap:anywhere;text-align:right;max-width:170px;font-size:30px;font-weight:550}.count-section strong>small{color:var(--muted);margin-left:5px;font-size:13px;font-weight:400}.count-section>.count-pending{letter-spacing:0;align-items:center;gap:7px;font-size:14px;font-weight:500;display:flex}.panel-section-title{justify-content:space-between;align-items:center;gap:8px;margin-bottom:14px;display:flex}.selection-label{color:var(--accent);font-size:11px}.keypad{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.keypad>button{background:#f2f6f6;border:1px solid #e2e9e9;border-radius:9px;justify-content:center;align-items:center;gap:5px;height:54px;font-size:24px;font-weight:450;line-height:1;transition:background .12s,border-color .12s;display:flex}.keypad>button:hover:not(:disabled){background:#e1f0e9;border-color:#9dcbbb}.keypad>button:active:not(:disabled){background:#c7e8dc}.keypad>button:disabled{color:#b4c0c3;background:#f8fafa}.note-keypad>button{color:var(--accent);font-size:21px}.note-keypad>button>span{align-self:flex-end;margin-bottom:11px;font-size:9px}.erase-button{width:100%;color:var(--muted);background:#fff;justify-content:center;align-items:center;gap:8px;margin-top:9px;padding:12px 0 0;font-size:12px;display:flex}.erase-button:hover:not(:disabled){color:var(--red)}.erase-button:disabled{color:#b2c0c4}kbd{border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:4px;padding:1px 4px;font-family:inherit;font-size:10px;font-weight:400;line-height:1.4}.erase-button kbd{margin-left:auto}.start-section{background:#fafcfc}.start-button{justify-content:space-between;width:100%;padding:14px 16px;font-size:13px}.start-section p{color:var(--muted);text-align:center;margin-top:12px;font-size:11px}.mode-toggle{background:#f2f6f5;border:1px solid #dfe8e7;border-radius:9px;gap:3px;padding:4px;display:flex}.mode-toggle button{color:var(--muted);white-space:nowrap;background:0 0;border-radius:6px;flex:1;justify-content:center;align-items:center;gap:7px;min-height:37px;padding:8px 4px;font-size:12px;display:flex}.mode-toggle .active{color:var(--accent-dark);background:#fff;font-weight:650;box-shadow:0 1px 4px #173d3214}.number-icon{font-family:serif;font-size:19px;line-height:1}.input-help{color:var(--muted);margin-top:13px;font-size:11px;line-height:1.7}.selection-actions{justify-content:space-between;align-items:center;gap:8px;margin-top:12px;display:flex}.multi-select-toggle{border:1px solid var(--line);background:var(--surface);min-height:40px;color:var(--ink);white-space:nowrap;border-radius:8px;align-items:center;gap:6px;padding:8px 10px;font-size:12px;display:inline-flex}.multi-select-toggle.active{border-color:var(--accent);color:var(--accent-dark);background:#d9eee7}.selection-actions>span{color:var(--muted);font-size:11px}.selection-help{margin-top:6px}.highlight-keypad>button{flex-direction:column;justify-content:center;align-items:center;font-size:22px;line-height:1.3;display:flex}.highlight-keypad>button>span{font-size:9px;line-height:1.2}.history-buttons{grid-template-columns:1fr 1fr;gap:10px;display:grid}.history-buttons button{color:var(--ink);border:1px solid var(--line);background:#fff;border-radius:8px;justify-content:center;align-items:center;gap:9px;min-height:40px;font-size:12px;display:flex}.history-buttons button:disabled{color:#b6c2c5;background:#fafbfb}.history-buttons button:hover:not(:disabled){background:var(--tint);border-color:#b5d8ca}.history-meta{color:var(--muted);justify-content:space-between;margin-top:16px;font-size:11px;display:flex}.future-section{background:#f8faf9}.auto-candidates-button{width:100%;min-height:44px;margin-top:12px}.game-helper-actions{grid-template-columns:1.3fr 1fr;gap:8px;margin-top:12px;display:grid}.game-helper-actions .button{gap:5px;min-height:44px;margin:0;padding:8px;font-size:14px}.hint-result-message{background:var(--tint);color:var(--accent-dark);border-radius:8px;margin-top:12px;padding:10px 12px;font-size:14px}.hint-result-message.invalid{background:var(--red-tint);color:var(--red)}.board-hint-message{margin-left:23px}.cell.candidate-error{background:var(--red-tint);box-shadow:inset 0 0 0 2px var(--red)}.showing-hint .board-legend,.showing-hint .keyboard-tip,.showing-hint .mode-toggle,.showing-hint .mode-section .panel-section-title,.showing-hint .mode-section .input-help{display:none}.hint-board .cell{cursor:default}.hint-board .cell.hint-source,.hint-board .cell.hint-target{background:var(--hint-region)}.hint-board .cell.hint-number{background:var(--hint-digit)}.hint-board .cell.hint-number.hint-source,.hint-board .cell.hint-number.hint-target{background:var(--hint-overlap)}.hint-board .cell-notes{color:#58655c}.hint-board .hint-note{color:#293400;font-weight:750}.cell-notes>.subset-anchor-note,.cell-notes>.y-wing-assumed-note,.cell-notes>.y-wing-forced-note,.cell-notes>.w-wing-assumed-note,.cell-notes>.w-wing-forced-note,.cell-notes>.x-chain-forced-note,.cell-notes>.xy-chain-forced-note,.cell-notes>.aic-assumed-note,.cell-notes>.aic-forced-note,.cell-notes>.forcing-chain-assumed-note,.cell-notes>.forcing-chain-forced-note,.cell-notes>.forcing-net-assumed-note,.cell-notes>.forcing-net-forced-note,.cell-notes>.xyz-wing-assumed-note,.cell-notes>.xyz-wing-forced-note{color:#203c0a;background:radial-gradient(circle closest-side,#85be36 94%,#0000 100%);font-weight:750}.cell-notes>.subset-remove-note,.cell-notes>.y-wing-excluded-note,.cell-notes>.w-wing-excluded-note,.cell-notes>.x-chain-excluded-note,.cell-notes>.xy-chain-excluded-note,.cell-notes>.aic-excluded-note,.cell-notes>.aic-remove-note,.cell-notes>.forcing-chain-excluded-note,.cell-notes>.forcing-chain-remove-note,.cell-notes>.forcing-net-excluded-note,.cell-notes>.forcing-net-remove-note,.cell-notes>.medusa-remove-note,.cell-notes>.wxyz-wing-remove-note,.cell-notes>.xyz-wing-excluded-note{color:#703039;font-weight:650;position:relative}.subset-note-cross{pointer-events:none;fill:none;width:100%;height:100%;stroke:var(--hint-remove);stroke-width:3px;stroke-linecap:round;position:absolute}.cell-notes>.forcing-net-join-note,.hint-legend-net-join{outline-offset:1px;border-radius:2px;outline:2px solid #9254c6}.cell-notes>.forcing-chain-premise-note,.hint-legend-forcing-premise{color:#633c00;background-color:#ffe1a1;border-radius:3px;font-weight:750;box-shadow:inset 0 0 0 1px #b87916}.cell-notes>.forcing-chain-premise-note{z-index:1;position:relative}.hint-anchor-mark{border:clamp(2px, .35vw, 4px) solid var(--hint-ring);pointer-events:none;border-radius:50%;width:80%;height:80%;position:absolute}.hint-anchor-mark.x-wing-blue{border-color:#4946b6}.simple-color-links,.hint-arrows{pointer-events:none;fill:none;stroke:#344b50;stroke-width:4px;stroke-linecap:round;stroke-linejoin:round;width:100%;height:100%;position:absolute;inset:0}.color-strong-link.current{stroke-width:6px}.hint-arrow[data-link-kind=weak] line{stroke-dasharray:9 7}.cell-notes>.medusa-blue-note,.cell-notes>.medusa-green-note{z-index:1;font-weight:750;position:relative}.cell-notes>.medusa-remove-note{z-index:1}.cell-notes>.medusa-blue-note{color:#103e75;background:#c4e3ff;border-radius:3px;box-shadow:inset 0 0 0 1px #4784b5}.cell-notes>.medusa-green-note{color:#244609;background:#d5ecae;border-radius:50%;box-shadow:inset 0 0 0 1px #729e40}.cell-notes>.medusa-witness-note{z-index:1;outline-offset:-1px;outline:2px solid #975b00;font-weight:750;position:relative}.hint-board .cell.medusa-empty-cell{box-shadow:inset 0 0 0 2px #975b00}.medusa-links{pointer-events:none;fill:none;stroke:#52865b;stroke-width:6px;stroke-opacity:.65;stroke-linecap:round;width:100%;height:100%;position:absolute;inset:0}.hint-legend-medusa-blue,.hint-legend-medusa-green,.hint-legend-medusa-witness{flex-shrink:0;width:14px;height:14px}.hint-legend-medusa-blue{background:#c4e3ff;border:1px solid #4784b5;border-radius:3px}.hint-legend-medusa-green{background:#d5ecae;border:1px solid #729e40;border-radius:50%}.hint-legend-medusa-witness{border:2px solid #f3bb65}.hint-board .cell.wxyz-wing-anchor{background:#f7efcd;box-shadow:inset 0 0 0 2px #a78429}.cell-notes>.wxyz-wing-restricted-note,.cell-notes>.wxyz-wing-elimination-note{z-index:1;font-weight:750;position:relative}.cell-notes>.wxyz-wing-restricted-note,.hint-legend-wxyz-restricted{color:#103e75;background:#c4e3ff;border-radius:3px;box-shadow:inset 0 0 0 1px #4784b5}.cell-notes>.wxyz-wing-elimination-note,.hint-legend-wxyz-elimination{color:#633c00;background:#ffe1a1;border-radius:50%;box-shadow:inset 0 0 0 1px #b87916}.cell.xy-chain-end{background:#ead0ed}.color-trap-arrow{stroke:#9c3035}.color-trap-arrow line{stroke-dasharray:9 7}.hint-remove-mark{pointer-events:none;fill:none;width:82%;height:82%;stroke:var(--hint-remove);stroke-width:4px;stroke-linecap:round;position:absolute}.hint-panel{color:#f0f4ff;background:#23365c;border:1px solid #526a98;border-radius:12px;margin:12px 0 0 23px;padding:14px 16px 16px}.hint-panel-heading,.hint-panel-heading h2{align-items:center;gap:8px;display:flex}.hint-panel-heading{justify-content:space-between}.hint-panel-heading h2{flex:1;min-width:0;font-size:16px;font-weight:650}.hint-list-back{color:#fff;background:#ffffff15;border-radius:6px;flex-shrink:0;min-height:40px;padding:0 8px;font-size:12px}.hint-panel-heading h2:focus{outline:none}.hint-close{color:#fff;background:0 0;border-radius:8px;flex-shrink:0;place-items:center;width:44px;height:44px;display:grid}.hint-close:hover{background:#ffffff1a}.hint-step-label{color:#d0d9d8;align-items:center;gap:10px;margin-bottom:8px;font-size:13px;display:flex}.hint-step-label>span{color:var(--hint-digit);font-variant-numeric:tabular-nums}.hint-explanation{color:inherit;word-break:keep-all;overflow-wrap:anywhere;font-size:16px;line-height:1.7}.hint-legend{color:#e4ebe9;flex-wrap:wrap;gap:6px 18px;margin-top:12px;font-size:13px;display:flex}.hint-legend>span{align-items:center;gap:6px;display:flex}.hint-legend i{place-items:center;width:18px;height:18px;font-style:normal;display:inline-grid}.hint-legend-anchor{border:2px solid #8be68b;border-radius:50%}.hint-legend-anchor.x-wing-blue{border-color:#a5a2ff}.hint-board .cell.w-wing-pair{background:#f2bf45;box-shadow:inset 0 0 0 3px #bd8c20}.hint-legend-pair{background:#f2bf45;border:2px solid #bd8c20;border-radius:3px}.hint-board .cell.xyz-wing-pivot{background:#dc9e70;box-shadow:inset 0 0 0 2px #a5602c}.hint-board .cell.xyz-wing-pivot .cell-notes{color:#49321a;font-weight:750}.hint-legend-xyz-pivot{background:#dc9e70;border:1px solid #f5d4b8;border-radius:3px}.hint-legend-digit{background:var(--hint-digit);border-radius:3px}.hint-board .cell.y-wing-pivot{background:#d0a1df;box-shadow:inset 0 0 0 2px #87449d}.hint-board .cell.y-wing-pivot .cell-notes{color:#342039;font-weight:750}.hint-legend-pivot{background:#d0a1df;border:1px solid #efd9f5;border-radius:3px}.hint-legend-assumption{background:#85be36;border-radius:50%}.hint-legend-link:after{content:"";border-top:2px solid;width:18px}.hint-picker{overscroll-behavior:contain;border:1px solid var(--line);background:var(--surface);width:min(440px,100vw - 24px);max-height:calc(100dvh - 32px);color:var(--ink);border-radius:18px;margin:auto;padding:20px;overflow-y:auto;box-shadow:0 18px 60px #142b3450}.hint-picker::backdrop{background:#132c346e}.hint-picker-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.hint-picker h2{font-size:21px}.hint-picker h2:focus{outline:none}.hint-picker .hint-close{color:var(--ink)}.hint-picker .hint-close:hover{background:var(--paper)}.hint-picker>p{color:var(--muted);margin-top:8px;font-size:13px}.hint-picker .hint-picker-status{background:var(--tint);color:var(--accent-dark);border-radius:8px;padding:10px 12px}.hint-picker .hint-picker-status.blocked{background:var(--paper);color:var(--ink)}.hint-rule-list{gap:6px;margin:14px 0 0;padding:0;list-style:none;display:grid}.hint-rule-option,.hint-rule-group-toggle{border:1px solid var(--line);background:var(--paper);width:100%;min-height:48px;color:var(--muted);text-align:left;border-radius:9px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;font-size:14px;display:flex}.hint-rule-option.available,.hint-rule-group-toggle.available{background:var(--tint);color:var(--accent-dark);border-color:#93c6bd;font-weight:650}.hint-rule-option.available:hover,.hint-rule-group-toggle.available:hover{background:var(--surface-hover)}.hint-rule-group-toggle{cursor:pointer;color:var(--ink);list-style:none}.hint-rule-group-toggle::-webkit-details-marker{display:none}.hint-rule-group-toggle:focus-visible{outline-offset:2px;outline:3px solid #eaa640}.hint-rule-group-label{align-items:center;gap:8px;display:flex}.hint-group-collapse,.hint-rule-group[open] .hint-group-expand{display:none}.hint-rule-group[open] .hint-group-collapse{display:inline}.hint-subset-list{border-left:2px solid var(--line);margin:6px 0 0 12px;padding-left:10px}.hint-rule-badge{flex-shrink:0;font-size:11px}.hint-legend-remove{color:#ff92a1;font-size:26px;line-height:1}.hint-navigation{grid-template-columns:1fr 1.6fr;gap:10px;margin-top:16px;display:grid}.hint-navigation .button{min-height:44px;padding:10px;font-size:14px}.hint-navigation .primary{color:#293400;background:#fff0ab}.hint-navigation .primary:hover{background:var(--hint-digit)}.hint-navigation .secondary{color:#fff;background:#ffffff10;border-color:#ffffff50}.hint-navigation .secondary:disabled{opacity:1;color:#abbad3;background:#2b3f65;border-color:#526a98}.future-section>div{align-items:center;gap:8px;display:flex}.future-section svg{color:#7c9392}.future-section strong{font-size:13px;font-weight:600}.future-section span{color:#7b908b;background:#e7edeb;border-radius:4px;margin-left:auto;padding:2px 5px;font-size:9px}.future-section p{color:#7c908f;margin-top:9px;font-size:12px;line-height:1.85}.keyboard-tip{text-align:center;color:#84959b;margin:4px 0 0 23px;font-size:10px;line-height:2.3}.keyboard-tip>span{margin:0 6px}.editor-error{align-items:flex-start;gap:12px;display:flex}.editor-error>.error-notice{flex:1}.mobile-board-controls,.erase-mobile-label{display:none}.text-button{color:var(--accent);background:0 0;padding:6px 0;font-size:12px;text-decoration:underline}@media (min-width:1250px){.editor-main{padding-top:32px}.editor-heading{margin-bottom:38px}.editor-heading h1{font-size:34px}.workspace{gap:55px}}@media (max-width:900px){.workspace{grid-template-columns:minmax(0,1fr) 270px;gap:24px}.panel-section{padding:18px}.game-list{gap:14px}.game-card{padding-left:16px;padding-right:16px}.step-label,.editor-heading.status-only{display:none}.cell{font-size:25px}.cell-notes{padding:2px;font-size:10px}.editor-main{padding:24px 24px 40px}.editor-heading h1{font-size:28px}.board-legend{gap:12px;font-size:10px}}@media (max-width:720px){.workspace{grid-template-columns:minmax(0,1fr);gap:25px;max-width:510px;margin:0 auto}.editor-main{padding:20px 22px 35px}.editor-heading{max-width:510px;margin:0 auto 25px}.back-link{margin-bottom:23px}.editor-heading h1{font-size:27px}.editor-heading .muted{font-size:13px}.cell{font-size:clamp(23px,6vw,31px)}.cell-notes{font-size:clamp(10px,2.45vw,13px)}.board-legend{gap:21px;font-size:11px}.control-panel{margin-left:23px}.panel-section{padding:20px}.keypad{grid-template-columns:repeat(3,1fr)}.keypad>button{height:54px}.game-list{grid-template-columns:repeat(2,minmax(0,1fr))}.game-card{padding:14px 18px 20px}.add-card{min-height:310px}.mini-board>span{font-size:13px}.site-header{height:82px;padding:0 22px}.home-main{padding:38px 22px 22px}.page-heading{flex-direction:column;align-items:flex-start;gap:24px;margin-bottom:32px}h1{font-size:32px}.page-heading>.button{width:100%}.section-heading>.muted{display:none}.site-footer.ad-slot{width:max(300px,100% - 44px)}.local-label{font-size:11px}.empty-collection{min-height:300px}.brand{font-size:16px}.home-note{gap:15px}.home-note p{padding-left:15px}.home-note>span{font-size:22px}.editor-error{flex-direction:column;margin-bottom:16px}.editor-error>.error-notice{width:100%;margin-bottom:0}}@media (max-width:480px){.game-list{grid-template-columns:minmax(0,1fr)}.game-card{padding:16px 24px 25px}.mini-board{max-width:270px}.mini-board>span{font-size:15px}.add-card{min-height:155px}.card-meta{font-size:12px}.game-card-title h2{font-size:18px}.board-toolbar,.column-labels{padding-left:19px}.row-labels{width:19px}.control-panel,.solution-status,.board-legend,.keyboard-tip{margin-left:19px}.board-legend{gap:14px}.solution-status{gap:9px;padding:15px 12px}.solution-status p{font-size:11px}.brand-sub{font-size:10px}.brand-mark{width:38px;height:38px}.brand{gap:9px}.local-label{font-size:10px}.count-section>strong{max-width:200px}}@media (max-width:720px){.editor-shell .site-header,.editor-shell .editor-heading,.editor-shell .board-toolbar,.editor-shell .column-labels,.editor-shell .row-labels,.editor-shell .board-legend,.editor-shell .keyboard-tip,.editor-shell .control-panel .keypad-section{display:none}.editor-shell .editor-main{padding:4px 12px max(20px, env(safe-area-inset-bottom))}.editor-shell .back-link{min-height:40px;margin-bottom:4px;font-size:13px}.editor-shell .editor-navigation{margin-bottom:4px}.editor-shell .editor-navigation .back-link{margin-bottom:0}.editor-shell .workspace{gap:12px;width:min(100%,max(270px,100svh - 164px));max-width:510px}.editor-shell .sudoku-board{box-shadow:none;container-type:inline-size}.editor-shell .cell{font-size:clamp(20px,6cqw,31px)}.editor-shell .cell-notes{padding:2px;font-size:clamp(8px,2.5cqw,13px)}.editor-shell .mobile-board-controls{margin-top:8px;display:block}.mobile-board-controls .keypad-section{border:0;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;padding:0;display:grid}.mobile-board-controls .panel-section-title,.mobile-board-controls .erase-label,.mobile-board-controls .erase-button kbd,.mobile-board-controls .highlight-keypad>button>span,.mobile-board-controls .note-keypad>button>span{display:none}.mobile-board-controls .keypad{display:contents}.mobile-board-controls .keypad>button,.mobile-board-controls .erase-button{touch-action:manipulation;background:#edf3f2;border:1px solid #d7e3e1;border-radius:8px;height:44px;min-height:44px;margin:0;padding:0}.mobile-board-controls .keypad>button{font-size:23px}.mobile-board-controls .erase-button{flex-direction:column;gap:2px;font-size:10px;line-height:1.2}.mobile-board-controls .erase-mobile-label{display:inline}.mobile-board-controls .input-help{grid-column:1/-1;margin-top:0}.editor-shell .control-panel,.editor-shell .solution-status{margin-left:0}.editor-shell .hint-panel{margin-top:8px;margin-left:0;padding:10px 12px 12px}.editor-shell .board-hint-message{margin-left:0}.editor-shell .solution-status{min-height:0;margin-top:10px;padding:10px 12px}.editor-shell .control-panel{box-shadow:none;border-radius:12px}.editor-shell .creation-panel{flex-direction:column;display:flex}.creation-panel .count-section{order:-2}.creation-panel .start-section{border-bottom:1px solid #e8eded;order:-1}.creation-panel .clue-entry-section{border-bottom:0}.editor-shell .panel-section:not(.keypad-section){padding:12px}.editor-shell .mode-section .panel-section-title,.editor-shell .selection-instructions,.editor-shell .selection-help{display:none}.editor-shell .mode-toggle button,.editor-shell .history-buttons button{min-height:44px;font-size:13px}.editor-shell .history-meta{margin-top:8px}.editor-shell .title-section input{font-size:16px}}.play-workspace .board-toolbar{padding-left:0}.play-workspace .board-legend,.play-workspace .keyboard-tip,.play-workspace .solution-status,.play-workspace .hint-panel,.play-workspace .board-hint-message{margin-left:0}.keypad>button.highlighted-digit{border-color:var(--accent);color:var(--accent-dark);box-shadow:inset 0 0 0 1px var(--accent);background:#d9eee7}.showing-hint .selection-actions,.showing-hint .selection-help{display:none}html:lang(en) .mode-toggle button{font-size:12px}html:lang(en) .game-helper-actions .button{gap:6px;min-height:44px;padding:10px 8px;font-size:12px}html:lang(en) .selection-actions{flex-wrap:wrap}html:lang(en) .hint-rule-option{gap:10px}@media (max-width:720px){.header-actions .local-label{display:none}.header-actions{gap:0}.language-toggle button{min-height:36px;padding:5px 8px}.editor-shell .site-header{z-index:2;border:0;width:auto;height:48px;padding:0;display:flex;position:absolute;top:0;right:12px}.editor-shell .site-header .brand{display:none}.editor-shell .editor-navigation{min-height:44px;padding-right:132px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}body:has(.play-main){background:#304573}body:has(.play-main) .site-header{border-color:#ffffff25}.play-main .back-link,.play-main .board-toolbar,.play-main .board-toolbar small,.play-main .keyboard-tip{color:#e2eaff}body:has(.play-main) .site-header .brand{color:#e2eaff}body:has(.play-main) .site-header .brand-sub{color:#e2eaff}body:has(.play-main) .site-header .local-label{color:#e2eaff}.play-main{width:100%;max-width:1240px}.play-main .editor-heading{display:none}.play-main .workspace{grid-template-columns:minmax(0,1fr) 390px;gap:28px}.play-main .sudoku-board{border:3px solid #101a2b;border-radius:0;box-shadow:0 8px 24px #0c183933}.play-main .cell{font-variant-numeric:tabular-nums;border-color:#d1d3d8;font-size:clamp(25px,3.4vw,43px)}.play-main .cell.box-right{border-right:3px solid #101a2b}.play-main .cell.box-bottom{border-bottom:3px solid #101a2b}.play-main .cell.given{color:#101620;font-weight:650}.play-main .cell.entered{color:#2464bd;font-weight:550}.play-main .cell.peer{background:#fff}.play-main.shade-peers .cell.peer{background:#edf0f5}.play-main .cell.same{background:#fff}.play-main .cell.same:not(:has(.cell-notes)){background:#ffdc9e}.play-main .cell.selected{box-shadow:none;background:#edf4ff}.play-main .cell.selected.same:not(:has(.cell-notes)){background:#ffdc9e}.play-main .cell.selected:before{content:"";pointer-events:none;z-index:3;border:0 solid #367de1;position:absolute;inset:0}.play-main .cell.selection-top:before{border-top-width:3px}.play-main .cell.selection-bottom:before{border-bottom-width:3px}.play-main .cell.selection-left:before{border-left-width:3px}.play-main .cell.selection-right:before{border-right-width:3px}.play-main .cell:focus-visible{box-shadow:inset 0 0 0 3px #367de1}.play-main .cell.conflict{color:#b12032;background:#ffe5e8}.play-main .cell-notes,.play-main .cell.selected .cell-notes{color:#253047;font-size:clamp(10px,1.15vw,15px);font-weight:600}.play-main.large-notes .cell-notes{padding:1px;font-size:clamp(12px,1.45vw,18px);font-weight:700}.play-main .cell-notes>.matching-note{color:#35200b;background:#ffce7d;border-radius:2px;font-weight:800}.play-main .hint-board .cell.selected:before,.play-main .board-legend{display:none}.play-main .control-panel{color:#f0f4ff;background:#293c67;border:1px solid #1d2e54;border-radius:16px;overflow:visible;box-shadow:0 8px 25px #14203e33}.play-controls{padding:14px}.play-action-bar{grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;display:grid}.play-action-bar button{color:#edf3ff;background:#354e82;border:1px solid #516a9b;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:5px;min-height:54px;padding:6px 2px;font-size:10px;display:flex}.play-action-bar button:disabled{opacity:1;background:var(--disabled-surface);color:var(--disabled-ink);border-color:#4c6390}.play-action-bar button[aria-pressed=true]{color:#172438;background:#ffcf82;border-color:#ffd797}.play-selection-status{color:#d2dfff;flex-wrap:wrap;align-items:center;gap:8px;min-height:40px;font-size:11px;display:flex}.play-selection-status button{color:#ffd187;background:0 0;padding:4px;font-size:11px;text-decoration:underline}.play-history-count{font-variant-numeric:tabular-nums;margin-left:auto}.play-pads{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.play-pad{min-width:0}.play-pad-heading{color:#e6ecfc;white-space:nowrap;background:0 0;border:0;border-bottom:3px solid #0000;width:100%;min-height:36px;padding:4px 0;font-size:12px}.active-pad .play-pad-heading{color:#ffdc9e;border-bottom-color:#ffcf82;font-weight:750}.play-pad-grid{background:#fff;border:1px solid #cad0db;border-radius:10px;grid-template-columns:repeat(3,minmax(0,1fr));display:grid;overflow:hidden}.play-pad-grid button{aspect-ratio:1;color:#2464bd;touch-action:manipulation;background:#fff;border-bottom:1px solid #d1d5dd;border-right:1px solid #d1d5dd;border-radius:0;place-items:center;min-width:0;min-height:44px;padding:0;font-size:clamp(23px,2.1vw,32px);font-weight:550;line-height:1;display:grid;position:relative}.play-pad-grid button:nth-child(3n){border-right:0}.play-pad-grid button:nth-child(n+7){border-bottom:0}.play-pad-grid button:disabled{color:#536680;background:#e9edf4}.note-pad .play-pad-grid button{color:#253047;font-size:14px;font-weight:700}.note-pad .play-pad-grid button span{position:absolute}.note-pad .play-pad-grid button:nth-child(3n+1) span{left:5px}.note-pad .play-pad-grid button:nth-child(3n) span{right:5px}.note-pad .play-pad-grid button:nth-child(-n+3) span{top:5px}.note-pad .play-pad-grid button:nth-child(n+7) span{bottom:5px}.highlight-pad .play-pad-grid button{color:#a96709}.highlight-pad .play-pad-grid button[aria-pressed=true]{background:#ffdc9e;box-shadow:inset 0 0 0 2px #a96709}.play-pad-grid button:hover:not(:disabled){background:#e8f0ff}.large-keys .play-pads{grid-template-columns:1fr;gap:12px}.large-keys .play-pad-grid button{aspect-ratio:auto;height:48px;font-size:29px}.large-keys .note-pad .play-pad-grid button{font-size:17px}.play-secondary-actions{gap:8px;margin-top:16px;display:flex}.play-secondary-actions button{color:#ecf2ff;background:#354e82;border:1px solid #516a9b;border-radius:8px;flex:1;min-height:44px;padding:8px 5px;font-size:11px}.play-secondary-actions button:disabled{opacity:1;background:var(--disabled-surface);color:var(--disabled-ink);border-color:#4c6390}.play-settings,.play-extras{border-top:1px solid #54678c;margin-top:16px;font-size:12px}.play-settings summary,.play-extras>summary{cursor:pointer;color:#e3ebfc;min-height:44px;padding:12px 0}.play-settings label{cursor:pointer;align-items:center;gap:9px;min-height:44px;display:flex}.play-settings input{accent-color:#ffce7d;width:18px;height:18px}.play-settings p{color:#d0dcf4;margin:8px 0;font-size:11px;line-height:1.8}.play-extras{margin-top:0;padding:0 14px}.play-extras .share-section{border:0;padding:0 0 14px!important}.play-extras .share-help,.play-extras .share-status{color:#d2dfff}.play-extras .share-options button{color:var(--ink)}.play-extras .share-options button[aria-pressed=true]{color:var(--accent-dark)}.play-extras .share-error{color:var(--danger-ink)}.drag-select-board{touch-action:none;-webkit-user-select:none;user-select:none}@media (min-width:721px) and (max-width:1000px){.play-main .workspace{grid-template-columns:minmax(0,1fr) 330px;gap:18px}}@media (max-width:720px){.editor-shell .play-main{padding:4px 10px 24px}.play-main .workspace{grid-template-columns:minmax(0,1fr);gap:10px;width:100%;max-width:510px}.play-main .board-toolbar{margin-bottom:6px;font-size:11px;display:flex}.play-main .cell{font-size:clamp(23px,7cqw,39px)}.play-main .cell-notes{font-size:clamp(9px,2.6cqw,14px)}.play-main.large-notes .cell-notes{font-size:clamp(11px,3.3cqw,17px)}.play-main .control-panel{width:100%;margin:0}.play-controls{padding:10px}.play-pads{gap:6px}.play-pad-grid button{min-height:36px;font-size:clamp(25px,7vw,34px)}.play-pad-heading{font-size:11px}.play-main .play-action-bar button{font-size:10px}.play-main .play-pad-grid .note-pad{font-size:14px}.note-pad .play-pad-grid button{font-size:13px}.large-keys .play-pad-grid button{min-height:48px}}@media (min-width:721px){.play-main .board-section{justify-self:center;width:100%;max-width:min(100%,max(340px,100svh - 245px))}.play-main .sudoku-board{container-type:inline-size}.play-main .cell{font-size:clamp(23px,6.9cqw,43px)}.play-main .cell-notes{font-size:clamp(10px,2.6cqw,15px)}.play-main.large-notes .cell-notes{font-size:clamp(11px,3.3cqw,18px)}}body:has(.home-main,.editor-main){--paper:#304573;--surface:#293c67;--ink:#edf3ff;--muted:#c3d0e9;--surface-hover:#3b5689;--line:#4c6390;--accent:#82b0ff;--accent-dark:#c9dcff;--tint:#354e82;--primary:#3474d4;--primary-hover:#2464c1;--disabled-surface:#3b4e73;--disabled-ink:#b2c1dc;--danger-ink:#ffb9be;background:#304573}body:has(.home-main,.editor-main) .site-header{border-color:#ffffff25}body:has(.home-main,.editor-main) .brand-sub{color:#d0dcf4}body:has(.home-main,.editor-main) .brand-mark{background:#244172}body:has(.home-main,.editor-main) .language-toggle{background:#293c67;border-color:#526a98}body:has(.home-main,.editor-main) .language-toggle button{color:#e4edff}body:has(.home-main,.editor-main) .language-toggle button[aria-pressed=true]{color:#263451;background:#ffdc9e}.home-main .primary,.create-main .primary{color:#fff;background:#3474d4;border:1px solid #6498e4}.home-main .primary:hover:not(:disabled),.create-main .primary:hover:not(:disabled){background:#2464c1}.home-main .button:disabled,.create-main .button:disabled{color:#b2c1dc;background:#3b4e73;border-color:#4c6390}.home-main{padding-top:32px;padding-bottom:36px}.collection-heading{justify-content:space-between;margin-bottom:25px}.collection-heading .section-heading{margin:0}.collection-heading h2{font-size:19px}.home-main .counter{color:#d7e4ff;background:#293c67;border-color:#526a98;font-weight:600}.home-main .capacity-note{background:#293c67;border:1px solid #6d83ac;border-radius:10px;margin:0 0 20px;padding:12px 16px}.home-main .game-card{background:#293c67;border:1px solid #526a98;border-radius:16px;padding:16px 18px 18px;box-shadow:0 8px 24px #14203e25}.home-main .game-card:hover{border-color:#8eb7f6;box-shadow:0 10px 28px #14203e44}.home-main .card-top{margin-bottom:12px}.home-main .status-pill{color:#e4edff;background:#3b527f}.home-main .status-pill.complete{color:#343044;background:#ffdc9e}.home-main .game-index{color:#a9c0e8}.home-main .game-card-title{margin:0 0 14px}.home-main .game-card-title h2{font-size:19px}.home-main .game-card-title>svg{display:none}.home-main .mini-board{border:2px solid #101a2b;width:100%;max-width:280px;margin-bottom:18px}.home-main .mini-board>span{color:#101620;background:#fff;border-color:#d1d3d8;font-size:15px;font-weight:600}.home-main .mini-board>.mini-entered{color:#2464bd;background:#fff}.home-main .mini-board>.box-right{border-right:2px solid #101a2b}.home-main .mini-board>.box-bottom{border-bottom:2px solid #101a2b}.home-main .progress-track{background:#4c6086;border-radius:6px;height:6px}.home-main .progress-track>span{background:#ffce7d}.home-main .card-meta{color:#d2def3;flex-wrap:wrap;font-size:11px}.continue-game{color:#fff;background:#3469b7;border:1px solid #7098d7;border-radius:9px;justify-content:space-between;align-items:center;min-height:46px;margin-top:18px;padding:10px 14px;font-size:13px;font-weight:650;display:flex}.home-main .add-card,.home-main .empty-collection{color:#edf3ff;background:#293c67;border:1px dashed #8198c1}.home-main .add-card:hover,.home-main .empty-collection:hover{background:#354e82;border-color:#b9d3ff}.home-main .empty-symbol{color:#ffcf82;background:#3a5280}.home-main .text-action{color:#ffdc9e}.card-menu{position:relative}.card-menu>summary{cursor:pointer;color:#d6e4ff;border:1px solid #526a98;border-radius:8px;place-items:center;min-width:44px;min-height:44px;line-height:1;list-style:none;display:grid}.card-menu>summary::-webkit-details-marker{display:none}.card-menu[open]>summary{color:#263451;background:#ffdc9e}.card-menu .card-actions{z-index:5;background:#213153;border:1px solid #829aca;border-radius:10px;flex-direction:column;align-items:stretch;gap:4px;min-width:160px;padding:6px;display:flex;position:absolute;top:50px;right:0;box-shadow:0 8px 24px #0b173b66}.card-menu .edit-game-button,.card-menu .delete-button{color:#eff4ff;text-align:left;justify-content:flex-start;gap:10px;width:100%;min-height:44px;padding:10px;font-size:13px;display:flex}.card-menu .delete-button{color:#ffb9be}.card-menu .delete-button:hover{background:#593b56}.card-menu .edit-game-button:disabled{opacity:1;color:var(--disabled-ink);background:#2b3f65}.create-main{width:100%;max-width:1180px;padding:24px 30px 36px}.create-main .editor-heading{display:none}.create-main .back-link{color:#e2eaff}.create-main .workspace{grid-template-columns:minmax(0,1fr) 350px;gap:26px}.create-main .board-section{justify-self:center;width:100%;max-width:min(100%,max(340px,100svh - 240px))}.create-main .board-toolbar{color:#e2eaff;padding-left:0}.create-main .board-toolbar small{color:#c7d7f4}.create-main .sudoku-board{border:3px solid #101a2b;border-radius:0;box-shadow:0 8px 24px #0c183933;container-type:inline-size}.create-main .cell{font-size:clamp(23px,6.9cqw,43px)}.create-main .cell.given{color:#101620;font-weight:650}.create-main .cell.entered{color:#2464bd}.create-main .cell.box-right{border-right:3px solid #101a2b}.create-main .cell.box-bottom{border-bottom:3px solid #101a2b}.create-main .cell.peer{background:#f1f4fa}.create-main .cell.same{background:#ffdc9e}.create-main .cell.selected{background:#edf4ff;box-shadow:inset 0 0 0 3px #367de1}.create-main .cell-notes,.create-main .cell.selected .cell-notes{color:#35435b;font-size:clamp(9px,2.55cqw,14px);font-weight:550}.create-main .cell.conflict{color:#b12032;background:#ffe5e8}.create-main .board-legend{display:none}.create-main .creation-panel{color:#edf3ff;background:#293c67;border:1px solid #526a98;border-radius:16px;flex-direction:column;margin:0;display:flex;overflow:hidden}.create-main .creation-panel>.panel-section{border-bottom:1px solid #4c6390;padding:14px}.create-main .clue-entry-section{order:0}.create-main .creation-panel .keypad-section{order:1;grid-template-columns:minmax(0,1fr) 66px;gap:10px;display:grid}.create-main .keypad-section .panel-section-title{grid-column:1/-1;margin:0;font-size:11px;display:flex}.create-main .keypad{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;display:grid}.create-main .keypad>button{color:#2464bd;background:#fff;border:1px solid #cdd7e7;border-radius:7px;height:44px;min-height:44px;font-size:25px}.create-main .keypad>button:disabled{color:#536680;background:#dde5f1}.create-main .keypad>button:hover:not(:disabled){background:#e8f0ff;border-color:#829ec8}.create-main .keypad>button:active:not(:disabled){background:#d7e5ff}.create-main .erase-button{color:#e9f1ff;background:#354e82;border:1px solid #607ba9;border-radius:8px;flex-direction:column;justify-content:center;gap:7px;height:100%;min-height:44px;margin:0;padding:5px}.create-main .erase-button .erase-label,.create-main .erase-button kbd{display:none}.create-main .erase-button .erase-mobile-label{font-size:11px;display:inline}.create-main .count-section{background:#26385e;order:2;gap:6px}.create-main .count-section>strong{color:#ffd28b;max-width:190px;font-size:24px}.create-main .count-section>.count-pending{font-size:13px}.create-main .count-invalid{border-left:4px solid #ff9b9f}.create-main .count-invalid>strong{color:#ffb9be}.create-main .count-ready{border-left:4px solid #ffcf82}.create-main .start-section{background:#26385e;order:3}.create-main .start-section p{color:#d8e4fa;margin-top:8px;font-size:11px;line-height:1.7}.create-main .title-section{order:4}.create-main .title-section input,.create-main .clue-input-panel textarea{color:#15213a;background:#f8faff;border-color:#8199bf}.create-main .title-section input::placeholder,.create-main textarea::placeholder{color:#586985}.create-main .generator-section{background:#293c67;order:5;border-bottom:0!important}.create-main .difficulty-toggle button{color:#e3edff;background:#354e82;border-color:#607ba9;min-height:44px}.create-main .difficulty-toggle button[aria-pressed=true]{color:#263451;background:#ffdc9e;border-color:#e5b55c}.create-main .difficulty-toggle button:disabled{opacity:1}.create-main .clue-entry-actions>button{color:#edf3ff;background:#354e82;border:1px solid #607ba9;border-radius:8px;min-height:44px;font-size:12px}.create-main .clue-entry-actions>button:disabled{opacity:1;background:var(--disabled-surface);color:var(--disabled-ink)}.create-main .clue-input-panel{background:0 0;border-color:#607ba9}.create-main .clue-input-panel p{color:#d3dff5}.create-main .clue-input-panel .invalid{color:#ffb9be}.create-main .clue-input-panel .ready{color:#ffdc9e}.create-main .spinner{border-color:#ffcf82 #7088b1 #7088b1}@media (max-width:900px) and (min-width:721px){.create-main .workspace{grid-template-columns:minmax(0,1fr) 310px;gap:18px}}@media (max-width:720px){.home-main{padding:24px 16px}.collection-heading{flex-direction:row;align-items:center;gap:12px;margin-bottom:20px}.collection-heading>.button{width:auto;padding:11px 12px;font-size:12px}.collection-heading h2{font-size:16px}.collection-heading .counter{margin-left:5px;padding:3px 6px;font-size:11px}.home-main .game-list{grid-template-columns:minmax(0,1fr);gap:16px}.home-main .mini-board{max-width:270px}.home-main .add-card{min-height:140px}.editor-shell .create-main{padding:4px 10px 24px}.create-main .workspace{grid-template-columns:minmax(0,1fr);gap:10px;width:100%;max-width:510px}.create-main .board-section{max-width:100%}.editor-shell .create-main .board-toolbar{margin-bottom:6px;font-size:11px;display:flex}.create-main .creation-panel .keypad-section{display:grid}.create-main .keypad-section .panel-section-title{display:flex}}.confirm-dialog{background:var(--surface)}.create-main .generator-error{color:#ffb9be}.create-main .erase-button:hover:not(:disabled){color:var(--danger-ink)}.create-main .erase-button:disabled{background:var(--disabled-surface);color:var(--disabled-ink);border-color:#4c6390}.share-options button:disabled,.share-copy:disabled{opacity:1;background:var(--disabled-surface);color:var(--disabled-ink)}
