#sudokuGeneratorTool{max-width:640px;margin:0 auto;--sdk-board-max: min(96vw, 540px);--sdk-cell: calc(var(--sdk-board-max) / 9);--sdk-border-thick: var(--color-text, #1a1a1a);--sdk-border-thin: var(--color-border, #c7cbd1);--sdk-surface: var(--color-surface, #ffffff);--sdk-surface-alt: var(--color-bg, #f4f6fa);--sdk-text: var(--color-text, #1a1a1a);--sdk-text-secondary: var(--color-text-secondary, #64748b);--sdk-primary: var(--color-primary, #2563eb);--sdk-primary-light: var(--color-primary-light, #dbeafe);--sdk-danger: var(--color-danger, #dc2626);--sdk-danger-bg: color-mix(in srgb, var(--sdk-danger) 18%, transparent);--sdk-highlight-rc: color-mix(in srgb, var(--sdk-primary) 12%, transparent);--sdk-highlight-same: color-mix(in srgb, var(--sdk-primary) 25%, transparent);--sdk-selected: color-mix(in srgb, var(--sdk-primary) 35%, transparent)}@media(prefers-color-scheme:dark){#sudokuGeneratorTool{--sdk-border-thick: #e8ecf1;--sdk-border-thin: #424853;--sdk-surface: #1d2128;--sdk-surface-alt: #161a20;--sdk-text: #e8ecf1;--sdk-text-secondary: #97a2b0}}#sudokuGeneratorTool.sdk-dark{--sdk-border-thick: #e8ecf1;--sdk-border-thin: #424853;--sdk-surface: #1d2128;--sdk-surface-alt: #161a20;--sdk-text: #e8ecf1;--sdk-text-secondary: #97a2b0;color:var(--sdk-text)}#sudokuGeneratorTool .sdk-privacy{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:var(--sdk-primary-light);color:var(--sdk-text);border-radius:var(--radius-sm, 8px);font-size:.875rem;margin-bottom:.75rem}#sudokuGeneratorTool .sdk-toolbar{margin-bottom:.75rem}#sudokuGeneratorTool .sdk-toolbar-row{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}#sudokuGeneratorTool .sdk-field{display:inline-flex;align-items:center;gap:.35rem;font-size:.875rem;color:var(--sdk-text-secondary)}#sudokuGeneratorTool .sdk-select{padding:.4rem .6rem;border:1px solid var(--sdk-border-thin);border-radius:var(--radius-sm, 8px);background:var(--sdk-surface);color:var(--sdk-text);min-height:44px;font-size:1rem}#sudokuGeneratorTool .sdk-btn-compact{min-height:44px;padding:.45rem .9rem}#sudokuGeneratorTool .sdk-timer{font-family:var(--font-mono, ui-monospace, SFMono-Regular, "Cascadia Mono", monospace);font-size:1.25rem;font-weight:600;margin-left:auto;padding:.3rem .6rem;min-width:4.5rem;text-align:center;border:1px solid var(--sdk-border-thin);border-radius:var(--radius-sm, 8px);background:var(--sdk-surface);color:var(--sdk-text)}#sudokuGeneratorTool .sdk-status{min-height:1.25rem;font-size:.875rem;color:var(--sdk-text-secondary);margin-bottom:.5rem}#sudokuGeneratorTool .sdk-status.sdk-status-error{color:var(--sdk-danger)}#sudokuGeneratorTool .sdk-board-wrap{position:relative;margin:0 auto .75rem;width:var(--sdk-board-max)}#sudokuGeneratorTool .sdk-board{display:grid;grid-template-columns:repeat(9,1fr);grid-template-rows:repeat(9,1fr);width:var(--sdk-board-max);aspect-ratio:1 / 1;border:3px solid var(--sdk-border-thick);border-radius:6px;background:var(--sdk-border-thin);gap:1px;user-select:none;touch-action:manipulation}#sudokuGeneratorTool .sdk-cell{position:relative;display:grid;place-items:center;background:var(--sdk-surface);color:var(--sdk-text);font-size:clamp(1rem,4.5vw,1.5rem);font-weight:600;border:none;padding:0;margin:0;cursor:pointer;font-family:inherit;-webkit-tap-highlight-color:transparent}#sudokuGeneratorTool .sdk-cell:focus-visible{outline:2px solid var(--sdk-primary);outline-offset:-2px;z-index:2}#sudokuGeneratorTool .sdk-cell[data-col="3"],#sudokuGeneratorTool .sdk-cell[data-col="6"]{box-shadow:-2px 0 0 0 var(--sdk-border-thick)}#sudokuGeneratorTool .sdk-cell[data-row="3"],#sudokuGeneratorTool .sdk-cell[data-row="6"]{box-shadow:0 -2px 0 0 var(--sdk-border-thick)}#sudokuGeneratorTool .sdk-cell[data-row="3"][data-col="3"],#sudokuGeneratorTool .sdk-cell[data-row="3"][data-col="6"],#sudokuGeneratorTool .sdk-cell[data-row="6"][data-col="3"],#sudokuGeneratorTool .sdk-cell[data-row="6"][data-col="6"]{box-shadow:-2px -2px 0 0 var(--sdk-border-thick)}#sudokuGeneratorTool .sdk-cell.sdk-given{font-weight:800;color:var(--sdk-text);cursor:default}#sudokuGeneratorTool .sdk-cell.sdk-user{color:var(--sdk-primary)}#sudokuGeneratorTool .sdk-cell.sdk-conflict{background:var(--sdk-danger-bg);color:var(--sdk-danger)}#sudokuGeneratorTool .sdk-cell.sdk-hl-rc{background:var(--sdk-highlight-rc)}#sudokuGeneratorTool .sdk-cell.sdk-hl-same{background:var(--sdk-highlight-same)}#sudokuGeneratorTool .sdk-cell.sdk-selected{background:var(--sdk-selected)}#sudokuGeneratorTool .sdk-cell.sdk-hint-pulse{animation:sdkPulse .9s ease-in-out 3}@keyframes sdkPulse{0%,to{box-shadow:inset 0 0 0 0 var(--sdk-primary)}50%{box-shadow:inset 0 0 0 4px var(--sdk-primary)}}#sudokuGeneratorTool .sdk-cell .sdk-notes{position:absolute;inset:0;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);font-size:clamp(.55rem,1.6vw,.72rem);color:var(--sdk-text-secondary);font-weight:500;padding:1px;pointer-events:none}#sudokuGeneratorTool .sdk-cell .sdk-note{display:grid;place-items:center}#sudokuGeneratorTool .sdk-cell .sdk-note-empty{visibility:hidden}#sudokuGeneratorTool .sdk-cell .sdk-main{position:relative;z-index:1}#sudokuGeneratorTool .sdk-pause-overlay{position:absolute;inset:0;background:color-mix(in srgb,var(--sdk-surface) 92%,transparent);display:grid;place-items:center;border-radius:6px}#sudokuGeneratorTool .sdk-pause-overlay.sdk-hidden{display:none}#sudokuGeneratorTool .sdk-pause-inner{display:grid;gap:.75rem;justify-items:center}#sudokuGeneratorTool .sdk-pause-title{font-size:1.25rem;font-weight:600}#sudokuGeneratorTool .sdk-numpad{display:grid;grid-template-columns:repeat(5,1fr);gap:.4rem;margin:.75rem auto;width:var(--sdk-board-max)}#sudokuGeneratorTool .sdk-numpad-btn{min-height:48px;padding:.5rem 0;border:1px solid var(--sdk-border-thin);border-radius:var(--radius-sm, 8px);background:var(--sdk-surface);color:var(--sdk-text);font-size:1.15rem;font-weight:600;cursor:pointer;font-family:inherit;-webkit-tap-highlight-color:transparent}#sudokuGeneratorTool .sdk-numpad-btn:hover,#sudokuGeneratorTool .sdk-numpad-btn:focus-visible{background:var(--sdk-primary-light);outline:none}#sudokuGeneratorTool .sdk-numpad-btn.sdk-mode-active{background:var(--sdk-primary);color:#fff;border-color:var(--sdk-primary)}#sudokuGeneratorTool .sdk-numpad-btn[disabled]{opacity:.4;cursor:default}#sudokuGeneratorTool .sdk-actions{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:center;margin-bottom:.75rem}#sudokuGeneratorTool .sdk-btn-action{min-height:44px;padding:.45rem .85rem;flex:1 1 auto;min-width:88px}#sudokuGeneratorTool .sdk-best{text-align:center;font-size:.875rem;color:var(--sdk-text-secondary);min-height:1.25rem;margin-bottom:.5rem}#sudokuGeneratorTool .sdk-overlay{position:fixed;inset:0;background:#00000080;display:grid;place-items:center;padding:1rem;z-index:50}#sudokuGeneratorTool .sdk-overlay.sdk-hidden{display:none}#sudokuGeneratorTool .sdk-overlay-card{background:var(--sdk-surface);color:var(--sdk-text);border-radius:12px;max-width:420px;width:100%;box-shadow:0 10px 30px #00000040}#sudokuGeneratorTool .sdk-overlay-head{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid var(--sdk-border-thin)}#sudokuGeneratorTool .sdk-overlay-head h3{margin:0;font-size:1.125rem}#sudokuGeneratorTool .sdk-overlay-close{background:none;border:none;font-size:1.4rem;cursor:pointer;color:var(--sdk-text-secondary);width:32px;height:32px;border-radius:6px}#sudokuGeneratorTool .sdk-overlay-close:hover,#sudokuGeneratorTool .sdk-overlay-close:focus-visible{background:var(--sdk-primary-light);color:var(--sdk-text);outline:none}#sudokuGeneratorTool .sdk-overlay-body{padding:1rem;display:grid;gap:.75rem}#sudokuGeneratorTool .sdk-toggle{display:flex;align-items:center;gap:.6rem;min-height:44px;cursor:pointer}#sudokuGeneratorTool .sdk-toggle input[type=checkbox]{width:20px;height:20px;cursor:pointer}#sudokuGeneratorTool .sdk-completion-card{text-align:center}#sudokuGeneratorTool .sdk-completion-time{font-family:var(--font-mono, ui-monospace, SFMono-Regular, "Cascadia Mono", monospace);font-size:2rem;font-weight:700;margin-bottom:.5rem}#sudokuGeneratorTool .sdk-completion-best{color:var(--sdk-text-secondary);margin-bottom:1rem}#sudokuGeneratorTool .sdk-completion-actions{display:flex;justify-content:center}#sudokuGeneratorTool .sdk-noscript{color:var(--sdk-danger);text-align:center;padding:1rem}@media(max-width:480px){#sudokuGeneratorTool .sdk-numpad{grid-template-columns:repeat(5,1fr)}#sudokuGeneratorTool .sdk-btn-action{min-width:72px;font-size:.875rem;padding:.4rem .6rem}#sudokuGeneratorTool .sdk-timer{font-size:1.1rem}}
