:root{color-scheme:light;--site-ink:#1b2b3d;--site-muted:#59697c;--site-accent:#1b5594;--site-accent-soft:#eaf2fc;--site-border:#dce4ee;--site-bg:#f5f7fa;--site-surface:#fff;--site-surface-soft:#fbfcfe;--site-hover-bg:#f1f5fa;--site-accent-hover:#113f73;--site-button-bg:#1b5594;--site-button-hover:#113f73;--site-button-ink:#fff;--site-focus:#2563b3;--site-nav-ink:#42546a;--site-nav-active:#164a84;--site-logo-filter:none;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.55;color:var(--site-ink);background:var(--site-bg);--sudoku-cell:#fffef8;--sudoku-grid-line:#b2bac7;--sudoku-grid-box:#35435b;--sudoku-hint-premise:#ffe4a2;--sudoku-hint-related:#d9eafc;--sudoku-hint-target:#d9efcf;--sudoku-notice-border:#a89f7b;--sudoku-notice-background:#faf8ee;--sudoku-surface:#fff;--sudoku-error-border:#e6c7c2;--sudoku-error-ink:#963b32;--sudoku-error-background:#fff5f2;--sudoku-coordinate:#4f4c54;--sudoku-entry:#174c88;--sudoku-given:#2d3b50;--sudoku-selection:#174c88;--sudoku-conflict:#b11e16;--sudoku-solved:#42782a;--sudoku-candidate:#68656c;--sudoku-highlight-ink:#202020;--sudoku-highlight-background:#f2bd50;--sudoku-removed-ink:#a81812;--sudoku-removed-background:#ffe0db;--sudoku-marker:#202020;--sudoku-control-hover-border:#4c6482;--sudoku-control-hover-background:#edf3fa;--sudoku-primary-border:#6a7d92;--sudoku-legend-border:#7e7587;--sudoku-input-border:#a8a5af;--guide-subheading:#41576f;--guide-lead:#52657a;--guide-card-number:#8da7c5;--guide-card-border-hover:#92b3d6;--guide-card-bg:#fbfcfe;--guide-card-bg-hover:#f5f9ff;--guide-topic-bg-hover:#f6f9fd;--guide-arrow:#88a3c0;--guide-callout-border:#d6e5f5;--guide-callout-bg:#f5f9fe;--guide-figure-bg:#f8fafc;--guide-note-border:#92b3d5;--guide-note-bg:#f6f8fb;--guide-control-ink:#2c4c70;--guide-swatch-border:#aeb7c3;--guide-premise:#ffe4a2;--guide-related:#d9eafc;--guide-target:#d9efcf}*{box-sizing:border-box}body{margin:0}a{color:var(--site-accent);text-underline-offset:0.2em;text-decoration-thickness:0.08em}a:hover{color:var(--site-accent-hover)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--site-focus);outline-offset:4px}.site{display:flex;flex-direction:column;width:100%;max-width:1400px;min-height:100vh;min-height:100svh;margin-inline:auto;padding-inline:clamp(1rem,2.5vw,3rem);background:var(--site-surface)}.site-header{position:relative;display:flex;flex-wrap:nowrap;align-items:center;justify-content:space-between;gap:.75rem 2rem;padding-block:1rem;border-bottom:1px solid var(--site-border)}.site-logo{position:relative;display:flex;align-items:center;flex:0 0 auto;min-height:2.75rem;line-height:0;border-radius:.25rem}.site-logo img{display:block;width:248px;max-width:100%;height:auto;filter:var(--site-logo-filter)}@media screen{:root[data-theme=dark]{color-scheme:dark;--site-ink:#e3eaf3;--site-muted:#a9b9cc;--site-accent:#91c2ff;--site-accent-soft:#243e59;--site-border:#3b4b61;--site-bg:#111923;--site-surface:#182330;--site-surface-soft:#1e2c3c;--site-hover-bg:#243447;--site-accent-hover:#c0ddff;--site-button-bg:#80b9f5;--site-button-hover:#a3ceff;--site-button-ink:#112338;--site-focus:#91c2ff;--site-nav-ink:#c2cede;--site-nav-active:#b4d5ff;--site-logo-filter:brightness(0) invert(0.94);--site-logo-accent:#92b9e6;--sudoku-cell:#192638;--sudoku-grid-line:#93a4b9;--sudoku-grid-box:#a5b6cb;--sudoku-hint-premise:#674e24;--sudoku-hint-related:#243e59;--sudoku-hint-target:#2b4b38;--sudoku-notice-border:#a18d52;--sudoku-notice-background:#302d23;--sudoku-surface:#1b2838;--sudoku-error-border:#9e625d;--sudoku-error-ink:#ffc1b6;--sudoku-error-background:#432a2d;--sudoku-coordinate:#b8c7d9;--sudoku-entry:#a9d2ff;--sudoku-given:#edf2f8;--sudoku-selection:#84beff;--sudoku-conflict:#ffb3a9;--sudoku-solved:#8dcb78;--sudoku-candidate:#c0ccda;--sudoku-highlight-ink:#202020;--sudoku-highlight-background:#f2bd50;--sudoku-removed-ink:#ffd1ca;--sudoku-removed-background:#703a3d;--sudoku-marker:#edf2f8;--sudoku-control-hover-border:#8aa5c6;--sudoku-control-hover-background:#2a3d54;--sudoku-primary-border:#7794b4;--sudoku-legend-border:#a8b5c8;--sudoku-input-border:#72849e}:root[data-theme=dark] .site-logo::after{content:"";position:absolute;inset:0;z-index:1;background:var(--site-logo-accent);mask:url("../images/sudoku-st-logo-accent.png?v=stardos-closed-1") center/contain no-repeat;pointer-events:none}}.header-actions{display:flex;flex-wrap:nowrap;align-items:center;gap:.5rem 1rem}.site-menu{flex:0 0 auto;min-width:0}.site-menu-toggle{display:flex;align-items:center;justify-content:center;gap:.55rem;min-height:2.75rem;padding:.55rem .7rem;border:1px solid var(--site-border);border-radius:.5rem;color:var(--site-nav-ink);background:var(--site-surface);font-size:.95rem;font-weight:600;line-height:1;list-style:none;white-space:nowrap;cursor:pointer}.site-menu-toggle::-webkit-details-marker{display:none}.site-menu-toggle:hover,.site-menu[open]>.site-menu-toggle{background:var(--site-hover-bg)}.site-menu-toggle:focus-visible{outline:3px solid var(--site-focus);outline-offset:4px}.locale-picker-caption,.site-menu[data-desktop=true]>.site-menu-toggle,.theme-toggle-label{display:none}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:2.75rem;height:2.75rem;padding:.6rem;border:0;border-radius:.35rem;color:var(--site-muted);background:0 0;cursor:pointer}.theme-toggle[hidden]{visibility:hidden}.theme-toggle:hover{color:var(--site-ink)}.theme-toggle svg{display:block}.navigation{display:flex;flex-wrap:nowrap;align-items:center;gap:.25rem .4rem;min-width:0}.navigation a{display:inline-flex;align-items:center;justify-content:center;min-height:2.75rem;padding:.55rem .85rem;border-radius:.5rem;color:var(--site-nav-ink);font-size:.95rem;font-weight:600;text-decoration:none}.navigation a:hover{color:var(--site-accent);background:var(--site-hover-bg)}.navigation a[aria-current=page]{color:var(--site-nav-active);background:var(--site-accent-soft)}.language-flag{display:block;flex:0 0 auto;width:24px;height:16px;object-fit:cover}.locale-picker{position:relative;flex:0 0 auto;margin:0;font-size:.875rem;line-height:1.3}.locale-picker>summary{display:flex;align-items:center;min-height:2.75rem;padding:0 .6rem;border:1px solid var(--site-border);border-radius:.45rem;color:var(--site-nav-ink);background:var(--site-surface);font-weight:600;list-style:none;cursor:pointer;user-select:none}.locale-picker>summary .language-flag{margin-left:.45rem}.locale-picker>summary::-webkit-details-marker{display:none}.locale-picker>summary::after{width:.4rem;height:.4rem;margin:-.25rem .1rem 0 .55rem;border:solid currentColor;border-width:0 2px 2px 0;content:"";transform:rotate(45deg)}.locale-picker[open]>summary::after{margin-top:.2rem;transform:rotate(-135deg)}.locale-picker>summary:hover,.locale-picker[open]>summary{background:var(--site-hover-bg)}.locale-picker>summary:focus-visible{outline:3px solid var(--site-focus);outline-offset:4px}.locale-picker-list{position:absolute;z-index:101;top:calc(100% + .4rem);right:0;min-width:10rem;max-width:calc(100vw - 2rem);max-height:70vh;max-height:70svh;margin:0;padding:.3rem;overflow-y:auto;border:1px solid var(--site-border);border-radius:.5rem;background:var(--site-surface);box-shadow:0 .75rem 1.75rem rgb(0 0 0 / 15%);list-style:none}.locale-picker-list--columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:column;grid-template-rows:repeat(var(--locale-picker-rows),auto);column-gap:.25rem;width:21rem}.locale-picker-list a{display:flex;align-items:center;min-height:2.75rem;padding:0 .6rem;border-radius:.3rem;color:var(--site-nav-ink);text-decoration:none;white-space:nowrap}.locale-picker-list .language-flag{margin-right:.6rem}.locale-picker-list a:focus-visible,.locale-picker-list a:hover,.locale-picker-list a[aria-current]{color:var(--site-nav-active);background:var(--site-accent-soft)}.locale-picker-list a[aria-current]{font-weight:700}.page-content{flex:1 0 auto;width:100%;min-width:0;min-height:12rem;padding-block:clamp(1.4rem,2.5vw,2.5rem) 3rem;overflow-wrap:anywhere}h1{margin:0 0 1.1rem;font-size:clamp(1.65rem, 1.3rem + 1.2vw, 2.25rem);font-weight:700;letter-spacing:-.025em;line-height:1.18}h2{margin:1.5rem 0 .75rem;font-size:1.3rem;line-height:1.3}p{margin:0 0 1rem}.page-content>.feature-links,.page-content>p{max-width:70ch}button,input,select,textarea{font:inherit}.feature-links{margin:0 0 1.5rem;padding-left:1.5rem}.feature-links li{padding:.4rem 0}.skip-link{position:absolute;top:0;left:1rem;z-index:100;padding:.65rem 1rem;border:1px solid var(--site-accent);border-radius:0 0 .5rem .5rem;color:var(--site-accent);background:var(--site-surface);font-weight:600;transform:translateY(-120%)}.skip-link:focus{transform:translateY(0)}@media (max-width:52rem),(max-width:68rem) and (orientation:landscape){.site-header{gap:.65rem;padding-block:0.7rem}.site-logo{flex:0 1 auto;min-width:0}.site-logo img{width:clamp(8.5rem,44vw,11rem)}.header-actions{position:absolute;z-index:102;top:100%;right:0;left:0;flex-direction:column;align-items:stretch;gap:.35rem;max-height:calc(100svh - 5rem);padding:.7rem;overflow-y:auto;border:1px solid var(--site-border);border-top:0;border-radius:0 0 .65rem .65rem;background:var(--site-surface);box-shadow:0 .8rem 1.5rem rgb(0 0 0 / 12%)}.navigation{flex-direction:column;align-items:stretch;gap:.2rem}.navigation a{justify-content:flex-start;padding-inline:0.65rem}.header-actions .theme-toggle{justify-content:flex-start;gap:.7rem;width:100%;padding-inline:0.65rem;font-size:.95rem;font-weight:600}.header-actions .theme-toggle[hidden]{display:none}.theme-toggle-label{display:inline}.locale-picker-code{display:none}.locale-picker-caption{display:inline}.locale-picker>summary{justify-content:space-between}.locale-picker>summary .language-flag{margin-left:auto}.locale-picker-list,.locale-picker-list--columns{position:static;display:block;width:100%;min-width:0;max-width:100%;max-height:none!important;margin-top:.35rem;box-shadow:none}}@media (max-width:42rem){.page-content{padding-block:1.25rem 2rem}}@media print{.locale-picker,.site-menu,.theme-toggle{display:none}}#sudoku-app{--board-preferred-width:clamp(40rem, calc(100svh - 14rem), 58rem);--board-controls-width:22rem;--board-gap:clamp(1.5rem, 3vw, 3rem);max-width:100%}#sudoku-app.sudoku-game{width:100%;max-width:calc(var(--board-preferred-width) + var(--board-controls-width) + var(--board-gap) + 2rem);margin-inline:auto}.sudoku-game .board-layout:not(.is-fullscreen){margin-inline:1rem}.board-heading{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem 2rem;margin-bottom:1.5rem}.board-heading h1{margin:0}#sudoku-app [hidden]{display:none!important}#sudoku-app h2{margin:0 0 .6rem;font-size:1rem}.board-notice{border-left:3px solid var(--sudoku-notice-border);padding:.65rem .85rem;margin:0 0 1.25rem;background:var(--sudoku-notice-background)}.board-notice p{margin:.3rem 0 0}.solver-howto{max-width:70ch;margin-bottom:1.5rem;color:var(--site-muted,#526176)}.solver-howto summary{width:fit-content;padding:.5rem 0;font-weight:600;color:var(--site-accent,#174c88);cursor:pointer}.solver-howto summary:focus-visible{outline:2px solid var(--site-accent,#174c88);outline-offset:3px}.puzzle-identity{margin-top:1.5rem;text-align:center;overflow-wrap:anywhere}.puzzle-links{display:flex;flex-wrap:wrap;justify-content:center;gap:.25rem .75rem;margin-top:.25rem}.puzzle-identity a[aria-disabled=true]{opacity:.55;cursor:default;text-decoration:none}.print-link{border:0;padding:0;color:var(--site-accent);background:0 0;font:inherit;text-decoration:underline;text-underline-offset:0.2em;cursor:pointer}.print-link:hover{color:var(--site-accent-hover,#113f73)}#sudoku-app .print-link:disabled{cursor:default}@media (max-width:48rem){.puzzle-links [data-action=print]{display:none}}@media (hover:none),(pointer:coarse){#board-keyboard-help{display:none}}.catalog-controls{display:flex;flex-wrap:nowrap;align-items:center;gap:.6rem;max-width:100%;margin:0}.catalog-controls button,.catalog-controls input,.catalog-controls select{min-height:2.75rem;min-width:0;max-width:100%;padding:.6rem .85rem;border:1px solid var(--site-border,#d8e0e9);border-radius:.5rem;color:var(--site-ink,#243349);background:var(--sudoku-surface);font:inherit}.catalog-controls button{flex:0 0 auto;border-color:var(--site-button-bg,#1b5594);color:var(--site-button-ink,#fff);background:var(--site-button-bg,#1b5594);font-weight:600;white-space:nowrap;cursor:pointer}.catalog-controls button:hover{border-color:var(--site-button-hover,#113f73);background:var(--site-button-hover,#113f73)}.board-status{margin:0 0 .6rem;font-size:.94rem;font-weight:600}.board-status:empty{margin:0}.sudoku-celebration{position:fixed;inset:0;width:100%;height:100%;height:100dvh;max-width:none;max-height:none;margin:0;padding:max(1rem,env(safe-area-inset-top)) max(1rem,env(safe-area-inset-right)) max(1rem,env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-left));border:0;color:var(--site-ink);background:0 0;overflow:hidden;overscroll-behavior:contain}.sudoku-celebration[open]{display:grid;grid-template-rows:minmax(0,1fr) minmax(0,auto) minmax(0,4fr);place-items:center}.sudoku-celebration::backdrop{background:rgb(10 22 42 / 58%)}.sudoku-celebration[data-celebration-effect=fireworks]::backdrop{background:rgb(6 15 33 / 82%)}.celebration-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.celebration-card{position:relative;grid-row:2;width:min(100%,25rem);min-height:0;max-height:100%;padding:2.25rem 1.75rem 1.75rem;overflow:auto;border:1px solid var(--site-border);border-radius:1.5rem;background:radial-gradient(ellipse at 50% 0,var(--site-accent-soft),transparent 70%),var(--site-surface);box-shadow:0 1.5rem 5rem rgb(0 0 0 / 28%);text-align:center;animation:.3s cubic-bezier(.2,.8,.3,1.15) both celebration-arrive}.celebration-close{position:absolute;top:.5rem;right:.5rem;display:grid;place-items:center;width:2.75rem;height:2.75rem;padding:0;border:0;border-radius:50%;color:var(--site-muted);background:0 0;cursor:pointer}.celebration-close:hover{color:var(--site-ink);background:var(--site-hover-bg)}.celebration-medal{position:relative;display:grid;place-items:center;width:6rem;height:6rem;margin:0 auto 1rem;border:1px solid;border-radius:50%;color:#b57709;background:#fff2cd;box-shadow:0 0 0 .6rem rgb(233 175 53 / 9%)}.celebration-spark{position:absolute;color:#d9a026;font-size:1.35rem;line-height:1}.celebration-spark-one{top:.1rem;left:-1.7rem;color:#4aa7ce}.celebration-spark-two{right:-1.5rem;top:1.5rem}.celebration-spark-three{left:-1rem;bottom:0;color:#bd78bd;font-size:.9rem}#sudoku-app .celebration-card h2{margin:0;color:var(--site-ink);font-size:clamp(1.75rem, 6vw, 2.35rem);font-weight:750;line-height:1.2;letter-spacing:-.035em}.celebration-card p{margin:.65rem 0 1.75rem;color:var(--site-muted);font-size:1.05rem}.celebration-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.65rem}.celebration-actions button{flex:1 1 8rem;min-height:2.75rem;padding:.7rem .9rem;border:1px solid var(--site-border);border-radius:.7rem;font:inherit;font-size:.95rem;font-weight:650;line-height:1.25;cursor:pointer;touch-action:manipulation}.celebration-actions .celebration-primary{border-color:var(--site-button-bg);color:var(--site-button-ink);background:var(--site-button-bg)}.celebration-primary span{padding-left:.25rem}.celebration-actions .celebration-primary:hover{border-color:var(--site-button-hover);background:var(--site-button-hover)}.celebration-secondary{color:var(--site-ink);background:var(--site-surface)}.celebration-secondary:hover{background:var(--site-hover-bg)}@keyframes celebration-arrive{from{opacity:0;transform:translateY(.75rem) scale(.94)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-height:28rem){.celebration-card{padding:1.1rem 1.5rem}.celebration-medal{width:4.25rem;height:4.25rem;margin-bottom:.7rem}.celebration-medal>svg{width:3rem;height:3rem}.celebration-card p{margin-bottom:1rem}}.board-error{margin-bottom:1.5rem;padding:.85rem 1rem;border:1px solid var(--sudoku-error-border);border-radius:.5rem;color:var(--sudoku-error-ink);background:var(--sudoku-error-background)}.board-layout{display:grid;grid-template-columns:minmax(0,var(--board-preferred-width)) minmax(17rem,var(--board-controls-width));align-items:start;justify-content:center;gap:var(--board-gap)}.board-main{container-type:inline-size;min-width:0}.board-initial-error{grid-column:1/-1;margin:0}.board-controls{min-width:0;padding-top:1.6rem}.board-summary{margin-bottom:1.25rem}.sudoku-grid{width:100%;table-layout:fixed;border-collapse:collapse;border-spacing:0;font-family:Arial,Helvetica,sans-serif}.sudoku-grid th{color:var(--sudoku-coordinate);font-size:clamp(.68rem, 1.4cqi, .86rem);font-weight:400;text-align:center;padding:.2rem 0;white-space:nowrap;overflow-wrap:normal}.coordinate-corner,.sudoku-grid th:first-child{width:1.65rem}.sudoku-grid tbody th{padding-right:.25rem}.sudoku-square{border:1px solid var(--sudoku-grid-line);padding:0;background:var(--sudoku-cell);vertical-align:middle}.sudoku-square.box-top{border-top:3px solid var(--sudoku-grid-box)}.sudoku-square.box-left{border-left:3px solid var(--sudoku-grid-box)}.sudoku-square.box-bottom{border-bottom:3px solid var(--sudoku-grid-box)}.sudoku-square.box-right{border-right:3px solid var(--sudoku-grid-box)}.sudoku-cell{appearance:none;width:100%;aspect-ratio:1;position:relative;display:grid;place-items:center;padding:0;margin:0;border:0;border-radius:0;color:var(--sudoku-entry);background:var(--sudoku-cell);font:inherit;cursor:pointer;touch-action:manipulation}.cell-value{grid-area:1/1;font-size:clamp(1.3rem, 5.8cqi, 3.5rem);font-weight:500;font-variant-numeric:tabular-nums;line-height:1}.sudoku-cell.is-given .cell-value{color:var(--sudoku-given);font-weight:600}.sudoku-cell.is-selected,.sudoku-cell:focus-visible{z-index:1;outline:0;box-shadow:inset 0 0 0 3px var(--sudoku-selection)}.sudoku-cell.is-conflict .cell-value{color:var(--sudoku-conflict);text-decoration:underline wavy;text-decoration-thickness:1px;text-underline-offset:0.15em}.sudoku-cell.is-related{background:var(--sudoku-hint-related)}.sudoku-cell.is-premise{background:var(--sudoku-hint-premise)}.sudoku-cell.is-target{background:var(--sudoku-hint-target)}.sudoku-cell.is-solved{box-shadow:inset 0 0 0 1px var(--sudoku-solved)}.sudoku-cell.is-solved.is-selected,.sudoku-cell.is-solved:focus-visible{box-shadow:inset 0 0 0 3px var(--sudoku-selection)}.cell-candidates{position:absolute;inset:8%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(3,minmax(0,1fr));align-items:center;justify-items:center;color:var(--sudoku-candidate);font-size:clamp(.55rem, 1.65cqi, 1.125rem);line-height:1}.candidate{display:block;min-width:1em;padding:.1em;text-align:center}.candidate.is-highlighted{color:var(--sudoku-highlight-ink);background:var(--sudoku-highlight-background);font-weight:700}.candidate.is-removed{color:var(--sudoku-removed-ink);background:var(--sudoku-removed-background);text-decoration:line-through;font-weight:700}.candidate.is-invalid{color:var(--sudoku-conflict);font-weight:700}.cell-marker{position:absolute;top:.1rem;left:.15rem;color:var(--sudoku-marker);font-size:clamp(.5rem, 1.8cqi, .9rem);line-height:1;font-weight:700}.number-pad{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:.4rem;padding-left:1.65rem;margin:.8rem 0 0}.number-pad .erase-button{grid-column:auto}.erase-icon{display:none}.board-icon-button,.number-pad button,.sudoku-import button,.sudoku-toolbar button{min-height:3rem;border:1px solid var(--site-border,#d8e0e9);border-radius:.5rem;padding:.65rem;color:var(--site-ink,#243349);background:var(--sudoku-surface);font:inherit;line-height:1.25;cursor:pointer;touch-action:manipulation;transition:background-color 120ms,border-color 120ms}.number-pad button{padding:.4rem 0;font-size:1.05rem}.board-icon-button:hover,.number-pad button:hover,.sudoku-import button:hover,.sudoku-toolbar button:hover{border-color:var(--sudoku-control-hover-border);background:var(--sudoku-control-hover-background)}#sudoku-app button:focus-visible,#sudoku-app input:focus-visible,#sudoku-app select:focus-visible,#sudoku-app textarea:focus-visible{outline:2px solid var(--sudoku-selection);outline-offset:2px}#sudoku-app .sudoku-cell:focus-visible{outline:0}#sudoku-app button:disabled{opacity:.55;cursor:wait}.board-options{display:flex;align-items:center;gap:.5rem;grid-column:1/-1;margin:0 0 1rem}.candidate-toggle{display:flex;flex:1;align-items:center;gap:.4rem;min-width:0;min-height:2.25rem;margin:0;cursor:pointer}.candidate-toggle input{width:1.15rem;height:1.15rem;margin:0;accent-color:var(--sudoku-selection)}.board-icon-button{display:inline-flex;flex:0 0 2.25rem;align-items:center;justify-content:center;width:2.25rem;min-height:2.25rem;height:2.25rem;padding:0}.board-icon-button svg{display:block;flex:none}#sudoku-app .board-icon-button:disabled{cursor:default}.fullscreen-exit-icon,[aria-pressed=true]>svg>.fullscreen-enter-icon{display:none}[aria-pressed=true]>svg>.fullscreen-exit-icon{display:block}.board-help{margin:.6rem 0;color:var(--site-muted,#526176);font-size:.86rem;line-height:1.55}.sudoku-toolbar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.sudoku-toolbar .primary-button,.sudoku-toolbar [data-action=full-hint]{border-color:var(--sudoku-primary-border);background:var(--site-accent-soft,#edf3fa);font-weight:600}.sudoku-toolbar [data-action=apply-hint],.sudoku-toolbar [data-action=start]{grid-column:1/-1}.hint-panel{border:1px solid var(--site-border,#d8e0e9);border-radius:.65rem;padding:1.1rem;margin:1.5rem 0 0;background:var(--sudoku-surface);font-size:.94rem}.hint-panel p{white-space:pre-line}.hint-legend{display:flex;flex-wrap:wrap;gap:.5rem 1rem;font-size:.8rem}.hint-legend span{display:inline-flex;align-items:center;gap:.4rem}.hint-legend i{display:inline-block;width:1rem;height:1rem;border:1px solid var(--sudoku-legend-border)}.hint-legend [data-kind=premise] i{background:var(--sudoku-hint-premise)}.hint-legend [data-kind=related] i{background:var(--sudoku-hint-related)}.hint-legend [data-kind=target] i{background:var(--sudoku-hint-target)}.sudoku-import{max-width:58rem;margin:2rem auto 0;border-top:1px solid var(--site-border,#d8e0e9);padding-top:1.5rem}.sudoku-import label{display:block;font-weight:700}.sudoku-import textarea{display:block;width:100%;min-height:5.5rem;margin-bottom:.6rem;border:1px solid var(--sudoku-input-border);border-radius:.2rem;padding:.6rem;color:var(--site-ink,#243349);background:var(--sudoku-surface);resize:vertical;font:1rem/1.5 monospace}@media (max-width:68rem){#sudoku-app.sudoku-game{max-width:50rem}.board-layout{grid-template-columns:minmax(0,48rem);gap:1.5rem}.board-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:1rem;padding-top:0}.board-summary,.hint-panel,.sudoku-toolbar{grid-column:1/-1;margin:0}.board-options{margin-bottom:0}}@media (max-width:36rem){.sudoku-game .board-layout:not(.is-fullscreen){margin-inline:0}.board-heading{align-items:flex-start;margin-bottom:1rem}.catalog-controls{width:100%;font-size:.9rem;margin-bottom:.5rem}.catalog-controls label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.catalog-controls select{flex:1 1 auto}.catalog-controls input{flex:1;width:8rem}.board-controls{grid-template-columns:minmax(0,1fr);gap:.5rem}.coordinate-corner,.sudoku-grid th:first-child{width:1.2rem}.number-pad{grid-template-columns:repeat(5,minmax(0,1fr));padding-left:1.2rem}.number-pad .erase-button{grid-column:auto}}@media (prefers-reduced-motion:reduce){.celebration-card{animation:none}.board-icon-button,.number-pad button,.sudoku-import button,.sudoku-toolbar button{transition:none}}#sudoku-app .board-layout.is-fullscreen{position:fixed;inset:0;z-index:200;width:100%;height:100vh;height:100dvh;max-width:none;padding:max(.75rem,env(safe-area-inset-top)) max(.75rem,env(safe-area-inset-right)) max(.75rem,env(safe-area-inset-bottom)) max(.75rem,env(safe-area-inset-left));grid-template-columns:minmax(0,min(58rem,calc(100dvh - 10rem))) minmax(16rem,22rem);align-content:start;gap:1rem 1.5rem;overflow:auto;overscroll-behavior:contain;background:var(--site-surface,var(--sudoku-surface))}#sudoku-app .is-fullscreen .board-controls{display:block}#sudoku-app .is-fullscreen .board-options{margin-bottom:1rem}#sudoku-app .is-fullscreen .board-main>.board-help{display:none}.guide-interactive-example:has(.is-fullscreen){container-type:normal}@container (max-width:28rem){#sudoku-app .is-fullscreen .number-pad{grid-template-columns:repeat(5,minmax(0,1fr))}#sudoku-app .is-fullscreen .number-pad button{font-size:clamp(.75rem, 4cqi, 1.05rem);white-space:nowrap}}@media (max-width:42rem) and (orientation:portrait),(max-width:30rem){#sudoku-app .board-layout.is-fullscreen{grid-template-columns:minmax(0,1fr);gap:.75rem}#sudoku-app .is-fullscreen .board-controls{padding-top:0}}@media screen and (orientation:landscape) and (min-width:34rem) and (max-width:68rem){#sudoku-app .board-layout.is-fullscreen,body:has(.sudoku-game[data-mode=play]){--landscape-top:max(0.5rem, env(safe-area-inset-top));--landscape-left:max(0.5rem, env(safe-area-inset-left));--landscape-bottom:max(0.5rem, env(safe-area-inset-bottom));--landscape-board:min(
      calc(100dvh - var(--landscape-top) - var(--landscape-bottom)),
      calc(100dvw - var(--landscape-left) - 18.5rem - env(safe-area-inset-right))
    )}body:has(.sudoku-game[data-mode=play]){overflow:hidden;background:var(--site-surface)}body:has(.sudoku-game[data-mode=play]) .site{position:fixed;top:0;right:0;bottom:0;left:0;width:auto;max-width:none;height:100dvh;min-height:0;margin:0;padding:.5rem max(.75rem,env(safe-area-inset-right)) .75rem calc(var(--landscape-left) + var(--landscape-board) + 1.75rem);overflow-y:auto;overscroll-behavior:contain}body:has(.sudoku-game[data-mode=play]) .site-header{position:sticky;top:0;z-index:3;gap:.5rem;padding-block:0 0.4rem;background:var(--site-surface);box-shadow:0 -.5rem 0 var(--site-surface)}body:has(.sudoku-game[data-mode=play]) .site-logo img{width:8rem}body:has(.sudoku-game[data-mode=play]) .page-content{flex:0 0 auto;min-height:0;padding-block:0.65rem 0}#sudoku-app.sudoku-game[data-mode=play]{max-width:none;margin:0}.sudoku-game[data-mode=play] .board-heading{flex-direction:column;align-items:stretch;gap:.5rem;margin-bottom:.65rem}.sudoku-game[data-mode=play] .board-heading h1{font-size:1.05rem;line-height:1.25;letter-spacing:normal}.sudoku-game[data-mode=play] .catalog-controls{width:100%;gap:.4rem;margin:0;font-size:.9rem}.sudoku-game[data-mode=play] .catalog-controls label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.sudoku-game[data-mode=play] .catalog-controls select{flex:1 1 auto}.sudoku-game[data-mode=play] .catalog-controls button,.sudoku-game[data-mode=play] .catalog-controls select{padding-inline:0.6rem}#sudoku-app .board-layout.is-fullscreen,.sudoku-game[data-mode=play] .board-layout:not(.is-fullscreen){display:flex;flex-direction:column;gap:.65rem;margin:0}#sudoku-app .board-layout.is-fullscreen .board-main,.sudoku-game[data-mode=play] .board-layout:not(.is-fullscreen) .board-main{display:contents;container-type:normal}#sudoku-app .board-layout.is-fullscreen .board-grid-frame,.sudoku-game[data-mode=play] .board-layout:not(.is-fullscreen) .board-grid-frame{position:fixed;top:var(--landscape-top);left:var(--landscape-left);z-index:1;width:var(--landscape-board);container-type:inline-size}#sudoku-app .board-layout.is-fullscreen .coordinate-corner,#sudoku-app .board-layout.is-fullscreen .sudoku-grid th:first-child,.sudoku-game[data-mode=play] .board-layout:not(.is-fullscreen) .coordinate-corner,.sudoku-game[data-mode=play] .board-layout:not(.is-fullscreen) .sudoku-grid th:first-child{width:1.25rem}#sudoku-app .board-layout.is-fullscreen .sudoku-grid th,.sudoku-game[data-mode=play] .board-layout:not(.is-fullscreen) .sudoku-grid th{padding-block:0;line-height:1.15}#sudoku-app .board-layout.is-fullscreen .coordinate-corner,#sudoku-app .board-layout.is-fullscreen .sudoku-grid thead th,.sudoku-game[data-mode=play] .board-layout:not(.is-fullscreen) .coordinate-corner,.sudoku-game[data-mode=play] .board-layout:not(.is-fullscreen) .sudoku-grid thead th{height:1.25rem;padding:0;line-height:1}#sudoku-app .board-layout.is-fullscreen .sudoku-cell,.sudoku-game[data-mode=play] .board-layout:not(.is-fullscreen) .sudoku-cell{height:calc((100cqi - 1.25rem - 16.5px)/ 9);aspect-ratio:auto}#sudoku-app .board-layout.is-fullscreen .cell-candidates,.sudoku-game[data-mode=play] .board-layout:not(.is-fullscreen) .cell-candidates{font-size:clamp(.45rem, 1.65cqi, 1.125rem)}#sudoku-app .board-layout.is-fullscreen .number-pad,.sudoku-game[data-mode=play] .board-layout:not(.is-fullscreen) .number-pad{grid-template-columns:repeat(5,minmax(0,1fr));width:100%;gap:.3rem;padding:0;margin:0}#sudoku-app .board-layout.is-fullscreen .number-pad button,.sudoku-game[data-mode=play] .board-layout:not(.is-fullscreen) .number-pad button{min-height:2.75rem;font-size:.9rem}#sudoku-app .board-layout.is-fullscreen .erase-label,.sudoku-game[data-mode=play] .board-layout:not(.is-fullscreen) .erase-label{display:none}#sudoku-app .board-layout.is-fullscreen .erase-icon,.sudoku-game[data-mode=play] .board-layout:not(.is-fullscreen) .erase-icon{display:block;margin-inline:auto}#sudoku-app .board-layout.is-fullscreen .board-controls,.sudoku-game[data-mode=play] .board-layout:not(.is-fullscreen) .board-controls{display:block;width:100%;padding:0;font-size:.875rem}#sudoku-app .board-layout.is-fullscreen .board-summary:has(.board-status:empty),.sudoku-game[data-mode=play] .board-layout:not(.is-fullscreen) .board-summary:has(.board-status:empty){margin:0}#sudoku-app .board-layout.is-fullscreen .board-options,.sudoku-game[data-mode=play] .board-layout:not(.is-fullscreen) .board-options{gap:.4rem;margin-bottom:.65rem}#sudoku-app .board-layout.is-fullscreen .sudoku-toolbar,.sudoku-game[data-mode=play] .board-layout:not(.is-fullscreen) .sudoku-toolbar{gap:.4rem}#sudoku-app .board-layout.is-fullscreen .sudoku-toolbar button,.sudoku-game[data-mode=play] .board-layout:not(.is-fullscreen) .sudoku-toolbar button{min-height:2.75rem;padding:.5rem}#sudoku-app .board-layout.is-fullscreen .hint-panel,.sudoku-game[data-mode=play] .board-layout:not(.is-fullscreen) .hint-panel{padding:.65rem;margin-top:.65rem}.sudoku-game[data-mode=play] .board-layout:not(.is-fullscreen) .puzzle-identity{width:100%;margin:0;font-size:.8rem}#sudoku-app .board-layout.is-fullscreen{padding:var(--landscape-top) max(.75rem,env(safe-area-inset-right)) var(--landscape-bottom) calc(var(--landscape-left) + var(--landscape-board) + 1rem);overflow-y:auto}#sudoku-app .board-layout.is-fullscreen .board-controls,#sudoku-app .board-layout.is-fullscreen .number-pad{flex:0 0 auto}#sudoku-app .board-layout.is-fullscreen .board-controls{display:flex;flex-direction:column}#sudoku-app .board-layout.is-fullscreen .board-options{position:sticky;top:0;z-index:3;order:-1;padding-block:0.25rem;background:var(--site-surface,var(--sudoku-surface));box-shadow:0 calc(0px - var(--landscape-top)) 0 var(--site-surface,var(--sudoku-surface))}#sudoku-app .board-layout.is-fullscreen .board-icon-button{flex-basis:2.75rem;width:2.75rem;min-height:2.75rem;height:2.75rem}#sudoku-app .board-layout.is-fullscreen .puzzle-identity{display:none}}.glightbox-container{width:100%;height:100%;position:fixed;top:0;left:0;z-index:999999!important;overflow:hidden;-ms-touch-action:none;touch-action:none;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;-ms-text-size-adjust:100%;text-size-adjust:100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;outline:0}.glightbox-container.inactive{display:none}.glightbox-container .gcontainer{position:relative;width:100%;height:100%;z-index:9999;overflow:hidden}.glightbox-container .gslider{-webkit-transition:-webkit-transform .4s;transition:transform .4s;transition:transform .4s,-webkit-transform .4s;height:100%;left:0;top:0;width:100%;position:relative;overflow:hidden;display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.glightbox-container .gslide{width:100%;position:absolute;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;opacity:0}.glightbox-container .gslide.current{opacity:1;z-index:99999;position:relative}.glightbox-container .gslide.prev{opacity:1;z-index:9999}.glightbox-container .gslide-inner-content{width:100%}.glightbox-container .ginner-container{position:relative;width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-width:100%;margin:auto;height:100vh}.glightbox-container .ginner-container.gvideo-container{width:100%}.glightbox-container .ginner-container.desc-bottom,.glightbox-container .ginner-container.desc-top{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.glightbox-container .ginner-container.desc-left,.glightbox-container .ginner-container.desc-right{max-width:100%!important}.gslide iframe,.gslide video{outline:0!important;border:none;min-height:165px;-webkit-overflow-scrolling:touch;-ms-touch-action:auto;touch-action:auto}.gslide:not(.current){pointer-events:none}.gslide-image{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.gslide-image img{max-height:100vh;display:block;padding:0;float:none;outline:0;border:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;max-width:100vw;width:auto;height:auto;-o-object-fit:cover;object-fit:cover;-ms-touch-action:none;touch-action:none;margin:auto;min-width:200px}.desc-bottom .gslide-image img,.desc-top .gslide-image img{width:auto}.desc-left .gslide-image img,.desc-right .gslide-image img{width:auto;max-width:100%}.gslide-image img.zoomable{position:relative}.gslide-image img.dragging{cursor:-webkit-grabbing!important;cursor:grabbing!important;-webkit-transition:none;transition:none}.gslide-video{position:relative;max-width:100vh;width:100%!important}.gslide-video .plyr__poster-enabled.plyr--loading .plyr__poster{display:none}.gslide-video .gvideo-wrapper{width:100%;margin:auto}.gslide-video::before{content:'';position:absolute;width:100%;height:100%;background:rgba(255,0,0,.34);display:none}.gslide-video.playing::before{display:none}.gslide-video.fullscreen{max-width:100%!important;min-width:100%;height:75vh}.gslide-video.fullscreen video{max-width:100%!important;width:100%!important}.gslide-inline{background:#fff;text-align:left;max-height:calc(100vh - 40px);overflow:auto;max-width:100%;margin:auto}.gslide-inline .ginlined-content{padding:20px;width:100%}.gslide-inline .dragging{cursor:-webkit-grabbing!important;cursor:grabbing!important;-webkit-transition:none;transition:none}.ginlined-content{overflow:auto;display:block!important;opacity:1}.gslide-external{display:-webkit-box;display:-ms-flexbox;display:flex;width:100%;min-width:100%;background:#fff;padding:0;overflow:auto;max-height:75vh;height:100%}.gslide-media{display:-webkit-box;display:-ms-flexbox;display:flex;width:auto}.zoomed .gslide-media{-webkit-box-shadow:none!important;box-shadow:none!important}.desc-bottom .gslide-media,.desc-top .gslide-media{margin:0 auto;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.gslide-description{position:relative;-webkit-box-flex:1;-ms-flex:1 0 100%;flex:1 0 100%}.gslide-description.description-left,.gslide-description.description-right{max-width:100%}.gslide-description.description-bottom,.gslide-description.description-top{margin:0 auto;width:100%}.gslide-description p{margin-bottom:12px}.gslide-description p:last-child{margin-bottom:0}.glightbox-button-hidden,.zoomed .gslide-description{display:none}.glightbox-mobile .glightbox-container .gslide-description{height:auto!important;width:100%;position:absolute;bottom:0;padding:19px 11px 50px;max-width:100vw!important;-webkit-box-ordinal-group:3!important;-ms-flex-order:2!important;order:2!important;max-height:78vh;overflow:auto!important;background:-webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,0)),to(rgba(0,0,0,.75)));background:linear-gradient(to bottom,rgba(0,0,0,0) 0,rgba(0,0,0,.75) 100%);-webkit-transition:opacity .3s linear;transition:opacity .3s linear}.glightbox-mobile .glightbox-container .gslide-title{color:#fff;font-size:1em}.glightbox-mobile .glightbox-container .gslide-desc{color:#a1a1a1}.glightbox-mobile .glightbox-container .gslide-desc a{color:#fff;font-weight:700}.glightbox-mobile .glightbox-container .gslide-desc *{color:inherit}.glightbox-mobile .glightbox-container .gslide-desc .desc-more{color:#fff;opacity:.4}.gdesc-open .gslide-media{-webkit-transition:opacity .5s;transition:opacity .5s;opacity:.4}.gdesc-open .gdesc-inner{padding-bottom:30px}.gdesc-closed .gslide-media{-webkit-transition:opacity .5s;transition:opacity .5s;opacity:1}.greset{-webkit-transition:.3s;transition:.3s}.gabsolute{position:absolute}.grelative{position:relative}.glightbox-desc{display:none!important}.glightbox-open{overflow:hidden}.gloader{height:25px;width:25px;-webkit-animation:.8s linear infinite lightboxLoader;animation:.8s linear infinite lightboxLoader;border:2px solid #fff;border-right-color:transparent;border-radius:50%;position:absolute;display:block;z-index:9999;left:0;right:0;margin:0 auto;top:47%}.goverlay{width:100%;height:calc(100vh + 1px);position:fixed;top:-1px;left:0;background:#000;will-change:opacity}.glightbox-mobile .goverlay{background:#000}.gclose,.gnext,.gprev{z-index:99999;cursor:pointer;width:26px;height:44px;border:none;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.gclose svg,.gnext svg,.gprev svg{display:block;width:25px;height:auto;margin:0;padding:0}.gclose.disabled,.gnext.disabled,.gprev.disabled{opacity:.1}.gclose .garrow,.gnext .garrow,.gprev .garrow{stroke:#fff}.gbtn.focused{outline:#0f3d81 solid 2px}iframe.wait-autoplay{opacity:0}.glightbox-closing .gclose,.glightbox-closing .gnext,.glightbox-closing .gprev{opacity:0!important}.glightbox-clean .gslide-description{background:#fff}.glightbox-clean .gdesc-inner{padding:22px 20px}.glightbox-clean .gslide-title{font-size:1em;font-weight:400;font-family:arial;color:#000;margin-bottom:19px;line-height:1.4em}.glightbox-clean .gslide-desc{font-size:.86em;margin-bottom:0;font-family:arial;line-height:1.4em}.glightbox-clean .gslide-video{background:#000}.glightbox-clean .gclose,.glightbox-clean .gnext,.glightbox-clean .gprev{background-color:rgba(0,0,0,.75);border-radius:4px}.glightbox-clean .gclose path,.glightbox-clean .gnext path,.glightbox-clean .gprev path{fill:#fff}.glightbox-clean .gprev{position:absolute;top:-100%;left:30px;width:40px;height:50px}.glightbox-clean .gnext{position:absolute;top:-100%;right:30px;width:40px;height:50px}.glightbox-clean .gclose{width:35px;height:35px;top:15px;right:10px;position:absolute}.glightbox-clean .gclose svg{width:18px;height:auto}.glightbox-clean .gclose:hover{opacity:1}.gfadeIn{-webkit-animation:.5s gfadeIn;animation:.5s gfadeIn}.gfadeOut{-webkit-animation:.5s gfadeOut;animation:.5s gfadeOut}.gslideOutLeft{-webkit-animation:.3s gslideOutLeft;animation:.3s gslideOutLeft}.gslideInLeft{-webkit-animation:.3s gslideInLeft;animation:.3s gslideInLeft}.gslideOutRight{-webkit-animation:.3s gslideOutRight;animation:.3s gslideOutRight}.gslideInRight{-webkit-animation:.3s gslideInRight;animation:.3s gslideInRight}.gzoomIn{-webkit-animation:.5s gzoomIn;animation:.5s gzoomIn}.gzoomOut{-webkit-animation:.5s gzoomOut;animation:.5s gzoomOut}@-webkit-keyframes lightboxLoader{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes lightboxLoader{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@-webkit-keyframes gfadeIn{from{opacity:0}to{opacity:1}}@keyframes gfadeIn{from{opacity:0}to{opacity:1}}@-webkit-keyframes gfadeOut{from{opacity:1}to{opacity:0}}@keyframes gfadeOut{from{opacity:1}to{opacity:0}}@-webkit-keyframes gslideInLeft{from{opacity:0;-webkit-transform:translate3d(-60%,0,0);transform:translate3d(-60%,0,0)}to{visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);opacity:1}}@keyframes gslideInLeft{from{opacity:0;-webkit-transform:translate3d(-60%,0,0);transform:translate3d(-60%,0,0)}to{visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);opacity:1}}@-webkit-keyframes gslideOutLeft{from{opacity:1;visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(-60%,0,0);transform:translate3d(-60%,0,0);opacity:0;visibility:hidden}}@keyframes gslideOutLeft{from{opacity:1;visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(-60%,0,0);transform:translate3d(-60%,0,0);opacity:0;visibility:hidden}}@-webkit-keyframes gslideInRight{from{opacity:0;visibility:visible;-webkit-transform:translate3d(60%,0,0);transform:translate3d(60%,0,0)}to{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);opacity:1}}@keyframes gslideInRight{from{opacity:0;visibility:visible;-webkit-transform:translate3d(60%,0,0);transform:translate3d(60%,0,0)}to{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);opacity:1}}@-webkit-keyframes gslideOutRight{from{opacity:1;visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(60%,0,0);transform:translate3d(60%,0,0);opacity:0}}@keyframes gslideOutRight{from{opacity:1;visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(60%,0,0);transform:translate3d(60%,0,0);opacity:0}}@-webkit-keyframes gzoomIn{from{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}to{opacity:1}}@keyframes gzoomIn{from{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}to{opacity:1}}@-webkit-keyframes gzoomOut{from{opacity:1}50%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}to{opacity:0}}@keyframes gzoomOut{from{opacity:1}50%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}to{opacity:0}}@media (min-width:769px){.glightbox-container .ginner-container{width:auto;height:auto;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.glightbox-container .ginner-container.desc-top .gslide-description{-webkit-box-ordinal-group:1;-ms-flex-order:0;order:0}.glightbox-container .ginner-container.desc-top .gslide-image,.glightbox-container .ginner-container.desc-top .gslide-image img{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.glightbox-container .ginner-container.desc-left .gslide-description{-webkit-box-ordinal-group:1;-ms-flex-order:0;order:0}.glightbox-container .ginner-container.desc-left .gslide-image{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.gslide-image img{max-height:97vh;max-width:100%}.gslide-image img.zoomable{cursor:-webkit-zoom-in;cursor:zoom-in}.zoomed .gslide-image img.zoomable{cursor:-webkit-grab;cursor:grab}.gslide-inline{max-height:95vh}.gslide-external{max-height:100vh}.gslide-description.description-left,.gslide-description.description-right{max-width:275px}.glightbox-open{height:auto}.goverlay{background:rgba(0,0,0,.92)}.glightbox-clean .gslide-media{-webkit-box-shadow:1px 2px 9px 0 rgba(0,0,0,.65);box-shadow:1px 2px 9px 0 rgba(0,0,0,.65)}.glightbox-clean .description-left .gdesc-inner,.glightbox-clean .description-right .gdesc-inner{position:absolute;height:100%;overflow-y:auto}.glightbox-clean .gclose,.glightbox-clean .gnext,.glightbox-clean .gprev{background-color:rgba(0,0,0,.32)}.glightbox-clean .gclose:hover,.glightbox-clean .gnext:hover,.glightbox-clean .gprev:hover{background-color:rgba(0,0,0,.7)}.glightbox-clean .gnext,.glightbox-clean .gprev{top:45%}}@media (min-width:992px){.glightbox-clean .gclose{opacity:.7;right:20px}}@media screen and (max-height:420px){.goverlay{background:#000}}@media screen{:root[data-theme=dark]{--guide-subheading:#becfe3;--guide-lead:#b1c2d5;--guide-card-number:#94b3d6;--guide-card-border-hover:#6484a9;--guide-card-bg:#1c293a;--guide-card-bg-hover:#24364b;--guide-topic-bg-hover:#24364b;--guide-arrow:#94b3d6;--guide-callout-border:#3c5673;--guide-callout-bg:#1e3045;--guide-figure-bg:#1c293a;--guide-note-border:#6484a9;--guide-note-bg:#1c293a;--guide-control-ink:#b2d5fc;--guide-swatch-border:#7c91aa;--guide-premise:#674e24;--guide-related:#243e59;--guide-target:#2b4b38}}.guide-shell{max-width:91rem;margin-inline:auto}.guide-breadcrumb{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem;font-size:.85rem;color:var(--site-muted)}.guide-breadcrumb a{text-decoration:none}.guide-layout{display:grid;grid-template-columns:13.5rem minmax(0,1fr);grid-template-areas:"contents article";align-items:start;gap:clamp(2rem,5vw,5.5rem)}.guide-sidebar{grid-area:contents;position:sticky;top:1rem;max-height:calc(100vh - 2rem);overflow-y:auto;padding-right:.5rem}.guide-contents{border-right:1px solid var(--site-border)}.guide-contents summary{margin-bottom:.75rem;padding:.3rem .65rem;font-size:.8rem;font-weight:750;letter-spacing:.035em;cursor:pointer}.guide-contents nav>a,.guide-nav-group a{display:block;margin-right:.8rem;padding:.35rem .65rem;border-radius:.35rem;color:var(--site-muted);font-size:.85rem;text-decoration:none}.guide-contents a:hover{background:var(--site-hover-bg);color:var(--site-accent)}.guide-contents a[aria-current=page]{color:var(--site-accent);background:var(--site-accent-soft);font-weight:700}.guide-nav-group{margin-top:1.05rem}.guide-nav-group strong{display:block;padding:.25rem .65rem;font-size:.75rem;font-weight:750;color:var(--guide-subheading)}.guide-article{grid-area:article;display:flow-root;max-width:65rem;min-width:0}.guide-header{max-width:49rem;margin-bottom:2.4rem}.guide-intro{display:contents}.guide-intro>.guide-header{float:left;width:calc(100% - 26rem - clamp(1.5rem,3vw,3rem));margin-bottom:1rem;scroll-margin-top:1.5rem}.guide-intro-example{float:right;width:26rem;min-width:0;margin:0 0 1.5rem clamp(1.5rem,3vw,3rem)}.guide-intro-example .guide-figure{margin:0}.guide-intro-example figcaption p:last-child{margin-bottom:0}.guide-intro+.guide-technique-body,.guide-intro+section,.guide-rule-grid{clear:left}.guide-interactive-example,.guide-note,.guide-page-nav{clear:both}.guide-interactive-example{container-type:inline-size;margin-block:2.5rem;padding-top:1.5rem;border-top:1px solid var(--site-border)}.guide-example-app .board-layout{grid-template-columns:minmax(0,1fr) minmax(15rem,19rem);gap:1.5rem}.guide-example-app .board-controls{display:block}.guide-example-app .sudoku-toolbar{margin-block:1rem}@container (max-width:44rem){.guide-example-app .board-layout{grid-template-columns:minmax(0,1fr)}}.guide-header h1{max-width:21ch;margin-bottom:1.1rem;font-size:clamp(2rem, 1.6rem + 1.7vw, 3.1rem);line-height:1.12;letter-spacing:-.035em}.guide-lead{font-size:clamp(1.05rem, .95rem + .4vw, 1.24rem);line-height:1.65;color:var(--guide-lead)}.guide-actions{display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.5rem;margin-top:1.6rem}.guide-button{display:inline-flex;align-items:center;gap:1.25rem;border-radius:.5rem;padding:.8rem 1rem;background:var(--site-button-bg);color:var(--site-button-ink);text-decoration:none;font-weight:650;font-size:.9rem}.guide-button:hover{background:var(--site-button-hover);color:var(--site-button-ink)}.guide-start-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-block:2rem 3rem}.guide-card{border:1px solid var(--site-border);border-radius:.7rem;padding:1.3rem;text-decoration:none;color:var(--site-ink);background:var(--guide-card-bg)}.guide-card:hover{color:var(--site-ink);border-color:var(--guide-card-border-hover);background:var(--guide-card-bg-hover)}.guide-card-number{color:var(--guide-card-number);font-size:.78rem;letter-spacing:.06em;font-weight:750}.guide-card h2{margin-top:.5rem;font-size:1.2rem}.guide-card p,.guide-topic-card p{margin:0;color:var(--site-muted);font-size:.9rem}.guide-article>section{margin-bottom:2rem}.guide-article h2{margin-top:1.7rem;font-size:1.3rem}.guide-article dd,.guide-article li,.guide-article p{max-width:76ch}.guide-topic-group{margin-block:1.8rem 2.4rem}.guide-group-heading h3{margin:0 0 .25rem;font-size:1rem}.guide-group-heading p{margin-bottom:.85rem;color:var(--site-muted);font-size:.85rem}.guide-topic-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.guide-topic-card{display:grid;grid-template-columns:6.5rem minmax(0,1fr);align-items:start;gap:1rem;padding:1rem 1.1rem;border:1px solid var(--site-border);border-radius:.55rem;text-decoration:none}.guide-topic-thumbnail{display:block;width:100%;height:auto;border:1px solid var(--site-border);border-radius:.3rem;background:#fff}.guide-topic-copy{min-width:0}.guide-topic-card:hover{background:var(--guide-topic-bg-hover);border-color:var(--guide-card-border-hover)}.guide-topic-card h4{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin:0 0 .5rem;font-size:.95rem;font-weight:700}.guide-topic-card h4 span{color:var(--guide-arrow)}.guide-topic-card p{font-size:.85rem}.guide-recipe{display:flow-root;margin-block:1.8rem;padding:1.2rem 1.5rem;border:1px solid var(--guide-callout-border);border-radius:.65rem;background:var(--guide-callout-bg)}.guide-note h2,.guide-recipe h2{margin-top:0;font-size:1rem}.guide-recipe ol{padding-left:1.3rem;margin:.7rem 0 0}.guide-recipe li{padding:.3rem 0 .3rem .3rem}.guide-recipe li::marker{color:var(--site-accent);font-weight:700}.guide-figure{max-width:46rem;margin:1.3rem 0 2rem}.guide-figure>a{display:block;padding:.7rem;border:1px solid var(--site-border);border-radius:.7rem;background:var(--guide-figure-bg);line-height:0;cursor:zoom-in}.guide-figure img{display:block;width:100%;height:auto;border-radius:.3rem}.guide-figure figcaption{max-width:85ch;margin-top:.7rem;color:var(--site-muted);font-size:.9rem;line-height:1.6}.guide-note{margin:2rem 0;padding:1.15rem 1.3rem;border-left:3px solid var(--guide-note-border);background:var(--guide-note-bg)}.guide-note p:last-child{margin-bottom:0}.guide-glossary{color:var(--site-muted);font-size:.85rem}.guide-page-nav{display:flex;justify-content:space-between;gap:1.5rem;margin-top:2.7rem;padding-top:1.3rem;border-top:1px solid var(--site-border)}.guide-page-nav a{max-width:48%;font-weight:650;text-decoration:none}.guide-page-nav a:last-child{text-align:right}.guide-page-nav small{display:block;margin-bottom:.3rem;color:var(--site-muted);font-size:.75rem;font-weight:500}.guide-rule-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;padding-block:1.5rem;margin-bottom:1.7rem;border-block:1px solid var(--site-border)}.guide-rule-grid h2{margin-top:.5rem;font-size:1.15rem}.guide-rule-grid p{margin:0;color:var(--site-muted);font-size:.9rem}.guide-control-list{margin-block:1.2rem}.guide-control-list dt{font-weight:700;color:var(--guide-control-ink)}.guide-control-list dd{margin:.2rem 0 1.2rem}.guide-highlight-key{padding:0;list-style:none}.guide-highlight-key li{margin-block:.7rem}.guide-swatch{display:inline-block;width:1rem;height:1rem;margin-right:.35rem;border:1px solid var(--guide-swatch-border);border-radius:.2rem;vertical-align:-.1rem}.guide-swatch-premise{background:var(--guide-premise)}.guide-swatch-related{background:var(--guide-related)}.guide-swatch-target{background:var(--guide-target)}.guide-article section[id],.guide-technique-body{scroll-margin-top:1.5rem}@media (max-width:70rem){.guide-layout{grid-template-columns:11.5rem minmax(0,1fr);gap:2rem}}@media (max-width:75rem){.guide-intro{display:grid;grid-template-columns:minmax(0,1fr);gap:1.5rem;margin-bottom:2.4rem}.guide-intro>.guide-header{float:none;width:auto;margin-bottom:0}.guide-intro-example{float:none;width:100%;max-width:30rem;margin:0}}@media (max-width:50rem){.guide-layout{display:block}.guide-sidebar{position:static;max-height:none;overflow:visible;padding:0;margin-top:1.6rem}.guide-contents{border:1px solid var(--site-border);border-radius:.5rem;padding:.55rem}.guide-contents summary{margin:0}.guide-contents nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-height:17rem;overflow-y:auto;margin-top:.7rem}.guide-nav-group{margin-top:.6rem}.guide-contents a{min-height:2.75rem}.guide-header{margin-bottom:1.6rem}.guide-rule-grid{gap:1rem}}@media (max-width:34rem){.guide-rule-grid,.guide-start-grid,.guide-topic-grid{grid-template-columns:1fr}.guide-rule-grid{gap:1.25rem}.guide-header h1{font-size:2rem}.guide-card,.guide-recipe{padding:1rem}.guide-figure>a{padding:.3rem}}@media (min-width:50.01rem) and (max-width:65rem){.guide-topic-grid{grid-template-columns:1fr}}@media (max-width:44rem){.guide-topic-grid{grid-template-columns:1fr}}@media print{.guide-actions,.guide-breadcrumb,.guide-page-nav,.guide-sidebar{display:none}.guide-layout{display:block}.guide-article{max-width:none}.guide-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,22rem);gap:2rem;margin-bottom:2.4rem}.guide-intro>.guide-header{float:none;width:auto;margin-bottom:0}.guide-intro-example{float:none;width:auto;max-width:none;margin:0}.guide-figure,.guide-note,.guide-recipe{break-inside:avoid}}